Author

Topic: Adding a seed phrase to your wallet on Electrum? (Read 300 times)

hero member
Activity: 714
Merit: 1010
Crypto Swap Exchange
I'm guilty of not providing any details to what I wrote "if done right" regarding the decoy wallet. Needless to say that you need to disconnect carefully your main stash from coins of your decoy wallet. It's imperative that you have to break the link between both wallets!

A single transaction funding the decoy wallet isn't very convincing, that's a given. Don't be like Scrooge McDuck with your decoy wallet, little "pennies" in your decoy wallet don't look convincing, too. A few transactions over time and in parallel to your "main" stash from exchanges which don't reveal your other transactions might make up a reasonable history. Just be careful to avoid linking wallets!

The amount in the decoy wallet should hurt you a bit which may help to convince the attacker that you're a small shrimp. (If you don't keep a low profile about your crypto stash, you're just stupid. Good luck then with any physical attacker...)

And I wish anybody that your decoy wallet isn't ever needed as true decoy!
hero member
Activity: 1120
Merit: 540
Duelbits - Play for Free | Win for Real
That's one option to have plausible deniability (if done right) with a sacrificial wallet for an empty mnemonic passphrase, while your main wallet(s) are hidden behind complex strong different mnemonic passphrase(s). Of course, you can't store a physical backup of your mnemonic passphrase any near your wallet or its mnemonic recovery words. Good separation is key here.

Another important option is to hide your main wallet should your separate storage location of your physical backup of your recovery words become compromised. The sacrificial wallet with the empty mnemonic passphrase could act as a canary when it's emptied by a thief.

I don't recommend to try to memorize your optional mnemonic passphrase(s). Sooner or later your memory will fail you and you'll be screwed if your wet memory was your only backup. Always have one or more physical (non-digital) backups, completely separate from your wallet's mnemonic recovery words.
Another point to note is that the wallet without a passphrase is a decoy wallet, a plausible deniability in cases where we are forced to provide it, but what if the attacker notices that it's a decoy wallet? He may not find it sufficient and will want you to provide another wallet.

For example, if the decoy wallet is only topped up once, this may raise suspicion, so I think it's a good strategy to keep some funds there.
hero member
Activity: 714
Merit: 1298

12 words are entropically secure so adding an extra passphrase won't change anything,

unless your SEED is in the hands of stranger. Should this happen an extra passphrase would safe your life. For those who have multiple backups which at the same time are geographically distant the passphrase added to SEED may serve as a lifesaver which will assure their  sleep well at night.
sr. member
Activity: 406
Merit: 443
The main benefit of passphrase is for physical attacks.
That's one option to have plausible deniability (if done right) with a sacrificial wallet for an empty mnemonic passphrase, while your main wallet(s) are hidden behind complex strong different mnemonic passphrase(s). Of course, you can't store a physical backup of your mnemonic passphrase any near your wallet or its mnemonic recovery words. Good separation is key here.

I partially agree, 12 words are entropically secure so adding an extra passphrase won't change anything, making the passphrase complex will increase the chance of losing access your bitcoin.

creating a passphrase of 3-5 words is a compromise in case you forget it and it's also an ideal solution for physical attacks, will delay whoever manages to find the wallet seed for a short time until you can send bitcoin from another wallet.

If you forget it, the cost of brute force will not be expensive.
hero member
Activity: 714
Merit: 1010
Crypto Swap Exchange
The main benefit of passphrase is for physical attacks.
That's one option to have plausible deniability (if done right) with a sacrificial wallet for an empty mnemonic passphrase, while your main wallet(s) are hidden behind complex strong different mnemonic passphrase(s). Of course, you can't store a physical backup of your mnemonic passphrase any near your wallet or its mnemonic recovery words. Good separation is key here.

Another important option is to hide your main wallet should your separate storage location of your physical backup of your recovery words become compromised. The sacrificial wallet with the empty mnemonic passphrase could act as a canary when it's emptied by a thief.

