我们有一个构建和 PGP 签名软件版本的 Jenkins 系统,我们正在考虑将签名组件移动到一个隔离的 VM,而不是将其作为整个构建器基础架构的一部分运行——以便更好地将私钥与所有其他相对公共的运动部件。
一些开发人员反对使用虚拟机,因为虚拟机通常很少有良好熵的来源,因此通常不适合密码学。我想提出一个相反的论点,因为我们将使用在其他地方生成的 PGP 密钥,所以将在该 VM 上完成的唯一加密操作根本不会依赖 RNG。我对 PGP 签名过程的理解是它计算一个 sha1/sha2 哈希(不使用 RNG),然后使用私钥计算签名(不使用 RNG)。
那是对的吗?或者我是否遗漏了一些会使强 RNG 成为仅 PGP 签名但从不 PGP 加密的系统的要求?
