cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
July 26, 2017, 03:29:16 AM |
|
So i had been reading and testing solutions posted in here for the issues as per the topic a while now and its really getting frustrating. First time it happened, I just let it be and sync for a few days but it did not resolved itself. Went thru the forums and then tried to repair the wallet, Got my btcs back next day. Then it happens again. I decided to try renaming the \Roaming\MultiBitHD\ folder and after "reinstall" and sync my wallet, I had zero btc. After much trying and waiting, I renamed back the original folder and once loaded I was back to yesterday, unconfrimed btc. Now I have decided to move to a new wallet. But I cant export keys. I tried EMPTY WALLET, only the confirmed btc went thru, all the unconfirmed ones still there. http://imgur.com/a/SZI8NHow / Where do I find the MultiBit classic w/ export functions ? Thank you in advance!
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
July 26, 2017, 05:45:19 AM Last edit: July 26, 2017, 06:00:42 AM by HCP |
|
You can't... you're using MultiBit HD... it isn't at all compatible with MB Classic... and it doesn't support exporting your private keys directly. Unfortunately, as you have discovered, MBHD has some real issues at the moment, and the devs seem to be MIA... there hasn't been any updates in months! You have a few options: 1. 'Restore' your seed into " Breadwallet" (iOS or Android)... or " Simple Bitcoin Wallet" (Android only). These wallets use the same "Derivation Path" as MBHD, so will restore your wallet/addresses/transactions correctly. 2. If you're at all familiar with Python and running scripts, you can use my extractor scripts to get the addresses/private keys containing coins out of your MBHD wallet file 3. You can achieve the same thing as Option 2, by following the manual process below: - Step 1. Create an offline copy of the BIP39 Mnemonic Code Converter: https://iancoleman.github.io/bip39/ (instructions at bottom of the page)
- Step 2. Put your MBHD seed phrase in as "BIP39 Mnemonic"
- Step 3. Click "BIP32" under "Derivation Path" section
- Step 4. Set "Client" dropdown to "Custom Derivation Path"
- Step 5. Set the "BIP32 Derivation Path" to: m/0'/0
- Step 6. All your addresses/private keys for "Receive" addresses will show at bottom of the page (you may need to click "show more" if you have a lot of used addresses)
- Step 7. Set the "BIP32 Derivation Path" to: m/0'/1
- Step 8. All your addresses/private keys for "Change" addresses will show at the bottom of the page (you may need to click "show more" if you have a lot of transactions)
- Step 9. Sweep (or import) the private keys you have generated from Steps 6 and 8 into another wallet (I'd recommend Electrum)
- Step 10. Be Happy!
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
July 26, 2017, 08:20:38 AM |
|
Thanks for the prompt and detailed reply.
I already tried #1. it shows zero.
trying #2 but stuck at decrypt_multibit_classic_keys.py I couldnt locate *.key .
So I am trying decrypt_multibit_classic_walletkeys.py, when you say multibit.wallet. its it the exact file name or should I change it to what i have mbhd-20170628235705.wallet?
Best Regards
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
July 26, 2017, 10:33:49 AM |
|
MB Classic and MB HD are two very different wallets... you need to use the "find_unspent_multibitHD_txes.py" script... it should hunt through your wallet and find the unspent UTXOs... Although it may struggle if it thinks you have unconfirmed transactions... Also, if "Breadwallet" or "Simple Bitcoin Wallet" came up with a zero balance then that isn't normal. Have you checked your addresses from MBHD on a blockchain explorer like blockchain.info to see if there ARE actually unspent coins on your addresses?
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
July 27, 2017, 12:21:09 AM Last edit: July 27, 2017, 12:49:22 AM by cybreed |
|
MB Classic and MB HD are two very different wallets... you need to use the "find_unspent_multibitHD_txes.py" script... it should hunt through your wallet and find the unspent UTXOs... Although it may struggle if it thinks you have unconfirmed transactions... What does this do actually? It returns 4 addresses screenshot http://imgur.com/a/TX5P3Also, if "Breadwallet" or "Simple Bitcoin Wallet" came up with a zero balance then that isn't normal. Have you checked your addresses from MBHD on a blockchain explorer like blockchain.info to see if there ARE actually unspent coins on your addresses?
yes I did check the addresses on blockchain.info, past transactions all there. 1DRzm3VwkFt4M5eSw7EFhydcpYAWfM7BL just sent yesterday When all this unconfirmed situation started, i had 0.0025 btc confirmed and 0.019 btc unconfirmed. Eventho everything was legit for at least a year plus. I did a few repairs only once it worked. I know I should have sent the BTC's to another wallet, but I was quite busy with work, so did not had time to research the better wallets out there. After more repairs, I tried renaming the folder under \Roaming\Multibit and re-sync everything, and then it showed zero btc. After much reinstalls, i renamed back my previous folder and everything was back. the confirmed and unconfirmed btc. So as a test, I sent 0.0025 btc to my new wallet, and it arrived almost instantly. Out of ideas, I had to signup for help... Thanks again for your assistance!
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
July 27, 2017, 03:17:55 AM |
|
No worries... Happy to help MultiBit HD records all the transactions for your addresses in the wallet file... and groups them in various pools (SPENT, UNSPENT etc)... Basically, my script hunts through your wallet file, looking for "Unspent Transactions" and then attempts to match an output address in the transaction with one from your wallet and then outputs the matching private key. I had another user with that same error report it on the github, but they never responded after I requested more info to try and replicate and debug. The error is being generated in another Python library when it attempts to write out the script bytes from a transaction... I believe that this is being caused by there being a multisig (aka "3") address involved in that transaction and the library isn't able to deal with the output script for that address... Can you look at the Transaction ("f82....") and see how many output addresses there are... I suspect there are more than just the 4 that you see, but obviously can't confirm it As per the github issue posting, I created a slightly modified version of the script that will output some additional info: https://pastebin.com/1EUMusyR Can you please run that and sending me the "script_bytes" data that it outputs (It isn't sensitive data, it is info that is already publicly recorded in the blockchain )... and also the TransactionID... Feel free to PM me if you want to keep the info private. Hopefully, that will enable me to figure out what is causing the issue and fix it so the script will complete properly and you can get your keys/coins
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
July 27, 2017, 06:36:04 AM |
|
No worries... Happy to help MultiBit HD records all the transactions for your addresses in the wallet file... and groups them in various pools (SPENT, UNSPENT etc)... Basically, my script hunts through your wallet file, looking for "Unspent Transactions" and then attempts to match an output address in the transaction with one from your wallet and then outputs the matching private key. I had another user with that same error report it on the github, but they never responded after I requested more info to try and replicate and debug. The error is being generated in another Python library when it attempts to write out the script bytes from a transaction... I believe that this is being caused by there being a multisig (aka "3") address involved in that transaction and the library isn't able to deal with the output script for that address... Can you look at the Transaction ("f82....") and see how many output addresses there are... I suspect there are more than just the 4 that you see, but obviously can't confirm it checked f82... at blockchain http://imgur.com/a/9kW2Z yes there are more transactions. As per the github issue posting, I created a slightly modified version of the script that will output some additional info: https://pastebin.com/1EUMusyR Can you please run that and sending me the "script_bytes" data that it outputs (It isn't sensitive data, it is info that is already publicly recorded in the blockchain )... and also the TransactionID... Feel free to PM me if you want to keep the info private. Hopefully, that will enable me to figure out what is causing the issue and fix it so the script will complete properly and you can get your keys/coins ran the new codes... http://imgur.com/a/aHxh3And screenshots from my phone https://imgur.com/a/7Ze1G
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
July 27, 2017, 12:53:59 PM |
|
Awesome... thanks for the debug! It was indeed choking on a multisig address... I think I have it figured out, I should have been using a different library to extract the addresses Try this version: https://pastebin.com/bB6qS4ViIt should hopefully no longer break on multisig script outputs... so theoretically it should run without error and find your UTXOs now... fingers crossed. Let me know how you get on.
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
July 28, 2017, 03:21:08 AM |
|
Awesome... thanks for the debug! It was indeed choking on a multisig address... I think I have it figured out, I should have been using a different library to extract the addresses Try this version: https://pastebin.com/bB6qS4ViIt should hopefully no longer break on multisig script outputs... so theoretically it should run without error and find your UTXOs now... fingers crossed. Let me know how you get on. seemed to be doing fine... http://imgur.com/a/OHMWB..till.. http://imgur.com/a/v0YGD
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
July 29, 2017, 09:50:06 AM |
|
Ahhhh... looks like that transaction has "Pay To Many"... like MANY addresses... hahah. So the ACTUAL output of your address got drowned out in the noise... Updated the script (same URL as before): https://pastebin.com/bB6qS4ViThis oneshould not dump out all the "not found" messages and only so addresses that match... Also, just FYI, ThomasV released 2.9.0 of Electrum, that should now import MultiBit HD seeds. During wallet creation, select "Standard Wallet -> I have a seed -> Click options and select BIP39 seed -> Input seed -> Next -> and use m/0' as derivation path. All your addresses should be generated and transaction history loaded! ps. sorry about the delay in responding...
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
July 31, 2017, 03:49:36 AM |
|
no worries for the late reply. I was away from my office also. Ran the new script http://imgur.com/a/3ZBo1added a # to line 222, ran the script and it competed with out errors. So I use the info in the parsed_wallet.txt then ?
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
July 31, 2017, 05:00:05 AM |
|
no worries for the late reply. I was away from my office also. Ran the new script http://imgur.com/a/3ZBo1added a # to line 222, ran the script and it competed with out errors. Doh... had an empty "else:" clause... that would explain the indentation error Glad you managed to figure it out tho. So I use the info in the parsed_wallet.txt then ?
No the parsed_wallet.txt is just a plaintext dump of your wallet file... the private keys and seeds and stuff will still be encrypted in that txt file... or they should be You should have had some addresses/private keys displayed on screen when you ran the script... It purposely doesn't write anything to a file to try and prevent data leakage... it only displays on screen (and will be in memory)... If you run with: python find_unspent_multibitHD_txes.py mbhd.wallet.aes > output.txt It will save all the output into a text file... I don't recommend this unless you're get hundreds of output lines and it is exceeding the scrollbuffer of the terminal window and you can't just scroll back up to see the addresses/private keys...
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
August 01, 2017, 12:15:31 AM |
|
okay, so the funds are "recovered".
#1 I had the wrong seed therefore when I restored the wallet, I had restored an empty wallet. I noticed this immediately with the new electrum wallet where there was an option to show addresses.
#2 Thanks to HCP's awesome script, I was able to sweep the keys and move the funds to my brand spanking new electrum wallet. Prior to the last post I had a suspicion that I had the wrong seeds. As I couldn't find any of my addresses in the output. *doh!
Thank you HCP for your patience and your help!
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
August 01, 2017, 02:45:55 AM |
|
Awesome, glad you managed to get it all sorted. I like happy endings Hopefully the functionality that ThomasV has included in Electrum to be able to specify the Derivation Path when importing seeds will make this sort of thing a lot easier in the future!
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
August 08, 2017, 12:45:30 AM |
|
@HCP I would like to send some bitcoin in appreciation for your efforts.. use your address in your profile?
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
August 08, 2017, 05:45:32 AM |
|
Thanks... and yes, the address in my profile (16qkTAUmtCdBYfXXKKGKqD8pAYtL1T5pqV) is fine...
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
August 08, 2017, 06:35:17 AM |
|
Done, its not much, but your efforts really appreciated !
|
|
|
|
HCP
Legendary
Offline
Activity: 2086
Merit: 4363
<insert witty quote here>
|
|
August 08, 2017, 11:45:39 PM |
|
Hey, thanks for the beer! Now... if only there was a bar around here that accepted bitcoin!
|
|
|
|
cybreed (OP)
Newbie
Offline
Activity: 12
Merit: 0
|
|
August 09, 2017, 12:08:05 AM |
|
CheerS!
|
|
|
|
asdlolciterquit_2
Member
Offline
Activity: 112
Merit: 10
|
|
August 16, 2017, 08:26:57 PM |
|
3. You can achieve the same thing as Option 2, by following the manual process below: - Step 1. Create an offline copy of the BIP39 Mnemonic Code Converter: https://iancoleman.github.io/bip39/ (instructions at bottom of the page)
- Step 2. Put your MBHD seed phrase in as "BIP39 Mnemonic"
- Step 3. Click "BIP32" under "Derivation Path" section
- Step 4. Set "Client" dropdown to "Custom Derivation Path"
- Step 5. Set the "BIP32 Derivation Path" to: m/0'/0
- Step 6. All your addresses/private keys for "Receive" addresses will show at bottom of the page (you may need to click "show more" if you have a lot of used addresses)
- Step 7. Set the "BIP32 Derivation Path" to: m/0'/1
- Step 8. All your addresses/private keys for "Change" addresses will show at the bottom of the page (you may need to click "show more" if you have a lot of transactions)
- Step 9. Sweep (or import) the private keys you have generated from Steps 6 and 8 into another wallet (I'd recommend Electrum)
- Step 10. Be Happy!
hi, i'm trying to follow these steps, but there something that i don't understand. It seems that the "Derived Addresses" are...too much!! I keep click on "Show more rows" but it seems that there is no end. For example now i have more than 700 private keys, and if i wrote "1000" in "show more row" box, i will have 1700 private keys! How is it possible? My wallet is a wallet with only 2 receive transaction e 0 send transaction!!! Did i do something wrong?
|
|
|
|
|