7. 初始消息的安全性
Initial packet 使用的密钥可以由任何观察到客户端首个 Initial packet 的实体计算, 因此 Initial 保护只提供防止偶然修改的能力, 不提供真正的机密性或认证. 攻击者可以伪造或修改 Initial packet, 试图干扰连接建立.
QUIC 通过尽快丢弃 Initial key、验证后续 Handshake packet、以及使用 TLS Finished 消息认证握手 transcript 来限制此类攻击. 一旦端点能够使用 Handshake key, 就表明它已经接收到了 Initial packet 中必要的 CRYPTO frame, 因而不再需要继续处理新的 Initial 数据.
实现必须谨慎处理来自较低加密级别的数据. 如果 TLS 在进入更高接收加密级别时仍有未消费的较低级别数据, 端点必须将其视为 PROTOCOL_VIOLATION. 这防止攻击者通过旧级别数据扰乱握手状态.