UUID 生成器

UUID 生成器

批量生成 UUID v4(随机)与 v7(时间有序)

浏览器本地计算

选择版本、数量和大小写后点击生成;v4 是随机标识,v7 包含毫秒时间,同一毫秒内不保证严格递增。

示例

输入

版本:4 · 数量:1

示例结果

xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
y ∈ {8, 9, a, b}

这是格式示意,每次生成的实际值都会变化。

技术细节与边界

UUID 共 128 位,以 8-4-4-4-12 的十六进制分组表示。v4 除版本与变体位外有 122 个随机位;此处 v7 使用 48 位 Unix 毫秒时间及随机字段,随机数来自 crypto.getRandomValues。同一毫秒内没有单调计数器,不保证生成顺序等于排序顺序。

关于此工具

批量生成 UUID v4 或 v7,可选择数量与字母大小写并复制结果。v4 适合随机标识,v7 在开头携带毫秒时间,便于观察大致生成顺序。

适用场景

  • 给数据库表生成一批测试主键。
  • 在分布式系统里生成消息 / 会话 ID。
  • 为要按创建时间排序的记录选择 UUID v7,避免索引反复分裂。

操作步骤

  1. 选择版本 (v4 或 v7)、数量、是否大写。
  2. 点击“生成”,结果每行一个,可一键复制。

注意事项

v4 使用密码学随机数。这里的 v7 按毫秒时间加随机字段生成,同一毫秒内不保证严格递增。

常见问题

v4 和 v7 应该怎么选?
需要完全随机、无时间信息用 v4;需要按创建时间大致排序(数据库主键、日志键)用 v7。v7 在 B+ 树索引上表现好得多。
UUID 有多“唯一”?
v4 有 122 个随机位,碰撞概率取决于生成数量,不能脱离数量给出固定概率。数据库仍应设置唯一约束并处理极小概率的冲突。
为什么两次生成的 v7 前缀几乎一样?
v7 前 48 位就是毫秒时间戳。同一秒内生成的多条 UUID 前缀相同,只有后半段(随机部分)不同——这正是它「时间有序」的原因。
v7 会暴露生成时间吗?
会,前 48 位包含毫秒时间。不要把 UUID 当作访问密钥;唯一标识与不可猜测的授权令牌是不同需求。
大写与小写 UUID 是不同的标识吗?
字母大小写不改变其十六进制值,但目标系统的字符串比较可能区分大小写。存储和比较时应采用统一表示,并遵循接口约定。

相关工具

UUID 生成器 · 批量生成 UUID v4(随机)与 v7(时间有序)
UUID 生成器 — 工具示意图 · dayeku.com