1. 引言
本文给出一个用于组密钥管理的 ISAKMP 解释域 (Domain of Interpretation, DOI), 称为 "组解释域 (Group Domain of Interpretation, GDOI)".在这种组密钥管理模型中, GDOI 协议运行于组成员与 "组控制器/密钥服务器 (group controller/key server, GCKS)" 之间, 并在已授权的组成员之间建立安全关联 (security association, SA) [Section 4.6.2 RFC2401].ISAKMP 定义了协商的两个 "phase" [p.16 RFC2408].GDOI MUST 由一个 Phase 1 安全关联保护.本文采用 Internet DOI 中对 Phase 1 安全关联 (SA) 的定义 [RFC2407, RFC2409].Appendix A 说明了其他可能的 Phase 1 安全关联类型.本文定义 Phase 2 交换, 并依据 ISAKMP 标准提出新的载荷和交换 [p. 14 RFC2408].
共有六种新载荷:
- GDOI SA
- SA KEK (SAK), 跟随 SA payload
- SA TEK (SAT), 跟随 SA payload
- Key Download Array (KD, 密钥下载数组)
- Sequence Number (SEQ, 序列号)
- Proof of Possession (POP, 持有证明)
共有两种新交换.
1) 一个 Phase 2 交换创建 Re-key 和 Data-Security Protocol SA.
新的 Phase 2 交换称为 "GROUPKEY-PULL", 用于下载某个组的 "Re-key" SA 和/或 "Data-security" SA 的密钥.Re-key SA 包含组内通用的密钥加密密钥 (key encrypting key, KEK); Data-security SA 包含数据加密密钥 (data encryption key, TEK), 数据安全协议使用该密钥加密或解密数据流量 [Section 2.1 RFC2407].KEK 或 TEK 的 SA 包含认证密钥, 加密密钥, 加密策略和属性.GROUPKEY-PULL 交换采用 "pull" 行为, 因为组成员主动从 GCKS 检索这些 SA.
2) 后续数据报建立额外的 Rekey 和/或 Data-Security Protocol SA.
GROUPKEY-PUSH 数据报由 GCKS "push" 到组成员, 用于创建或更新 Re-key SA 或 Data-security SA.Re-key SA 保护 GROUPKEY-PUSH 消息.因此, 必须先通过 GROUPKEY-PULL 建立至少一个 Re-key SA, 才能保护后续 GROUPKEY-PUSH 消息.GCKS 使用 KEK Re-key SA 加密 GROUPKEY-PUSH 消息.GDOI 支持为组密钥管理算法使用 KEK 数组, 例如使用逻辑密钥层次结构 (Logical Key Hierarchy, LKH) 算法高效地添加和移除组成员 [RFC2627].LKH 算法的实现是 OPTIONAL.
虽然本文规定的 GROUPKEY-PUSH 可用于刷新 Re-key SA, 但 GROUPKEY-PUSH 最常见的用途是为数据安全协议建立 Data-security SA.GDOI 可以通过未来扩展支持多种数据安全协议.本文仅为一种安全协议 IPsec ESP 指定 Data-security SA.其他数据安全协议, 例如未来的安全 Real-time Transport Protocol, 将由单独的 RFC 规定支持方式.安全协议使用 TEK 并 "拥有" Data-security SA, 这与 IPsec ESP 使用 IKE Phase 2 密钥并拥有 Phase 2 SA 的方式相同; 对于 GDOI, IPsec ESP 使用 TEK.
因此, GDOI 是一种组安全关联管理协议: 所有 GDOI 消息都用于为一个组创建, 维护或删除安全关联.如上所述, 这些安全关联保护一个或多个密钥加密密钥, 流量加密密钥, 或组成员为组播和组安全应用共享的数据.
当关键词 MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY 和 OPTIONAL 出现在本文中时, 其解释应遵循 BCP 14, RFC 2119 [RFC2119].
1.1. GDOI 应用
安全组播应用包括视频广播和组播文件传输.在商业环境中, 其中许多应用需要网络安全, 并且可能使用 IPsec ESP 来保护其数据流量.Section 5.4.1 规定 GDOI 如何承载 ESP 所需的 SA 参数.通过这种方式, GDOI 支持组播 ESP, 使用共享的组密钥对 ESP 包进行组认证 (无法认证 ESP 包的唯一来源).
GDOI 还可以保护不使用组播传输的组应用, 例如视频点播.例如, GROUPKEY-PUSH 消息可以为订阅组的某个成员建立成对的 IPsec ESP SA, 而无需密钥管理交换和开销较高的非对称密码运算.
1.2. 扩展 GDOI
并非所有安全组播或多媒体应用都能使用 IPsec ESP.例如, 许多 Real Time Transport Protocol 应用需要在 IP 层之上提供安全性, 以保持 RTP 头部压缩效率和传输独立性 [RFC3550].未来的 RTP 安全协议可能受益于使用 GDOI 建立组 SA.
要添加新的数据安全协议, 新 RFC MUST 指定 GDOI 为该安全协议承载的 Data-security SA 参数; 这些参数在本文 Section 5.4.2 中列举.
数据安全协议 SA MUST 保护组流量.GDOI 不限制该组流量以单播包还是组播包交付.不过, 当 Data-security SA 所保护的包旨在保持私有且绝不成为组通信的一部分时, 数据安全协议 MUST NOT 将 GDOI 用作密钥管理机制.