著名Diffie-Hellman协议

时间:2021-04-22 18:22:29

HostA要和HostB通信

1、HostA生成一个数p,HostB生成一个数g;

2、HostA将p传给HostB,HostB把g传给HostA,这个过程是可以被别人监听和获取的;

3、HostA生成一个数x,HostB生成一个数y,并且只有自己知道,并不告诉通信双方;

4、HostA进行计算:g^x%p,HostB进行计算:g^y%p;

5、HostA进行计算:(g^y%p)^x=g^yx%p,HostB进行计算:(g^x%p)^y=g^xy%p;

结果可知双方的计算结果是相同的,这个结果可以当作密钥。