Diceware 生成有意義又易記的密碼。

官網:http://world.std.com/~reinhold/diceware.html

密碼管理器(例如 KeePass)通常都會生成下面一串隨機字母數字:

Zer4syns3fRngswVk3xz
WnITe9AmAM7c7cphfEa1
3iVELPTAlSip1f5TSOiw
zeWJoPKThVP2XIo6PKu9
sfUjYB8jwa7o0ZlyBnTA
cHdH0vFZp05HCA3hOdm9

毫無意義的亂碼

人腦當然記不起來。所以我們用密碼管理器來記各式各樣的超級複雜的密碼。

問題是用來打開密碼管理器的 Master Password 主人密碼總不能用這樣複雜的密碼吧!?你可以抄下來。每次打開密碼管理器都要輸入這麽長又難記才能解鎖。

Diceware

Diceware 是通過掷骰子來決定隨機密碼。方法就是,掷六次,得出五個數字之後(例如 13621),這五位數字就是密碼的第一個單詞。

Diceware 的單詞表

這是 Diceword 單詞表其中的一段單詞:

13621 	belch
13622	 belfry
13623	 belie
13624	 bell
13625	 bella
13626	 belle
13631	 belly
13632	 below

左邊的數字就是從掷骰子得出的數字,右邊的英文就是配對的單詞。

用法

我掷骰子,得到六串數字:

  1. 11512
  2. 55524
  3. 34313
  4. 42441
  5. 44554
  6. 41445

然後到 Diceware 的單詞表搜索配對的單詞,11512ajar。如此類推得出六個單詞:

ajar still ivory mm ox male

每個單詞之間加個空格字符,就是我的密碼了。(除了空格,用什麼字符也可以,不過要看看網站或者程序支持不。)

根據
EFF 説道,六個單詞就夠安全,可以應付暴力破解。六個單詞相當於 77 位二進制數字,翻譯成十進制數字也就是天文數字了~~

Diceware 官方 FAQ 說

  • 5個單詞,可以被一千台配置頂端 GPU 的電腦同時進行破解。
  • 6個單詞,有可能被有很多資源的團體破解。
  • 7個單詞,以現在的科技,十年內應該不會被破解掉。

加鹽(Salt

隨機密碼之外,應該再加鹽。例如在密碼後面加你喜歡的人的名字或者電話號碼(不是每個人喜歡的人、電話號碼都是一樣的吧)。

ajar still ivory mm ox male 5552368

技術控的掷骰子方式

See the Pen ojvPpd by stretchgz (@stretchgz) on CodePen.

簡單的 Javascript 隨機生成六組六位數。