7.3.6. Key and Algorithm Specification Downgrades (密钥与算法规范降级)
7.3.6. Key and Algorithm Specification Downgrades (密钥与算法规范降级)
本规范的应用需要防护密钥规范降级攻击. 例如, 同一 RSA 密钥可用于 RSA-PSS 与 RSA v1.5 签名. 若应用期望密钥仅用于 RSA-PSS, 需要拒绝对该密钥使用较弱 RSA 1.5 规范的任何签名.
另一种降级攻击示例是期望非对称算法 (如 RSA-PSS) 但攻击者替换为对称算法 (如 HMAC) 的签名. 朴素验证者实现可能将公钥 RSA 的值用作 HMAC 验证函数输入. 由于公钥为攻击者所知, 这将允许攻击者对此已知密钥创建有效 HMAC 签名. 为防止此点, 验证者需要确保密钥材料与算法对使用场景均适当. 此外, 虽然本规范允许使用 alg 签名参数在运行时指定算法, 鼓励应用使用静态配置或更高协议层算法规范等其他机制, 防止攻击者替换所指定算法.