UUID v5 生成器

🆔 UUID v5 Generator

📐 工作原理与说明
UUID = SHA-1(命名空间 UUID ‖ 名字) 取前 128 bit
再置版本位 = 5、变体位 = 10
UUID v3/v5 是基于名字的确定性 UUID:把「命名空间 UUID 的 16 字节」与「名字的字节序列」拼接后做哈希(v3 用 MD5,v5 用 SHA-1),取摘要前 16 字节,再把版本号写为 5、变体位置为 10。因为输入确定则输出确定,同一命名空间 + 同一名字永远得到同一 UUID,适合作为「由业务键派生的稳定标识」(如用域名命名空间 + 用户名生成用户 ID)。注意它不具备不可预测性,不能当密钥或令牌使用。

📚 深度解析:UUID v5 生成器

💡 常见使用场景

  • 基于命名空间+名称的确定性 UUID,同名必同 ID。
  • 由业务键稳定派生标识:用同一命名空间加同一用户名,任何时刻都能得到同一个 UUID,适合做去重键。
生成
namespace=DNS, name="example.com" → 固定 `aad6f...`(SHA-1 命名空间)。

❓ 常见问题(FAQ)

v5 为何可复现?
输入(命名空间+名称)相同输出必相同。
命名空间该用什么?
标准定义了四个:DNS(域名)、URL、OID(ISO 对象标识)与 X500(DN)。选择与业务键性质匹配的那个——用域名派生就用 DNS 命名空间。也可用任意 UUID 作为自定义命名空间,但必须在文档中固定下来,否则换一个命名空间结果就全变了。
⚠️ 使用说明与注意事项
📖关于「UUID v5 生成器」 ▼

📝工具简介

Generate deterministic UUID v5 identifiers from a namespace and a name.