UUID 生成器
密码学安全的 UUID v4 批量生成,可选大写 / 去连字符,点一下再来一批。
>_ 使用指南 · GUIDE
版本选择器支持 v4 / v7 / v5 三种版本:v4 是纯随机(默认,最通用);v7 是时间有序的新标准(RFC 9562),前 48 位嵌入毫秒时间戳,批量生成严格单调递增,适合做数据库主键;v5 基于命名空间与名称做确定性哈希派生——同一命名空间与名称永远得到同一 UUID,适合「为固定实体生成稳定 ID」的场景。
选择 v5 时,从下拉中挑 RFC 预置的四个命名空间(DNS / URL / OID / X.500)并输入名称(如 example.com);v4/v7 模式下数量、一键转大写、去掉连字符等选项照常生效。生成使用浏览器的密码学安全随机源,全程本地、零网络请求,可直接用于生产环境。
>_ 常见问题 · FAQ
Q1 · UUID 和 GUID 有什么区别?
没有实质区别,GUID 是微软对 UUID 的叫法,两者都指通用唯一标识符。日常语境可以混用;只在个别微软生态里(如 COM 组件注册表格式)GUID 有特定的表达习惯。
Q2 · UUID v7 和 v4 有什么区别?该用哪个?
v4 是 122 位纯随机,无任何规律;v7 把毫秒时间戳放在最高 48 位,时间越晚生成的 ID 越大——批量生成时严格单调递增。做数据库主键时 v7 的插入按序聚集,索引页分裂少、写入快,也天然可按时间范围扫描;v4 则随机插入、对聚簇索引不友好,但完全无时间信息泄露。新项目主键场景推荐 v7;对外暴露防枚举的场景(订单号、文件 ID)用 v4 更合适。
Q3 · v5 是什么?什么时候用它?
v5 = SHA-1(命名空间 ∥ 名称) 的确定性派生:给定相同的命名空间(如 DNS)和名称(如 example.com),任何人在任何机器上都得到同一个 UUID。适合把「本来就有稳定标识的东西」映射成 UUID——例如为域名、URL、OID 生成永不过期的稳定主键。注意它是确定性的,不提供唯一性保证(同名必然同值),这也是它和 v4/v7 的本质区别。
Q4 · UUID 会被生成重复吗?
v4 理论上可能(有 2^122 种组合),实际上概率低到可以忽略——要生成十亿条 UUID 且每条都重复的概率,比连中多次彩票还低。这也是它能免协调地用在分布式系统里的原因。v7 同毫秒内通过递增计数器保证批量生成严格有序不重复,跨毫秒由时间戳推进。对唯一性有强审计要求的系统,数据库唯一索引兜底即可。
Q5 · 为什么生成的 UUID 都是「8-4-4-4-12」的格式?
这是 RFC 9562(前代 RFC 4122)规定的标准表示:32 个十六进制字符按固定位置分组。其中第三组的开头是版本号(v4 固定为 4、v5 为 5、v7 为 7),第四组开头是变体位——你可以留意生成的 ID 里这两处字符,这是判断 UUID 版本的快捷方法。