简化您的工作流程:搜索 miniwebtool。
添加插件
主页 > 随机工具 > 随机 NanoID 生成器
 

随机 NanoID 生成器

生成加密安全的 NanoID —— UUID 的现代化、紧凑型替代方案。具有可定制的字母表(URL 安全、十六进制、字母数字、无混淆字符)、可调节长度(8-64 个字符)、碰撞概率计算器、批量生成和一键复制功能。非常适合构建数据库、API、URL 缩短器和分布式系统的开发人员。

随机 NanoID 生成器
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-
64 个唯一字符
每个 ID 前添加的可选前缀(例如 "usr_"、"doc_"、"tx-")

Embed 随机 NanoID 生成器 Widget

随机 NanoID 生成器

欢迎使用随机 NanoID 生成器,这是一个强大的在线工具,用于生成安全、URL 友好的唯一字符串标识符。NanoID 是 UUID (通用唯一标识符) 的现代、轻量级替代方案,提供更短的 ID 且具有相当的抗碰撞性。无论您是在构建 API、数据库、URL 缩短器还是分布式系统,此生成器都提供具有可定制字母表、可调节长度和实时碰撞概率分析的加密安全 ID。

什么是 NanoID?

NanoID 是一个微型、安全、URL 友好的唯一字符串 ID 生成器,最初由 Andrey Sitnik 为 JavaScript 创建。此后,它已被移植到所有主要的编程语言中。NanoID 的关键创新在于使用更大的字母表(默认 64 个字符)而不是 UUID 的 16 个十六进制数字,这意味着每字符熵更多,ID 更短。

默认的 NanoID 看起来像:V1StGXR8_Z5jdHi6B-myT

NanoID 与 UUID 对比

特性 NanoID UUID v4
默认长度 21 个字符 36 个字符(包含连字符)
字母表大小 64 个字符 (A-Za-z0-9_-) 16 个字符 (0-9a-f)
~126 位(21 字符) ~122 位(32 十六进制数字)
URL 安全 ✓ 无需编码 ✗ 连字符在某些语境下需要编码
可定制 ✓ 字母表和长度 ✗ 固定格式 (8-4-4-4-12)
尺寸效率 ✓ 每字符 6 位 ✗ 每字符 4 位
格式 紧凑字符串 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx

此工具如何生成安全的 NanoID

加密随机性

此生成器在服务器端使用 Python 的 secrets 模块,该模块提供由操作系统熵源(Linux/macOS 上的 /dev/urandom,Windows 上的 CryptGenRandom)支持的加密安全随机数生成。NanoID 中的每个字符都是从所选字母表中独立且不可预测地选择的。

字母表预设

我们提供 9 种精心挑选的字母表预设,以适应不同的用例:

  • NanoID 默认 (64 字符): 标准 NanoID 字母表 A-Za-z0-9_-。URL 安全、紧凑且广泛兼容。每字符 6 位熵。
  • 字母数字 (62 字符): 仅包含字母和数字,无特殊字符。适用于文件名、数据库字段以及符号可能导致问题的语境。
  • 十六进制 (16 字符): 传统的十六进制格式。当 ID 需要与基于十六进制的系统(如 CSS 颜色或哈希摘要)集成时非常有用。
  • 仅数字 (10 字符): 仅数字 ID。适用于订单号、参考代码或仅接受数字的系统。
  • 小写 / 大写 (26 字符): 适用于不区分大小写的系统或追求视觉一致性的单大小写字母表。
  • 无混淆字符 (57 字符): 移除了在许多字体中容易混淆的字符 (1/l/I, 0/O/o)。非常适合人工读取的代码,如邀请链接、确认号以及任何需要人工输入的 ID。
  • URL 安全 (66 字符): 根据 RFC 3986 未保留字符扩展的字母表,包含 -._~
  • 自定义字母表: 定义您自己的字符集。字符将自动去重。

碰撞概率解释

碰撞概率衡量两个独立生成的 ID 相同的可能性。这在概率论中受生日问题支配:

  • 总可能 ID: 字母表大小 ^ id 长度。对于默认 NanoID: 64^21 = ~2^126
  • 对于 n 个生成的 ID: 碰撞概率 ~ n^2 / (2 * 总可能数)
  • 使用 1,000 个 ID: 概率极小 (~10^-33)
  • 要达到 1% 碰撞机会(使用默认设置): 您需要约 ~10^18 个 ID (一百京)

此页面上的碰撞概率计算器根据您选择的字母表和 ID 长度显示实时分析,帮助您为您特定的规模做出明智的 ID 配置决策。

