Author

Topic: [Electrum] How to tell if custom seed is a BIP39 seed? (Read 322 times)

legendary
Activity: 3682
Merit: 1580
The default worldlist is the same as the bip39 one but an interesting aspect of the electrum mnemonic algo is that it's not tied to any specific wordlist.

but isn't that true about any other implementation of BIP39? basically the wordlist itself is not important, it might as well be anything because each word only represents a number (index in the list) which is then used to generate the master private key.
other wallets may not have the interface feature for the user to do this but they have the capability of doing so, i believe.

The wordlists are a part of the bip39 standard. They have to update the standard each time they add another language Smiley

If you look at check function here or bip39_is_checksum_valid in electrum you will see that the wordlist is used to verify the checksum.

In the case of Electrum's own seed mnemonics the seed version is encoded in the mnemonic and it serves as a checksum and as a way to identify the wallet type. You can see how electrum verifies it's own seeds here (on_restore_seed) and here (is_new_seed). As you can see the dictionary is not being used to verify the seed mnemonic. Only that it hashes to a number with the correct prefix i.e. a valid seed version.

If you want to use a custom wordlist with electrum see here. Note replacing the wordlist with your own will mean that Electrum can't verify bip39 seeds anymore.
legendary
Activity: 3472
Merit: 10611
The default worldlist is the same as the bip39 one but an interesting aspect of the electrum mnemonic algo is that it's not tied to any specific wordlist.

but isn't that true about any other implementation of BIP39? basically the wordlist itself is not important, it might as well be anything because each word only represents a number (index in the list) which is then used to generate the master private key.
other wallets may not have the interface feature for the user to do this but they have the capability of doing so, i believe.
legendary
Activity: 3682
Merit: 1580
The default worldlist is the same as the bip39 one but an interesting aspect of the electrum mnemonic algo is that it's not tied to any specific wordlist. You can use your own custom wordlist with it and restore wallets without supplying the wordlist used i.e. restore on any electrum installation.
jr. member
Activity: 55
Merit: 4
Then you don't have to worry, since your seed is an electrum seed (and not a BIP39 seed).

Electrum does not follow BIP39 to generate a mnemonic code. Electrum is using it's own algorithm + wordlist.
AFAIK this is not part of any BIP.

Thanks, bob123, for your clarification.
legendary
Activity: 1624
Merit: 2481

Then you don't have to worry, since your seed is an electrum seed (and not a BIP39 seed).



If Electrum's seeds are not BIP39, what are they please? BIP49? BIP99?

Electrum does not follow BIP39 to generate a mnemonic code. Electrum is using it's own algorithm + wordlist.
AFAIK this is not part of any BIP.
jr. member
Activity: 55
Merit: 4
Electrum's seeds are not bip39 so this still doesn't apply to you.

Thanks for your clarification. If Electrum's seeds are not BIP39, what are they please? BIP49? BIP99?
jr. member
Activity: 55
Merit: 4

The mnemonic code phrase (often referred to as 'seed') consists of a 12-/18-/24- word phrase.

A 'seed extension' is an additional (or multiple) word added at the end. Do you remember how much you have added ? How many words does your seed have ?
If your seed consists of 13 words, you have 1 word added as an extension. In this case you would need to check whether there is/was a whitespace before or after the word when created the seed.

Your seed itself is fine. It just depends on whether there are additional whitespaces before/after the additional words.

I have just taken the paper on which my seed and custom seed extension are written out of my drawer.

The seed that Electrum 3.2.2 generated for me consisted of 12 words. There is a blank space between each word.

I added 7 custom words as my seed extension. Again there is a blank space between each word.

Hence I don't understand exactly what you meant by

It just depends on whether there are additional whitespaces before/after the additional words

Inside electrum, right ?

Yes indeed.

The best would be to get the newest version running. Then check whether you see a warning. If not, you are fine.

I am struggling to get it to run from its root folder.
legendary
Activity: 3682
Merit: 1580
Electrum's seeds are not bip39 so this still doesn't apply to you.
legendary
Activity: 1624
Merit: 2481
My seed extension consists of about 12 words, with each word separated by a blank.

The mnemonic code phrase (often referred to as 'seed') consists of a 12-/18-/24- word phrase.

A 'seed extension' is an additional (or multiple) word added at the end. Do you remember how much you have added ? How many words does your seed have ?
If your seed consists of 13 words, you have 1 word added as an extension. In this case you would need to check whether there is/was a whitespace before or after the word when created the seed.

Your seed itself is fine. It just depends on whether there are additional whitespaces before/after the additional words.



I generated the seed on a software wallet on my computer.

Inside electrum, right ?


The best would be to get the newest version running. Then check whether you see a warning. If not, you are fine.
jr. member
Activity: 55
Merit: 4
When you use a hardware wallet the seed + any passphrase/extension are not shared with electrum. These are the secrets behind your bitcoins and they remain on your hardware wallet. So this doesn't affect you unless you restored your wallet from seed in electrum. Did you do that?

