Password Generator
Passwords worth the trouble of storing
Cryptographically secure strings with a real entropy read-out, exclusion rules and bulk generation.
Password Generator
Runs in your browser · nothing uploaded01 — How to use Password Generator
02 — Getting good results
03 — Questions
No. It is generated in this browser tab from the browser's own cryptographic random source, displayed, and forgotten when you leave. There is no request, no logging and no history — which is why the page cannot show you a password you generated earlier.
crypto.getRandomValues, the browser's cryptographically secure generator, seeded by the operating system. Math.random is not used anywhere in this tool: it is not required to be unpredictable and is unsuitable for anything treated as a secret.
It is log2 of the number of possible passwords with these exact settings — the size of the search space for an attacker who knows the settings and is guessing blind. 60 bits is reasonable, 80 is strong, and past about 128 extra length stops meaningfully helping.
It assumes 100 billion guesses per second, which is an offline attack on a fast hash using commodity GPUs, and that the password is found halfway through the space. That is deliberately pessimistic — a figure based on a rate-limited login would look reassuring and tell you nothing useful.
04 — More about Password Generator
Why entropy is the only honest measure
Password strength meters that score the string itself — counting character classes, rewarding a symbol, penalising a dictionary word — are guessing at something they cannot see: how the password was chosen. "P@ssw0rd1" ticks four character classes and is among the first thousand guesses any attacker makes. A randomly generated string of the same length is genuinely strong, and the only difference between them is the process that produced them. Because this tool controls that process, it can compute the real figure rather than estimate: the pool size it drew from, raised to the length it drew. That number describes an attacker's actual workload. It is also why the meter here cannot be used to grade a password you chose yourself — for a human-chosen password, the true search space is the set of passwords humans choose, which is smaller than the character count suggests by many orders of magnitude.
Modulo bias, and why it matters here
The obvious way to pick a random character is to take a random byte and use the remainder after dividing by the pool size. It is also subtly wrong. A byte holds 256 values; a 95-character pool divides into that twice with 66 left over, so the first 66 characters of the pool come up slightly more often than the rest. The effect is small for one character and compounds across a whole password, shrinking the real search space below the advertised figure. The fix is rejection sampling: draw, and if the value falls in the incomplete final block, discard it and draw again. It costs an occasional extra draw and it makes the distribution exactly uniform, which is the difference between a password with the entropy the meter claims and one with slightly less.
61 more tools
where this came from.
Same shell, same shortcuts, same promise: nothing leaves your browser.