Skip to main content

Password Generator

Generate random passwords with unbiased Web Crypto sampling. Choose length, sets, and exclusions.

Rated 4.7 out of 5 based on 568 reviews

Length must be at least the number of selected sets.

How to generate a password

  1. Set length and how many passwords to create.
  2. Choose character sets. At least one must stay on.
  3. Optionally exclude similar letters and digits, or ambiguous punctuation.
  4. Copy the result into your password manager. Do not paste it into email.

Random password

Cryptographically sampled string from a chosen alphabet

Entropy sourcecrypto.getRandomValues with rejection sampling
Length1 to 256 characters
Not a managerCZNull does not store or sync passwords

How characters are sampled

Each character is drawn with rejection sampling so every symbol in the remaining alphabet is equally likely. Math.random is not used. When Require each selected set is on, one character is taken from each set, then the rest are filled and shuffled.

Length and character sets

Longer passwords with more character types are harder to guess. Exclude similar characters (i, l, 1, o, 0) if you will type the password by hand. CZNull does not store or sync passwords. Keep the result in a password manager.

Password questions

Does CZNull save the password?
No. Generation is local. Refreshing the page loses it unless you copied it.
Why did generation fail?
Every character set was turned off, exclusions emptied every set, Web Crypto is unavailable, or length is shorter than the number of required sets.