UUID 版本怎么选
v4 随机
通用默认选项。122 位随机,碰撞概率极低。不含时间信息。
v7 时间排序
RFC 9562 (2024) 新增。前 48 位是毫秒时间戳,可用作数据库主键(顺序写入)。
v1 时间戳 + MAC
经典版本,含时间戳和 MAC 地址。浏览器出于隐私已不再暴露 MAC,本工具用随机值模拟。
v3 / v5 哈希
从名字 + 命名空间确定性派生。同一对输入永远生成同样的 UUID,适合文件指纹、内容哈希。
使用技巧
- 数据库主键:推荐 v7,因为顺序写入对 B+Tree 友好,避免 v4 的随机写入导致的页分裂。
- 不要把 UUID 当密钥:v4 包含 122 位熵,仅够标识,不足以作为密码学密钥。
- v1 隐私问题:v1 的 MAC 地址节点在过去被用来追踪用户,RFC 4122 建议改用随机节点 ID。本工具默认如此。
- 本工具不持久化:批量结果只在你这次会话中保留,刷新即清空。需要长期使用请保存到本地。
FAQ
浏览器原生 crypto.randomUUID() 不好吗?
很好,HTTPS 下应优先用它。它只生成 v4。本工具额外提供 v7(时序主键)和命名空间 UUID。
v7 与 ULID 的区别?
ULID 是 26 字节字符串,UUID v7 是 16 字节二进制。两者设计思路类似(前 48 位毫秒时间戳)。UUID v7 的优势是与 UUID v4 同样的二进制长度,向后兼容 UUID 字段。