I don't recommend to try to memorize your optional mnemonic passphrase(s). Sooner or later your memory will fail you and you'll be screwed if your wet memory was your only backup. Always have one or more physical (non-digital) backups, completely separate from your wallet's mnemonic recovery words.
hero member
Activity: 854
Merit: 1031
Only BTC
However, it's worth noting that extending the seed with a passphrase is not going to add much security if it's not too complex or if it's stored with the seed in the same place.
Yeah, that is true, if you set a BIP39 passphrase, it must be one that is difficult to bruteforce, it isn't recommended to set a passphrase that is easy for you to remember or memorize, as some newbies might do, because if it is easy for you to memorize, it would probably be easy for an attacker who already has your seed phrase to bruteforce. It should be a strong passphrase and then backed up in a different location from the seed phrase, that's when it can be useful in protecting ones funds.
sr. member
Activity: 406
Merit: 443
You're right, I just did the test here, to import an electrum wallet into sparrow, only with the keystore file. Another point worth highlighting is that Sparrow does not import electrum keystore derived from a BIP39 seed (imported)

Does anyone know why?
There are some libraries that can be used to convert electrum seed to XPRV seed and then it can be used with any BIP32 wallet.


However, it's worth noting that extending the seed with a passphrase is not going to add much security if it's not too complex or if it's stored with the seed in the same place.
The main benefit of passphrase is for physical attacks.
hero member
Activity: 1120
Merit: 540
Duelbits - Play for Free | Win for Real
As far as I know, the only wallet that supports electrum seed phrase is bluewallet.
If you want to import your electrum wallet to Sparrow, you have to import the wallet file. You can't import the seed phrase that has been generated by electrum to Sparrow.
You're right, I just did the test here, to import an electrum wallet into sparrow, only with the keystore file. Another point worth highlighting is that Sparrow does not import electrum keystore derived from a BIP39 seed (imported)

It's true that when extending the seed with a passphrase, we will get a completely different wallet but, technically, it's not a password. A password is used to encrypt the seed or the wallet file while the passphrase is part of the seed itself.

However, it's worth noting that extending the seed with a passphrase is not going to add much security if it's not too complex or if it's stored with the seed in the same place.
You may be right about the term.
legendary
Activity: 2520
Merit: 2853
Top Crypto Casino
The extension word is a password that together with the electrum seed phrase will create a new completely unique wallet that is only accessible with the seed phrase + custom word which is also known as a Passphrase, each wallet gives a name to it , but the technical term is Passphrase (salt).
It's true that when extending the seed with a passphrase, we will get a completely different wallet but, technically, it's not a password. A password is used to encrypt the seed or the wallet file while the passphrase is part of the seed itself.

However, it's worth noting that extending the seed with a passphrase is not going to add much security if it's not too complex or if it's stored with the seed in the same place.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
You can't "add" a seed phrase to a private key because it only works the other way around, cryptographically speaking.

A seed phrase generates an extended private key which in turn can generate more private keys, and other extended private keys.
legendary
Activity: 2380
Merit: 5213
Electrum generates seed phrases different from the BIP39 standard, so only Electrum and some wallets like Sparrow wallet and bluewallet provide support for the electrum seed phrase standard.
As far as I know, the only wallet that supports electrum seed phrase is bluewallet.
If you want to import your electrum wallet to Sparrow, you have to import the wallet file. You can't import the seed phrase that has been generated by electrum to Sparrow.
hero member
Activity: 1120
Merit: 540
Duelbits - Play for Free | Win for Real
Thanks.

I hope is not too off-topic but regarding "Custom Word extensions" to the seed phrase.

How does this work? Because i guess that if i try to import a seed phrase to another wallet, let's say "BitcoinCore" i don't think they will support the extension of custom words i added to my seed phrase?
The extension word is a password that together with the electrum seed phrase will create a new completely unique wallet that is only accessible with the seed phrase + custom word which is also known as a Passphrase, each wallet gives a name to it , but the technical term is Passphrase (salt).

Electrum generates seed phrases different from the BIP39 standard, so only Electrum and some wallets like Sparrow wallet and bluewallet provide support for the electrum seed phrase standard.

Bitcoin core works differently in relation to wallet generation, it follows the BIP32 standard which generates a seed, but the seed does not encode BIP39 words, Bitcoin core uses descriptors.

