<p>When you do certain actions (usually a send), a new key is generated. Your backup pre-generates 100 of these keys. Once you need more than 100 keys generated, your backup no longer knows about the new keys. This means you should perform backups regularly, at least every 100 transactions. </p>

CC BY-SA 3.0
2013-12-02T03:45:06.127Z
2013-12-02T03:45:06.127Z
DAC
<p>You don't care about transactions (these are stored online)
You just have to care about your private keys for your addresses, that is the only important information stored in the wallet.</p>

<p>The piece of documentation you referenced speaks about a feature in bitcoin client, which generates 100 keys in advance, thus adding a new address takes the key from the stock. If your wallet is destroyed but you have a backup of the wallet, and you have some money on some addresses, which have been added to your wallet later than the time of creation of the  backup, you'll be still able recover these money. That is the point of the feature.</p>

CC BY-SA 3.0
2013-12-02T05:59:00.230Z
2013-12-02T05:59:00.230Z
V-X
<p>I read this paragraph from bitcoin.it but I don't get it completely.</p>

<blockquote>
  <p>The wallet contains a pool of queued keys. By default there are 100
  keys in the key pool. The size of the pool is configurable using the
  "-keypool" command line argument. When you need an address for
  whatever reason (send, “new address”, generation, etc.), the key is
  not actually generated freshly, but taken from this pool. A brand new
  address is generated to fill the pool back to 100. So when a backup is
  first created, it has all of your old keys plus 100 unused keys. After
  sending a transaction, it has 99 unused keys. <strong>After a total of 100
  new-key actions, you will start using keys that are not in your
  backup. Since the backup does not have the private keys necessary for
  authorizing spends of these coins, restoring from the old backup will
  cause you to lose Bitcoins</strong>.</p>
</blockquote>

<p>Can someone explain this in a clear way, especially the bold parts?</p>

<hr>

<p><em>Note: Since Bitcoin Core uses deterministic wallets (BIP32) now, this behavior <strong>does not apply to new wallets</strong> created with Bitcoin Core versions 0.13.0 and newer. It <strong>does apply to old wallets</strong> created with previous versions that were carried over to the new versions of Bitcoin Core!</em></p>

<bitcoin-core><private-key><backup><keypool>
What situations will you lose your bitcoins during backup?
Aivan Monceller
# What situations will you lose your bitcoins during backup?

(Asked by: username_0 on 2013-12-02)

I read this paragraph from bitcoin.it but I don't get it completely.

> The wallet contains a pool of queued keys. By default there are 100
> keys in the key pool. The size of the pool is configurable using the
> "-keypool" command line argument. When you need an address for
> whatever reason (send, “new address”, generation, etc.), the key is
> not actually generated freshly, but taken from this pool. A brand new
> address is generated to fill the pool back to 100. So when a backup is
> first created, it has all of your old keys plus 100 unused keys. After
> sending a transaction, it has 99 unused keys. **After a total of 100
> new-key actions, you will start using keys that are not in your
> backup. Since the backup does not have the private keys necessary for
> authorizing spends of these coins, restoring from the old backup will
> cause you to lose Bitcoins**.

Can someone explain this in a clear way, especially the bold parts?

---

*Note: Since Bitcoin Core uses deterministic wallets (BIP32) now, this behavior **does not apply to new wallets** created with Bitcoin Core versions 0.13.0 and newer. It **does apply to old wallets** created with previous versions that were carried over to the new versions of Bitcoin Core!*

**Tags:** bitcoin-core, private-key, backup, keypool


---

## 2 answers

### Answer by username_1 on 2013-12-02. Score: 0 | Accepted answer

When you do certain actions (usually a send), a new key is generated. Your backup pre-generates 100 of these keys. Once you need more than 100 keys generated, your backup no longer knows about the new keys. This means you should perform backups regularly, at least every 100 transactions.


---

### Answer by username_2 on 2013-12-02. Score: 0

You don't care about transactions (these are stored online)
You just have to care about your private keys for your addresses, that is the only important information stored in the wallet.

The piece of documentation you referenced speaks about a feature in bitcoin client, which generates 100 keys in advance, thus adding a new address takes the key from the stock. If your wallet is destroyed but you have a backup of the wallet, and you have some money on some addresses, which have been added to your wallet later than the time of creation of the backup, you'll be still able recover these money. That is the point of the feature.


---

