Password-Hashing

AugPake 不需要按鍵拉伸嗎?

  • September 4, 2016

我正在閱讀AugPAKE rfc並註意到在任何地方都沒有提到關鍵拉伸。該協議確實提到了雜湊函式的使用,作為範例提供的雜湊函式是 SHA2。

該協議似乎沒有在任何地方使用計算成本高的密鑰拉伸。我想問一下協議如何在低熵密碼方面保持安全。是什麼阻止了攻擊者暴力破解鏈中最薄弱的環節?

似乎必須有某種形式的速率限制,以便通過這樣一組有限的可能性來減慢搜尋速度。我看到的唯一提到的是標準建議,即每單位時間只允許 X 次錯誤密碼嘗試。

在密碼上使用諸如 pbkdf2/bcrypt/scrypt/argon2 之類的密鑰擴展算法是否可以提高安全性,還是會破壞協議的目的/效率?

似乎必須有某種形式的速率限制,以便通過這樣一組有限的可能性來減慢搜尋速度。

有。由於 AugPAKE 的性質,攻擊者每次與伺服器的連接嘗試只能嘗試一個密碼,這意味著對握手記錄進行離線攻擊是不可能的。因此,如果連接速率受到限制,搜尋速度也會相應地受到限制,即使是弱密碼也能得到保護,如果每秒嘗試 10 次並實施對突發事件的進一步懲罰。

在 3.2 節中記錄(並證明)了您無法從被動的成績單視圖中猜測任何內容的事實。

第 3.3 節依次討論主動攻擊可以做什麼,並認為即使是主動攻擊者也不能比線上字典攻擊做得更好,這意味著每個連接嘗試一次密碼。

在密碼上使用諸如 pbkdf2/bcrypt/scrypt/argon2 之類的密鑰擴展算法是否可以提高安全性,還是會破壞協議的目的/效率?

使用強大的基於密碼的密鑰派生函式(PBKDF)肯定會提高協議的安全性,因為它可以強化伺服器的密碼數據庫,因為數據庫的洩漏並不直接等於“許多,易於破解的真實密碼雜湊”。然而,這也會給這種連接的客戶端帶來高負載,這可能是不利的,尤其是考慮到台式電腦和智能手機的不同,密碼散列沒有萬能的方法,前者可能需要 100 毫秒。後者需要3s。這很可能是這裡沒有如此強大的 PBKDF 的原因,因為設計人員認為速度比“數據庫洩漏時的安全性”更重要。

這也是文件(第 3.5 節)安全性討論的一部分,該文件說,只要攻擊者不能比對數據庫執行離線字典攻擊更好,協議就可以防止伺服器受損。

是什麼阻止了攻擊者暴力破解鏈中最薄弱的環節?

鏈中最薄弱的環節是密碼數據庫(使用標準訪問控制保護)或協議的性質,使得猜測非常緩慢且可控。

引用自:https://crypto.stackexchange.com/questions/39710