Boblee人工智能硕士毕业,擅长及爱好python,基于python研究人工智能、群体智能、区块链等技术,并使用python开发前后端、爬虫等。
1.Diffie-Hellman密钥协商算法
Diffie-Hellman密钥协商算法在1976年在Whitfield Diffie和Martin Hellman两人合著的论文New Directions in Cryptography(Section Ⅲ PUBLIC KEY CRYPTOGRAPHY)中被作为一种公开秘钥分发系统(public key distribution system)被提出来。
下面给出Diffie-Hellman算法交换密钥的步骤。假设存在待交易用户a与公证人c协商密钥。DHE算法容易被中间人攻击。目前的解决办法是使用数字签名,以及使用其它的协议变种。其流程如下图所示。其中用户a与公证人c随机选取的整数,并满足,计算出的即为密钥。
假设用户a、b协商DHE密钥,他们的质数、本原根是;私钥及计算结果分别是,则存在下列证明使得双方得出的私钥是相等的。
2.Python实现
1.选取质数、本原根
(1)判断是否为质数。
def judge_prim