← 返回文章列表

强密码的真相:长度比复杂度更重要

口令入门

复杂度是个错觉

不少人觉得“加符号、大小写混着用”就更安全。决定密码强度的其实是熵,由长度 × 字符集规模共同决定。其中长度最直接:每多一位,可尝试的组合数就指数级上涨。

直观对比

  • 8 位纯小写:约 2^37 种组合;
  • 12 位(大小写+数字):约 2^71 种;
  • 16 位(含符号):约 2^104 种。

几条实在的原则

  1. 长度优先:至少 12 位,条件允许上 16 位;
  2. 每个站点独立密码,避免“一破全破”;
  3. 用密码管理器存,人记不住这么多随机串;
  4. 开两步验证,密码泄露也还有第二道防线。

常见误区

“P@ssw0rd!” 看着复杂,但它是字典词加常见替换,字典攻击面前并不强。真正强的是随机生成的无意义串,这也是随机生成器的价值所在。

破解时间对比

按每秒 100 亿次尝试(离线 GPU 集群的保守估计)算:

密码形态字符集大致穷举时间
8 位小写字母26几分钟
8 位大小写 + 数字62数小时
12 位大小写 + 数字62数个世纪
16 位含符号94远超宇宙年龄

这张表的前提是密码真随机。要是字典词加替换(比如 P@ssw0rd),耗时会被字典攻击压到几秒,这就是“看着复杂”的陷阱。

三种能落地的做法

  1. 随机密码 + 管理器:生成 16 位以上随机串交给管理器,人只牢牢记住主密码;
  2. 口令短语:四个以上互不搭界的词拼起来(如“钢琴·沼泽·路灯·铁钉”),好记且熵高;
  3. 两步验证:密码泄露后仍有第二道门,TOTP 应用或硬件密钥优于短信验证码。

两个常被问到的问题

要定期改密码吗?NIST 现在的建议是:没泄露迹象就不必强制轮换,频繁更换只会催生 Password1!、Password2! 这种能猜到的变体。“同一密码加不同后缀”够安全吗?不够。规则一旦被猜出(比如某站后缀是站名),一处泄露就会连累所有站点。

动手试试:随机密码生成器