当 CSR 适用于 SHA-1 时,我可以获得 SHA-256 证书吗?

当 CSR 适用于 SHA-1 时,我可以获得 SHA-256 证书吗?

我读了:

默认情况下,OpenSSL 加密工具配置为进行 SHA1 签名。例如,如果要生成 SHA256 签名的证书请求 (CSR),请在命令行中添加:-sha256

我需要将现有的 SHA1 证书升级到 SHA256。我生成了一个新的 CSR 并将其发送给 RapidSSL,然后才意识到我没有-sha256在 CSR 中指定。

我联系了他们,他们说“已完成 Sha2 证书替换,订单当前状态为等待批准。订单获得批准后,将使用 SHA2 算法颁发新证书。”

我的问题是,他们是否有可能得到我的 SHA1 CSR 并说“好的,无论如何我们都会给你一个 SHA256 证书,因为这就是我们现在所做的一切”?该证书是否可以与我生成的与该 SHA1 CSR 相对应的私钥一起使用?

它是如何工作的?当我在生成 CSR 时传入-sha256(或不传入)时,除了在 CSR 中注明“嘿,此人希望对其证书进行 SHA256 加密”之外,这还会产生什么影响?它会以任何方式影响生成的私钥吗?

答案1

这是可能的,因为 CSR 的签名仅用于证明您确实是与 CSR 中嵌入的公钥相匹配的私钥的所有者。一旦 CA(在您的情况下为 RapidSSL)确定 CSR 有效,其签名对于创建证书的进一步过程就变得毫无意义,并被有效丢弃。

有关证书的详细信息,请参阅rfc5280-4.1.2

相关内容