Passphrase Generator
Generate memorable Diceware-style passphrases in your browser. 1560-word list, crypto.getRandomValues, honest entropy maths, 3-12 words, optional digit and capitals.
This generator builds Diceware-style passphrases by picking whole words at random instead of scrambling characters. Every word comes from a curated 1560-word list, drawn with crypto.getRandomValues and rejection sampling so each word is exactly as likely as any other. You choose how many words (3 to 12), how they are joined, and whether to add a digit or capitals. The entropy figure shown is calculated from the real list length at runtime, so it never flatters the result.
What is a Diceware passphrase?
A Diceware passphrase is a secret made of several unrelated words chosen at random from a fixed list, rather than a short string of mixed symbols. Its strength comes from the number of equally likely combinations, not from looking cryptic. With a 1560-word list each word contributes log2(1560) = 10.61 bits, so six words give 63.6 bits and eight words give 84.9 bits. The result is far easier to type and remember than a random character string of comparable strength.
How the passphrase generator works
Each word is drawn independently from a 1560-word list, which is log2(1560) ≈ 10.61 bits per word — six words therefore carry about 64 bits, and the figure shown is computed from the real list length rather than asserted. The index comes from crypto.getRandomValues with rejection sampling: draws above the largest exact multiple of the list size are discarded, because a plain modulo would quietly favour the earliest words. Adding a digit contributes the log2(10) bits of the digit plus the log2(n) bits of which word received it, since the position is also chosen at random. This is the Diceware idea in the browser, and it matches the NIST SP 800-63B position that length matters more than forced symbol classes.
Features
How to use the passphrase generator
Set the word count. Six is the default and a sensible floor; go to eight or more for password managers, backup keys and anything long-lived.
Pick a separator — hyphen, dot, space or underscore — matching whatever the target system accepts.
Turn on the digit if a site demands a number; it is inserted at a randomly chosen word position, so it genuinely adds entropy rather than decorating the end.
Read the strength and details panel to confirm the bit count, then copy the passphrase straight into your password manager.
Common mistakes
Examples
See also
- Password Generator — Need a character-based secret for a field that rejects spaces? Generate a password instead.
- UUID Generator — Looking for an identifier rather than a secret? A v4 UUID is the right shape.
FAQ
How many words should I choose?
Six words (63.6 bits) is a reasonable default for everyday accounts and is the setting the tool starts with. For a password manager master secret, disk encryption or an account you cannot afford to lose, use eight or more, which puts you at 84.9 bits and above. Below five words the combination count drops fast, so keep short passphrases for low-value logins only.
Does turning on capitalisation make the passphrase harder to crack?
No. Capitalising every word is a deterministic rule an attacker can apply to the whole word list in one pass, so the number of possible passphrases stays exactly the same and the bit count does not move. The option is there only because some sites reject anything without an uppercase letter. If you want more strength, add a word instead — that is another 10.61 bits.
Why does the digit appear in the middle of the passphrase?
Because a digit stuck on the end is the first thing cracking rules try, and it adds almost nothing. This tool inserts the digit at a randomly chosen word position, so an attacker must account for both which digit was used and where it landed, which makes the addition genuinely worth something. It is still a small contribution compared with adding another word.
Is a passphrase really as safe as a random character password?
Yes, when you compare like with like. Strength is measured in bits of entropy, and 63.6 bits from six random words is 63.6 bits regardless of how readable the result looks. NIST SP 800-63B makes the same point: length matters far more than imposed character-class complexity, and forcing symbols mostly pushes people toward predictable substitutions.