随机工具 · 密码生成

随机密码

长度/字符集/强度评估

✓本地处理 · 不上传 ✓免费 · 无需登录 ✓无次数限制 累计 125 次使用
纯本地生成 · crypto 强随机 · 不上传 · 不存储
长度 16 批量 个
点击「生成」开始
点击上方密码即可复制 · 按空格再生成
信息熵 ENTROPY
—
bits
字符集大小
—
个候选字符
暴力破解估算
—
10¹⁰ 次/秒
强度 — 熵 <40 弱 · 40-60 中 · 60-80 强 · >80 极强
批量结果batch · 点行末按钮复制单条
点「生成」按批量数量一次产出多条
就绪 · 设好长度与字符集,点生成或按空格 crypto.getRandomValues · 拒绝采样消模偏移
第一节

关于本工具

About

注册新账号时,最怕系统提示“密码强度不足”,自己编的又怕被社工库撞库。这个工具按设定的长度与字符集(大写、小写、数字、符号)即时生成密码,并给出强度评估(弱/中/强)。所有计算在浏览器本地完成,密码不会离开当前页面——适合需要快速生成一次性高安全性密码的场景。

使用场景

壹

注册页密码被拒

深夜注册某论坛,填了三次密码都被提示“必须包含大写字母和特殊符号”。手打太慢,用本工具勾选“含大写+数字+符号”、长度设12位,一次生成符合规则的密码。复制后直接通过验证,不用来回改。

贰

WiFi访客临时密码

朋友来家里做客,不想把家庭WiFi密码直接告诉他,又怕他连不上网。用本工具生成一个8位纯数字密码,强度评估显示“弱”但作为一次性访客密码足够。设好路由器临时权限后,客人输入即连,事后随时可改。

叁

批量重置员工账号

公司要求每季度强制改密码,IT部要给30个新员工重置初始密码。手动想30个不同密码容易重复或弱。用本工具一次生成30个16位含大小写+数字的密码,复制到表格里分发。强度评估显示全部“强”,省去逐个检查的时间。

肆

游戏账号防盗号

玩某手游时总收到异地登录提醒,怀疑密码被撞库。打算换一个不重复的高强度密码。用本工具勾选“含符号+大小写+数字”、长度20位,生成的密码强度评估显示“极强”。复制到游戏修改密码页,此后未再收到异常登录。

伍

API密钥临时生成

开发测试环境需要临时API密钥,要求32位随机字符串且不能包含易混淆字符(如0和O)。用本工具排除“0、O、1、I”等字符,长度设32,生成结果自动过滤掉混淆字符。直接复制到.env文件,省去手动校验的麻烦。

第二节

使用指南

Getting Started

使用步骤

  1. 1在「密码长度」滑块或输入框中设定位数(8-128 位),右侧强度条实时更新为对应安全等级
  2. 2勾选字符集复选框(大写/小写/数字/符号),下方预览区立即显示当前组合的示例密码
  3. 3点击「生成」按钮,结果区输出一组随机密码,同时显示该密码的熵值(bit)与预估破解时间
  4. 4点密码右侧的复制图标,系统提示「已复制到剪贴板」,可直接粘贴到目标输入框

输入输出示例

