BIP39 Mnemonic Generator & Validator | Seed Phrase Checker & Multi-Chain Wallet
Token Generation How It Works
This tool generates and validates BIP39 mnemonic phrases (12, 15, 18, 21, or 24 words) and derives BIP32/BIP44 wallet addresses for 18 cryptocurrencies via SLIP-0010. After validation, the mnemonic is fed into PBKDF2-HMAC-SHA512 with 2048 iterations to produce a 512-bit seed; an optional passphrase — the so-called "25th word" — modifies the salt so the same mnemonic with different passphrases yields completely independent wallets. Bitcoin derivation covers all four address formats (Legacy 1…, SegWit 3…, Native SegWit bc1q…, Taproot bc1p…), and EVM chains (ETH, BSC, Polygon, Avalanche) share the 0x address space. All computation uses the Web Crypto API and verified cryptographic libraries — nothing leaves your browser.
BIP39 Word Count & Entropy
| Words | Entropy (bits) | Checksum (bits) | Total (bits) | Use case |
|---|---|---|---|---|
| 12 | 128 | 4 | 132 | Standard wallet (most common) |
| 15 | 160 | 5 | 165 | Medium security |
| 18 | 192 | 6 | 198 | High security |
| 21 | 224 | 7 | 231 | Very high security |
| 24 | 256 | 8 | 264 | Maximum security (hardware wallets) |
Bitcoin Address Derivation Paths
| Format | Prefix | BIP44 Path | Recommendation |
|---|---|---|---|
| Legacy | 1... | m/44'/0'/0'/0/0 | Legacy compatibility only |
| SegWit | 3... | m/49'/0'/0'/0/0 | Good, but Native SegWit better |
| Native SegWit | bc1q... | m/84'/0'/0'/0/0 | ★ Recommended (lower fees) |
| Taproot | bc1p... | m/86'/0'/0'/0/0 | ★ Newest, best privacy |
Code Examples
// Browser — BIP39 seed derivation (PBKDF2-HMAC-SHA512)
const mnemonic = 'abandon abandon ... about'; // 12 words
const passphrase = ''; // optional "25th word"
const encoder = new TextEncoder();
const password = encoder.encode(mnemonic.normalize('NFKD'));
const salt = encoder.encode(('mnemonic' + passphrase).normalize('NFKD'));
const key = await crypto.subtle.importKey(
'raw', password, 'PBKDF2', false, ['deriveBits']
);
const seed = await crypto.subtle.deriveBits(
{ name: 'PBKDF2', salt, iterations: 2048, hash: 'SHA-512' },
key, 512
);
console.log(Array.from(new Uint8Array(seed))
.map(b => b.toString(16).padStart(2, '0')).join('')); // 64-byte hex # Python — Mnemonic validation (checksum check)
import hashlib
words = 'abandon abandon ... about'.split()
idx = [wordlist.index(w) for w in words]
bits = ''.join(bin(i)[2:].zfill(11) for i in idx)
entropy_bits = bits[:128] # for 12 words
checksum_bits = bits[128:] # last 4 bits
expected = hashlib.sha256(bytes.fromhex(
hex(int(entropy_bits, 2))[2:].zfill(32)
)).digest()[0] >> 4
assert checksum_bits == bin(expected)[2:].zfill(4)
print('Checksum valid') Security Notes
- Never enter real mnemonics online — This tool runs 100% client-side, but as a rule: real wallet mnemonics should only be entered on air-gapped hardware wallets or offline tools.
- Passphrase is a second factor — The same mnemonic with different passphrases produces completely different seeds. Losing the passphrase means losing access to the wallet.
- xprv = master key — The extended private key (xprv) can derive all child private keys. Treat it with the same secrecy as the mnemonic itself.
- Checksum catches typos — BIP39 includes a checksum in the last few bits. If you mistype a word, validation fails immediately — the checksum is your first line of defense against backup errors.
Related Tools
Need to generate the random entropy for a custom mnemonic? Use the Random Byte Generator. For human-readable secrets instead of raw bytes, try the Passphrase Generator. To check the strength of your passphrase, see the Entropy Calculator.
Frequently Asked Questions
How do I generate a new mnemonic?
Click the "Generate Random" button and select your desired word count (12, 15, 18, 21, or 24 words). The mnemonic is generated cryptographically secure random entropy in your browser using the Web Crypto API. You can then validate it and derive wallet addresses for multiple chains.
What is the 512-bit seed?
The seed is computed via PBKDF2-HMAC-SHA512 with 2048 iterations, using the mnemonic as the password and "mnemonic" + passphrase as the salt. This 64-byte seed is the root input to BIP32 hierarchical deterministic key derivation, which generates all wallet addresses from a single seed.
What are xprv and xpub extended keys?
xprv (extended private key) and xpub (extended public key) are Base58Check-encoded serializations of BIP32 key material. The xpub lets you derive all child public keys and addresses without exposing the private key. The xprv encodes the full private key chain — treat it with the same secrecy as your mnemonic.
What is a passphrase ("25th word")?
BIP39 supports an optional passphrase that modifies the seed derivation. Two different passphrases with the same mnemonic produce completely different seeds and wallets. If your wallet asked for a passphrase during setup, enter it here to get the correct seed. Leave it empty if you never set one.
Is it safe to enter my real mnemonic here?
This tool runs entirely in your browser — no data is transmitted to any server. All computation (generation, validation, seed derivation, BIP32 key derivation) uses the Web Crypto API and local JavaScript. However, as a general security practice, avoid entering real mnemonics into any web tool. For maximum security, use an offline or air-gapped device.
Why would a mnemonic fail validation?
Common reasons: a typo in one or more words, wrong word count (not 12/15/18/21/24), words from a different language wordlist, or an incorrect checksum. The validator tells you exactly which check failed so you can fix the issue.
Why does Bitcoin have multiple address formats?
Bitcoin supports four address types: Legacy (P2PKH, 1...), SegWit (P2SH-P2WPKH, 3...), Native SegWit (P2WPKH, bc1q...), and Taproot (P2TR, bc1p...). Each uses a different BIP44 derivation path (m/44', m/49', m/84', m/86'). Native SegWit is recommended for most users — it has lower fees and better privacy. Our tool lets you derive all four formats from the same mnemonic.
Which address format should I use?
For Bitcoin: Native SegWit (bc1q...) is recommended — it's the modern standard with lower transaction fees. For Ethereum and EVM chains (BSC, Polygon, Avalanche): there's only one format (0x...). For Litecoin: Native SegWit (ltc1q...) is recommended. Our tool pre-selects the recommended formats by default.
Privacy: This tool runs entirely in your browser — nothing is uploaded or stored. · Disclaimer: For educational purposes only. Not professional security advice.
More in Tokens
Random Byte/Hex Generator
Generate cryptographically secure random bytes online as hex, Base64, URL-safe Base64, or binary with batch mode for keys, secrets, and IVs.
OTP Token Generator
Generate TOTP (time-based) and HOTP (counter-based) one-time passwords online. SHA-1/256/512, 6-8 digits, Google Authenticator compatible.