因此Diffie-Hellman受到MITM攻击,双方交换:
X= g^x mod n和Y= g^y mod n。
现在,可以通过使用Rivest联锁协议来保护这一点,在该协议中,我们将一条消息分成两部分,然后一点一点地交换它们。我想知道的是,我们如何将g^x n分成两部分,以便与一起使用?
发布于 2013-01-10 00:34:04
你真的读过里弗特和沙米尔的报纸吗?它很好地解释了该协议的目的以及它设计的场景:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.159.1673&rep=rep1&type=pdf
我看不出这如何适用于Diffie-Hellman,因为协议的要点是对公钥进行身份验证,而不是实际生成私钥。
如果您只是对实现Diffie-Hellman感兴趣,那么您需要为DH实现选择一个具体的组,并为其元素选择一些编码。实际上,您并不使用组元素的直接位编码作为键,而是应用了一个随机抽取器,它为您提供了将用作密钥的位字符串。
随机抽取器是相当棘手的,但有一些最近的论文,你可以很容易地找到谷歌。
https://stackoverflow.com/questions/14241627
复制相似问题