Post
Topic
Board Bitcoin Technical Support
Merits 16 from 4 users
Re: .05BTC (~$1,700) to whoever helps me successfully extract my BTC from CLI wallet
by
NotATether
on 15/01/2021, 09:02:27 UTC
⭐ Merited by LoyceV (8) ,ETFbitcoin (6) ,TheBeardedBaby (1) ,PawGo (1)
Any update?
Did OP open the wallet and forgot about his promise?


I was able to download Blockstack .18 on Ubuntu thanks to the instructions PawGo gave my via DM (thanks PawGo).

The wallet has 3 keys (data, payment, owner). But I only have a "master key". So I'm not sure if I need to download an even earlier version of Blockstack or if I need to extract the payment key from the master key somehow in version .18.

I emailed Blockstack support but they still haven't responded.


If I install an earlier version of Blockstack, I need to delete Blockstack .18 first right?

So, it looks like  Blockstack has it's own private key format that is 64 to 66 characters long. Apparently, even the address types in Blockstsck are different from bitcoin addresses but can be converted to and from them. We are interested in the owner key because the docs (https://docs.blockstack.org/references/stacks-cli, a newer version) say that is where the private keys are stored.

Payment keys I think are the transaction signatures in Blockstsck, there's not much we can do with those.  

You should try using blockstack-client (it is a python binding of blockstack https://pypi.org/project/blockstack-client/, it's the one that makes a json file like the one you showed, when a wallet is created and pesters the user to export it to a file). It needs Python 2 to work.



1. Install Python 2
Code:
sudo apt install -y python2

2. Install pip for python 2
Code:
curl https://bootstrap.pypa.io/get-pip.py --output get-pip.py
python2 get-pip.py

2. Install blockstsck-cli
Code:
pip2 install blockstack-client virtualchain==0.14.0

3. Save this wallet JSON you posted to a file, like wallet.json for example.
Code:
{"encrypted_master_private_key": "ef242kfjj24ekf3223jesdkhefsfhk324wuefhw38fhrypofhtr34d342132d34jsd49",
"wallet_password": “kljsef9832nkfssf”}

Note: I have changed master_private_key to encrypted_master_pricate_key. It for some reason doesn't read the master_private_key field but when it sees encrypted_master_pricate_key, it uses wallet_password to unlock it.

4. Run
Code:
blockstack set_advanced_mode
and type "on" to access the inport_wallet command.

5. Run
Code:
blockstack import_wallet wallet.json
, it will import your wallet from wallet.json and display your addresses.

6. To get the private keys run
Code:
blockstack wallet

It will show you output like this:

Code:
Enter wallet password: PUT THE wallet_password HERE, IT IS NOT ENCRYPTED
------------------------------------------------------------
Payment address:        1HxJ767HSYyvPzHKBVP1JUHfefNzg53Hp6
Owner address:          1PcCxR81Y5BrrD4FnwoWuJ8tH7kURTe1nv
Data public key:        035d999986a0de6e61a20dfa2b92b22daf451303e7b34a4b34103c33d712cfc1fd
------------------------------------------------------------
Balance:
1HxJ767HSYyvPzHKBVP1JUHfefNzg53Hp6: 0.0
------------------------------------------------------------
Names Owned:
1PcCxR81Y5BrrD4FnwoWuJ8tH7kURTe1nv: []
------------------------------------------------------------
------------------------------------------------------------
Payment private key info: 5K2qrQ36ZiJRdViu8BJpnizVxkFEr2ZFzxycW6VL1NAbTD3GLXy
Owner private key info:   5JybVGERkbVCPNXSRnBBxkch68o2D39hrrYw4h8VXX8QEUsKjcQ
Data private key info:    L4Z7X5s1v5Tpt6CZZBfLzRVsZpEkJoRuxwRGpe4xD8C28hwjeXun
{
    "data_privkey": "dad7d349dff5637d20192396c6fa31f957c22e261c333aeb5ed5101751031afa01",
    "data_pubkey": "035d999986a0de6e61a20dfa2b92b22daf451303e7b34a4b34103c33d712cfc1fd",
    "owner_address": "1PcCxR81Y5BrrD4FnwoWuJ8tH7kURTe1nv",
    "owner_privkey": "5JybVGERkbVCPNXSRnBBxkch68o2D39hrrYw4h8VXX8QEUsKjcQ",
    "payment_address": "1HxJ767HSYyvPzHKBVP1JUHfefNzg53Hp6",
    "payment_privkey": "5K2qrQ36ZiJRdViu8BJpnizVxkFEr2ZFzxycW6VL1NAbTD3GLXy"
}

Note: this is data for a sample wallet I created using blockstack. Do not send any bitcoins to these addresses; you will lose your money.