If you want, you can import the same electrum wallet or a BIP39 wallet with or without passphrase via descriptor. You must import using the wallet's xpriv, knowing xpriv it is possible to import into Bitcoin core.
hero member
Activity: 714
Merit: 1010
Crypto Swap Exchange
How does this work? Because i guess that if i try to import a seed phrase to another wallet, let's say "BitcoinCore" i don't think they will support the extension of custom words i added to my seed phrase?
Bitcoin Core is not a suitable example here as it doesn't use the concept of mnemonic recovery words. In core you could import descriptors based on a master private key (xpriv) which itself is derived from a set of mnemonic recovery words and an optional mnemonic passphrase.

Sometimes a pictures allows things to sink in better. What nc50lc is speaking of, you can find in the BIP32 Root Key Derivation


Source: https://raw.githubusercontent.com/EAWF/BTC-Toolbox/3938785f186c76598989cc0aa017ad351483d3b1/Images/KeyDerivationTechnicalOverview.png

So, wallets that do implement BIP39 without bugs should all derive the same Master Private Key from a same set of mnemonic recovery words and an optional mnemonic passphrase.

The devil may be in the details and I can't recall from the top of my head what BIP39 says about input sanitation (if any!) for the optional mnemonic passphrase. E.g. a trailing space should be perfectly valid, but what about two or more spaces? Are they sanitized to one space or not?

I did some experiments long time ago with Electrum but unfortunately can't recall the results either. What I remember was something surprises me... will need to repeat and document results better.
legendary
Activity: 2492
Merit: 5865
Self-proclaimed Genius
How does this work? Because i guess that if i try to import a seed phrase to another wallet, -snip-
It's just a fancy term used by Electrum, but that's the same as a "BIP39 Passphrase".
There's a "standards" to that which every wallet that supports BIP39 standard should've implemented (standard=the majority is doing the exact same thing)
So you can expect every wallet that support BIP39 seed to support the passphrase unless it's badly written.

I can see that your script creates BIP39 seed, so only apply the logic above to it since Electrum doesn't follow that standard on its native seed phrase.
However, it uses BIP39 standard to restore when 'BIP39 seed' is ticked in the options.

How does that work?
When deriving the seed from the mnemonic phrase, the words are passed throught 2048 rounds of HMAC-SHA512 as 'password' and the string "mnemonic" as salt.
But if you set a "Custom Word" or BIP39 passphrase, that salt will be extended to "mnemonic".
Given that the salt is different in the latter, the computed seed will be different from the former. (as they explained in the previous replies)

Note: The "seed" isn't your 12 words, the mnemonic is your 12 words. It's the HDSeed used to create your master private key.
legendary
Activity: 2380
Merit: 5213
I hope is not too off-topic but regarding "Custom Word extensions" to the seed phrase.
The custom word you add to your seed phrase is like an extra word. It's also called passphrase and some call it 13th or 25th word.
Take note that with any change to your passphrase, you will have completely different addresses and you won't be able to recover your wallet from seed phrase, if you don't know the passphrase.

It may worth  mentioning that the passphrase doesn't have to be a word and it can be any combination of words or characters.



How does this work? Because i guess that if i try to import a seed phrase to another wallet, let's say "BitcoinCore" i don't think they will support the extension of custom words i added to my seed phrase?
If you have added a passphrase to your seed phrase and you want to recover your wallet from seed phrase using a different software, you have to use a wallet that supports passphrase.

Take note that electrum uses its own algorithm for generating a seed phrase and if you have generated a seed phrase using electrum, you have to import it in electrum itself or bluewallet. You won't be able to recover your wallet from seed phrase using other softwares, regardless of you have added a passphrase to your seed phrase or not.

Also note that bitcoin core doesn't support seed phrase at all.
newbie
Activity: 11
Merit: 0
Thanks.

I hope is not too off-topic but regarding "Custom Word extensions" to the seed phrase.

