Bedankt voor je antwoord, ik zet dat net ergens anders te lezen:
Thanks, if only anyone could explain "the wallet has 100 (=keypoolsize) spare keys", that would be nice...
Does this explain it any better?
Ok, so I backup my wallet and store it somewhere.
Then in my client, I create a new address to receive coins and have some money sent my way.
Do I need to backup my wallet again because I have created a new address?
That depends on which wallet program you are using, but in most cases the answer is no.
If you are using Bitcoin-Qt with the default configuration, it pre-generates the next 100 addresses that it will use and stores them in the wallet.dat file. This means that new address that you "created" was already in the wallet.dat when you backed it up (as will be the next 99 addresses "created" after that). Each time Bitcoin-Qt pulls an address from the pool of pre-generated addresses, it pre-generates another address and adds it to the pool so that there are always 100 "future" addresses in any new backup.
There are 2 things to be aware of if you are going to rely on this pre-generation of addresses.
First, when you add (or change) a password to the wallet it tosses out all 100 of the pre-generated addresses and generates 100 new ones. This means that if you back-up the wallet, then add a password, and then "create" a new address to receive coins, the backup will not have the address and will be unable to access those coins.
Second, Bitcoin-Qt uses one of those pre-generated addresses without telling you about it every time you create a transaction to send bitcoins. This address is kept hidden from you, and is used to store the "change" from the transaction. Bitcoin-Qt will generally try to choose to use more bitcoins from your wallet than are needed for the transaction you are creating, then it will send the excess back to your wallet using this "change" address. This means you can't just count up the addresses in the "receive coins" tab of the wallet, since additional addresses were used up each time you sent a transaction as well.
Wel erg slordig dat dit nergens in de client vermeld staat, ik bedoel, ik werk nu al een paar maanden met bitcoin, maar wist nog niets van deze feature.
Maar goed, komt ook omdat ik voorheen alleen maar paper wallets had en mijn android wallet en sinds kort een paar bitcenten voor de test op een linux machine heb gezet. (maar goed dat het een paar centen waren, had een hartverzakking gekregen als ik zag dat mijn hele saldo naar een onbekend adres was gegaan)
Bij versleuteling dus wel opnieuw een backup maken, anders dus na uiterlijk 100 transacties.
Ik kan weer rustig slapen.
Bitcoin FTW