ECDH
ECDH背景:
1.ECC secp160r1,私钥长度20字节,压缩格式公钥21字节
2.ECDH协商得出20字节共享密钥,然后用AES128对实际信息加密。
密钥磋商过程:
假设密钥交换双方为Alice、Bob,其有共享曲线参数(椭圆曲线E、阶N、基点G)。
- Alice生成随机整数a,计算A=aG。Bob生成随机整数b,计算B=bG。
- Alice将A传递给Bob。A的传递可以公开,即攻击者可以获取A。由于椭圆曲线的离散对数问题是难题,所以攻击者不可以通过>A、G计算出a。Bob将B传递给Alice。同理,B的传递可以公开。
- Bob收到Alice传递的A,计算Q=b*A
- Alice收到Bob传递的B,计算Q‘=aB
Alice、Bob双方即得Q=bA=b(aG)=(ba)G=(ab)G=a(bG)=a*B=Q' (交换律和结合律),即双方得到一致的密钥Q。
加密和解密程序:ECC ElGamal和ECIES;密钥磋商:ECDH
————————————————
版权声明:本文为CSDN博主「某某凡人」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u013593306/java/article/details/50788731
reference
https://blog.csdn.net/u013593306/article/details/50788731
https://www.cnblogs.com/zyzblogs/p/12197542.html
网友评论