Password Generator
Password Generator computed locally with Web Crypto — your secrets never leave the page.
Generate a cryptographically secure random token — in hex, Base64 or URL-safe Base64 — instantly in your browser. Built on the browser's CSPRNG, suitable for real secrets.
Your browser is preparing the tool. It runs 100% locally.
Choose a number of random bytes (4 to 128, default 32) and a format — hex, Base64 or URL-safe Base64 — and the tool returns a fresh secure token. It draws from the browser's cryptographic random generator (crypto.getRandomValues), so the result is suitable for real secrets like API keys, session IDs and CSRF tokens. The security comes from the bytes: 32 bytes is 256 bits of entropy. It runs entirely in your browser; nothing is uploaded.
This tool produces a random token of the length and format you choose. You set how many bytes of randomness you want and whether to encode them as hexadecimal, standard Base64, or URL-safe Base64, and it returns a fresh value each time you generate.
It is the quick way to create the kind of unguessable value that secures a web application — an API key, a session or CSRF token, a password-reset link, a nonce or a salt — without writing code to do it.
The tool asks the browser's cryptographic random number generator for the number of random bytes you specify. This is a CSPRNG — a cryptographically secure source — which is the right tool for secrets, unlike ordinary random functions that are predictable and must never be used for security.
It then encodes those raw bytes into readable text. Hexadecimal uses two characters per byte; Base64 packs them more compactly; and URL-safe Base64 swaps the characters that would cause trouble in a URL or filename and drops the padding. The randomness — and therefore the security — is identical across formats; only the presentation differs.
entropy in bits = bytes × 8
hex length = bytes × 2 characters
base64 length ≈ bytes × 4 ÷ 3 characters32 bytes → 256 bits of entropy → 64 hex characters (or about 43 URL-safe Base64 characters)The security is in the byte count, not the character length. 16 bytes is 128 bits whether shown as 32 hex characters or about 22 Base64 characters — do not confuse how long the token looks with how strong it is.
Your token is generated entirely on your device. There is no network request, so the value is never transmitted or stored anywhere by the tool.
Because it is local, the token is yours alone the moment it appears — but treat it as a secret: copy it into your secure store and do not share it.
Nothing persists between sessions — close the tab and the token is gone, so save any token you intend to keep.
Because the bytes come from a cryptographically secure generator, the tokens are suitable for real security use — each value is unpredictable and effectively unique. This is the key difference from tools built on ordinary random functions.
The strength is set by the byte count, not the format. 16 bytes is 128 bits of entropy and 32 bytes is 256 bits, whether you display them as hex or Base64. A longer-looking hex string is not stronger than a shorter Base64 one with the same bytes.
A token is just random bytes — it carries no built-in meaning, expiry or signature. It is not a JWT (which has a payload and signature) and not a UUID (which has a defined structure). Pair it with your own storage and expiry logic.
Treat every generated token as a live secret. It is shown in your browser only, but once you use it for an API key or session it must be stored and transmitted securely, and rotated if exposed.
Generate an unguessable key for a service or integration.
Create secure identifiers for web sessions and form protection.
Produce a one-time token for a password-reset or email-verification URL.
Get random values for cryptographic nonces or password salts.
For a standard structured ID, use a UUID generator. For a signed token carrying data, use a JWT. For something a person must type or remember, use a passphrase. This tool is for raw, high-entropy secret values.
Generates tokens from the browser's cryptographic random source (crypto.getRandomValues), not Math.random; honest that the security is in the byte count, not the encoded character length.
Password Generator computed locally with Web Crypto — your secrets never leave the page.
Use Password Strength Checker for stronger security hygiene — private, instant and free.
Random Number Generator computed locally with Web Crypto — your secrets never leave the page.
SHA-256 Hash Generator computed locally with Web Crypto — your secrets never leave the page.
Passphrase Generator computed locally with Web Crypto — your secrets never leave the page.
Use MD5 Hash Generator for stronger security hygiene — private, instant and free.
It is free, private and runs entirely in your browser — no sign-up, no uploads, no limits.