数据安全提示: 所有计算均在您的浏览器本地完成,密钥和数据不会上传到服务器。
Diffie-Hellman密钥交换计算器
基于BigInt
核心公式
1. Alice计算: A = ga mod p
2. Bob计算: B = gb mod p
3. 交换公钥 A 和 B
4. Alice计算: s = Ba mod p
5. Bob计算: s = Ab mod p
6. 共享密钥: s = gab mod p
2. Bob计算: B = gb mod p
3. 交换公钥 A 和 B
4. Alice计算: s = Ba mod p
5. Bob计算: s = Ab mod p
6. 共享密钥: s = gab mod p
公共参数
私钥
Alice
公钥 A: —
收到 B: —
共享密钥:
Bob
公钥 B: —
收到 A: —
共享密钥:
共享密钥结果
密钥交换过程可视化
Diffie-Hellman算法原理
1
离散对数问题
给定质数p、生成元g和y = g^x mod p,从y反推x在计算上是困难的。这是DH安全性的基础。
2
模幂运算
使用快速幂算法计算 g^x mod p,时间复杂度O(log x)。
function modPow(base, exp, mod) { ... }
3
数学证明
Alice计算 s = B^a mod p = (g^b)^a mod p = g^(ab) mod p
Bob计算 s = A^b mod p = (g^a)^b mod p = g^(ab) mod p,结果相等。
安全性分析
| 参数长度 | 安全性 | 推荐状态 |
|---|---|---|
| 512位 | 低 | 已攻破,不推荐 |
| 1024位 | 低 | 不安全,已淘汰 |
| 2048位 | 中 | 当前最低标准 |
| 3072位 | 高 | 推荐 |
| 4096位+ | 高 | 抗量子预备 |
注意:演示使用小参数仅用于教学,实际应用请使用2048位以上的大质数。
应用场景
TLS/SSL
HTTPS中的密钥交换
SSH
安全远程登录
IPsec VPN
VPN隧道建立
端到端加密
Signal、WhatsApp