How does this work? Because i guess that if i try to import a seed phrase to another wallet, let's say "BitcoinCore" i don't think they will support the extension of custom words i added to my seed phrase?
legendary
Activity: 2380
Merit: 5213
So yeah, my intention was to use the seed phrase and private key that script created. Because if i just import a seed phrase alone into Electrum. Electrum is creating the private key with it's own method.
If you import a BIP39 seed phrase in electrum, it doesn't use its own method for genrating your private keys. Electrum uses a standard algorithm to generate the private keys.


What i did was to use the Private key of my script to use Electrum, but when i do that, there is no seed phrase, in case i want to recover my wallet with the seed phrase.
You generated a private key and now you have a private key. If you want to have a seed phrase, you should generate a seed phrase.

Take note that you can derive private key from a seed phrase, but you can't derive seed phrase from a private key.
newbie
Activity: 11
Merit: 0
For people wondering about my script to create a bitcoin address, i actually made a post showing how it works

https://bitcointalksearch.org/topic/--5489456

So yeah, my intention was to use the seed phrase and private key that script created. Because if i just import a seed phrase alone into Electrum. Electrum is creating the private key with it's own method.

What i did was to use the Private key of my script to use Electrum, but when i do that, there is no seed phrase, in case i want to recover my wallet with the seed phrase.
hero member
Activity: 714
Merit: 1010
Crypto Swap Exchange
The private key is just a single key and the seed phrase contains many keys.
Sorry if this sounds like nitpicking, but confusion arises when terminology is used in a loose way, also for OP.

A private key is in the end a hopefully random 256bit number with some negligible size constraints imposed by the generator point G (private keys must be smaller than G). Edit: It's maybe more the contraint by the order of the finite group used in Bitcoin's elliptic curve; I admit not being too fluent here.

I wouldn't say the seed phrase (the mnemonic recovery words) contains many keys, but rather you can derive many many keys from it by a standardized mathematical procedure (key derivation). The mnemonic recovery words encode an initial hopefully random entropy in human readable form and include a checksum to detect an error in the word sequence.

You're not wrong, but if someone doesn't know how HD wallets work then it may be confusing to say a seed phrase "contains many keys". Or it's just me, nitpicking...  Cheesy


Hi, i have created my own private key, public key and seed phrase.

But i can't see the option to add a seed phrase to my private key.
When i created my wallet it asks you to set a type of address and the private key, i created a bech32 address with the private key successfully.
Why do you start with a private key? A HD wallet usually starts with some random entropy which is represented by the mnemonic recovery words. From there you decide what kind of addresses you want to use (Electrum is fixed on one address type in one particular wallet, eg. native segwit addresses that begin with bc1q....).

When the derivation path is determined, child keys are derived and the HD wallet takes care of that.

You may want to have a read here: https://learnmeabitcoin.com/technical/keys/hd-wallets/

In Electrum you can't add an arbitrary independant private key to a HD wallet, you can only sweep (ie. empty) the independant private key to an address generated and controlled by that HD wallet.

Is there a way to add my seed phrase to that private key?
I would say, no.

If i start a new wallet and use the seed phrase i have instead, can i make it bech32?
If your seed phrase (the mnemonic recovery words) is BIP-39 compatible, you can import that to Electrum and choose to have native segwit key derivation with bech32 bc1q... addresses.
legendary
Activity: 2380
Merit: 5213
and only import the public key to an online device with Electrum.
Electrum (and all other wallets I know) doesn't allow you to import a public key.
If you want to have a watch-only wallet in electrum, you need to import your address(es) or your master public key.
legendary
Activity: 3360
Merit: 3094
BTC price road to $80k
Thank you.

Yes, i created my own Private, public key and seed phrase on my own with my own script.

But the option of just importing the seed phrase and Electrum makes it bech32 works for me.

I know Electrum is open-source but you would rely on the community to find something fishy in the code, you yourself won't go on each update and read the whole code of Electrum. That's why i wanted to create my own private key. Also, when using Electrum wallet to create your key, you are trusting their Entropy, which it can be VERY secure and everything. But i feel safer trusting my own entropy.

You seems confused about the private key and the seedphrase?

Seedphrase contains unique private keys(Many private keys that can only derived from your seed phrase) and you can't just import the private key into your Seedphrase.
The private key is just a single key and the seed phrase contains many keys.

