ULID 生成器与检查器
生成可排序的 ULID 并解读时间戳
选项
每批 1 到 1,000 个。
时间戳
同一毫秒内的 ULID 逐个加一,因此整批保持有序。
大小写
输出
选择选项,然后点击“生成 ULID”。
选择选项,然后点击“生成 ULID”。
随机部分来自浏览器中的 crypto.getRandomValues。ULID 会暴露创建时间,切勿将其用作密钥或访问令牌。 需要 RFC 9562 UUID?打开 UUID 生成器
什么是 ULID?
ULID(Universally Unique Lexicographically Sortable Identifier)是用 26 个 Crockford Base32 字符表示的 128 位标识符。前 10 个字符编码以毫秒为单位的 48 位 Unix 时间戳,后 16 个字符是 80 位随机数,因此按普通字符串排序即按创建时间排序,且实际上不会冲突。
使用方法
- 1.选择“生成”,设置需要的 ULID 数量,以及时间戳使用当前时间还是自定义日期时间。
- 2.如果批量结果需要在同一毫秒内保持有序,请开启“单调递增”。
- 3.点击“生成 ULID”,然后逐个复制、全部复制,或以文本、JSON、CSV、SQL 或代码形式下载。
- 4.选择“检查”,每行粘贴一个 ULID,即可验证并查看其时间戳。
ULID 还是 UUID?
两者都是 128 位标识符。ULID 的文本更短(26 个字符而非 36 个),按创建时间排序,并使用不含易混淆字母的字母表。随机的 UUID v4 不会透露创建时间。如果数据库列需要 UUID,检查结果会显示每个 ULID 的 UUID 形式;UUID v7 是按时间排序的标准替代方案。
验证规则与限制
有效的 ULID 恰好包含 26 个字符,取自 0-9 和 A-Z(不含 I、L、O、U),首字符为 0-7,以保证时间戳不超过 48 位。输入不区分大小写,并规范化为大写;I、L、O 会被拒绝,而不会被当作 1 和 0。生成使用 crypto.getRandomValues,仅在浏览器中运行,不会存储或发送任何内容。任何看到 ULID 的人都能读出其时间戳,因此不要在需要隐藏创建时间的场景中使用,也不要把它当作不可猜测的令牌。
