加密密钥分发
对称密码:
- 依赖于秘密密钥的安全分发
- 需要存储和管理大量密钥
- 在开放/公共系统中遇到严重问题
部分解决方案:密钥分发中心(KDC)
某些服务器(密钥分发中心,KDC)将密钥“提供”给用户。它与每个用户共享一个秘密密钥(长期密钥),并协助他们安全地彼此共享会话密钥(短期密钥)。
{M}K - 用 K 加密和验证的消息 M
- 可以使用任何经过验证加密方案
- K = (K0, K1):一个用于加密,一个用于认证
- Encrypt-then-MAC 是首选方法
Needham Schreoder 1972
——攻击:假设旧会话密钥 Kold 被对手泄露
B 无法判断密钥是否新鲜:
——Kerboros 使用时间戳来保证密钥的新鲜度
- 如果用户例如在一家公司工作,则可行
- 用户仅与 KDC 共享密钥
- 当用户发起通信时,KDC 生成新的新密钥(称为会话密钥)
缺点:
- 在互联网上是行不通的
- 依赖于 KDC 的诚实
- 谁可以实施受信任的 KDC?
- KDC 需要永久可用
- KDC 存在单点故障问题
公钥密码方案
Diffie-Hellman (-Merkle) KE 协议:
目标:Alice和Bob想要共享秘密,使窃听者无法知道
安全性定义【experiment】:
如果对于每个 PPT 敌手 A:
则密钥交换方案是存在窃听者的情况下安全的。
定理:如果 DDH 问题相对于 G 是困难的,那么 Diffie-Hellman 密钥交换协议 Π 在存在窃听者的情况下是安全的(相对于实验)。
如果存在主动的敌手:中间人攻击
抵抗中间人攻击:认证KE-AKE