Tls
當 PerfectForwardSecrecy 具有與無鹽密碼散列相同的缺陷時,為什麼認為它可以?
PFS 套件與任何其他無鹽密碼散列方案存在相同的缺陷。
為什麼每個人都如此激烈地推廣完美前向保密 (PFS) 密碼套件?
也就是說,當組/散列變弱時,攻擊者可以投入大量的預計算,之後可以以最小的額外成本破壞單個連接/散列。這一特性使大玩家可以將大量預計算的成本攤銷到大量破裂的連接上。因此,它促進了對有針對性的攻擊的大規模窺探。
這個問題是由WeakDH/LogJam 論文提出的。
編輯,感謝@steffen-ullrich,將鹽包含在“秘密”中是沒有意義的,因此無鹽的 DHE 等價物是“每個人都使用(少數)相同的組”。
無鹽密碼散列只是一個問題,因為實際使用的密碼數量相對較少,而且分佈也不均勻。因此,在時間和記憶體方面都可以使用預先計算的散列生成一個表,然後根據該表檢查無鹽散列以反轉散列。因此,針對這種情況的保護措施是鹽(增加預計算所需的時間和記憶體)和慢散列(增加時間)。
但是,如果密碼的選擇不偏向於“少數”經常選擇的密碼,而是存在大量可能的密碼並且其中沒有一個比另一個更有可能,那麼這種預先計算將不再可行。就時間和記憶體而言,實際上不可能預先計算和儲存所有可能密碼的雜湊值。這正是 PFS 的情況——根本不可能預先計算所有可能值的相關一小部分。