I am sorry for the confusion that I have created in this topic.

Based on bob123's clarification, I did not use a hardware wallet to generate the custom seed extension. In fact, I generated it using a software wallet (Electrum 3.2.2 on my computer).

jr. member
Activity: 55
Merit: 4

For example if you have entered [ word] or [word ] instead of just [word] (basially, spaces before or after a word).

Thanks for your example.

My seed extension consists of about 12 words, with each word separated by a blank.


Did you buy a hardware wallet ? Or are you using only electrum on your desktop pc (software wallet) ?

No, I did not buy a hardware wallet. I have been using Electrum on my PC all this while.

And I am sorry for the confusion that I have created in this topic. It appears that I have been using a software wallet.

Where did you generate the seed (not the extension) ?
You either have it generated on your hardware wallet (NOT on your computer) or on your computer (which would be a software wallet then.. not a hardware one).

I generated the seed on a software wallet on my computer.

Still.. the following applies:

Do you see a warning ?

No, I haven't seen the warning yet because I haven't been able to launch Electrum 3.2.3 from its root directory.
legendary
Activity: 1624
Merit: 2481
What are "leading/trailing whitespaces"? Can you provide some examples please?

For example if you have entered [ word] or [word ] instead of just [word] (basially, spaces before or after a word).


Sorry but what is "nano/trezor"? I have been using only Electrum all this while.

You have mentioned you are using a hardware wallet ?

Or what did you mean by saying:

I created a hardware wallet [...]

?
Did you buy a hardware wallet ? Or are you using only electrum on your desktop pc (software wallet) ?

Where did you generate the seed (not the extension) ?
You either have it generated on your hardware wallet (NOT on your computer) or on your computer (which would be a software wallet then.. not a hardware one).


Still.. the following applies:
Quote
The wizard will show a warning in this case. (#4566)

Do you see a warning ?
jr. member
Activity: 55
Merit: 4
So this doesn't affect you unless you restored your wallet from seed in electrum. Did you do that?

Thanks for your clarification.

No, I did not restore my wallet from seed in Electrum 3.2.2.

On the contrary I created a NEW hardware wallet using Electrum 3.2.2 and it is a standard segwit wallet with custom seed extension. It is my first segwit wallet. Prior to that, my wallet was the normal bitcoin wallet without seed extension.
jr. member
Activity: 55
Merit: 4
Have you created your seed inside electrum ?

Did you mean the seed extension?

Do you remember clicking the 'Options' button when seing your seed ?

Yes, I did.

Inside the options you can check a box which says 'Expand this seed with custom words'. The next screen tells you then to enter additional words.

I did that too.

IF you have done this AND had leading/trailing whitespaces, you are affected.

What are "leading/trailing whitespaces"? Can you provide some examples please?

Your hardware wallet is unaffected, since i believe you can't enter additional whitespaces when adding custom words in nano/trezor.

Sorry but what is "nano/trezor"? I have been using only Electrum all this while.



Note: This topic belongs into 'Alternative Clients' -> 'Electrum'. You can move your topic by clicking 'move topic' at the bottom left of this page.

[/quote]
legendary
Activity: 3682
Merit: 1580
When you use a hardware wallet the seed + any passphrase/extension are not shared with electrum. These are the secrets behind your bitcoins and they remain on your hardware wallet. So this doesn't affect you unless you restored your wallet from seed in electrum. Did you do that?
legendary
Activity: 1624
Merit: 2481
Have you created your seed inside electrum ?
Do you remember clicking the 'Options' button when seing your seed ?

Inside the options you can check a box which says 'Expand this seed with custom words'. The next screen tells you then to enter additional words.


IF you have done this AND had leading/trailing whitespaces, you are affected. But note the last sentence:

Quote
The wizard will show a warning in this case. (#4566)


Your hardware wallet is unaffected, since i believe you can't enter additional whitespaces when adding custom words in nano/trezor.



Note: This topic belongs into 'Alternative Clients' -> 'Electrum'. You can move your topic by clicking 'move topic' at the bottom left of this page.
jr. member
Activity: 55
Merit: 4
According to the release notes of the latest version of Electrum 3.2.3:

Quote
BIP39 seeds: if a seed extension (aka passphrase) contained multiple consecutive whitespaces or leading/trailing whitespaces then the derived addresses were not following spec. This has been fixed, and affected should move their coins. The wizard will show a warning in this case. (#4566)

I created a hardware wallet many weeks ago using version 3.2.2. It is a standard segwit wallet with custom seed (seed extension).

How do I find out if my seed extension is a BIP39 seed? How do I tell if my standard segwit wallet is affected and hence I need to move my coins?
Jump to: