HardcodedIVCNG(Windows 驱动程序 CodeQL 查询)
概述
初始化向量 (IV) 是用于提供初始状态的加密基元的输入。 IV 通常要求是随机或伪随机 (随机方案) ,但有时 IV 只需是不可预知或唯一 (有状态方案) 。
随机化对于某些加密方案实现语义安全性至关重要,而在同一密钥下重复使用方案的属性不允许攻击者推断 (加密消息中可能相似的) 段之间的关系。
建议
根据所使用的操作模式,所有对称块加密还必须与适当的初始化向量 (IV) 一起使用。
如果使用随机方案(如 CBC),建议使用加密安全的伪随机数生成器,例如 BCryptGenRandom。
其他详细信息
可以在 Microsoft GitHub CodeQL 存储库中找到此查询。 有关 Windows 驱动程序开发人员如何下载和运行 CodeQL 的详细信息,请参阅 CodeQL 和静态工具徽标测试 页。