LearnBitcoin

Glossary

Key Rotation

Regularly replacing or generating new cryptographic keys to minimize exposure if an old key is compromised.

"Key rotation" has two distinct meanings in Bitcoin, and conflating them is a common source of confusion:

  • Address rotation: using a fresh address for every receive. HD wallets do this automatically, and the keys for each address are derived from the same master seed. The seed itself doesn't rotate. This is privacy hygiene, not security rotation; the whitepaper recommended it in 2008 and HD wallets made it free.

  • True key rotation: moving funds from one set of keys to a brand new set, then destroying or retiring the old keys. This is what corporate security policy means by "rotate the keys": NIST's key-management guidance gives every key a cryptoperiod, partly to limit the exposure if a single key is compromised. In Bitcoin it's a deliberate, manual operation: spend everything to fresh addresses derived from a new seed (Bitcoin Core's sendall RPC does the sweep in one call).

True key rotation makes sense when:

  • A cosigner in a multisig leaves and you don't want them holding even a now-insufficient share of the quorum.
  • You suspect a key has been compromised but aren't sure (cold backup that was briefly exposed, for example).
  • A long-running setup has accumulated enough operational history that you'd rather start fresh than audit every past touchpoint.

The textbook case was the August 2013 Android random-number bug. bitcoin.org's alert said "key rotation is necessary", told users to generate new addresses with a repaired generator and send all their coins back to themselves, and warned them not to send anything back to the old addresses.

For most individual users, periodic key rotation in this stronger sense is overkill. The seed sitting in your hardware wallet is not at higher risk this year than it was last year. Address rotation (automatic) handles the privacy story; rotating the underlying seed without cause just introduces opportunities for human error during the migration.

Key takeaways

  • Helps mitigate risks if a key is compromised or leaked
  • Avoids tying too many transactions to a single address
  • Standard practice in enterprise key management, where every key gets a cryptoperiod

Sources (5)

Related terms (11)

Published . Revised . No corrections logged for this page.

Edit this page on GitHub