请解释 Diffie-Hellman 密钥交换的基本概念,并描述 DH 协议完成密钥协商的具体过程。
考察说明
考查对 Diffie-Hellman 密钥交换原理和协商流程的理解。
回答思路
- 【回答框架 1】Diffie-Hellman 密钥交换是一种允许双方在不安全信道上安全地协商出共享密钥的协议,其安全性基于离散对数问题的计算困难性。
- 【回答框架 2】协商过程:双方公开约定一个大素数 p 和原根 g;各自生成私钥 a 和 b,计算公钥 A=g^a mod p 和 B=g^b mod p 并交换;各自计算共享密钥 s=B^a mod p 和 s=A^b mod p,由于模幂运算的交换性,两者相等。
- 【回答框架 3】安全性:窃听者只能看到 p、g、A、B,无法在合理时间内由这些公开信息计算出私钥或共享密钥,因为离散对数问题难以求解。
- 【回答框架 4】实际应用中,DH 通常与身份认证结合,防止中间人攻击,并常与对称加密算法配合使用,协商出的密钥用于后续加密通信。
- 【关键点 1】DH 协商的核心是模幂运算的交换性,双方最终得到相同的共享密钥。
- 【关键点 2】安全性依赖离散对数问题的计算困难性。
- 【关键点 3】DH 本身不提供身份认证,易受中间人攻击,需结合认证机制。
- 【关键点 4】协商出的密钥通常用于对称加密,提高通信效率。
- 【易错点 1】不能将 DH 描述为加密算法,它只用于密钥协商,不加密数据。
- 【易错点 2】忽略中间人攻击风险,DH 不验证对方身份。
- 【易错点 3】使用过小的素数或不当参数会降低安全性,需选择足够大的 p 和安全的 g。