生成 UUID
所有生成都在你的浏览器内通过 Web Crypto API 完成。v7 采用 48 位时间戳前缀加 74 位随机位(RFC 9562)。URN 前缀仅应用于带连字符的格式。
输出格式
选择适合你技术栈的格式。以下格式都由同一个 UUID 生成。
- 标准(带连字符):
123e4567-e89b-42d3-a456-426614174000 - 大写:
123E4567-E89B-42D3-A456-426614174000 - 无连字符:
123e4567e89b42d3a456426614174000 - 大括号:
{123e4567-e89b-42d3-a456-426614174000} - URN:
urn:uuid:123e4567-e89b-42d3-a456-426614174000
用你的语言生成 UUID
常见问题
什么是 UUID?
UUID(通用唯一标识符)是 128 位标签,用于在计算机系统中唯一标识信息。通常写作 32 个十六进制字符,用连字符分为 8-4-4-4-12 五段,例如
123e4567-e89b-12d3-a456-426614174000。UUID 是如何生成的?
本工具生成 v4 与 v7 版本 UUID。它使用浏览器内置的加密安全随机数生成器填充 128 位中的随机部分,然后按 RFC 4122 与 RFC 9562 要求设置版本位(第 13 个十六进制字符)和变体位(第 17 个字符为 8、9、a 或 b)。不会向任何服务器发送数据。
UUID 会生成重复吗?
实际应用中不会。v4 有 122 位随机位,v7 有 74 位随机位,可能值的数量都是天文数字。碰撞概率低到在任何实际业务量下都可忽略。唯一性是概率性的,并非由中心机构保证。
UUID v1 和 v4 有什么区别?
UUID v1 基于时间,嵌入时间戳和 MAC 地址,可能泄露机器身份。UUID v4 纯随机,是大多数应用(包括数据库主键和 API token)的推荐选择。v7 在前缀加入时间戳,使排序对索引更友好。
UUID v4 和 v7 该选哪个?
通用场景用 v4(随机):它是绝大多数语言的默认选择,且不泄露任何信息。当 UUID 用作数据库主键时选 v7(时间有序,RFC 9562):它的前 48 位是时间戳,插入大致按时间递增,可减少 B-tree 页分裂、改善索引局部性。v7 仍含 74 位随机位,碰撞风险依然可忽略。