Terminology

“故意減慢雜湊”的簡稱

  • June 1, 2020

Argon2Balloonscryptbcrypt ¹ 、PBKDF2 … 用於密碼時,我們可以稱它們為密碼雜湊(用於密碼儲存)或基於密碼的密鑰派生函式(用於加密)。

但是當上下文不涉及密碼時,這可能無法理解。故意減慢雜湊更具描述性,但很尷尬,我很少看到它。

有確定的替代方案嗎?如果沒有,你有什麼建議?

補充:我希望這個詞可以用來加強 $ b $ - 位雜湊 $ 3b $ - 位Schnorr 簽名對抗蠻力原像攻擊。在這種用法中,沒有任何秘密。


¹ 正如評論中正確指出的那樣,bcrypt 只能產生 192 位的輸出,這使得密碼散列或短密鑰可以通過,但不能用於一般的密鑰派生函式。

1)我不知道任何既定的替代方案。

  1. 說此類算法被故意放慢是不正確的。它們不僅可以減慢速度,而且可以使用大量記憶體。一個詞就是資源。我什至強調的不是資源,而是價格,因為整個想法是讓價格對攻擊者來說是禁止的。我建議以下條款:
  • 昂貴的散列
  • 資源密集型
  • 資源需求
  • 資源硬
  • 資源貪婪
  • 資源匱乏

我會將這些術語分別作為我的答案下方的單獨*評論。*隨意投票 :) 幾週後,我們將看到結果。

您正在尋找的術語可能是關鍵拉伸。它專門指使用故意緩慢的組件(通常是 KDF)來增加密碼系統在密鑰材料(例如使用者提供的密碼)可能只有有限量的熵時對暴力密鑰列舉的抵抗力。

該術語來自這樣一個事實,即鍵拉伸 KDF 可以被認為是採用一個短(或只是低熵)輸入鍵並將其“拉伸”成一個較長的鍵,就其對暴力攻擊的抵抗力而言,好像它比原始輸入鍵有更多的熵。

(當然,密鑰的實際熵不會增加,但 KDF 的緩慢性會減慢暴力猜測攻擊,就像額外的熵一樣。實際上,攻擊者在嘗試猜測拉伸密鑰時有兩種選擇:他們可以嘗試猜測輸入密鑰,這迫使他們為每次猜測計算慢速 KDF,或者他們可以嘗試直接猜測輸出密鑰,這是從大密鑰空間中偽隨機選擇的。)

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