Diffie-Hellman

不使用合數的惡意 DH 參數

  • February 28, 2019

我知道有可能生成導致它易於攻擊的 DH 參數(例如,平凡的合數),但是是否有可能創建一個不是合數的惡意參數(因此傳遞任意數量的 Miller-Rabin測試)但仍然可以輕鬆攻擊 DH 組?檢測是否已生成參數以故意成為小型子群攻擊的受害者應該是微不足道的,並且 SNFV 對於現實的密鑰大小變得不切實際。

以前也有人問過類似的問題,但它們似乎集中在合數上。

[更新:有關無法檢測到的後門範例,請參見另一個問題的答案,但可能可以通過要求像 RFC 2412 這樣的嚴格流程來排除,因為所有 RFC 3526 組都使用了這種流程。]

如果有一種已知的方法可以在 Diffie-Hellman 參數中設置後門,那麼選擇它們的標準標準就會將其排除在外。 雨披對您引用的問題的回答提供了一些我們通常使用的標準範例以及如何測試它們以及如果不這樣做會出現什麼問題;我寫的答案中還有更多參考資料。

對於有限域 DH,幾乎沒有理由使用RFC 3526組以外的任何東西,它使用形式的模數$$ 2^n - 2^{n - 64} - 1 + 2^{64} (\lfloor 2^{n - 130} \pi \rfloor + c) $$在哪裡 $ c $ 是最小的非負整數,使這個數字成為與 7 模 8 一致的安全素數。

對於橢圓曲線 DH,幾乎沒有理由使用 X25519 或 X448 以外的任何東西,除非在可能應用基本相同的安全標準以最大化其他性能目標的奇異應用程序中。

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