Sats Standard · Self-custody

BIP-0039 Recovery Phrase Verifier

Paste a seed and see whether the words are real BIP-39, whether the checksum holds, and what master seed the phrase + optional passphrase derives. The checksum rejects most phone-camera transcription errors — one wrong word out of twelve is caught here in milliseconds and forever after by whoever tries to restore the wallet. Nothing is transmitted; the page cannot transmit, it has no network code.

No network calls on this page — verify with DevTools' Network tab openRuns official BIP-0039 test vectors on load — results below

Phrase

Before you verify a seed you intend to keep sensitive: this engine is clean, but your clipboard, your browser extensions, and your screenshots are not part of the guarantee. On a machine you trust, this is a safe way to double-check transcriptions, metal plates, or a phone camera picture of paper.

Verdict

Awaiting phrase.

Engine self-test (runs on every page load)

What a checksum can and cannot catch

A 12-word phrase carries 128 bits of entropy and 4 bits of checksum: swapping one word for another has a 1-in-16 chance of still passing, so the verifier proves integrity rather than authenticity — the same property that makes it useful for transcriptions. Word-substitution typos are caught with 94% probability; a transposed pair of words is usually caught; a word from a foreign-language wordlist is always caught here, because this page speaks the English reference list, and only it. If a phrase ever fails checksum on two devices, believe the failure.

The derivation is PBKDF2-HMAC-SHA512, 2,048 rounds, salt "mnemonic" plus the passphrase — deliberately slow, so a stolen piece of paper is cheap to check once and expensive to brute force. This page shows the 64-byte master seed only, not wallet-specific xpubs: seed → xpub needs a secp256k1 stack, and that is the next thing built here. A seed that "restores" in one wallet app and shows the wrong balance in another is almost always a passphrase or coin-type mismatch, not a corrupt phrase.

FAQ

Why do you show the seed hex — isn't that the secret?

It is, which is why it renders on the screen only for as long as your browser tab lives. Nothing is stored after the tab closes; nothing is stored even if you close the laptop with it open. The entropy hex is the phrase itself in another form.

My hardware wallet says "seed not checksum-valid" but you say it is fine.

Compare wordlists: many devices use different reference languages. If a foreign word appears here as "not in wordlist", that is the disagreement.

Is "abandon abandon … about" safe to paste here as a test?

It is the canonical all-zeros test vector and funds on it are public by design — safe enough to paste anywhere.