Skip to content
Satostar
Menu

BIP39

Bitcoin Improvement Proposal 39

BIP39 is the standard that defines how a wallet turns a list of words from a fixed 2048-word list into the binary seed from which its keys are derived.

BIP39 allows 12, 15, 18, 21 or 24 words, carrying 128 to 256 bits of entropy. The last bits of the phrase are a checksum taken from a SHA-256 hash of the entropy, which lets wallets reject many mistyped phrases.

To make the seed, the wallet runs the words through PBKDF2 with HMAC-SHA512, 2048 times, using the text “mnemonic” plus an optional passphrase as the salt. The result is a 512-bit seed.

The word list is designed so that the first four letters of each word identify it uniquely. The standard also notes that every passphrase produces a valid seed, which is why a mistyped passphrase opens a different wallet rather than showing an error.

Sources

  1. BIP39: Mnemonic code for generating deterministic keys

Last updated