Passphrase Generator
NewGenerate a memorable, cryptographically random diceware-style passphrase from a curated word list, with an entropy estimate.
Estimated entropy
Uses a curated -word list and your browser's cryptographically secure random number generator (crypto.getRandomValues) to pick each word independently — the same "diceware" approach recommended by security researchers, since a random sequence of common words is both easy to remember and, with enough words, very hard to brute-force. Entropy is calculated as (number of words) × log₂(word list size), plus a few extra bits if capitalization/number randomization is enabled.
Frequently Asked Questions
What is a "diceware-style" passphrase and why use it instead of a random password?
Diceware is a method of generating passwords by randomly selecting words from a fixed word list (originally using physical dice rolls) rather than random characters. A sequence of random common words, like "Copper-Lantern-Forest-92", is both easier for a human to remember and type correctly than a random string like "xK9$mQ2#Lp", while still being very hard to guess if the word list and word count are large enough.
How is the entropy calculated?
Entropy in bits = (number of words) × log₂(word list size), since each word is chosen independently and uniformly at random from the list. With this tool's 307-word list, each word contributes about 8.26 bits, so a 5-word passphrase has roughly 41 bits of entropy from the words alone, plus a couple more bits if you enable the appended random number.
Is the randomness actually secure, or just Math.random()?
It uses the Web Crypto API's crypto.getRandomValues(), which is a cryptographically secure pseudorandom number generator provided by the browser — not the weaker, predictable Math.random(), which should never be used for anything security-sensitive.
How many words should I use for a strong passphrase?
For most personal accounts, 5-6 words from a list this size (roughly 41-50 bits) is comparable to a reasonably strong random password. For something you want to be very resistant to offline brute-force attempts (like an encryption key or password manager master password), consider 6-8 words for extra margin.
Does capitalizing words or appending a number actually help much?
Capitalization here doesn't add meaningful entropy (it's applied consistently to every word, not randomly per-word), so it's mostly for readability/convention matching many sites' password rules. The appended random number does add a small, calculated amount of extra entropy (about 6.6 bits for a 0-99 range), which is reflected in the entropy estimate shown.