D-H算法

 

 

DH 算法的出现就是用来进行密钥传输的。 DH 算法是基于离散对数实现的。用户 A B 如何利用 RSA 算法 来传输密钥?

在通信前, 用户 A B 双方约定 2 个大整数 n g, 其中 1<g<n ,这两个整数可以公开

1) A 随机产生一个大整数a ,然后计算Ka =ga mod n 。(a 需要保密)

2) B 随机产生一个大整数b ,然后计算Kb =gb mod n 。(b 需要保密)

3) A Ka 发送给B,BKb 发送给A

4) A 计算K=Kba mod n

5) B 计算K=Kab mod n

由于Kba mod n= gb mod na mod n= ga mod nb mod n ,因此可以保证双方得到的K 是相同的, K 即是共享的密钥。

你可能感兴趣的:(算法)