密码生成器
密码生成器指南:高强度密码、单词口令和熵值的含义
大多数账号被盗,并不是因为遇上了天才黑客,而是因为密码太短、在已泄露的网站用过同一个密码,或者用了“名字加生日”这种好猜的组合。密码生成器替你完成人类最不擅长的事:真正随机地选择。本指南介绍工具的用法、让密码真正变强的关键、单词口令、熵值和破解时间这两个数字怎么看,最后是比密码本身更重要的两个习惯。
密码生成器怎么用
所有操作都在同一个页面、在你自己的设备上完成。先在顶部选择“密码”或“单词口令”。生成密码时,把长度滑块拖到 4 到 64 位之间的任意位置,再打开需要的字符类型:大写字母、小写字母、数字和符号。每种打开的类型都保证至少出现一次,所以“必须包含大写、数字和符号”这类网站规则也能轻松满足。如果密码需要念给别人听,或者对着屏幕手动输入,就打开“排除易混字符”,去掉 0、O、1、l、I。
生成单词口令时,选择单词数量(3 到 8 个)、单词之间的分隔符,以及是否首字母大写、是否加一个数字。选“1 个”或“一次 5 个”,再点生成即可。每个结果都有复制按钮,下方的强度条会显示熵值比特数、强度等级和预计破解时间。
- 选择密码或单词口令。
- 设定长度或单词数量。
- 选择字符类型,或分隔符和其他选项。
- 点生成,复制你喜欢的那个。
- 直接存进密码管理器。
什么样的密码才算强
密码强不强,不看它长得多复杂,而看攻击者需要尝试多少种可能。P@ssw0rd! 看起来很乱,但破解工具会优先尝试常见单词加上套路化替换,几秒钟就能猜中。真正随机的字符串则完全不同:每个字符都是独立选出的,每多一位,可能性就成倍增加。所以长度比花样更重要。把 12 位随机密码加到 16 位,猜中的难度就会提高几千万倍。
另一半是随机性。人们喜欢用生日、宠物名、qwerty 这样的键盘顺序,或者在每个网站都用同一种套路,而攻击者对这些习惯了如指掌。本工具使用浏览器的加密随机数(crypto.getRandomValues),并采用“拒绝采样”方法,确保每个允许的字符出现的概率完全相同。没有规律可学,也没有偏差可钻。
第三点是不重复使用。再完美的密码,一旦在多个网站使用就会变弱:只要一个网站泄露,攻击者就会拿它去其他所有网站尝试。一个账号,一个密码。
单词口令:又强又好记
单词口令就是把几个随机单词连在一起,像一句没头没尾的短句。关键在于单词必须由随机决定,而不是由你挑选;歌词或名言一点都不随机。本工具从内置的 2,048 个简短英文单词中逐个随机选取,因此每个单词正好贡献 11 比特熵值。5 个单词是 55 比特,6 个单词是 66 比特,再加一个随机数字还能多几比特。
单词口令最适合那几个你必须亲手输入或记住的密码:密码管理器的主密码、电脑开机密码、手机备份密码等。它够长所以够强,又由真实单词组成,用手机键盘输入比一串符号轻松得多。首字母大写因为规律明显,并不会增加强度,但遇到强制要求大写字母的网站时很有用。
读懂熵值和破解时间
熵值以比特为单位,表示密码是从多少种等可能的结果中选出来的。每多 1 比特,可能性翻一倍,所以 60 比特约等于 115 亿亿种可能,80 比特还要再多约 100 万倍。强度条会根据你的设置精确计算这个值:密码按“所选长度中、每种所选字符至少出现一次”的字符串数量来算;单词口令则把单词的选择数与数字的位置和取值相乘。
破解时间假设攻击者进行每秒 100 亿次猜测的高速离线攻击,用一块新款显卡攻击保护薄弱的泄露密码库就能轻松达到这个速度。平均来说,攻击者试到一半可能性时就会猜中。它还假设攻击者完全知道你用了哪些设置,所以不会美化结果。大致来说:低于 45 比特为弱,45 到 60 为一般,60 到 80 为强,80 以上为非常强。
- 一次性或不重要的账号:45 到 60 比特。
- 购物、社交等日常账号:60 到 80 比特。
- 邮箱、网银、工作账号和密码管理器:80 比特以上。
密码管理器和两步验证
没有人能记住几十个各不相同的随机密码,也没必要去记。密码管理器把密码保存在加密保险库里,在正确的网站自动填写,还会提醒你哪些密码重复使用或已经泄露。在这里生成高强度密码,注册或修改账号时粘贴进管理器,之后就再也不用看它。管理器本身则用一个你自己记住的长单词口令来保护。
两步验证(2FA)会再加一道关卡,比如验证器应用里的动态码、通行密钥或硬件安全密钥。即使密码泄露,攻击者也登录不了。因为大多数账号都能通过邮箱重置密码,请先给邮箱开启两步验证。
- 每个账号使用不同的密码。
- 密码存进密码管理器,而不是备忘录、聊天记录或截图。
- 凡是支持两步验证或通行密钥的地方都开启,先从邮箱开始。
- 服务通知发生泄露时,立刻修改密码。
- 不要通过消息或邮件发送密码,对意外收到的登录链接保持警惕。