如何创建强密码?

强密码是攻击者无法在任何现实的时间内猜出、并且您没有在其他地方用过的密码。短而可预测的密码最容易被猜中,重复使用的密码会在泄露后被拿到其他服务上尝试;这两个弱点都很容易解决。强密码并不能防范一切:它挡不住钓鱼页面或恶意软件,所以下面最后几步讲的并不是密码本身。本文先给出简要答案,再解释每一步为什么有效。

简要答案

  1. 用生成器生成密码,而不是自己编:只要网站允许,就用 16 个或更多字符。
  2. 使用网站接受的所有字符类型:大写和小写字母、数字和符号。
  3. 把它保存在密码管理器中。
  4. 只把它用于一个账户。
  5. 开启双重认证,如果服务支持,也可以使用通行密钥(passkey),并保管好恢复代码。

什么让密码变强

决定密码强度的有三个属性。长度:每多一个随机字符,攻击者需要尝试的组合数量就成倍增加。随机性:密码的强度取决于生成它的过程,因此由机器选出的 12 个字符,远比拼出一个名字和年份的 12 个字符强。唯一性:在两个网站上使用的密码,安全程度只相当于其中较弱的那个网站,因为从一个服务泄露的密码会被例行地拿到其他所有服务上尝试。

强度以熵的比特数衡量,每增加 1 比特,所需的猜测次数就翻一倍。从 62 种可能中随机选出的一个字符——拉丁字母 a–z 和 A–Z 以及数字 0–9,概率全部相等——约提供 6 比特,因此 12 个这样的字符约有 71 比特,16 个约有 95 比特。这些数字只在每个字符都独立、随机选取时成立;对于人自己想出来的密码,它们说明不了任何问题。在我们的生成器为其生成的密码显示的标尺上,60 比特对日常账户来说是合理的,80 比特算强,100 比特则超出了当今硬件暴力破解的实际能力。这些是参考点而不是标准:密码在实践中能抵御多少,还取决于服务如何存储它以及它受到怎样的攻击。

为什么常见的小技巧不管用

人们选择密码的方式惊人地相似,而破解工具正是围绕这些习惯构建的:

它们的共同缺陷是遵循了人类选择的可预测模式。那些旨在强制复杂性的规则——一个符号、一个数字、每 90 天换一个新密码——恰恰把人推向这些模式。因此,NIST 当前的指南要求服务不要强制规定组成规则或定期更换,而应改为对照已泄露密码的列表检查新密码。

需要自己输入的密码:使用密码短语

有少数密码需要在没有密码管理器的情况下输入:密码管理器本身的主密码、电脑或手机的登录密码,以及对许多人来说主邮箱账户的密码。这些密码请使用密码短语(passphrase)——几个随机选出的单词,而不是您自己编的一句话。经典方法是 Diceware,EFF 发布了专为此制作的词表;请使用其中名为 EFF Long Wordlist 的英文词表:

  1. 打开词表:它有 7776 个单词,每个都用 1 到 6 组成的五位数编号。
  2. 用一颗普通的六面骰子掷五次,或者一次掷五颗骰子、从左到右读数,按顺序记下这五个数字。
  3. 找到这个编号对应的单词。
  4. 重复,直到得到六个单词。
  5. 保留单词抽出时的原样,即使其中有重复,或者您更想要好听些的词。为了记住它们,可以围绕它们想象一个画面或一个故事——但不要改动单词或它们的顺序。

每个单词约增加 12.9 比特,因此五个单词约 65 比特,六个约 78 比特,而六个普通单词比同等强度的符号串好记、好输入得多。这个方法要奏效需要两个条件。单词必须靠偶然选出,因为歌词或喜欢的名言早已在攻击者的字典里;出于同样的原因,绝不要使用您在任何地方见过的示例短语。而且短语不能重复使用:一个密码短语,只用于一个地方。

其他所有密码:交给生成器

对于几十个您从来不用手动输入密码的账户,没有任何理由自己编密码。我们的强密码生成器用 Web Crypto API 在您的浏览器中生成每个密码,密码从不发送到服务器。把长度设为 16 或更多,选择网站接受的字符类别,然后点击生成;结果下方的熵估计以比特显示强度。排除易混淆字符会去掉容易混淆的字符(Il1O0o),适用于需要大声读出或照着屏幕输入密码的情况;在同时设置多个账户时,生成数量可以一次生成整份列表。

有些网站仍然限制长度或禁止某些符号。如果某个网站拒绝了生成结果,只关闭它禁止的那些符号类型,保持长度不变;只有在网站确实限制长度时才缩短密码。无论如何,不要退回到自己编的密码:12 个字符的随机密码仍然远胜于自以为巧妙的密码。

密码存放在哪里

为每个账户使用唯一的随机密码,最方便的保存方式是密码管理器:它存储密码、自动填写,许多管理器还会在某个密码出现在已知泄露中时提醒您。这样您只需记住一个密码短语,而不是一百个密码。如果您不想使用密码管理器,把密码记在一个放在家中安全位置、访客看不到的本子上,风险也比重复使用密码小。行不通的做法是:桌面上的文本文件、聊天软件里的备忘,或贴在办公室显示器上的便签。

简短检查清单

想了解这些规则为何存在,请阅读密码是如何被破解的。更多文章收录在密码资料中。