Skip to main content
DevBench
🔑

Password Generator

DevOffline-ready

Password Generator creates cryptographically strong random passwords using your browser's secure random number generator — nothing is ever transmitted or stored. Choose the length (8–128 characters), toggle uppercase, lowercase, digits, and symbols, and exclude ambiguous characters like O, 0, I, and l. The entropy meter shows how long a brute-force attack would take to crack the generated password.

Related: HashUUIDAES

How to use the Password Generator

  1. Set the length using the slider (8–128 characters) — 16+ is recommended for most accounts.
  2. Toggle character sets: uppercase letters, lowercase letters, digits, and symbols. Disable any that your target system doesn't allow.
  3. Enable Exclude ambiguous to remove visually similar characters like 0 O l I 1 — useful for passwords you'll type manually.
  4. Click Generate — a new password is produced using crypto.getRandomValues() for cryptographic strength.
  5. Click Copy to copy to clipboard. Use the entropy bar to gauge crack-resistance before accepting.

What makes a strong password?

Password strength is primarily determined by length and character variety. The NIST SP 800-63B guidelines recommend passwords of at least 8 characters, but 16+ characters dramatically increases resistance to brute-force attacks. Including uppercase, lowercase, digits, and symbols maximises entropy per character.

Password entropy explained

Entropy measures unpredictability in bits. A password drawn from a pool of 72 characters (26 lowercase + 26 uppercase + 10 digits + 10 symbols) has ~6.17 bits of entropy per character. A 16-character password from this pool has ~98 bits of entropy — modern computers would take billions of years to brute-force at any realistic speed.

How this generator works

This tool uses crypto.getRandomValues() — the browser's cryptographically secure pseudo-random number generator (CSPRNG). Passwords are never transmitted to a server. Choose your desired length and character sets, then copy the result directly.