wire / identifier / uuidv5
UUIDv5 is a name-based UUID derived deterministically by SHA-1-hashing a namespace UUID concatenated with a name, truncating to 128 bits, then overwriting the version (5) and variant bits. Like v3 it is stable — same namespace + name always yields the same UUID — but uses SHA-1 instead of MD5 and is the RFC 9562-recommended choice for name-based ids.
aka: UUID v5 · name-based UUID (SHA-1) · version 5 UUID
spec: RFC 9562 §5.5
example:
2ed6657d-e927-568b-95e1-2665a8aea6a2
| field | bits | meaning |
|---|---|---|
| sha1_high | 48 | High 48 bits of SHA-1(namespace_uuid || name) (digest truncated to 128 bits). |
| ver | 4 | version = 0b0101 (5), overwriting hash bits. |
| sha1_mid | 12 | Next 12 bits of the truncated digest. |
| var | 2 | variant = 0b10, overwriting hash bits. |
| sha1_low | 62 | Remaining 62 bits of the truncated digest. |
agent: curl -H 'accept: application/json' wire.phall.io/identifier/uuidv5
or /identifier/uuidv5.json