ECDH用于安全密钥交换, 基于 椭圆曲线 Diffie-Hellman(DH)协议
关键特点:
1. 不用于签名,只用于共享密钥
2. 双方通过各自的 私钥 和对方的 公钥 计算 共享密钥
3. 主要用于 端到端加密通信
流程:
1. 双方生成密钥对
2. 交换公钥: 甲方发送给乙方, 乙方发送给甲方
3. 计算共享密钥:
甲方计算, 拿自己的私钥和 乙方的公钥相乘 得到 新点的X坐标作为 共享密钥
乙方计算,拿自己的私钥和 甲方的公钥相乘 得到 新点的X坐标作为 共享密钥
4. 双方得到的共享秘钥应该是一致的
应用 TLS(HTTPS 服务器加密) 、端到端加密(WhatsApp、Signal、Telegram) 、VPN 加密通信
ECDH密钥交换, 可基于多种椭圆曲线实现. 如: Curve25519/Curve448/secp256k1...
A私钥: |
A公钥: |
B私钥: |
B公钥: |
A的公钥 * B的私钥获取X坐标作为的共享密钥:
B的公钥 * A的私钥获取X坐标作为的共享密钥: