Bitcoin Forum

Bitcoin => Electrum => Topic started by: PieStick on April 25, 2013, 06:50:25 PM



Title: Restore from seed question
Post by: PieStick on April 25, 2013, 06:50:25 PM
When I first found Electrum, I transfered in a small number of coins, deleted my wallet and then practiced restoring from my seed. It worked great and all the original addresses/coins were there. I was impressed with how easy everything was.

Now that I have been using it for a while, I have 50+ addresses. If I need to restore from my seed in the future, how will the client 'know' about all newly created addresses? With the original client, I know the wallet needs to be backed up each time new addresses are created. If this is not true with Electrum, how does it work? Does Electrum just use my seed to re-add addresses 1 at a time until there are 5 unused addresses in the list? How are Change addresses differentiated from receiving addresses?

I love the deterministic wallet idea, just a little confused how it works. Thanks.


Title: Re: Restore from seed question
Post by: Tachikoma on April 26, 2013, 08:12:06 AM
Quote
Does Electrum just use my seed to re-add addresses 1 at a time until there are 5 unused addresses in the list?

Basically this is actually what it does, presuming your gap limit is set to five. I'm not sure how change addresses are differentiated internally at the moment, so I will leave that question open.


Title: Re: Restore from seed question
Post by: jag2k2 on April 27, 2013, 07:50:07 PM
Yeah I use Electrum too and was wondering the exact same thing.  Would love an answer.


Title: Re: Restore from seed question
Post by: jubalix on April 28, 2013, 12:45:44 AM
ok, my current understanding (feel free to shoot me down)

there is a function call, something like

pseudo.random();

that give you the instal seed.

then based on this initial seed all the following private keys and addresses are calculated, and it is deterministic. So the same private keys and addresses will be produced every time you use that seed.

the weakness is, if some one get your seed, your whole wallet is gone.
the intial random event was it random enough

and if you keep makeing addresses from the same seed, it may become easier to figure out the privkey