Diffie-Hellman加密算法

1、概述算法

DH秘钥交换算法,能够让双方在彻底缺少对方信息的前提条件下,经过不安全的信道达成一个共享密钥。安全

此秘钥用于对后续信息交换进行对称加密加密

2、离散对数问题(Discrete Logarithm Problem,DLP)spa

若是p是一个素数,g和x是整数,计算 y = g^x mod p 很是快。可是相反,先知道p,g,y要求某个x(离散对数)it

知足等式y = g^x mod p 是十分困难的。通信

15 = 3 ^ x mod 17 ==> x = 6安全性


g和p的选择对此类系统的安全性影响很大,为了保证没法求解离散对数问题,p应该是一个很大的素数。例如ab

3、系统

Alice和Bob想共有一个秘钥,用于对称加密。可是他们之间的通讯渠道是不安全的。可能被第三方Eve看到。

1.Alice和Bob先对p和g达成一致,并且是公开的,Eve也是知道的他们的值

2.Alice取一个私密的整数a,不让任何其余人知道,发送Bob计算结果 A = g^a mod p.Eve也能看到A的值

3.相似,Bob取一个私密的整数b,发给Alice结果 B = g^b mod p. Eve也能看到B的值

4.Alice计算 S=B^a mod p = (g^b )^a mod p = g^ab mod p

5.Bob计算 S = A^b mod p = (g^a )^b mod p = g^ab mod p

相关文章
相关标签/搜索