数据安全提示: 所有计算均在您的浏览器本地完成,私钥和共享密钥不会上传到服务器。

ECDH密钥交换计算器

基于 elliptic.js 6.5.4

椭圆曲线

secp256k1
P-256
P-384
P-521

密钥派生

原始共享密钥
SHA256导出

输出格式

十六进制
Base64
1. 生成密钥对

Alice 私钥

保密
未生成
长度: 0

Alice 公钥

公开
未生成
长度: 0

Bob 私钥

保密
未生成
长度: 0

Bob 公钥

公开
未生成
长度: 0

共享密钥 (会话密钥)

双方相同
未计算
长度: 0
私钥生成中...
公钥生成中...
公钥生成中...
私钥生成中...

ECDH原理

椭圆曲线迪菲-赫尔曼密钥交换 (Elliptic Curve Diffie–Hellman) 允许双方在不安全信道上建立共享密钥。

1. 生成密钥对

Alice: 私钥 a, 公钥 A = a×G
Bob: 私钥 b, 公钥 B = b×G

2. 交换公钥

Alice → Bob: A
Bob → Alice: B

3. 计算共享密钥

Alice: S = a×B = ab×G
Bob: S = b×A = ab×G

安全性分析

  • 前向安全性:临时ECDH (ECDHE) 提供完美前向安全性,每次会话使用不同密钥。
  • 密钥长度:256位ECDH ≈ 3072位RSA,性能更高,密钥更短。
  • 已知攻击:需防范中间人攻击(需结合签名)、无效曲线攻击、侧信道攻击。
  • 量子威胁:Shor算法可破解,长期机密需考虑后量子迁移。

算法比较

算法密钥长度安全强度前向安全
RSA2048-4096不支持
DH2048-4096临时DH支持
ECDH256-521ECDHE支持

快速提示

  • 曲线 secp256k1 用于比特币
  • 推荐使用 ECDHE + 签名
  • 私钥必须保密,公钥可公开
  • 共享密钥需通过KDF派生

技术信息

标准:ANSI X9.62, NIST
算法库:elliptic.js
曲线支持:secp256k1, P-256, P-384, P-521

需要其他加密工具?

免费为您开发定制化工具