Secure Password Generator
Generate cryptographically random passwords using your browser's secure crypto.getRandomValues() API - configurable length and character sets.
Configure length and character sets - this generator uses your browser's cryptographically secure random number generator, never Math.random().
Generated using crypto.getRandomValues(), your browser's cryptographically secure random source - never Math.random(). Nothing generated here is sent to or stored on any server.
Nothing you generate here is ever sent anywhere or stored - the password exists only in your browser until you copy it.
Why Randomness Quality Matters
Not all "random" is equal - JavaScript's Math.random() is not cryptographically secure and can be predictable. This tool uses crypto.getRandomValues(), the Web Crypto API's cryptographically secure random source, the same quality of randomness used for real security-sensitive operations.
How to Use It
- Set your desired password length.
- Toggle which character sets to include: uppercase, lowercase, numbers, symbols.
- Click Generate - a new password is created using secure randomness.
- Copy it directly; nothing is stored or transmitted.
Choosing a Good Length
Longer passwords are dramatically stronger against brute-force attacks than adding complexity to a short one - a 16+ character password with a decent character set is generally far stronger than an 8-character one with every symbol type enabled.
Limitations
This generates a random string - it cannot know if a particular website's password policy has unusual requirements (like disallowing certain symbols). Adjust your character set selections if a site rejects the generated password.