If you want to add this private key you just generated outside of your current Electrum wallet I think you will need to extract the private keys from your seed phrase and then import them into a new wallet including the private keys that you generated outside Electrum.

But that's not the best way to protect your wallet if you want a secure way never import the private key into an online device I suggest import it into cold storage Electrum wallet and only import the public key to an online device with Electrum.

sr. member
Activity: 448
Merit: 560
Crypto Casino and Sportsbook
Op every Bitcoin address has it's own special seed phrase.
This is not true.
Each bitcoin address can be generated by a very big number of different seed phrases.
I have made the necessary correction. The big number which you are referring to is actually the public key which is used to generate the respective addresses in that particular wallet. I mis typed address instead of wallet in that particular statement. Funny how choice of words can be that important in cases like this "LOL".

I think your further explanation of this thread actually counters your own point in the first sentence, every address doesn’t have a specific seed phrase rather a single seed phrase can be used to generate multiple child private keys as you stated which in turn can be used to generated different bitcoin addresses. With a single bitcoin seed phrase you can even have addresses of different formats just by creating new wallets and specifying the derivation path you wish to have it. This is what I think OP is trying to do maybe get a bech32 address from his existing private key or seed phrase which he will just simply change in the options when creating a new wallet with same seed phrase
Thanks for the heads up EL MOHA. I actually miss typed wallet in place of address. Like I was trying to express earlier, a seed phrase is for a single wallet and in the case of the wallet being an HD wallet, there could be multiple addresses having their individual private keys which were generated from the master private key which was in turn generated via the seed phrase.
legendary
Activity: 2380
Merit: 5213
With a single bitcoin seed phrase you can even have addresses of different formats just by creating new wallets and specifying the derivation path you wish to have it.
A seed phrase can generate different types of addresses only if it's BIP39.
You can't generate different types of addresses from your seed phrase, if it has been generated by electrum. The script is encoded in electrum seed phrase.
sr. member
Activity: 504
Merit: 279
Op every Bitcoin address has it's own special seed phrase. The seed phrase is a series of 12 , 18 or 24 words as the case may be, which is generated simultaneously along with the wallet address. The seed phrase in turn is used to create a private key known as the master private key and for the case of an HD wallet, that Master private key is used to generate child keys for other addresses.

I think your further explanation of this thread actually counters your own point in the first sentence, every address doesn’t have a specific seed phrase rather a single seed phrase can be used to generate multiple child private keys as you stated which in turn can be used to generated different bitcoin addresses. With a single bitcoin seed phrase you can even have addresses of different formats just by creating new wallets and specifying the derivation path you wish to have it. This is what I think OP is trying to do maybe get a bech32 address from his existing private key or seed phrase which he will just simply change in the options when creating a new wallet with same seed phrase
legendary
Activity: 2520
Merit: 2853
Top Crypto Casino
But i can't see the option to add a seed phrase to my private key.
Such option does not exist. The private key is derived from the seed phrase not the other way around.

Quote
If i start a new wallet and use the seed phrase i have instead, can i make it bech32?
Although I don't recommend doing this but yes you can. You have to create a new wallet and before typing the seed words make sure to change the seed type from "Electrum" to "bip39" then Electrum will ask you which address type you want to create, choose "native segwit (p2wpkh)".

Take note that a seed can be used to generate an infinite number of addresses while your script generates a single one. The address your script generated will be the first one Electrum generates and you can see it on the Addresses tab.
legendary
Activity: 2380
Merit: 5213
And you can completely trust the entropy of electrum seeds or BiP39 cause it's not practically possible for anyone to brute force in million years.
If your seed phrase has been generated by electrum, you can be sure that it provides enough entropy, but if your seed phrase is BIP39, it depends on what software you used for generating your entropy. For example, if you generate your BIP39 seed phrase using a close-source wallet, there is no way to know how it has been generated.
sr. member
Activity: 2436
Merit: 272
Eloncoin.org - Mars, here we come!
Also, when using Electrum wallet to create your key, you are trusting their Entropy, which it can be VERY secure and everything. But i feel safer trusting my own entropy.