如何使用 NanoID 生成器

  1. 选择字母表预设: 从 9 种预设中选择或定义自定义字母表。字母表预览会显示将要使用的确切字符。
  2. 设置 ID 长度: 选择 8 到 64 个字符。默认值为 21,使用标准字母表提供约 126 位熵。
  3. 配置可选设置: 为命名空间 ID 添加前缀(例如 "usr_"、"doc_")并选择数量 (1-50)。
  4. 生成并复制: 点击“生成 NanoID”来创建您的 ID。使用一键复制功能复制单个 ID 或一次性复制所有 ID。

NanoID 的应用场景

数据库主键

NanoID 是数据库极佳的主键。它们比 UUID 短(21 对 36 个字符),节省存储空间并减小索引大小。使用前缀如 "usr_" 或 "ord_" 使 ID 具有自我描述性。

API 资源标识符

NanoID 默认 URL 安全,使其成为 REST API 端点的理想选择:/api/users/V1StGXR8_Z5jdHi6B-myT。无需 URL 编码,且在日志和 URL 中看起来很整洁。

URL 缩短器

具有默认字母表的 10 字符 NanoID 提供 64^10 = ~10^18 种可能组合——足以满足任何 URL 缩短器的需求。无混淆字符字母表在这里特别有用,因为用户可能需要手动输入短 URL。

会话令牌和 CSRF 令牌

由于此工具使用加密随机性,生成的 ID 适用于安全令牌。对于敏感的安全应用,请使用更长的长度(32-64 个字符)。

分布式系统

NanoID 可以在多个服务器上独立生成而无需协调,不像自动递增整数。即使在大规模情况下,碰撞概率也微乎其微。

文件名命名

使用字母数字预设可在所有操作系统上实现安全的文件名。没有特殊字符意味着在 Windows、macOS 或 Linux 上没有转义问题。

选择合适的长度

长度 熵 (64 字符字母表) 最适用于 1% 碰撞阈值
8 48 位 短 URL, 小数据集 ~1600 万个 ID
12 72 位 通用目的, 中型数据集 ~680 亿个 ID
16 96 位 大型系统, 高吞吐量 ~280 万亿个 ID
21 126 位 默认, 大多数应用 ~10^18 个 ID
32 192 位 安全令牌, 超级安全 ~10^28 个 ID
64 384 位 最大安全性 ~10^57 个 ID

代码示例

JavaScript (使用 nanoid 软件包)

import { nanoid } from 'nanoid';

// 默认:21 字符, URL 安全字母表
const id = nanoid(); // "V1StGXR8_Z5jdHi6B-myT"

// 自定义长度
const shortId = nanoid(10); // "IRFa-VaY2b"

// 自定义字母表
import { customAlphabet } from 'nanoid';
const hexId = customAlphabet('0123456789abcdef', 12);

Python (使用 nanoid 软件包)

from nanoid import generate

# 默认 NanoID
id = generate() # "V1StGXR8_Z5jdHi6B-myT"

# 自定义长度和字母表
id = generate('0123456789abcdef', 12)

常见问题

什么是 NanoID,它与 UUID 有什么区别?

NanoID 是一个微型、安全、URL 友好的唯一字符串 ID 生成器。它默认长度为 21 个字符(而 UUID 为 36 个字符),使用更大的字母表 (A-Za-z0-9_-) 以获得更多的每字符熵,无需编码即可实现 URL 安全,且没有固定的格式或连字符。NanoID 能够以更少的字符实现与 UUID v4 相似的抗碰撞性,因为它使用了 64 个符号而不是 16 个十六进制数字。

此工具生成的 NanoID 安全吗?

此工具使用 Python 的 secrets 模块,该模块提供由操作系统熵源支持的加密安全随机数生成。每个字符都是独立且不可预测地选择的。使用标准字母表的默认 21 字符 NanoID 具有约 126 位熵,与 UUID v4 的约 122 位熵相当。

我的项目应该使用多长的 NanoID?

默认长度 21 个字符在使用标准字母表时提供约 126 位熵,足以满足大多数应用。对于 URL 缩短器或面向用户的 ID, 8-12 个字符可能就足够了,具体取决于您的总 ID 数量。对于生成数百万个 ID 的分布式系统,21 个以上的字符可确保碰撞概率微乎其微。使用碰撞概率计算器为您特定的用例找到合适的长度。

我可以将 NanoID 用作数据库主键吗?

可以,NanoID 非常适合作为数据库主键。它们紧凑(21 个字符对比 UUID 的 36 个字符)、URL 安全,并且具有出色的抗碰撞性。然而,与自动递增的整数不同,它们不是顺序的——因此如果您的数据库使用 B 树索引,随机 ID 可能会导致更多的页面拆分。考虑使用前缀(如 'usr_' 或 'ord_')使 ID 具有自我描述性。

什么是“无混淆字符”字母表预设?

