Password Generator & Strength Meter

Generate cryptographically secure passwords and see realistic crack-time estimates.

How it works

Generate cryptographically random passwords with configurable length and character sets, or paste in an existing password to see a realistic strength estimate and crack-time projection.

  1. Adjust the length slider and toggle which character sets to include (lowercase, uppercase, digits, symbols).
  2. Click Generate new password (or use the one already generated) and copy it with one click.
  3. Alternatively, type an existing password into the 'test your own' field to see its strength score.
  4. Review the strength meter, crack-time estimate, and any feedback for improving a weak password.

Common use cases

  • Generating a strong, unique password for a new account or service.
  • Checking whether a password you're considering is actually strong before using it.
  • Understanding why a password is weak (e.g. common pattern, insufficient length) via the feedback list.
  • Generating temporary passwords for test accounts or shared credentials.

FAQ

How random are the generated passwords?
Passwords are generated using crypto.getRandomValues(), a cryptographically secure random number generator — not Math.random(), which isn't safe for security-sensitive values.
How is 'crack time' estimated?
The strength meter models an offline attack against a slow hash, estimating how long a determined attacker would need to brute-force or pattern-match the password. It's an estimate, not a guarantee — actual time depends heavily on how the service you use it with stores and hashes it.
Should I reuse a generated password across sites?
No — use a unique password per account, ideally stored in a password manager, so a breach of one service doesn't compromise others.

Continue with another tool