Signature
Diffie-Hellman 和中間人攻擊
請參閱此處了解我擔心的對 Diffie-Hellman 的中間人攻擊:什麼是 Diffie-Hellman?
我們如何與之抗爭?我有兩個問題:
- Alice 和 Bob 的一種解決方案是否只使用證書頒發機構,然後他們可以在不真正通信(通過 Eve)的情況下查找對方的證書並知道密鑰?
- 我聽說的另一個解決方案是使用 RSA 進行簽名。在這種情況下,我的問題是,如果 Alice 和 Bob 使用 RSA,為什麼 Alice 不使用 Bob 的 RSA 公鑰(用她的 RSA 私鑰簽名)向 Bob 發送一個秘密對稱密鑰?這基本上不是PGP所做的嗎?如果我們仍然使用 RSA,我看不出使用 DH 的意義。
好吧,正如它在您的連結中所說,問題是身份驗證。因此,Alice 和 Bob 必須以某種方式建立一個經過身份驗證的通道。實現這種通道的一種方法是 Alice 和 Bob 持有彼此的公共驗證密鑰,用於簽名方案。
- CA 可能不會持有 Alice 和 Bob 的密鑰。但是,使用 CA 來獲取另一方公鑰的真實副本,用於簽名方案,該方案將允許在 Alice 和 Bob 之間建立一個經過身份驗證的通道,因此他們可以進行 DH 密鑰交換。除了不信任 CA 的秘密資訊之外,這樣做的好處是 Alice 和 Bob 現在可以在不涉及 CA 的情況下生成許多秘密密鑰。
- 確實,如果 Alice 有 Bob 的公共加密密鑰,Bob 有 Alice 的公共簽名驗證密鑰,他們可以使用您描述的協議。然而,一般來說,公鑰加密和簽名方案並不相同(儘管對於 RSA 的特定實例可能存在一些重疊)。如果 Alice 和 Bob 只為簽名方案設置了密鑰,他們可以使用 DH 交換來獲取密鑰。