Author

Topic: I need Help unlocking Multibit Classic wallet - password bug (Read 1646 times)

newbie
Activity: 5
Merit: 0

Just a last thing:

When I opened the wallet a couple of months ago it was OK. I used one of the copies I had.

Now I've been trying to use the wallet and none of the copies work, and as I said, I have a few on different computers. So it's also a bit strange that all of my copies of the wallet suddenly corrupt in different computers and usb stick.
I find it really strange.

Anyway, I'll keep trying and if I find out anything usefull for others I'll post here.

Thank you for your interest in helping.





HCP
legendary
Activity: 2086
Merit: 4361
Yeah... after reviewing my code, the compressed/uncompressed thing shouldn't really matter... It shouldn't crash, it should still be able to generate the address. So, it looks like whatever it is decrypting from your encrypted private key is just "wrong"...  Sad

This probably means that the data that was originally encrypted was "wrong"... garbage in... garbage out.... I think we'll find that if we dump out the bytes... it won't be the right size.

Sadly, this seems to be something of a common occurrence with these old MultiBit Classic wallets Undecided
newbie
Activity: 5
Merit: 0
Hi,

I think (but not sure) that my keys are not uncompressed.

What I  have found out is that my other keys (from another wallet which I have no problem with) are  COMPRESSED for sure. I've checked at bitaddress.org.
It says that they are 52 chars long and start with K or L, which is my case with my other wallet.

------------------------------------------------------------------------------------------------
About my problematic wallet:

1) I supose it should be the same type as the other one.
Or could it be different? I mean could it be that I have one compressed and one uncompressed.
The public key is 130 chars long, so according to bitaddress.org

2) Is it possible that the fact that when I created the wallets in 2013 it was on a 32bit system and now I'm using a 64bit system. Sorry but I don't understand very much about that.

3) After using the extract-multibit-privkey.py script the result shows (according to bitaddress.org) that it's a

Private Key Base64 (44 characters).

4) As I already said before, I think that my password is correct because after trying hundres of different ones, it's the only one that gives me the "provided AES KEYS are wrong" error in MultibitClassic
AND
the "assertion error" (show in previous post) with your script
           python decrypt_multibit_classic_walletkeys.py my_wallet.wallet
