xkcd 密码生成器(汉语拼音版)
xkcd Password Generator for Chinese

又名「正确马电池订书钉密码生成器」,出自 xkcd 的一副漫画

这是汉语拼音版本,你可以直接使用上面显示的拼音作为你的密码。

这四个词是从 8900 个汉语常用词组中随机挑选出来的。其密码强度[1]大致相当于 8 位随机生成的,包含大小写字母、数字和特殊符号[2]的密码(比如 K#7%ol4e);强于 10 位的随机小写字母、数字混合密码(比如 q7bukjpwr6);远强于一些使用姓名、生日、手机号等变形、替换组成的密码。

最重要的一点,这种密码相当好记,可以经常更换而不至于一脑子乱码。

词典组成

生成器所用词语来自于《现代汉语常用词表》。具体来说,是这个 gist[3]

但未使用全部的五万多个词组,而是先按照使用频率取了前 15,000 个[4],然后再保留只由两个汉字组成、拼音不重复且长度不超过 8 个字母的词组。最终余下 8900 个。

安全性

关于这种密码生成方案的讨论网上有很多,还请自行搜索了解[5]

程序实现的细节请参考源码:sorz/xkcd-password-generator-cn

脚注

  1. 约为 52.5 比特的熵,比漫画中的 44 比特高一些。不过如果只挑「顺眼的」用,可能会有些许降低;
  2. 包括我键盘上能敲出来的 32 个特殊符号;
  3. 我也不知道这个 gist 是不是就是那本《常用词表》,不过看起来挺像;
  4. 后面那些自己都没见过的词就不去背啦,不过这个排序看起来并不是特别靠谱?
  5. 欢迎在此处补充链接或文字介绍,欢迎提交 Pull Request