BIP39 passphrase generator
Generate a BIP39 passphrase from an existing or random mnemonic, or get the mnemonic from the passphrase.
Enable JavaScript to use the interactive tool. The guide below explains how it works.
BIP39 Mnemonic Generator: Technical Reference & Security Guide
1. What the Tool Does
The BIP39 Generator is a specialized cryptographic utility designed to facilitate the creation and conversion of mnemonic phrases (also known as seed phrases) according to the Bitcoin Improvement Proposal 39 (BIP39) standard. This standard is the industry-wide protocol used by hardware and software wallets (such as Ledger, Trezor, MetaMask, and Trust Wallet) to generate the "master key" for deterministic wallets.
The tool performs two primary functions:
- Entropy to Mnemonic: It takes a high-entropy hex string (the raw "randomness") and converts it into a human-readable series of words from a fixed list of 2,048 words.
- Mnemonic to Entropy: It reverses the process, validating that a given phrase is a legitimate BIP39 sequence and extracting the original entropy.
Supporting 10 different languages (including English, Chinese, French, and Japanese), the tool ensures compatibility across global financial ecosystems.
2. Why Someone Uses It
In the world of decentralized finance and cryptography, managing 64-character hexadecimal keys is prone to human error. BIP39 was created to solve this by mapping complex binary data to common words.
Wallet Recovery
The primary use of a BIP39 phrase is as a backup. If a user loses their physical device or their phone breaks, they can enter these 12 to 24 words into any other BIP39-compatible wallet to instantly recover all their assets.
Air-Gapped Key Generation
Security-conscious users often generate their entropy on an offline or "clean" machine. This tool allows them to convert that raw entropy into a mnemonic phrase that they can physically write down on paper or engrave in metal.
Technical Validation
Developers building wallet software use this tool to verify that their own mnemonic generation logic is correct. By checking if their entropy produces the same words as this reference tool, they can ensure cross-wallet compatibility.
3. Step-by-Step Instructions
Step 1: Select Your Language
Choose the wordlist you wish to use from the "Language" dropdown. While English is the most common and universally supported, you can generate phrases in Spanish, Japanese, Korean, and others. Note that most hardware wallets only support the English wordlist for recovery.
Step 2: Generate or Input Entropy
Entropy is the "randomness" that makes your key unique.
- To generate a new key: Click the "Refresh" (arrows) icon. This uses the browser's cryptographically secure pseudo-random number generator (CSPRNG) to create a new seed.
- To use your own entropy: Type a hexadecimal string into the "Entropy" field. It must be a multiple of 4 in length (e.g., 32, 48, or 64 characters) to meet the standard's bit-depth requirements.
Step 3: Review the Passphrase
The mnemonic phrase will appear in the "Passphrase" field. This is the sequence you should save. The tool automatically handles the calculation of the checksum—the final bits of the phrase that ensure no words were typed incorrectly.
Step 4: Verification (Optional)
To test if a phrase is valid, you can clear the entropy field and type a mnemonic phrase into the "Passphrase" box. If the phrase is a valid BIP39 sequence, the tool will successfully calculate the corresponding entropy. If it is invalid, a red warning will appear.
4. Examples
128-bit Entropy (12 words)
Entropy: 7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f
Mnemonic: legal winner thank year wave sausage worth useful legal winner thank yellow
256-bit Entropy (24 words)
Entropy: 0000000000000000000000000000000000000000000000000000000000000000
Mnemonic: abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon art
5. Technical Background: How BIP39 Works
The transformation from numbers to words is a strictly defined mathematical process.
1. Entropy Generation
The process starts with an initial entropy of $N$ bits (typically 128, 160, 192, 224, or 256 bits).
2. Checksum Calculation
A checksum is generated by taking the first $N/32$ bits of the SHA-256 hash of the entropy. For 128 bits of entropy, the checksum is 4 bits. This checksum is appended to the end of the entropy.
3. Word Mapping
The combined bits (Entropy + Checksum) are split into groups of 11 bits. Each 11-bit group represents a number between 0 and 2047. This number is then used as an index to pull a word from the BIP39 wordlist.
- 128 bits + 4-bit checksum = 132 bits = 12 words.
- 256 bits + 8-bit checksum = 264 bits = 24 words.
4. The Checksum's Role
Because the last word contains the checksum, you cannot simply pick 12 random words from the list. Only about 1 in 16 (for 12 words) or 1 in 256 (for 24 words) random word sequences will be "valid." This prevents users from accidentally losing funds due to a typo.
6. Common Mistakes
- Storing Online: Never save your mnemonic phrase in Evernote, Google Docs, or your email. If your account is hacked, your funds are gone.
- Taking Screenshots: Malware can scan your photo gallery for seed phrases.
- Manual Entropy: Trying to "think up" a hex string yourself. Humans are terrible at randomness. Always use a CSPRNG or physical dice to generate entropy.
- Word Order: The order of words is critical. "Apple Banana" is a completely different key than "Banana Apple."
7. Security Best Practices
The "Paper and Steel" Method
Write your mnemonic on physical paper. For high-value amounts, consider stamping the words into a stainless steel plate to protect against fire or water damage.
Split-Seed Strategy
Never store your backup in the same physical location as your wallet. Use a safe or a deposit box.
24 vs 12 Words
While 12 words (128 bits) are currently uncrackable by any modern computer, 24 words (256 bits) provide a higher margin of safety against future advancements in quantum computing.
8. Related Tools
- Encryption Tool: For encrypting sensitive data before storage.
- Bcrypt / Password Hasher: To understand the difference between mnemonic seeds and standard password hashing.
- Chronometer: Sometimes used during physical entropy generation (like timing dice rolls) to add further randomness.
Technical Note: This tool runs entirely in your browser. No data is sent to any server. However, for maximum security when generating real financial keys, it is recommended to download the it-tools source and run it on an offline, air-gapped machine.