我试图理解 Diffie-Hellman (DH) 算法,因为我想让两台计算机相互通信,但第三台计算机不知道它们在说什么,而且还交换它们将在不安全通道中使用的密钥.
问题是,第三个也知道DH将如何处理,即常数参数。更具体地说 p 和 g:
所以问题是,如果我知道p和g,我能发现Bob和Alice会使用8作为他们的密钥吗?
不,你不能,要计算密钥,你必须首先能够计算
a
(Alice 的密钥)或 b
(Bob 的密钥),这将要求窃听者计算 离散对数,因为没有任何已知的有效算法可以计算出该值,那么 Deffie_Hellmen
就非常安全,并且第三方(窃听者)永远不会知道 8
是秘密密钥。 (请注意,正确选择 p
和 g
对于进行安全密钥交换至关重要)。