UUID 解析
拆解 UUID 的版本、变体与内嵌时间戳:v1 带 MAC 与时间、v7 前 48 位为毫秒时序,还原本地可读时间;核对 ID 来源很方便。
>_ 使用指南 · GUIDE
粘贴一个 UUID,本工具会把它拆成版本、变体与内嵌时间戳三部分。版本位告诉你这是怎么生成的,变体位标出布局约定,而 v1 与 v7 这类带时间信息的版本还能把时间戳还原本地可读的日期时间,方便追溯一个 ID 的来源。
各版本的差异值得留意:v1 内嵌了时间与生成机器的 MAC 地址,属于「基于时间且可能泄露机器信息」;v7 把毫秒级时间戳放在前 48 位、按大端存储,还原后精度到毫秒;v4 完全随机、不含任何时间或机器信息;v3 / v5 是名称基派生,也没有内嵌时间。变体位与版本位分别位于固定位置,本工具会一并标出含义。
典型步骤:
- 粘贴 UUID:输入标准带连字符的 UUID 文本
- 读取版本与变体:查看版本号和变体位说明
- 还原内嵌时间戳:v1 / v7 会给出 ISO(UTC) 与本地时间
- 复制结果:把解析出的字段复制走备用
>_ 常见问题 · FAQ
Q1 · 怎么一眼看出 UUID 的版本号?
看第三组的第一个字符,也就是整个字符串的第 15 位(格式为 xxxxxxxx-xxxx-Mxxx-...)。这个字符就是版本号:1 是 v1、4 是 v4、7 是 v7,依此类推。本工具会自动读出并标注。
Q2 · 为什么 v1 能看出生成时间甚至 MAC?
v1 是「时间 + 节点」布局:前半部分是从 1582-10-15 起按 100 纳秒累加的 60 位时间戳,后半部分默认填生成机器的 MAC 地址(也就是节点)。因此拿到一个 v1 就能反推时间、甚至推断出是哪台机器生成的,这也正是它被视为有隐私泄露风险的原因。
Q3 · v7 的时间戳是怎么编码的?
v7 把 Unix 毫秒时间戳放在最前面的 48 位,按大端字节序存储,其余位用于随机数以保证唯一。还原时把这 48 位读成整数即得毫秒时间,精度到毫秒级,比 v1 的 100 纳秒粗但更紧凑、也更利于数据库排序。
Q4 · 解析出来对不上预期怎么办?
先确认粘贴的是标准 UUID、位数与连字符正确。若时间对不上,常见原因是把时区记混了——本工具同时给出 ISO(UTC) 与本地时间,可对照。若版本判定与预期不符,多半是原始值本身并非该版本,工具只做忠实解析、不会改写内容。
Q5 · 和「UUID 生成器」工具的分工是什么?
生成器负责「造」:批量产出 v4 UUID,可选大写、去连字符。本工具负责「解」:拆解已有 UUID 的版本、变体与内嵌时间。二者方向相反,一个生产、一个解读。