无混淆字符 (No-Lookalike) 预设移除了在许多字体中看起来相似的字符:1/l/I(数字 1、小写字母 L、大写字母 I)和 0/O/o(数字 0、大写字母 O、小写字母 O)。这使得 ID 更易于阅读、记录和口头交流。它非常适合面向用户的 ID,如邀请码、确认号或任何需要人工输入的 ID。

额外资源

引用此内容、页面或工具为:

"随机 NanoID 生成器" 于 https://MiniWebtool.com/zh-cn/随机nanoid生成器/,来自 MiniWebtool,https://MiniWebtool.com/

由 miniwebtool 团队提供。更新日期:2026年2月7日

其他相关工具:

随机工具:

常用工具:

随机信用卡生成器MAC地址查找彩票号码生成器英尺英寸转换为厘米网址提取器相对标准偏差计算器CAGR计算器太阳、月亮与上升星座计算器 🌞🌙✨随机扑克牌生成器🌡️ 体感温度计算器MAC地址生成器比例计算器随机选择器VAT计算器二进制计算器样本量计算器cpm计算器毛利率计算器SRT转为TXT工具百分比折扣计算器音频提取器音频分割器视频转图片提取器HEX计算器定期存款计算器年龄计算器随机字符串生成器圆计算器kg到lbs转换器随机数字选择器随机名字选择器百分比增长率计算器血糖转换器图片打码工具MAC 地址分析工具厘米到英尺和英寸转换器斜边计算器随机IMEI生成器卡方检验计算器英寸到厘米转换器百分比变化计算器余弦定理计算器🎮 游戏灵敏度转换器厘米到英寸转换器合并视频磅转千克转换器体脂百分比计算器罗马数字转换器凯利公式计算器FPS 转换器最简分数计算器对数计算器年度天数计算器 - 今天是今年的第几天英尺到米转换器调整视频速度真心话大冒险生成器利润计算器图片压缩器指数计算器-高精度两个日期之间线性回归计算器📅 日期计算器月亮星座计算器每个月的天数随机分组生成器股票平均成本计算器SHA256 哈希生成器t检验计算器随机化数字MD5哈希生成器分数计算器按字符数换行srt时间偏移标准偏差计算器 - 高精度圆形面积计算器为图片添加文字百分比到ppm转换器百分比增加计算器Facebook用户ID查询位数计算器unix时间转换器分贝 (dB) 计算器质数检查器随机超能力生成器相关系数计算器kpa到psi转换器Log Base 10 计算器PSI 转 Bar 转换器三角函数绘图器One Rep Max (1RM) 计算器条形码生成器石头剪刀布生成器死链检查器DOY日历椭圆周长计算器竖式加减法计算器SRT合并工具排序数字百分比计算器💧 露点计算器AI标点符号添加器图片分割器视频分割器逻辑门模拟器根式化简器随机字母生成器为视频添加水印沸点计算器误差函数计算器随机域名生成器两点间距离计算器分数百分比转换器十六进制转CMYK转换器平方根计算器方差计算器 高精度日历中位数计算器卧推计算器按位计算器组合计算器行数统计工具复合增长率计算器旋转视频极坐标方程绘图器泰勒级数计算器电池续航计算器螺栓扭矩计算器随机ip地址生成器AI改写工具角速度计算器圆柱体体积计算器 高精度坡度与倾斜度计算器多项式展开计算器随机坐标生成器隐形文本生成器密码生成器快速傅里叶变换FFT计算器模计算器随机RPG角色生成器随机装备生成器随机颜色生成器黄金分割计算器工资转换计算器闰年清单随机数学题生成器斜率截距式计算器百分比减少计算器英亩到平方米转换器IPv4/IPv6到十六进制转换器原根计算器商和余数计算器职位查找器星期几计算器盎司到克转换器移除标点符号在线工具英亩到公顷转换器跑步配速计算器RC时间常数计算器农历转换器半衰期计算器图片旋转器年金现值计算器惯性矩计算器🎰 抽卡保底计算器随机圣经经文生成器克到磅转换器删除线文字生成器利率计算器圆锥展开图模板生成器小数时间转换器平均值计算器数独生成器与求解器最小公倍数计算器ppm到百分比转换器双重积分计算器复数计算器按字母顺序排序词频分析器随机物品生成器随机生日生成器anova计算器不可见字符移除器人格数字计算器伊斯兰历转换器凯撒密码工具填字游戏制作器天使数字计算器平均偏差计算器获取字符串长度随机PIN生成器YouTube频道统计因子计算器图片添加线条文本格式化工具比例置信区间计算器立方根计算器视频压缩器迷宫生成器AI Token 计数器BMR计算器销售税关联检查器刑期减免计算器诉讼时效计算器Airbnb 定价优化器室友房租分摊计算器Section 8 租金计算器BRRRR 方法计算器现金对现金回报率计算器租金收益率计算器1031 交换计算器财富增长可视化工具午餐花费计算器健身房 vs 家庭健身花费计算器咖啡花费计算器远程办公省钱计算器副业ROI计算器订阅费用追踪器SaaS定价计算器自由职业项目报价计算器烟熏木材搭配指南发酵时间计算器腌制时间计算器饮食限制食谱筛选器香料替代查找器咖啡因半衰期追踪器标准杯计算器葡萄酒搭配建议器攀岩难度等级转换器自行车齿轮比计算器钓鱼结强度计算器瑜伽体式保持计时器游泳SWOLF计算器跑步成绩预测计算器拳击出拳力量计算器橄榄球得分计算器板球得分率计算器足球 xG预期进球计算器网球计分器Wells评分计算器 (DVT/PE)格拉斯哥昏迷评分计算器阿普加评分计算器FFMI计算器库珀12分钟跑步计算器一英里步行测试Rockport计算器瘦体重力量计算器碳水化合物胰岛素比例计算器胰岛素敏感系数计算器希伯来历转换器跨文化年龄计算器多久以前计算器还有多久倒计时计算器日期模式生成器中间日期计算器日期添加工作日工作日计算器句子长度方差分析器海明威风格可读性编辑器发音音标转换器维吉尼亚密码工具埃特巴什密码工具ROT13编码解码器EXIF数据查看与移除工具猪拉丁文翻译器倒推首字母缩写生成器首字母缩写生成器全字母句检查器漏字文检测器图像转SVG描摹器图片转 ASCII 艺术转换器JSON Schema 生成器TypeScript 在线演练场Less 到 CSS 编译器SCSS转CSS编译器SVG 转 React/JSX 转换器查询字符串生成器URL解析器UUID验证和解码器HTTP状态码参考cURL命令构建器谢尔宾斯基三角形生成器3D曲面绘图器朱利亚集合生成器曼德博集合探索器L-System分形生成器Delaunay 三角剖分生成器Voronoi 图生成器万花尺图案生成器镶嵌图案生成器六西格玛过程能力计算器帕累托图生成器NPS净推荐值计算器留存率同期群计算器客户流失率计算器客户获取成本CAC计算器客户终身价值 CLV 计算器转化率计算器A/B测试样本量计算器A/B测试显著性计算器透镜方程计算器导线磁场计算器电场计算器库仑定律计算器斯涅尔定律计算器向心力计算器单摆周期计算器弹簧劲度系数计算器多普勒效应计算器索提诺比率计算器特雷诺比率计算器股票贝塔系数计算器通胀保值美国国债 (TIPS) 计算器房贷重新摊还计算器远期利率计算器债券久期计算器 (麦考利和修正)债券凸性计算器固定指数年金计算器变额年金计算器反向抵押贷款计算器年金支付计算器日本算盘模拟器俄罗斯农民乘法吠陀数学技巧计算器古埃及乘法计算器罗马数字数学求解器心算训练器乘法口诀表测验进位与借位可视化工具数的分合生成器硬币应用题求解器距离速度时间三角形计算器工作效率问题求解器混合问题求解器年龄问题求解器火车相遇问题求解器补水计算器配速卡路里计算器药物剂量计算器酒精卡路里计算器身体重塑计算器随机辩论话题生成器随机猫狗名字生成器随机段落生成器随机英文句子生成器砾石、砂和表土计算器钢材重量计算器管道流量计算器梁荷载计算器美元换黄金转换器期权概率计算器股票拆分计算器员工持股计划计算器发票滞纳金计算器自由职业者时薪计算器租赁与购买对比计算器高级小费分摊计算器装箱清单生成器时差反应计算器旅行预算计算器飞行距离计算器热损失计算器发电成本计算器用水量计算器家电用电成本计算器家庭能源审计计算器太阳能投资回报率计算器太阳能板计算器堆肥CN比计算器草坪肥料计算器霜冻日期计算器高床种植箱土壤计算器NPK肥料计算器种子发芽率计算器视频比特率计算器音乐调性转换器音乐BPM节拍点击器照片文件大小估算计算器百万像素到打印尺寸计算器裁切系数计算器曝光三角计算器车辆牵引能力计算器汽车租赁计算器0–60与四分之一英里计算器电动车充电时间计算器电动汽车续航计算器3D距离计算器环面计算器圆台计算器不规则多边形面积计算器正多边形计算器圆锥曲线识别器双曲线计算器长除法计算器Twitter/X 字符计数器YouTube评论抽选器YouTube标签提取器YouTube缩略图下载器youtube收益估算器