随机数B(1 ~ P-2)(Bob的秘密数字)
交换公开的数值
G和P(可公开的数)
计算公开的数值
G^(A*B) mod P(共享密钥)
G^B mod P(可公开的数)
P必须是一个很大的质数G是一个和P相关的数
共享密钥 = (G^B mod P)^A mod P = G^(B*A) mod P = G^(A*B) mod P
相等
计算共享密钥
G^A mod P(可公开的数)
共享密钥 = (G^A mod P)^B mod P = G^(A*B) mod P
随机数A(1 ~ P-2)(Alice的秘密数字)