6.8.3.3. 在 RPM 中添加多个签名
要增强软件安全性,请在 RPM 软件包中添加多个 RPMv6 签名。
从版本 10.1 开始,RHEL 支持 RPMv6 签名。使用这个格式,您可以在 RPM 软件包中添加多个签名。如果其中任何一个密钥被泄露,或者其中一个加密算法被呈现不安全,则这会产生更高的安全性。
您可以多次运行 rpmsign --addsign --rpmv6 命令来使用多个不同密钥为 RPM 签名。请注意,第一个 RPMv6 签名通常使用 OpenPGPv4 RSA 密钥生成,并与 RPMv4 兼容,也存储为 RPMv4 签名。这允许旧的 RPM 版本信任软件包签名。
重要
在添加任何使用 PQC 算法的 RPMv6 签名前,始终考虑将 RPMv4 兼容签名添加到软件包中。这样可确保软件包在 RHEL 10.1 之前的版本上具有 RPM 的签名可以进行验证。
先决条件
- 您生成了 PQC 密钥对。如需更多信息,请参阅创建 PQC 密钥。
- 您已将 RPM 配置为使用 PQC 密钥。如需更多信息,请参阅为 PQC 配置 RPM。
流程
在软件包中添加签名:
$ rpmsign --addsign --rpmv6 <package_name>.rpm- 要使用多个 RPMv6 签名签署软件包,请重复第一步。
验证
将导出的 PQC OpenPGP 证书导入到 RPM 密钥环中:
# rpmkeys --import RPM-PGP-KEY-VENDOR验证 RPM 文件是否具有对应的签名,例如:
$ rpmkeys -Kv <package_name>.rpm<package_name>.rpm: Header OpenPGP V6 ML-DSA-87+Ed448/SHA512 signature, key fingerprint: <ml_dsa_fingerprint>: OK Header OpenPGP V4 RSA/SHA512 signature, key fingerprint: <rsa_fingerprint>: OK Header SHA256 digest: OK Payload SHA256 digest: OK