Password Generator

Generate a strong, random password with custom rules.

Strength: —

How this generator picks characters

It uses window.crypto.getRandomValues, the browser's cryptographically secure random number source, rather than Math.random(), which is not designed to be unpredictable enough for security purposes. Nothing is sent anywhere - the password is generated and shown entirely in your browser.

Why cryptographic randomness actually matters here

Math.random() is a pseudo-random generator built for general-purpose tasks like shuffling or animations, and its output can, in principle, be predicted by an attacker who studies enough of its results - a risk that's irrelevant for most uses but unacceptable for generating a secret meant to resist guessing. The Web Crypto API's getRandomValues is specifically designed to be unpredictable, which is the actual property a password generator needs.

Why length matters more than complexity rules

Once a password includes a reasonable mix of character types, each additional character increases the number of possible combinations an attacker would have to try far more than adding another complexity rule does - this is why current security guidance increasingly emphasizes length (12-16+ characters) over forcing specific symbol patterns, and why the length slider here goes well beyond the old "8 characters minimum" convention.

Why unchecking a character type shrinks the available pool

Each checkbox you uncheck removes that entire character set from what the generator can draw from - a 16-character password built only from lowercase letters has dramatically fewer possible combinations than one drawing from upper, lower, digits, and symbols together, even at the same length, which is why the strength indicator responds to both length and character variety together.

Ofte stilte spørsmål

Is it safe to generate a password online?

This generator runs entirely in your browser using the Web Crypto API and never transmits the result, so it is as safe as generating one locally on your own device.

How long should a password be?

Most current guidance recommends at least 12-16 characters with a mix of character types, longer where the account supports it.

Why does this use crypto.getRandomValues instead of Math.random()?

Math.random() is a general-purpose pseudo-random function that isn't designed to resist prediction. crypto.getRandomValues is specifically built for security-sensitive randomness, which is what a password generator actually needs.

Does adding symbols help more than adding length?

Length generally contributes more to overall strength than adding symbols does once you're past a basic minimum - a longer password with fewer character types can still be stronger than a short one packed with symbols.

Should I reuse a generated password across multiple sites?

No - use a unique password for each account. A password manager can generate and store unique passwords for every site without you needing to remember each one.

Mer i Converters & Utilities