3.5. KRB_PRIV 交换
概述
KRB_PRIV 消息为应用数据提供机密性和完整性保护。与 KRB_SAFE 不同,KRB_PRIV 对用户数据进行加密。
目的
KRB_PRIV 用于以下情况:
- 需要机密性和完整性保护
- 必须加密敏感数据
- 需要完整的端到端安全
消息结构
KRB_PRIV 包含:
- 加密的用户数据
- 时间戳(在加密部分内)
- 序列号(可选,在加密部分内)
- 发送者和接收者地址(可选,在加密部分内)
KRB_PRIV 消息的生成
发送者:
- 构造包含用户数据的消息
- 添加时间戳和可选序列号
- 使用会话密钥加密整个有效载荷
- 传输加密的消息
KRB_PRIV 消息的接收
接收者:
- 使用共享会话密钥解密消息
- 提取用户数据和元数据
- 验证时间戳(重放保护)
- 如果使用则检查序列号
- 根据验证结果接受或拒绝消息
安全属性
- 机密性: 加密保护数据内容
- 完整性: 加密认证模式提供完整性
- 重放保护: 加密有效载荷内的时间戳和序列号
与 KRB_SAFE 的比较
| 特性 | KRB_SAFE | KRB_PRIV |
|---|---|---|
| 机密性 | 否 | 是 |
| 完整性 | 是 | 是 |
| 性能开销 | 较低 | 较高 |
| 用例 | 非敏感数据 | 敏感数据 |
参考
完整技术细节请参阅 RFC 4120 第 3.5 节。