KeySense

BIP39 · BIP32 · BIP44 / 49 / 84 / 86 - Making sense of multi-chain keys and paths
● 100% Offline
Seed No seed generated - click Generate in the Derive tab
Step 1: Seed phrase BIP39

Same mnemonic + different passphrase → completely different wallet. Any string is valid; there is no wrong passphrase, only wrong remembering. If you lose it, you lose the wallet permanently.

Security: This page runs entirely in your browser. No data is ever sent to any server. For production wallets, always generate and sign on a trusted offline (air-gapped) machine.

Off: seeds use the browser CSPRNG. On: roll dice or flip coins and the hash becomes your seed.

Step 2: Presets

Don't know which derivation path to use? Just pick any preset that matches your chain. The path is a template you can customize below. To understand what each path segment does, visit the Learn Paths tab or the Blockchain Guide tab.

Step 3: Custom path BIP44
Derivation path
m/44'/60'/0'/0/0
Step 4: Results
Address
Run Derive to generate
Private key
Public key

How encoding works here: All BIP32 keys via ethers.js (loaded once as UMD). EVM / Tron: ethers Wallet + Keccak-256. Bitcoin-family (0/2/3): pure JS using only ethers primitives - sha256, ripemd160, computePublicKey + inline Bech32 - no bitcoinjs-lib, no CDN class bugs. Solana (501): SLIP-0010 via ed25519-hd-key + TweetNaCl global. Brain Wallet uses crypto.subtle, which requires an HTTPS server (blocks on file://). Use a local server for full functionality.

Vanity address miner EVM · fully offline

Brute-forces random secp256k1 keypairs until an address matches your pattern. Runs on the main thread in small batches - UI stays responsive, works 100% offline (no CDN needed).

Attempts: 0

Difficulty grows exponentially: Each extra hex character takes ~16× longer. A 4-char prefix like 0xcafe averages ~65,000 tries; a 6-char prefix averages ~16 million. The key is cryptographically random - as secure as any other key.

Critical security warning - read this

Brain wallets are always unsafe for real money. Attackers precompute hashes of billions of phrases: quotes, lyrics, passwords, Bible verses, Wikipedia sentences. Funds on brain wallets are routinely stolen within hours. Even a "strong" passphrase has far less entropy than 12 random BIP39 words.

Use the Derive Keys tab for real wallets. This tab exists solely to demonstrate cryptographic concepts.

Brain wallet demo SHA-256 → BIP39 → multi-chain

Adds another layer: the mnemonic is always the same SHA-256 output, but this extra word changes every derived key.

What this toolkit does

This is a single static HTML page with no build step. Libraries load from CDN on first visit, then everything runs in your browser. Mnemonics never leave the device unless you copy them. The Derive tab turns a BIP39 phrase + path into addresses for Ethereum, Bitcoin (Legacy/SegWit/Native/Taproot), Solana, Tron, Litecoin, Dogecoin, Cosmos, Sui, and Aptos. Vanity searches for EVM address prefixes. Brain wallet demonstrates why human-chosen entropy is unsafe. The Derive tab also has a Physical entropy lab (roll dice / flip coins to create a seed without software RNG, enable Expert mode to see it), a paper wallet printer, and an HD tree inspector on the Learn Paths tab. The Experiments tab has a Mnemonic diagnostics panel (find typos or the lost last word) and a Path recovery scanner (match a known address to its derivation path). The current seed also shows in the sticky bar above the tabs. The entropy lab, brain wallet, and Solana/Sui/Aptos derivation require an HTTPS server (not available on file://).

Stack: ethers v5 (BIP32 + UTXO crypto); ed25519-hd-key + tweetnacl (Solana, Sui, Aptos); qrcode; browser crypto.subtle (SHA-256 for the entropy lab + brain wallet, SHA3-256 for Aptos). UTXO chains use zero extra libraries - pure inline Bech32 + ethers primitives. Theme stored in localStorage. Download button saves the full page for offline or air-gapped use.

Blockchain derivation reference

Each row is a common convention. Your wallet might use a different path for recovery - always check its docs.

BlockchainDerivation pathCoin typeNotes
Ethereumm/44'/60'/0'/0/060MetaMask, Trust Wallet, most EVM “account 0”
Bitcoin (Native SegWit)m/84'/0'/0'/0/00bc1q… addresses (BIP84)
Bitcoin (Wrapped SegWit)m/49'/0'/0'/0/003… nested SegWit (BIP49)
Bitcoin (Legacy)m/44'/0'/0'/0/001… P2PKH (BIP44)
Bitcoin (Taproot)m/86'/0'/0'/0/00bc1p… (BIP86) - experimental on some altcoins
Solanam/44'/501'/0'/0'501Phantom / Solflare-style; Ed25519 not secp256k1
Polygonm/44'/60'/0'/0/060Same as Ethereum (EVM)
BSCm/44'/60'/0'/0/060Same as Ethereum (EVM)
Avalanche C-Chainm/44'/60'/0'/0/060Same as Ethereum (EVM)
Tronm/44'/195'/0'/0/0195TronLink-style; secp256k1, Base58 T… address
Arbitrumm/44'/60'/0'/0/060Same as Ethereum (EVM)
Optimismm/44'/60'/0'/0/060Same as Ethereum (EVM)
Litecoinm/44'/2'/0'/0/02Legacy; use purpose 84/49 for SegWit-style LTC
Dogecoinm/44'/3'/0'/0/03Legacy-style; SegWit less universal on DOGE
Bitcoin Cashm/44'/145'/0'/0/0145Not modeled in this tool - would need BCH params
Cardanom/1852'/1815'/0'/0/01815CIP-1852; different from BIP44-only wallets
Cosmosm/44'/118'/0'/0/0118secp256k1 + Bech32 with cosmos HRP (Keplr-style)
Suim/44'/784'/0'/0'784Ed25519 (SLIP-0010); address = 0x + 32-byte pubkey hex
Aptosm/44'/637'/0'/0'637Ed25519 (SLIP-0010); address = 0x + SHA3-256(pubkey)
Key observations
  • All EVM chains share coin_type = 60 - the same key yields the same 0x… address on Ethereum, Polygon, BSC, etc. (you still pay gas on the chain you use).
  • Bitcoin changes the purpose number (44 / 49 / 84 / 86) to pick address type, not just coin type.
  • Solana uses Ed25519 derivation (SLIP-0010). You cannot get a Solana address by plugging the same path into a raw secp256k1-only helper.
  • Ed25519 chains (Solana, Sui, Aptos) share the SLIP-0010 derivation pipeline. Every path segment must be hardened; there are no normal (unhardened) children. Sui's address is the raw 32-byte Ed25519 public key as hex; Aptos hashes it with SHA3-256.
  • Cosmos uses the same secp256k1 curve as Bitcoin/Ethereum, but its address is Bech32 with the cosmos HRP over a raw 20-byte hash160 - not a Bitcoin-style witness version.
  • Non-standard paths are valid mathematically but wallets may not scan them - backup risk.
Learning Path: From Seed to Address

Walk through the key stages of HD wallet derivation. Each step builds on the previous one.

1
Seed
2
Master Key
3
Path
4
Hardened
5
Address

1. The BIP39 Seed Phrase

A mnemonic seed phrase is a human-readable encoding of random entropy. It is the root of your entire wallet tree.

  • 12 words = 128 bits of entropy + 4-bit checksum
  • 24 words = 256 bits of entropy + 8-bit checksum
  • The last word is partially determined by the checksum of all previous words
  • The wordlist has exactly 2048 words (211) - each word encodes 11 bits
Entropy (128-256 bits) | v BIP39 Checksum (4-8 bits) | v Split into 11-bit chunks - each maps to a word from the 2048-word list | v Mnemonic phrase (12 or 24 words) | v PBKDF2(mnemonic, passphrase, 2048 rounds) - 512-bit seed

Bring your own randomness: By default this tool uses the browser's CSPRNG. If you distrust software RNG, open the Physical entropy lab on the Derive tab (enable Expert mode): roll dice or flip coins, and the SHA-256 hash of your rolls becomes the entropy instead.

1 / 5
Understanding derivation paths

A path is a route through a tree of keys. The usual BIP44 layout:

m / purpose' / coin_type' / account' / change / address_index

Solana in this tool: m / purpose' / 501' / account' / index' - the extra hardened level replaces change / index so Phantom first account matches account=0, index=0 in the form.

Path structure breakdown
LevelSymbolMeaningExample values
MastermRoot of the HD treeAlways m
Purpose44'Which BIP family44, 49, 84, 86...
Coin type60'Registered coin index (SLIP-0044)0 BTC, 60 ETH, 501 SOL...
Account0'Separate accounts0, 1, 2...
Change0External (0) vs internal change (1) for UTXO0 or 1 - ignored for Solana in this UI
Address index0Nth address in that chain0, 1, 2... - for SOL, this field is the last hardened index
Hardened vs normal derivation

The apostrophe (') means hardened: child keys require the parent private key, not just an xpub.

TypeSecurity / UXTypical use
Hardened (')Higher isolation; cannot derive from watch-only parentpurpose, coin_type, account; and Solana last segment
NormalDerivable from xpub - good for receiving addresseschange + index on Bitcoin-like chains
Common scenarios
MetaMask Account 1, 2, 3...

Often increments the final address_index (not account):

m/44'/60'/0'/0/0 m/44'/60'/0'/0/1 m/44'/60'/0'/0/2
Multiple wallets from one seed

Bump account for separation:

m/44'/60'/0'/0/0 m/44'/60'/1'/0/0
Same EVM address everywhere

Because EVM chains use coin type 60, the same path gives the same 0x address on many networks, but balances and contracts differ per chain.

Tron uses the same curve, not the same display

Coin type 195 and path like m/44'/195'/0'/0/0 give a secp256k1 key. The Keccak-256 of the uncompressed public key (same idea as Ethereum) becomes the 20-byte payload, but Tron shows it as a Base58Check string starting with T, not 0x.

Important notes
  • Same seed + same path = same keys (deterministic).
  • Losing the path can mean losing access even if you keep the words.
  • Compare any result against a second tool or a test wallet before mainnet use.
HD derivation tree inspector

Step 1: click Build tree from current seed below (uses the mnemonic from the Derive tab). Step 2: the root and its first branches appear. Click any node to derive its keys; click a branch node again to expand or collapse its children.

No tree yet. Click "Build tree from current seed" above to start.

Click a tree node on the left to see its derived keys, extended key (xprv/xpub), and EVM address here.

Try it yourself
  • Visualize the tree - click "Build tree from current seed" above to see every derivation branch and click nodes to derive keys.
  • Find a lost path - on the Experiments tab, use "Path recovery" to scan ~15 common wallet paths and match a known address back to its derivation.
  • Bring your own entropy - on the Derive tab, enable Expert mode to open "Physical entropy lab" and roll dice to create a seed without trusting software RNG.

Alpha features. These tools are experimental and may change. They use the mnemonic and BIP39 passphrase from the Derive tab (Step 1).

Recover a seed

Find typos or the lost last word of an existing mnemonic. Type your mnemonic in the Derive tab Step 1, then use these tools.

Where are my funds? Path recovery

Restored a seed in a new wallet and see no balance? Different wallets use different derivation paths. Paste the address you expect, and this scans ~15 common paths to find the match.

Uses the mnemonic and BIP39 passphrase from Step 1 (Derive tab).