๐ BIP-39: The Standard Behind Seed Phrases
Learn how 12-24 words generate infinite wallet addresses
Your Progress
0 / 5 completedโ
Previous
Introduction
๐ฌ How BIP39 Works
BIP39 (Bitcoin Improvement Proposal 39) is the technical standard that turns random numbers into memorable words. Let's break down the process step-by-step.
๐ฎ Interactive: 5-Step Conversion Process
Click through each step to see how entropy becomes a seed phrase
1
Generate Entropy
Create random data (128 or 256 bits)
Your wallet generates random bits using a cryptographically secure random number generator (CSPRNG). This is the source of true randomness.
Example:
10110010 11001110 10101111 01010011...
๐ข Entropy Calculator
Adjust the entropy size to see how it affects the number of words in your seed phrase.
128
128160192224256
Entropy Bits
128
Checksum Bits
4
Total Words
12
๐ The BIP39 Wordlist
BIP39 uses a carefully curated list of 2,048 words. Each word was chosen to be:
โ
Unique First 4 Letters
"abandon" vs "ability" - you only need to write the first 4 letters to identify each word uniquely
โ
No Similar Words
No "woman" and "women" to avoid confusion. No similar-sounding words that could be mistaken
โ
3-8 Letters Long
Short enough to write quickly, long enough to be recognizable. Examples: "cat", "umbrella"
โ
Common Words
Everyday vocabulary, not obscure. "road", "again", "practice" - words you already know
Sample words from the list:
abandon, ability, able, about, above, absent, absorb, abstract, absurd, abuse, access, accident, account, accuse, achieve...
๐ Checksum: Error Detection
The checksum is a built-in error detector. Here's how it works:
Step 1: Hash the Entropy
Take SHA-256 hash of your original entropy bits:
SHA-256(10110010...) โ a3f7d9e2c1b4... (256 bits)
Step 2: Extract Checksum
Take first ENT/32 bits of the hash:
For 128-bit entropy: 128/32 = 4 checksum bits
For 256-bit entropy: 256/32 = 8 checksum bits
For 256-bit entropy: 256/32 = 8 checksum bits
Step 3: Append to Entropy
Concatenate checksum bits to original entropy:
128 bits (entropy) + 4 bits (checksum) = 132 bits total
132 bits รท 11 = 12 words
132 bits รท 11 = 12 words
๐ฏ Why This Matters
If you mistype even ONE word when recovering your wallet, the checksum won't match. The wallet immediately knows something's wrong and rejects it. No guessing, no partial recoveries - it either works or it doesn't.
๐ From Mnemonic to Master Seed
The final step is converting your mnemonic phrase into a 512-bit seed that can generate all private keys:
PBKDF2 Key Derivation
โขInput: Your mnemonic phrase + optional passphrase
โขSalt: The string "mnemonic" + your passphrase
โขIterations: 2,048 rounds of HMAC-SHA512 (slow by design)
โขOutput: 512-bit seed (64 bytes)
PBKDF2-HMAC-SHA512( mnemonic="witch collapse practice..." , salt="mnemonic" + passphrase , iterations=2048 ) โ 512-bit seed
๐ก Optional Passphrase (25th Word)
You can add a custom passphrase as an extra layer of security. Same mnemonic + different passphrase = completely different wallet! This is like a secret 13th/25th word that you memorize instead of writing down.