Electrum doesn't collect any data whether seeds, privkeys or whatever and to ensure that you can generate the seeds on a completely offline device that gives the satisfaction of the seeds generated doesn't transmit anywhere.

But if you're technically sound and can make your own privkeys then it's good but more often the randomness of the human brain fell short in every day.

And you can completely trust the entropy of electrum seeds or BiP39 cause it's not practically possible for anyone to brute force in million years.
legendary
Activity: 2380
Merit: 5213
But i can't see the option to add a seed phrase to my private key.?
What do you mean by adding a seed phrase to your private key? Do you mean deriving the seed phrase from your private key? If so, that's not possible.

We generate a seed phrase and then we use that to genrate our private keys.


Op every Bitcoin address has it's own special seed phrase.
This is not true.
Each bitcoin address can be generated by a very big number of different seed phrases.
newbie
Activity: 11
Merit: 0
Thank you.

Yes, i created my own Private, public key and seed phrase on my own with my own script.

But the option of just importing the seed phrase and Electrum makes it bech32 works for me.

I know Electrum is open-source but you would rely on the community to find something fishy in the code, you yourself won't go on each update and read the whole code of Electrum. That's why i wanted to create my own private key. Also, when using Electrum wallet to create your key, you are trusting their Entropy, which it can be VERY secure and everything. But i feel safer trusting my own entropy.
sr. member
Activity: 448
Merit: 560
Crypto Casino and Sportsbook
Op every Bitcoin wallet has it's own special seed phrase. The seed phrase is a series of 12 , 18 or 24 words as the case may be, which is generated simultaneously along with the wallet address. The seed phrase in turn is used to create a private key known as the master private key and for the case of an HD wallet, that Master private key is used to generate child keys for other addresses.

Quote
Hi, i have created my own private key, public key and seed phrase.
But i can't see the option to add a seed phrase to my private key.
When i created my wallet it asks you to set a type of address and the private key, i created a bech32 address with the private key successfully.
Your public key is generated simultaneously along with the ones I mentioned above. The public key is used to generate your wallet address. You can simply add a new wallet by using the seed phrase or private key of the wallet.
hero member
Activity: 770
Merit: 904
Your question is quite confusing, first of all you don’t add seed phrase to private key. Infact you get your private key from seed phrase and subsequently public key from private key. So having your seed phrase alone is ok.

If i start a new wallet and use the seed phrase i have instead, can i make it bech32?

Yes you can actually generate a native SegWit address or any type of address from your seed phrase by just clicking on the option when importing your seed phrase if it is Bip 39 click it and then the next option choose native SegWit as derivation path or any of the type you wish.

Go through this guide
https://bitcoinelectrum.com/restoring-your-standard-wallet-from-seed/

If it is the private key you have and want to sweep it to another wallet. You will need to create a new wallet and then sweep using the guide below

https://bitcoinelectrum.com/sweeping-your-private-keys-into-electrum/
legendary
Activity: 1512
Merit: 4795
Leading Crypto Sports Betting & Casino Platform
The seed phrase that Electrum will generate you is bech32 that will start from bc1.

The seed phrase will generate the private keys, the public keys and the addresses. You do not need to bother yourself with private keys. The seed phrase will regenerate all for you. Just go to standard wallet.

Or you have a private key that you want to import on Electrum?
staff
Activity: 3500
Merit: 6152
I'm not sure I understand how you created the wallet in the first place?

Creating a standard wallet with Electrum should've given you a seedphrase. See here: https://bitcoinelectrum.com/creating-an-electrum-wallet/

IF you created your address/private key somewhere else, and now you want to switch to Electrum, the nyou can do that by sweeping the funds from the private keys, to a newly generated wallet (as shown in the article above). You can't just take one address and make it part of an existing seedphrase.
newbie
Activity: 11
Merit: 0
Hi, i have created my own private key, public key and seed phrase.

But i can't see the option to add a seed phrase to my private key.
When i created my wallet it asks you to set a type of address and the private key, i created a bech32 address with the private key successfully.

Is there a way to add my seed phrase to that private key?

If i start a new wallet and use the seed phrase i have instead, can i make it bech32?
Jump to: