Bitcoin Forum

Bitcoin => Bitcoin Technical Support => Topic started by: red14159 on December 09, 2019, 07:31:53 PM



Title: Btcrecover error with Electrum wallet[SOLVED]
Post by: red14159 on December 09, 2019, 07:31:53 PM
So I have recently been attempting to crack the lost password on my Electrum (seed version 18) wallet.dat. The seed and the password were lost about 3 years ago, But i recently came into possession of the wallet data. Now I installed all the proper programs.

(python 2.7/pycrypto/scrypt/google protocol buffers/Windows GPU acceleration for Bitcoin Unlimited)

when i run the cmd line C:\Users\****\Desktop\coins\btcrecover\btcrecover-master>python btcrecover.py --wallet wallet.dat --token token.txt

I receive this error on response

"NotImplementedError("Unsupported Electrum2 seed version " + unicode(seed_version))
NotImplementedError: Unsupported Electrum2 seed version 18
"

Now im assuming that just means my wallet type is unsoported. Im slightly new to a lot of this stuff so I'm not 100% on where to go from here.

One of my thoughts was to try and see if there was any way to convert my electrum wallet.dat into another wallet (specifically one supported by btcrecover), and dump the wallet.dat from the new wallet into btcrecover. I have not had any luck so far.

My other thought was to see if there was any way to write custom unisource code to fit the parameters of the unsupported wallet. Again i am very new to all of this so i apologize. There is almost $1400 on this wallet, so I am really hoping to get into it. I have already contacted dave several times and he has not responded.

If someone is able to help me figure out btcrecover I would be more than happy to share some of my coin.

Here is a screenshot of the error
https://ibb.co/DztKfgh


Thank you!

EDIT;
I fixedthe issue and got btcrecover to work on electrum2 wallet. Simply drag and drop the wallet.dat file into notepad, ctrl+f "seed_version" change whatever your seed version is to 11. Presto!


Title: Re: Btcrecover error with Electrum wallet
Post by: Btcspot on December 09, 2019, 10:35:32 PM
 Hi are you trying to guess your password? I thought electrum doesnt use wallet.dat. You can download this it might help github.com/Dwerg/walletaid
 Its a wallet program that can maybe repair wallet. Let me know if it helps and maybe you can tip me.


Title: Re: Btcrecover error with Electrum wallet
Post by: BitMaxz on December 09, 2019, 11:27:06 PM
Old wallet.dat from electrum is not encrypted unlike now and Electrum right now doesn't have wallet.dat it is a plain wallet file.

Try to open the wallet.dat with notepad it must show your private keys.

If ever you are lucky and find the private keys under wallet.dat you can import it to the latest version of Electrum(Must be downloaded to real electrum.org).

Be careful on using any links shared through PM with newbies and the above post never heard the link posted by BTCspot.


Title: Re: Btcrecover error with Electrum wallet
Post by: Abdussamad on December 10, 2019, 02:37:52 AM
Old wallet.dat from electrum is not encrypted unlike now and Electrum right now doesn't have wallet.dat it is a plain wallet file.

Try to open the wallet.dat with notepad it must show your private keys.

This is not true. Even in pre 2.0 versions of electrum you could encrypt the wallet's secrets by setting a password.

@OP you should make an issue about your problem on the btcrecover git repo. What's happened is that electrum has upped the wallet version while btcrecover hasn't kept pace. It's not a big problem and I'm sure the btc recover author will issue a quick fix for it. "Quick" obviously being relative to open source development speed.


Title: Re: Btcrecover error with Electrum wallet
Post by: HCP on December 10, 2019, 03:51:48 AM
One of my thoughts was to try and see if there was any way to convert my electrum wallet.dat into another wallet (specifically one supported by btcrecover), and dump the wallet.dat from the new wallet into btcrecover. I have not had any luck so far.
That's not possible unless someone were to write a completely custom piece of code that was able to:
1. Decrypt the electrum wallet
2. Extract either the seed or private keys
3. Import those into the wallet format of another wallet

Given you don't have the password to the wallet file, you're going to fail at the first step of "decrypt the electrum wallet"... if you had the password, you wouldn't need to convert the wallet file.


Quote
My other thought was to see if there was any way to write custom unisource code to fit the parameters of the unsupported wallet. Again i am very new to all of this so i apologize. There is almost $1400 on this wallet, so I am really hoping to get into it. I have already contacted dave several times and he has not responded.
You could try logging an issue on the btcrecover github issue register (https://github.com/gurnec/btcrecover/issues) as Abdussamad suggested, but the original developer isn't very active these days (last commit was 22 Dec 2017 :o :o :o)

or just try editing the btcrecover code and changing the btcrpass.py file... https://github.com/gurnec/btcrecover/blob/master/btcrecover/btcrpass.py#L1630

So, on the copy of btcrpass.py that is on your computer, find the code that looks like this:
Quote
       if wallet.get("seed_version") not in (11, 12, 13) and wallet_type != "imported":  # all 2.x versions as of Oct 2016
            raise NotImplementedError("Unsupported Electrum2 seed version " + unicode(seed_version))

And just add "18" to the list of seed_versions and see what it does... like this:
Quote
       if wallet.get("seed_version") not in (11, 12, 13, 18) and wallet_type != "imported":  # all 2.x versions as of Oct 2016
            raise NotImplementedError("Unsupported Electrum2 seed version " + unicode(seed_version))

I haven't tested this, so no idea if it will work or if it will blow up your computer! :P


NOTE: you should be working on a copy of your wallet file... not the original!!


Title: Re: Btcrecover error with Electrum wallet
Post by: red14159 on December 11, 2019, 03:57:18 AM
One of my thoughts was to try and see if there was any way to convert my electrum wallet.dat into another wallet (specifically one supported by btcrecover), and dump the wallet.dat from the new wallet into btcrecover. I have not had any luck so far.
That's not possible unless someone were to write a completely custom piece of code that was able to:
1. Decrypt the electrum wallet
2. Extract either the seed or private keys
3. Import those into the wallet format of another wallet

Given you don't have the password to the wallet file, you're going to fail at the first step of "decrypt the electrum wallet"... if you had the password, you wouldn't need to convert the wallet file.


Quote
My other thought was to see if there was any way to write custom unisource code to fit the parameters of the unsupported wallet. Again i am very new to all of this so i apologize. There is almost $1400 on this wallet, so I am really hoping to get into it. I have already contacted dave several times and he has not responded.
You could try logging an issue on the btcrecover github issue register (https://github.com/gurnec/btcrecover/issues) as Abdussamad suggested, but the original developer isn't very active these days (last commit was 22 Dec 2017 :o :o :o)




SOLVED
I opened the wallet in notepad and changed the seed version to 11, presto! Got btc to work!
or just try editing the btcrecover code and changing the btcrpass.py file... https://github.com/gurnec/btcrecover/blob/master/btcrecover/btcrpass.py#L1630

So, on the copy of btcrpass.py that is on your computer, find the code that looks like this:
Quote
       if wallet.get("seed_version") not in (11, 12, 13) and wallet_type != "imported":  # all 2.x versions as of Oct 2016
            raise NotImplementedError("Unsupported Electrum2 seed version " + unicode(seed_version))

And just add "18" to the list of seed_versions and see what it does... like this:
Quote
       if wallet.get("seed_version") not in (11, 12, 13, 18) and wallet_type != "imported":  # all 2.x versions as of Oct 2016
            raise NotImplementedError("Unsupported Electrum2 seed version " + unicode(seed_version))

I haven't tested this, so no idea if it will work or if it will blow up your computer! :P


NOTE: you should be working on a copy of your wallet file... not the original!!