(trying other passwords doesn't show anything at all, just keeps asking for password)

------------------------------------------------------------------------------------------------------------------

I also tried the gurnecs btcrecover script but strangely it doesn't find "my password" as correct. I mean I give it "my password" in and it says password not found.
I've also tried it with token file and password file, but nothing found.

If you have any idea of what I can do it would be great.

Thank you very much.




newbie
Activity: 5
Merit: 0
HCP Thank you for your answer.

I don't know what "uncompressed" keys mean.

I'll try to find out.

HCP
legendary
Activity: 2086
Merit: 4361
    print("Privkey: " + bitcoin.encode_privkey(privkey, 'wif_compressed'))
hmmm... I'm wondering if this is the issue... My script is assuming that the wallet has "compressed" keys... it's possible your wallet might have "uncompressed" keys? Huh

Seems that the private key checksum is failing when the script is converting the binary private key into WIF format...
newbie
Activity: 5
Merit: 0
Hi,

I have the same "provided AES key is wrong" problem with MULTIBIT CLASSIC.
I've had this wallet since 2013 on linux


I did this:
~/Escritorio/mbitrecover/multibit_recovery-master$ python decrypt_multibit_classic_walletkeys.py wallet_1-20171024203819.wallet

And this is what I get:

File NOT Encrypted
--------------------------------------------------------------------------------
Keys are encrypted
This wallet file is encrypted, please enter its password:

Pubkey: .....
Traceback (most recent call last):
  File "decrypt_multibit_classic_walletkeys.py", line 215, in
    wallet = load_wallet(wallet_file, get_password)
  File "decrypt_multibit_classic_walletkeys.py", line 172, in load_wallet
    print("Privkey: " + bitcoin.encode_privkey(privkey, 'wif_compressed'))
  File "/usr/local/lib/python2.7/dist-packages/bitcoin/main.py", line 224, in encode_privkey
    return encode_privkey(decode_privkey(priv), formt, vbyte)
  File "/usr/local/lib/python2.7/dist-packages/bitcoin/main.py", line 237, in decode_privkey
    if not formt: formt = get_privkey_format(priv)
  File "/usr/local/lib/python2.7/dist-packages/bitcoin/main.py", line 217, in get_privkey_format
    bin_p = b58check_to_bin(priv)
  File "/usr/local/lib/python2.7/dist-packages/bitcoin/main.py", line 427, in b58check_to_bin
    assert bin_dbl_sha256(data[:-4])[:4] == data[-4:]
AssertionError


I would be very happy if someone could help me out with this. I almost sure the password is correct because it's the only one that gives me this output and also the "AES key wrong" message in multibit classic.

Thank you in advance
HCP
legendary
Activity: 2086
Merit: 4361
It's the way the forks work... BCH forked on 1 August... So any BTC you had on a private key at that time means you get BCH on that private key (regardless on what you do with the BTC after 1 august)... It's a completely separate blockchain... So BCH and BTC transactions do not affect each other, they operate independently.

Go here and type in one of your old BTC addresses (NOT a private key!!): https://blockdozer.com

You'll see that you also have BCH. You can use a BCH (aka Bitcoin Cash) wallet to get access to these coins... I'd recommend using ElectronCash (https://electroncash.org/) and importing all your old private keys now that the BTC has been moved off the private keys.

But check the wallets here: https://www.bitcoincash.org/#wallets

It's definitely worth investigating... BCH is currently worth around 0.14 BTC... And relatively easy to send to an exchange to "dump"... Basically an instant 14% payout on the amount of BTC you had.


BTG aka Bitcoin Gold isn't worth quite as much... But their fork was around Oct 24th.. again independent of both BTC and BCH... And more #freeeMoney Wink

Bitcoin Gold here: https://bitcoingold.org
newbie
Activity: 13
Merit: 0
HI thanks.

I had not touch the BTC for years and when I tested it yesterday it send BTC to my friend, It says BTc on my account.

TBH I have no idea how I would have BCH.

All good now.
HCP
legendary
Activity: 2086
Merit: 4361
Might be worth keeping for the moment... If those keys had BTC at 1 August and 24th of October... Which seems likely given you're only just moving them... Then they'll have Bitcoin Cash and Bitcoin Gold...

Granted, not worth a huge amount compared to BTC, but hey... #freeMoney Wink
newbie
Activity: 13
Merit: 0
I sweeped all the BTC out of Multibit Classic into KeepKey using their utility and the correct password that worked.

I now have all the BTC in the Keepkey wallet and the Multibit wallet shows 0.0 BTC. So problem finally solved!

I have uninstalled all the Multibit applications from my computer.

Should I delete all the files under ´application support - multibit´?? -This is where the .wallet and .keys back ups are.

Its my understanding that keepkey generates and stores new addresses for each transaction. Does this mean the old key are useless now the multibit wallet is gone?

newbie
Activity: 13
Merit: 0
Hi,

A thousand thank you´s. It worked.  Smiley Smiley Smiley

It took me a while as I was imputing the files in the wrong way not using spaces. I used the btcrecover tokenlist and just broke the tokens up into smaller parts and it did it really quickly. The password was just a slightly different combination of what I was trying... Gave me the password that I then ran on the multibit decrypt.py and it pumped out the keys for me, super happy.

To check I tried the password on in the Multibit Classic wallet on exporting the keys and guess what......? Password worked! The exported keys match the ones from the python decrypt.

So my Multibit wallet was NOT corrupted my password was just slightly wrong, lesson learnt not to forget a password even if I don´t use them for years.
Lots more lessons learnt using python and code so that is a massive upside to this experience, also I am amazed how helpful this BTC community is. So thank you all!

Just one last question.
Should I just use the keys to transfer the wallet, I have a keepkey, as sending the BTC from Multibit Classic may be a problem with the fees as I have read in other posts.

I guess if the password is right I will try using the Multibit to Keepkey Utility.
newbie
Activity: 13
Merit: 0
Hi I tried removing the password in Multibit Classic, (did not realise that was an option). I get this message

The removal of the password failed. The error was "Could not decrypt bytes"


I get the same message when I put in a completely wrong password too.


I am reading through btcrecover page.

newbie
Activity: 32
Merit: 0
I was talking about when you load the wallet in Multibit Classic and try remove password with your known password does it give the AES error or cannot decrypt bytes. There are a few people with the "AES key is wrong"
newbie
Activity: 13
Merit: 0
Hi,

I have not seen any error message like that. It just keep saying ´incorrect password`

What do you mean buy ´remove the password` are you talking about using btcrecover?

I have written out about 20 possible passwords. Then cut and paste as well as typing them out on both multibit .key backup files, no luck.

I need some time to read through the btcrecover.py programme and practice using it. I will look tonight and run some password combinations and see if I get any error messages.

Thank you for your reply, I will keep trying  Smiley

newbie
Activity: 32
Merit: 0
Simon,

Do you get the error "provided aes key is wrong" when trying to remove the password from the wallet? You might be one of the few unlucky people who had Multibit corrupt their wallet.

HCP
legendary
Activity: 2086
Merit: 4361
If you have the wallet file... there is no reason NOT to give btcrecover a try to try and find your wallet password... it can't hurt.

As for whether or not your password is 100% correct, it's difficult to know if you have the wrong password, or the file is corrupted. Although, generally if it is corrupted, it will still decrypt the file OK, but just give you rubbish data... so my bet is that the password you have is wrong.
newbie
Activity: 13
Merit: 0
Hi yes that worked!

The top one needed installing but the others were already installed.

The decrypt kep.py works and it asks me for the password but the one I am using does not work. Is this because its not 100% correct like I thought..?

The decrypt walletkeys.py works too I tried that and it asked me for the password, when I enter it it just removed the key sign and left me with a black line below with cursor, after a long wait it said incorrect password again. You can see what it looks like after I have entered the password:


simons-MacBook-Air:~ simonhunt$ python /Users/simonhunt/Downloads/multibit_recovery-master/decrypt_multibit_classic_walletkeys.py /Users/simonhunt/Library/Application\ Support/MultiBit/multibit.wallet\ \(original\)
File NOT Encrypted
--------------------------------------------------------------------------------
Keys are encrypted
This wallet file is encrypted, please enter its password:



I will try all the variations on my password in the decrypt key.py.
When doing this can I type them out in txt editor and then just cut and past them into python even though it does not show the txt? Then I can be sure of which ones do not work.

Also I read some other post about using python to crack the password if I know what it is but typing it wrong. Should I give this a try or keep typing variations into the decrypt key.py script?

I have 2 multibitDATESTAMP.key files in my wallet data key-backup folder. The dates stamps are only 4 days apart in 2013. Is this normal and which should I use or try both?

(I am so massively grateful for your help so far and I have learnt so much thank you.)



HCP
legendary
Activity: 2086
Merit: 4361
No idea to be honest... seems like "pip" failed to install the necessary libraries... I have no idea why. I don't use a Mac

Try installing the libraries one at a time:

sudo pip install bitcoin
sudo pip install protobuf
sudo pip install pylibscrypt

See which one "chokes"...
newbie
Activity: 13
Merit: 0
HI OK I put in the admin password and the python script did its thing, so that was good!

I got some red lines and some error messages as follows:

Exception:
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/commands/install.py", line 283, in run
    requirement_set.install(install_options, global_options, root=options.root_path)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/req.py", line 1431, in install
    requirement.uninstall(auto_confirm=True)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/req.py", line 598, in uninstall
    paths_to_remove.remove(auto_confirm)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/req.py", line 1836, in remove
    renames(path, new_path)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip/util.py", line 295, in renames
    shutil.move(old, new)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
    copy2(src, real_dst)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
    copystat(src, dst)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
    os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-4APscN-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'

Storing debug log for failure in /Users/simonhunt/.pip/pip.log




I hope we are getting closer to the keys. What do I need to do?
HCP
legendary
Activity: 2086
Merit: 4361
you need to put in the "Administrator" password for your computer... it ISN'T your wallet password.
newbie
Activity: 13
Merit: 0
OK great.

I ran that in terminal and I asked for the password. When I typed nothing showed up it just showed a key symbol. I tried 3 times and got this:

simons-MacBook-Air:~ simonhunt$ sudo pip install protobuf pylibscrypt bitcoin
Password:
Sorry, try again.
Password:
Sorry, try again.
Password:
sudo: 3 incorrect password attempts

HCP
legendary
Activity: 2086
Merit: 4361
Did you install the required libraries? refer: https://github.com/HardCorePawn/multibit_recovery#installation

you need to install "Google Protobuf" and "pylibscrypt for Python" and "bitcoin"...

Type this in the Terminal: sudo pip install protobuf pylibscrypt bitcoin
newbie
Activity: 13
Merit: 0
Hi thank you for the reply, sorry for the double post.

I uninstalled the python 3.5 and check the version on terminal was 2.7.9.
I still get this error message when using the decrypt_multibit_classic_keys.py on my .key backups.

Traceback (most recent call last):
  File "/Users/simonhunt/Downloads/multibit_recovery-master/decrypt_multibit_classic_keys.py", line 43, in
    import wallet_pb2
  File "/Users/simonhunt/Downloads/multibit_recovery-master/wallet_pb2.py", line 6, in
    from google.protobuf import descriptor as _descriptor
ImportError: No module named google.protobuf


When I run the decrypt_multibit_classic_walletkeys.py on the .wallet files I get this error message:

Traceback (most recent call last):
  File "/Users/simonhunt/Downloads/multibit_recovery-master/decrypt_multibit_classic_walletkeys.py", line 47, in
    import wallet_pb2, binascii, bitcoin
  File "/Users/simonhunt/Downloads/multibit_recovery-master/wallet_pb2.py", line 6, in
    from google.protobuf import descriptor as _descriptor
ImportError: No module named google.protobuf


Am I still using python wrong?
HCP
legendary
Activity: 2086
Merit: 4361
https://github.com/HardCorePawn/multibit_recovery

I am using python 3.5.4 on a Mac and when I run it I get this:

I really want to get my BTC out asap and get rid of Multibit. Can any one tell me how to fix this?
That is your problem right there... the python bitcoin libraries and the script itself are NOT compatible with Python 3... you need to use Python 2.7.x... and from memory it needs to be Python 2.7.9+...

Install Python 2.7, install the required libraries again (making sure you're installing to Python 2!), and you should be able to get the script to run Smiley


NOTE: it is also possible, that your wallet file is totally corrupted, so your "100% correct password", won't help you. I've tried assisting other users in the past who had files that wouldn't decrypt properly due to the files being corrupted by MultiBit itself Sad


ps. Try not to cross-post in the future... it'll make things very confusing and you'll get answers all over the place. Try and keep it in one thread! Wink
newbie
Activity: 13
Merit: 0
I have a Multibit Classic wallet from 2013. It is password protected and I 100% know the password. When I try to export my private keys I get an incorrect password error.

I have the .wallet files and the key-backup folder with multibitTIMESTAMP.key files. All I want to do is decrypt the keys so I can see my private keys and import them into a functioning wallet like Keepkey.

I have read the other posts, taught myself how to use python and tried using the python script:

decrypt_multibit_classic_keys.py

found here.

https://github.com/HardCorePawn/multibit_recovery

I am using python 3.5.4 on a Mac and when I run it I get this:

Traceback (most recent call last):
  File "/Users/simonhunt/Downloads/multibit_recovery-master/decrypt_multibit_classic_keys.py", line 43, in
    import wallet_pb2
  File "/Users/simonhunt/Downloads/multibit_recovery-master/wallet_pb2.py", line 6, in
    from google.protobuf import descriptor as _descriptor
ImportError: No module named 'google'

I really want to get my BTC out asap and get rid of Multibit. Can any one tell me how to fix this?
Jump to: