๐Ÿ” Password Generator

Generate strong, cryptographically random passwords with your choice of length and character sets.

Options

Generated Password

Strength
โ€“
Entropy (bits)
โ€“
Character Set Size
โ€“
Advertisement

How the Password Generator Works

This tool generates passwords using your browser's cryptographically secure random number generator (window.crypto.getRandomValues), not a predictable pseudo-random function like Math.random(). Each character is chosen uniformly at random from the character sets you select.

Strength Estimate

entropy (bits) = length ร— log2(character set size)
Weak: < 40 bits ยท Fair: 40โ€“59 bits ยท Strong: 60โ€“79 bits ยท Very Strong: 80+ bits

Worked Example: How Character Pool Size Affects Entropy

With all four character types enabled (uppercase, lowercase, numbers, and symbols), the combined character pool is 26 + 26 + 10 + 23 = 85 characters. At the default length of 16, entropy is 16 ร— logโ‚‚(85) โ‰ˆ 102.6 bits โ€” well into the "Very Strong" range โ€” meaning there are roughly 85ยนโถ (about 2ยนโฐยณ) possible passwords an attacker would have to search through. Reducing the character pool (for example, numbers only, 10 characters) or shortening the length drops entropy sharply: a 16-character numeric-only password has just 16 ร— logโ‚‚(10) โ‰ˆ 53.2 bits of entropy, which falls into the "Fair" range even at the same length โ€” showing that both pool size and length matter for resisting brute-force guessing.

Frequently Asked Questions

Is this password generator secure?

Yes. It uses window.crypto.getRandomValues, a cryptographically secure random number source, rather than Math.random(), which is not suitable for generating secrets.

Are passwords stored or sent anywhere?

No. Password generation happens entirely in your browser using JavaScript โ€” nothing is transmitted to any server or stored.

What does "exclude ambiguous characters" do?

It removes characters that are easily confused when typed or read, such as lowercase "l", uppercase "I", the digit "1", uppercase "O", and the digit "0".

Related Calculators