Generators
Generate cryptographically random strings with fine-grained control over character sets, length, patterns, and ambiguous character exclusion.
A = alpha, 0 = digit, X = alphanumeric, S = symbol, * = any, other chars kept as-is
String Length slider, or type a number from 1 to 256 into the field beside it.Uppercase (A-Z), Lowercase (a-z), Digits (0-9), and Symbols — or add your own in Custom Characters.Exclude ambiguous characters to drop the lookalikes 0, O, 1, l, and I.Pattern such as AAAA-0000 — a pattern overrides the length setting.Generate to produce the string, then hit Copy to grab the result and its entropy estimate.Mint unique, high-entropy secrets for auth tokens, webhooks, and service credentials without hand-rolling randomness.
Combine upper, lower, digits, and symbols — then exclude lookalikes — to produce high-strength passwords that are hard to guess.
Quickly produce random nonces, salts, session IDs, and correlation IDs in whatever charset your system expects.
Use the Pattern field to emit strings in a rigid shape — like AAAA-AAAA-AAAA-AAAA for license keys or promo codes.
Populate fixtures, fuzz inputs, and sample usernames or codes with realistic random strings of a predictable length.
Generation runs entirely in your browser — nothing is uploaded, logged, or sent to a server.
Yes. Every character is drawn with crypto.getRandomValues, the browser's cryptographically secure random number generator, rather than Math.random.
A = letter, 0 = digit, X = letter or digit, S = symbol, and * = any enabled character. Any other character is kept as-is, so AAAA-0000 keeps the hyphen.
Yes. When a pattern is present, the generated string has exactly the pattern's length and structure, and the String Length setting is ignored.
It strips the lookalikes 0, O, o, 1, l, L, I, and i from the pool, which helps avoid mix-ups when strings are read aloud or typed by hand.
The estimate is length × log2(charset size). A larger character set or a longer string means more possible combinations — and therefore more bits of entropy.
With no sets, custom characters, or pattern, the output shows Please select at least one character set. — re-enable a set to generate again.
No. Strings are generated locally with JavaScript and never sent to, stored on, or logged by any server.