9. 安全考虑 (Security Considerations)
[RFC5280] 的安全考虑相应适用. 此外, 应该考虑 [FIPS205] 全文提到的安全方面; 例如, 见第 3.1 节和第 3.2 节, 或第 11 节开头.
SLH-DSA 的安全性依赖内部哈希函数和 XOF 函数的安全属性. 具体而言, 它依赖这些函数具备原像抗性, 但不依赖它们具备碰撞抗性. 由于 HashSLH-DSA 在签名之前执行 pre-hash, 因此它同时依赖 pre-hash 函数的原像抗性和碰撞抗性. 为了达到适当的碰撞抗性级别, HashSLH-DSA 使用的 pre-hash 函数输出长度是内部哈希函数和 XOF 函数长度的两倍.
实现必须保护私钥. 私钥泄露可能导致伪造签名的能力.
生成 SLH-DSA 密钥对时, 实现必须独立于 SLH-DSA hypertree 中所有其他密钥对来生成每个密钥对.
SLH-DSA 树不得用于超过 2^64 次签名操作.
私钥生成依赖随机数. 使用不充分的伪随机数生成器 (PRNGs) 生成这些值可能导致几乎没有安全性. 攻击者可能更容易复现生成密钥的 PRNG 环境, 并搜索由此产生的小规模可能性集合, 而不是对整个密钥空间进行暴力搜索. 生成高质量随机数是困难的; 更多信息见 [FIPS205] 第 3.1 节.
故障攻击可能导致消息签名伪造; 见 [CMP2018] 和 [Ge2023]. 在释放签名值之前验证签名是一种典型的故障攻击对策; 但是, 这种对策对 SLH-DSA 无效 [Ge2023]. 通过复制签名生成过程提供冗余, 可以作为 SLH-DSA 的有效故障攻击对策 [Ge2023]; 但是, SLH-DSA 签名生成本身已经被认为较慢.
同样, 被动功耗和辐射侧信道攻击可能泄露 SLH-DSA 私有签名密钥, 可以针对这些攻击采取对策 [SLotH].