什麼是密碼熵值?
密碼熵值用來衡量一組密碼有多難被預測,並以位元(bit)為單位表示。每多一個位元,攻擊者需要嘗試的次數就會翻倍。一組擁有 40 位元熵值的密碼,最多需要 \(2^{40}\)(約一兆)次嘗試才能暴力破解;而 80 位元的強度更是天差地遠。熵值是比較密碼強弱時,最客觀、最實用的單一數字。
如何使用本計算器
輸入你的密碼長度,並勾選密碼中用到的所有字元類型。本工具會把各類字元的數量相加——小寫字母(26)、大寫字母(26)、數字(10)與符號(32)——得出字元集大小 \(N\),再據此計算熵值。增加長度與增加字元種類都能提升熵值,但通常以「加長密碼」帶來的提升最為明顯。
公式解析
標準公式為 $$E = L \times \log_{2}(N)$$其中 \(L\) 為字元數,\(N\) 為字元集的大小。由於每個位置都可以獨立地是 \(N\) 個符號中的任一個,因此密碼的所有可能組合共有 \(N^{L}\) 種,取其 \(\log_2\) 即可得到熵值的位元數。此公式假設密碼是「真正隨機」產生的;若使用字典單字或可預測的規律,其實際有效熵值會遠低於公式算出的數值。
實際範例
以一組 12 字元、同時使用小寫、大寫與數字的密碼為例。字元集大小為 \(26 + 26 + 10 = 62\)。熵值 $$E = 12 \times \log_{2}(62) = 12 \times 5.954 \approx 71.45 \text{ 位元}$$這相當於約 \(2^{71.45} \approx 3.2 \times 10^{21}\) 種組合——極難以暴力方式破解。
常見問題
多少位元才算「強」?對大多數帳號而言,60 位元以上就算不錯;至於高價值帳號或主密碼,建議達到 80 位元以上。
這有把字典攻擊算進去嗎?沒有。本公式假設字元是隨機的。真實單字、姓名與常見替換(如把 a 換成 @)會大幅降低實際熵值——請改用隨機產生器或長句通行碼(passphrase)。
為什麼用每秒 100 億次猜測?這是針對「快速雜湊」密碼、資源充足的離線攻擊所做的合理估計;若採用較慢的雜湊演算法,攻擊者的速度會進一步被拖慢。