Skip to content
Processing locally — files never leave your device

Diceware Passphrase Generator

Generate passphrases from a curated word list. Pick the number of words, separator, and case style. Memorable and high-entropy.

Estimated entropy
39.9 bits
Bloggers — embed this widget for free

Add this tool to your own site with one line of HTML. Free forever — just keep the small credit link.

How to use Passphrase Generator

  1. Choose how many words you want. Five or more is a sensible default for a strong passphrase.
  2. Pick a separator (a hyphen, space, or any character) and a case style — lowercase, Title Case, or UPPER.
  3. Optionally append a two-digit number for sites that insist on a digit.
  4. Click the refresh button to draw a new set of words from a cryptographically secure random source.
  5. Check the entropy readout, then copy the passphrase. It is generated entirely in your browser.

Why a few random words beat a complicated password

A passphrase is a password made of several random words — willow-cobalt-meadow-quartz instead of X7#kq!2P. It feels less "secure" because it is readable, but that intuition is backwards. Passphrases can carry just as much entropy as symbol soup while being dramatically easier to remember and to type, which is exactly why security researchers and the EFF recommend them.

The Diceware idea, automated

The technique behind this generator is Diceware, devised by Arnold Reinhold. The original method has you roll physical dice to choose words from a numbered list, so the selection is provably random and free of human bias. We replace the dice with crypto.getRandomValues(), the browser's cryptographically secure random number generator, drawing each word independently and uniformly from the list.

Where the entropy comes from

The strength of a passphrase is governed by one formula: words × log2(list size). Critically, the entropy depends on the size of the list and how many words you pick — not on the specific words that appear. Here is how that scales for a representative word list:

Per word from a 100-word list:   log2(100)  ≈ 6.6 bits
Per word from a 7,776-word list: log2(7776) ≈ 12.9 bits

4 words from a large list:  4 × 12.9 ≈ 52 bits
5 words from a large list:  5 × 12.9 ≈ 64 bits
6 words from a large list:  6 × 12.9 ≈ 77 bits

The live entropy readout in the tool reflects this same math for the built-in list, so you can watch strength climb with every word you add.

A public word list is not a weakness

It can feel wrong that the word list is openly known, but that is by design. Real cryptographic security follows Kerckhoffs's principle: a system should stay secure even when everything about it except the key is public. Here the "key" is the random choice of words. An attacker who knows the entire list still has to contend with the full set of equally likely combinations — a secret list would add no protection at all.

Choosing a length that fits the job

  • 4 words — fine for low-value, throwaway logins.
  • 5 words — a strong, comfortable everyday default.
  • 6+ words — for a password-manager master password or anything that, if breached, unlocks everything else.

Adding a word multiplies the attacker's effort far more than sprinkling in symbols does, so when in doubt, lengthen the phrase rather than complicate it.

Related security tools

  • Password Generator — when an account wants a random character string rather than words.
  • Password Strength Checker — type a phrase in to see the word count translate into bits of entropy.
  • OTP Generator — add a time-based second factor on top of the account this passphrase protects.

Frequently asked questions

Why choose a passphrase over a random password?
A passphrase delivers the same security as a random password but is far easier to remember and to type — especially on phones and game controllers. Four or five random words form a vivid mental image your brain holds onto, while an equivalent jumble of symbols does not. This is the point of the famous "correct horse battery staple" comic.
What is Diceware?
Diceware is a method invented by Arnold Reinhold for building passphrases by rolling physical dice to pick words from a numbered list. Each die roll adds genuine randomness no human bias can creep into. This tool automates the same idea using your browser's cryptographic random generator instead of dice.
How is the entropy calculated?
Entropy depends only on the size of the word list and the number of words you pick — never on which specific words come up. With a list of W words, each word adds log2(W) bits. The figure shown updates live as you change the word count, so you can dial in exactly how strong you want it.
Does it matter that the word list is public?
No — and this is a crucial point. Security comes from the randomness of the selection, not from hiding the list. Even if an attacker knows every word and the exact list, they still face the full number of equally likely combinations. Secret word lists add nothing; honest randomness is what counts.
How many words should I use?
Four random words are reasonable for low-stakes logins, five is a solid everyday default, and six or more is appropriate for a password-manager master password or anything protecting your whole digital life. Each extra word multiplies the attacker's work, so length is the cheapest way to add strength.
Should I add capital letters, numbers, or symbols?
A small amount can satisfy a site's rules, but it adds very little real strength compared to simply adding another word. The "append a number" toggle exists for forms that demand a digit — do not rely on it as your main source of security. One more random word beats a sprinkle of symbols every time.
Is the passphrase generated privately?
Yes. The word draw runs in JavaScript on this page with no server call, so the phrase exists only in your tab until you copy it.
Where should I store my passphrase?
This tool is meant for the rare phrases you actually type from memory — a device login or a vault master password. Everything else should be a unique random password your manager remembers for you.

More tools you might find useful in the same flow.

Built by Muhammad Tahir · About