这个页面把这件事变成了几次点击:先选好允许出现哪些字符,再定下长度区间和条数,点一下就能得到整齐的一列结果。想让每条都带上项目缩写做前缀、想避开容易看错的 0 和 O、想确保没有任何两条撞车,这些开关都摆在左边随手可调。
随机数并非取自常见的 Math.random,而是调用浏览器内置的 crypto.getRandomValues 加密级接口,输出的分布更均匀、更难被预测,拿来做邀请码或临时密钥也放心。整个过程不经过服务器,参数和结果都留在你自己的浏览器里。
第二步,设定长度与数量。长度区间的两端填成一样就是定长,填成不一样则每条在区间内随机取值。条数上限 1 万,需要更多可以分批生成后拼接。
第三步,取走结果。右侧文本框实时显示全部结果,配套的统计条会告诉你实际生成了多少条、字符池有多大、一共产出多少字符。点复制直接进剪贴板,点下载则保存为 TXT 或 CSV 文件。
| 用途 | 字符池 | 长度 | 建议开关 |
|---|---|---|---|
| 接口测试用的临时账号 | 小写 + 数字 | 8 - 12 | 开启去重,前缀填 test_ |
| 线下派发的兑换码 | 大写 + 数字 | 固定 10 | 开启去重与排除易混淆字符 |
| 初始登录口令 | 大小写 + 数字 + 符号 | 12 - 16 | 勾选每类字符至少出现一次 |
| 十六进制标识 | 自定义 0123456789abcdef | 固定 32 | 开启去重 |
为什么我要 5000 条,最后只给了 3000 多条?
开启去重后,可用组合数由字符池大小和长度共同决定。字符池只有 10 个数字、长度又只有 3 位时,全世界也只能凑出 1000 种。工具在反复抽取到达尝试上限后会停止,并如实展示实际条数,把字符池扩大或长度加长即可解决。
「每类字符至少出现一次」是怎么保证的?
勾选后,工具会先从每个已启用的类别里各抽一个字符占位,再用完整字符池补足剩余长度,最后把整条打乱顺序。因此这个选项要求单条长度不小于已启用的类别数量,否则会提示你调大长度。使用自定义字符池时该选项不生效。
前缀后缀会算进长度里吗?
不会。长度区间只约束随机生成的主体部分,前缀和后缀是额外拼接上去的。比如前缀 order_、长度 8,最终每条会是 6 + 8 共 14 个字符。去重判断针对拼接后的完整字符串。
随机结果安全到什么程度?
随机源是浏览器原生的 crypto.getRandomValues,属于密码学安全伪随机数发生器,不存在 Math.random 那种可被推算的种子问题,用于邀请码、API Key、一次性口令都足够。如果是长期使用的账号主密码,仍建议交由密码管理器生成并保管。
输入的参数和生成结果会被记录吗?
不会。页面加载完成后所有运算都在浏览器本地执行,不会向服务器发送任何请求,也不写入 Cookie 或远程日志。关闭标签页,这次生成的内容就彻底消失了。
下载的 CSV 用 Excel 打开会乱码吗?
不会。导出的 CSV 已写入 UTF-8 BOM 头,Windows 版 Excel 可以直接双击打开并正确识别中文表头。文件含序号和字符串两列,方便后续做批量导入。
