Build deterministic RFC 4122 v5 UUIDs from a namespace and a name with SHA-1. The same inputs always return the same ID, on any machine.
Two services that have never spoken to each other need the same identifier for the same customer. Drawing a random v4 UUID cannot do that, because two draws never agree. UUID v5 Generator solves it the other way round: hash a name inside a namespace and both services derive the identical ID from the identical inputs, with nothing to coordinate and nothing to store.
Pick one of the four namespaces RFC 4122 defines, or paste a UUID of your own to carve out a private space, then type the name. Put several names on separate lines and each gets its own ID, which is how a batch of records is keyed in one pass.
The DNS namespace is 6ba7b810-9dad-11d1-80b4-00c04fd430c8, and hashing the name python.org inside it gives 886313e1-3b8a-5372-9b90-0c9aee199e5d. That is a value you can check against any other implementation, because it is the worked example Python’s own uuid module documents. Press Load Sample and the tool switches to the URL namespace with https://wiki.internal/rel-240 as the name, which resolves to c2bafae0-9633-5d09-833e-251eb34c83a3. Change a single character of that URL and the result is unrecognisable, which is the avalanche property of the hash rather than anything this tool adds.
5 at the start of its third group.SHA-1 is broken for signatures, and v5 uses it anyway. That is fine here and worth understanding: the attack against SHA-1 is collision finding, which lets someone construct two inputs that hash alike, and a UUID derived from a name you already chose is not a target for it. What matters more in practice is that a v5 UUID is not a secret. Anyone who can guess the name can regenerate the ID exactly, so it is a poor choice for a password reset link, an unguessable share URL, or a session token. Reach for the v4 generator for those, which draws from a random source instead. Batches stop at 50 names per run and each name is truncated at 512 characters, and Copy all returns tab-separated name and UUID pairs that paste straight into a spreadsheet column.
Namespace
6ba7b810-9dad-11d1-80b4-00c04fd430c8 · name is a hostname, e.g. python.org