Privacy & security
Runs on your device

Password Generator

Random passwords and passphrases, made on this device and never sent anywhere.

Settings

Your new password

——
0406080128+ bits

Average time to guess it

If the attacker knows exactly how it was made
AttackTime

More like this

How this works

Every character or word is picked with crypto.getRandomValues, the browser's interface to your operating system's secure random generator. Picks are made with rejection sampling, so each character in the set is exactly equally likely. Nothing is stored or sent: close the tab and the password exists only where you pasted it.

Strength, exactly

Strength is measured in bits of entropy: log₂ of the number of equally likely results. It assumes the attacker knows the settings you chose and has to guess the random part.

Password: log₂(N^L), N = characters to choose from, L = length with "every type at least once", the count of valid passwords by inclusion–exclusion Passphrase: words × log₂(list size) + log₂(10 × words) when a digit is added

Each extra bit doubles the guessing work. The guessing speeds in the table are illustrative: an online login that limits attempts, an offline attack on a slow password hash such as bcrypt, and a well-funded offline attack on a fast hash.

Good habits

  • Use a different password for every account. A password manager makes this practical.
  • Turn on two-step verification wherever it is offered.
  • Length beats complexity. A long passphrase is easier to type and remember than a short jumble.