Password generator

Create strong passwords or passphrases with crypto.getRandomValues, optional ambiguous-character exclusion, a strength meter with entropy estimate, and one-click copy. Nothing leaves your browser.

Password generator

How to use the password generator

  1. Choose Password or Passphrase mode.
  2. Set length or word count and character options.
  3. Click Regenerate until you like the result.
  4. Copy with the button (toast confirms) and store it in a password manager.
  5. Use Reset to return to strong defaults.

Formula & method

Random bytes come from crypto.getRandomValues, never Math.random.

Entropy ≈ length × log2(charsetSize) for passwords; passphrase entropy uses the wordlist size.

Strength bands are heuristics for UX, not a guarantee against all attacks.

entropy_bits ≈ L · log2(|charset|)

Worked example

A 16-character password from an 85-symbol set (upper, lower, digits, symbols) has about 102.6 bits of entropy.

A 5-word passphrase from the 7,776-word EFF list has about 64.6 bits; add words for more strength.

Frequently asked questions

Do you store generated passwords?

No. Generation and copy happen only in your browser.

Why exclude ambiguous characters?

Characters like O/0 and I/l/1 are easy to misread when typing from a screen.

Which passphrase word list do you use?

The EFF large wordlist (7,776 words), licensed CC BY 3.0 US. Prefer a password manager for important accounts.

Is Math.random used?

Never. Only crypto.getRandomValues.

Disclaimer

Strength estimates are educational. Use a reputable password manager for important accounts.