Chris Collins

Tools · crypto

UUIDs, IDs, and random values

Generate and decode UUIDs (v1, v4, v5, v7), ULIDs, KSUIDs, nanoids, and Snowflake ids; make strong passwords and passphrases; random bytes, integers, and picks.

Added

How to use it

Generate — UUID v4 (random), v7 (time-ordered, sorts by creation time — a good default for database keys), v1 (time-based with a random node), v5 (deterministic from a namespace and a name), ULID (optionally monotonic within a millisecond), KSUID, nanoid with any alphabet, or random hex. Make up to 10,000 at once; format UUIDs in upper case, without hyphens, in braces, or as urn:uuid:; copy or download the list.

Inspect — paste any id to see what it is: a UUID’s version, variant, and embedded timestamp, clock sequence, and node (v1, v6, v7); a ULID’s time and randomness (and the same value as a UUID); a KSUID’s time and payload; a Snowflake id’s time, worker, process, and sequence under the Twitter or Discord epoch; or a Unix timestamp.

Passwords — length 6–128, choose character sets, exclude look-alike characters, require one of each set; the entropy estimate and strength update as you go. Passphrases are drawn from a built-in word list, with a separator, capitals, and a number if wanted.

Random values — random bytes as hex, Base64, a byte array, or a C array; unbiased random integers in any range (with no repeats, sorted); pick from or shuffle a list.

Everything uses crypto.getRandomValues, the browser’s cryptographically secure generator.

Sharing

Share link copies a URL that opens this tool exactly as you have it. Hand-written links work too: Links carry settings, never generated values or passwords: Generate ?type=v7&count=20&upper=true, Inspect ?id=…, Passwords ?pwLen=32&sym=false, Random values ?min=1&max=6&nInts=10. For example ?id=0190b3a5-7c4e-7d2a-9b1e-2f3a4b5c6d7e#inspect.

Runs entirely in your browser; nothing you type leaves this page.