Diffie-Hellman

具有弱秘密的零知識認證方案

  • August 22, 2012

在零知識身份驗證方案中,每個對等方的公共 DH 因子都使用潛在的弱預共享秘密進行加密,並且生成的密文通過不安全的通道進行交換。為什麼不可能對弱秘密進行攻擊?

我的意思是消息可以被嗅探,並且可以通過離線字典攻擊或簡單的暴力破解來揭示秘密。

我相信您說的是EKE的一個特定版本,它是幾種已知的密碼驗證密鑰協議方法之一(這是與收聽交換的人無法學習的屬性進行密鑰協議的一般方法類別任何東西,冒充雙方之一的攻擊者只能從單個交換中了解到特定密碼是否正確)。

現在,有了這樣的背景,這就是你問題的答案。使用基於 DH 的 EKE,是的,雙方交換他們的 $ E_k( g^x ) $ 和 $ E_k( g^y) $ 值,是的,攻擊者可以使用潛在密碼解密這兩個值,給出 $ g^x $ 和 $ g^y $ 如果他的猜測是正確的,並且 $ D_{k’}(E_k(g^x)) $ 和 $ D_{k’}(E_k(g^y)) $ 如果他的猜測不正確。但是,EKE 使用一種特殊的加密方法,例如 $ D_{k’}(E_k(g^x)) $ 和 $ D_{k’}(E_k(g^y)) $ 也是有效的公共價值觀;可能 $ g^z $ 和 $ g^w $ , 對於一些 $ z $ 和 $ w $ . 這可以防止攻擊者學習任何東西;他不能測試一個特定的 $ g^x $ 和 $ g^y $ 生成正確的共享密鑰(因為 DH 問題很難),並且檢查它們是否是有效的公共值告訴他什麼都沒有(因為它們都是有效的)。因此,雖然攻擊者可以列出潛在的解密列表,但沒有任何東西可以區分正確的解密和所有錯誤的解密。

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