输入输出说明
长度:8,字符集:数字+小写字母a7k3p9x2常规:8位混合字符集,验证基本随机生成与字符集覆盖
长度:16,字符集:数字+大写字母+小写字母+特殊符号K#m9@R2!pQx7&Lz4常规:完整字符集+较长长度,验证特殊符号正确包含及无重复模式
长度:1,字符集:仅数字7边界:最小长度1,验证单字符生成不会出错或返回空
长度:256,字符集:仅大写字母ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ...(共256个字符)边界:超长密码(256位),验证性能与输出完整性,无截断
长度:0,字符集:数字+小写字母(空字符串)边界:长度0,验证工具是否返回空串而非报错或生成1位
长度:8,字符集:仅特殊符号(如 !@#$%^&*)!@#$%^&*易错:纯特殊符号密码,用户常误以为工具会过滤,验证实际包含全部指定字符
长度:8,字符集:数字+小写字母+大写字母,排除易混淆字符(如 0O1lI)A3bK9xP2易错:排除字符功能,验证工具正确跳过0/O/1/l/I等易混淆字符,避免生成后手动修改

常见错误对照

1.混淆字符集:1 和 l、0 和 O 未区分

✗ 错误勾选「大写字母」+「数字」,生成密码含 O0l1,手抄时抄错
✓ 修复使用「排除相似字符」选项,或手动勾选时避开易混淆字符集

O(大写字母)与 0(数字)、l(小写 L)与 1(数字)在字体中极易误读,密码抄写或口述时经常出错,影响登录成功率。

2.字符集全选但长度设太短,强度虚高

✗ 错误字符集勾选全部(大小写+数字+符号),但长度设为 4 位
✓ 修复字符集全选时,长度至少设为 12 位,或使用「强度条」提示的「强」阈值

密码强度取决于熵值,熵 = 长度 × log₂(字符集大小)。4 位全字符集密码仅约 26 位熵,现代 GPU 可在秒级暴力破解。

3.手动输入字符集时漏掉必要转义

✗ 错误自定义字符集输入 a-z0-9!@#$%^&*()
✓ 修复在工具的自定义字符集输入框中直接粘贴 a-z0-9!@#$%^&*(),无需转义

该工具的自定义字符集输入框接受字面字符,不需要像在正则或 shell 中那样对 $ ^ * 等特殊字符加反斜杠。如果误加转义,反而会引入反斜杠本身作为密码字符。

4.勾选「至少包含每类字符」后长度不足

✗ 错误勾选「至少包含 1 个大写、1 个数字、1 个符号」,但长度设为 3
✓ 修复勾选该选项时,长度至少设为字符集种类数 + 1(例如 3 类则至少 4 位)

「至少包含每类字符」要求密码中每种字符集至少出现一次。长度 3 时只有 3 个位置,无法同时容纳 3 类不同字符,工具会报错或自动调整。

5.复制密码后未清空剪贴板,造成泄露

✗ 错误生成密码后直接关闭页面,剪贴板仍存有明文密码
✓ 修复使用后手动复制一段无关内容覆盖剪贴板,或使用带「自动清除」功能的密码管理器

浏览器剪贴板内容可被其他页面通过 navigator.clipboard.readText() 读取(需用户授权),但恶意扩展或同域页面仍可能窃取。密码工具本身不存储密码,但剪贴板是泄露通道。

6.将生成密码用于「密码提示问题」

✗ 错误把随机密码填入「密保问题答案」字段,如「你最喜欢的颜色?」
✓ 修复随机密码仅用于账户密码字段;密保问题应使用另一组易记但非直接相关的答案

密保问题通常允许重置密码,如果答案也是随机字符串,用户自己都记不住,等于锁死账户。随机密码的定位是「高强度、不可猜测」,不适合作为记忆型验证信息。

第三节

工作原理

How It Works

核心公式

N = L × log₂(C)

变量说明

  • N密码熵值,单位比特
  • L密码长度,字符个数
  • C字符集大小,可选字符总数

示例

密码长度 12 位,字符集含大小写字母 + 数字(26+26+10=62 种字符):N = 12 × log₂(62) ≈ 12 × 5.954 ≈ 71.45 比特。熵值 > 60 比特,暴力破解需 2⁷¹·⁴⁵ 次尝试,约 2.5×10²¹ 次,当前算力下安全。

用户设定参数长度 / 字符集浏览器本地生成crypto.getRandomValues字符映射与拼接按字符集索引取值强度评估熵值计算与等级判定输出密码
用户输入 / 最终输出 本地处理(浏览器端) 强度评估
第五节

常见问题

Q & A
问生成的密码里有没有容易混淆的字符,比如 1 和 l、0 和 O?+
答

有,默认字符集包含大小写字母和数字,1/l、0/O 确实容易看错。本工具在字符集设置里提供了「排除易混淆字符」选项,勾选后自动去掉 0/O/I/l/1 等,适合抄写或手动输入的场景。如果密码是粘贴使用则无所谓,不勾即可获得更大字符池。

问这个密码强度评估准不准?我看它写‘强’,但别人说 8 位不够。+
答

强度评估基于当前字符集种类和位数计算熵值,纯数字 8 位约 26 比特,属于弱;大小写+数字 8 位约 47 比特,本工具标为中等;加符号 12 位以上才到强。评估逻辑符合 NIST SP 800-63B 建议,但实际强度还取决于密码是否被泄露或复用,工具只看随机性,不看历史泄露。

问每次点生成出的密码都不一样,但有没有可能和别人重复?+
答

理论上极小概率重复。本工具使用浏览器内置的 crypto.getRandomValues() 生成密码,该 API 是密码学安全的伪随机数生成器,种子来自系统熵源。按 12 位大小写+数字的密码空间(62^12 ≈ 3.2×10^21),随机碰撞的概率低于自然界被雷电击中。同一页面连续生成重复的概率几乎为零。

问生成的密码能不能设置必须包含数字和符号?我试了几次全是大写字母。+
答

可以。在字符集选项中勾选「数字」和「符号」后,工具会从这些集合里随机抽取字符,但纯随机可能恰好某次只抽到大写字母。如果需要强制每种至少一个,请勾选「每种字符至少出现一次」开关,工具会先保证每类至少一个,再随机填充剩余位数,确保密码满足复杂度要求。

问这个工具是纯前端生成吗?密码会不会被传到服务器?+
答

完全纯前端生成。所有逻辑在浏览器本地执行,密码生成后不离开本机,不发送任何网络请求,无后端参与。可以断网使用——生成一次后离线刷新页面仍可继续生成(但页面关闭后重新打开需联网加载页面文件)。隐私敏感场景(如生成主密码或数据库密码)可放心使用。

问我生成了一组密码,想改其中几个字符,但工具只能重新生成,怎么办?+
答

本工具没有手动编辑功能,重新生成会完全替换。如果只想微调(比如改一个符号或缩短长度),可以把生成结果复制到记事本里手动修改。不过手动改会破坏随机性,变成半人工密码,建议直接用工具重新生成并勾选更符合要求的字符集和长度。

问为什么我设了 64 位长密码,生成出来只有 32 位?+
答

检查字符集是否只勾了数字或小写字母。本工具最大长度受字符集种类限制:若只选数字,最大 32 位;只选小写字母,最大 32 位;选大小写+数字+符号,最大 128 位。如果设了长位数但字符集单一,工具会自动截断到当前字符集允许最大值。要生成 64 位,至少勾选两种字符集。

问生成的密码能不能直接用在微信、支付宝这些 App 上?有长度限制吗?+
答

大部分 App 密码限制在 6-20 位,且部分不支持特殊符号。本工具生成 8-16 位含大小写+数字的密码兼容性最好。如果生成超过 20 位或含空格、中文符号,某些 App 会报错。建议先查目标平台密码规则(比如微信上限 16 位、支付宝 6-20 位),再在本工具里对应设置长度和字符集。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

↑↓选择 ↵打开 ⌘+↵新窗口 esc关闭