Tools · Password generator
Passwords worth actually using.
Pick a length and character sets. Every password is built with your browser's secure random generator, checked with a strength meter, and never sent anywhere.
Excellent · 104 bits
Private by design: passwords are created with your browser's secure random generator and never leave this page. Turn off your internet and it keeps working.
Build it yourself
The same idea in three languages. Each uses the operating system's secure random source, never the basic random function.
Pythonpassword.py
import secrets
import string
alphabet = string.ascii_letters + string.digits + "!@#$%^&*"
def generate(length=16):
return "".join(secrets.choice(alphabet) for _ in range(length))
print(generate())Node.jspassword.js
const crypto = require("crypto");
const alphabet =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*";
function generate(length = 16) {
let out = "";
for (let i = 0; i < length; i++) {
out += alphabet[crypto.randomInt(alphabet.length)];
}
return out;
}
console.log(generate());PHPpassword.php
<?php
$alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*';
function generate($length = 16) {
global $alphabet;
$out = '';
for ($i = 0; $i < $length; $i++) {
$out .= $alphabet[random_int(0, strlen($alphabet) - 1)];
}
return $out;
}
echo generate();