跳到正文
马克工具箱

Nano ID 生成器

批量生成 Nano ID,一种比 UUID 更短、可直接放进网址的随机 ID,常用于短链接、文件名、前端组件 key 和数据库主键。长度可调,页面会估算多少个 ID 后才可能出现重复。

在浏览器本地运行,输入的内容和文件都不会上传

更短的 URL 安全随机 ID,长度可调。

生成约 1,307,660.5万亿 个 ID 后,出现任意一次碰撞的概率才达到 1%。

21

解析 ID

使用步骤

  1. 用滑块设置长度,默认 21 个字符。
  2. 选择数量,页面会立即生成;点「生成」换一批。
  3. 复制列表或下载为文本文件。

参数说明

字符集
64 个 URL 安全字符:A–Z、a–z、0–9、下划线和连字符。每个字符 6 位随机数。
长度
6 到 64 个字符。默认 21 个字符有 126 位随机数,抗碰撞能力与 UUID v4(122 位)相当。
碰撞概率
页面下方显示按当前长度生成多少个 ID 后,出现任意一次重复的概率达到 1%。

示例

V1StGXR8_Z5jdHi6B-myT

默认长度 21 个字符。

常见问题

长度设多少合适?

要全局唯一,保持默认的 21 位:约生成 1.31 × 10¹⁸ 个才有 1% 的概率重复。只在小范围内用(比如一个页面里的元素),8~12 位就够;10 位约 1.52 亿个 ID 后达到 1% 的重复概率。

Nano ID 和 UUID 比有什么优势?

同样的随机强度下更短(21 个字符对 36 个字符),字符都是 URL 安全的,不需要转义。缺点是没有统一的格式标准,数据库也没有原生类型。

能当作令牌或密码重置链接吗?

可以。字符由 crypto.getRandomValues 随机选取,不可预测,并且没有取模偏差。令牌建议至少 22 个字符(132 位)。

数据会上传吗?

不会。ID 在浏览器里生成,不经过服务器。

隐私说明

本工具完全在浏览器中运行,文件和文本都在你的设备上处理,不会上传到我们的服务器。

相关工具