密碼強度分析器
根據熵估算密碼強度,檢視被破解所需時間,並給出導致密碼薄弱的檢查清單。
測量真實的密碼強度。 強度由熵(密碼包含的不確定性位元數)估算,而非僅看長度。破解時間按每秒十億次猜測計算。全部在瀏覽器內執行,你的密碼不會被儲存或傳送。
- ○ 至少 12 個字元
- ○ 包含大寫字母
- ○ 包含小寫字母
- ○ 包含數字
- ○ 包含符號
- ○ 非常見密碼
根據熵估算密碼強度,檢視被破解所需時間,並給出導致密碼薄弱的檢查清單。
測量真實的密碼強度。 強度由熵(密碼包含的不確定性位元數)估算,而非僅看長度。破解時間按每秒十億次猜測計算。全部在瀏覽器內執行,你的密碼不會被儲存或傳送。
熵衡量攻擊者需要多少次猜測,以位元為單位表示。每增加一位元,工作量翻一倍。這裡的估算公式是 log2(字元集大小) × 長度:一個由小寫字母加數字組成的 10 位密碼,字元池為 36,約合 51.7 位元,意味著在攻擊者已知字元池和長度的前提下約有 2^51.7 種候選。
這個公式描述的是從該字元池中隨機挑選的密碼。它是上界,而人為選擇的密碼很少能達到。Password1! 紙面上表現不錯——大小寫混合、有數字、有符號、10 位長——但它出現在所有破解字典裡,真實強度不過幾次猜測。因此這裡的檢查清單不只是一張評分表:常見密碼這一項不通過,比符號那一項通過要重要得多。
有兩個因素能讓答案相差幾個數量級。第一是攻擊者的硬體:單張現代 GPU 針對 MD5、SHA-1 這類快速雜湊每秒可嘗試數十億次,租用叢集還能成倍放大。第二是目標方如何儲存密碼。配置得當的 bcrypt、scrypt 或 Argon2 雜湊刻意做得又慢又吃記憶體,能把吞吐從每秒數十億壓到每秒數千。
所以同一個密碼,在某個站點可能被輕易攻破,在另一個站點卻相當安全。此處顯示的數字假定的是針對快速雜湊的離線攻擊,屬於悲觀情形,也是應當據以規劃的情形——因為你無從得知任何一個站點究竟如何儲存你的密碼。
長度勝過複雜度。給一個小寫密碼增加一個字元,搜尋空間乘以 26;而給一個短密碼增加一類符號,倍數要小得多。從一個大詞表中隨機抽取四到五個單片語成的口令短語,可以達到 50 到 70 位元,同時依然好打好記,這正是 diceware 方法的思路。
更要緊的一點是:單個密碼的強度不如"是否重複使用"重要。一個強密碼若用在十個站點上,其安全性只等於其中最弱的那一個,因為一次洩露就會牽連全部十個。用密碼管理器為每個站點生成互不相同的隨機字串,能一次解決這兩個問題,實際收益遠大於反覆打磨一個手動輸入的密碼。
另外,本頁所有計算都在瀏覽器本地完成,你輸入的內容不會發送到任何地方。