Nano ID 生成器 在线工具

在浏览器本地生成 URL 安全、抗碰撞的 Nano ID,支持自定义长度和字符表。

Nano ID 生成器完全在你的浏览器中运行。每个 ID 都通过 Web Crypto API 在本地生成,不会上传任何内容到 ArrayKit。

打开 UUID 生成器

关于 Nano ID

Nano ID 生成器使用与热门 nanoid 库相同的拒绝采样算法,创建简短、URL 安全、抗碰撞的唯一标识符。默认情况下,它会从一个 64 个字符的 URL 安全字符表中生成一个 21 位的 ID,在约三分之一的长度下提供与 UUID 相当的抗碰撞能力。你可以调大或调小长度、一次性批量生成多个 ID,也可以使用自定义字符表——例如仅使用数字,或使用不区分大小写的字符集以便在电话中朗读 ID。它适用于数据库主键、会话令牌、短链接 slug,以及任何觉得 UUID 太长的场景。一切都在浏览器本地运行,在你决定使用之前,没有任何 ID 会被发送到服务器。

功能特性

如何使用 Nano ID

  1. 设置 ID 长度(默认 21)以及需要生成的数量
  2. 如有需要,可将字符表替换为你自己的字符集
  3. 点击 Generate,通过浏览器的加密 RNG 生成新的 ID
  4. 复制列表,或再次点击 Generate 生成新一批

示例

输入

size = 21

输出

V1StGXR8_Z5jdHi6B-myT

使用默认的 64 字符 URL 安全字符表生成的 21 位 Nano ID。

常见错误与故障排除

常见问题

什么是 Nano ID?
Nano ID 是一种简短、URL 安全的随机唯一标识符,通常长 21 个字符,使用加密安全的随机数生成。它能在比 UUID 短得多的字符串中提供相当的抗碰撞能力。
Nano ID 与 UUID 有什么区别?
UUID 是固定 36 个字符的格式,具有明确定义的结构(版本位和变体位)。Nano ID 没有固定结构——你可以自行选择长度和字符表——在默认设置下,它更短,但抗碰撞能力与 UUID 相当。
Nano ID 生成器可以使用自定义字符表吗?
可以。将字符表字段替换为任意一组不重复的字符——例如仅数字、十六进制字符或不区分大小写的字符集——生成器就会只从该字符集中生成 ID。
Nano ID 生成器会把我创建的 ID 上传到某个地方吗?
不会。每个 Nano ID 都是使用浏览器的加密安全随机数生成器在本地生成的。没有任何内容会被发送到服务器,因此你创建的 ID 只会在你的设备上可见。
Nano ID 生成器的输出会偏向某些字符吗?
不会。它使用无偏拒绝采样,丢弃超出字符表范围的随机字节,而不是用取模来压缩它们,因此字符表中每个字符出现的概率都是相同的。
Nano ID 应该选择多大的长度?
默认的 21 个字符是通用场景下的安全选择。较短的 ID(10-14 个字符)适合流量较低的短链接 slug;较长的 ID 适合需要更强抗碰撞能力的高流量系统。

相关工具

全部 ArrayKit 工具