弱密码是账号被盗最常见的原因:生日、手机号、连续数字,或者一个密码到处复用,都容易在撞库与暴力破解中失守。本工具把「生成强密码」压缩成两步:先把长度拉到想要的位数,再勾选需要的字符类型,页面立刻给出密码,并同步显示强度等级与安全分析。密码的生成与检测全部在浏览器本地完成,不会上传服务器。
长度可在 4 到 128 位之间调节,默认 20 位;长度每增加 1 位,暴力破解需要尝试的组合数大约翻一倍,所以 16 位以上更稳妥。字符类型提供小写字母、大写字母、数字与特殊符号四组,默认全部勾选:可选字符的范围越大,密码越难被猜中。打开「排除易混字符」后会去掉 0、O、1、l、I 这几个在不少字体里几乎一样的字符,避免手抄或口述时出错。生成时还会保证每一类已勾选的字符至少出现一次,不会出现「勾了数字却一个数字都没有」的情况。
每次生成都会实时给出强度等级:弱、一般、强、非常强。等级按长度与字符范围估算的信息熵划分,下方同时逐条列出安全检查结果——是否超过 16 位、是否同时包含大小写字母、是否包含数字、是否包含特殊字符。某一项没有通过,可以调长长度或补齐字符类型后再生成一次。长度滑杆旁还提供 8、12、16、20、32、64 六个常用长度,点一下即可切换。
需要给多个账号设置密码时,把生成数量设为 1、5、10 或 50,一次就能得到一批互不相同的密码。结果列表里每一条都能单独复制,也可以一键复制全部(每行一条,方便直接导入密码管理器或表格);主结果区提供复制密码、重新生成与清空三个按钮。修改任意选项都会立刻重新生成,方便边调参数边看效果。
页面使用浏览器的加密安全随机数接口 crypto.getRandomValues() 取值,并对每个随机数做拒绝采样,避免取模带来的分布偏差,因此每一位字符都是均匀随机的。相比之下,常见的 Math.random() 属于非加密随机数,序列可被预测,不适合用来生成密码,本工具没有使用它。字符顺序在生成后还会用同一随机源再洗牌一次,避免固定字符总是出现在开头。
本工具没有服务端计算环节:密码在页面内生成,强度评估也在页面内完成,任何密码都不会被发送或保存到服务器,页面也不会把结果写进浏览器存储。关闭或刷新页面后,当前的密码与批量结果即被清空。需要长期保存时请使用密码管理器,而不是聊天记录、便签或浏览器书签。
不同网站使用不同密码,避免一处泄露、处处失守;优先使用 16 位以上并包含数字与符号的密码;把生成好的密码存进密码管理器,不要用聊天工具或邮件发送;在重要账号上开启两步验证,即使密码泄露也能多一层保护。如果某个网站限制密码长度或不允许特殊符号,把长度调到上限并保留大小写与数字即可。
评论 0