如何确认私钥与 CSR 和证书?

在RSA公钥密码术中,成对的私钥和公钥在数学上相关,因为它们共享相同的模数。 模数的长度(以位表示)是密钥长度。

为了确认特定的私钥与证书签名请求中包含的公钥匹配(CSR)和证书,必须确认两个密钥的模数相同。 这可以直接完成 OpenSSL的 在Linux / Unix,macOS或Windows(带有 Windows 10的Linux子系统 or Cygwin的), 如下:

要查看私钥模数的md5哈希值:

$ openssl rsa -noout -modulus -in mykey.key | 打开 ssl md5

要查看md5哈希模的 CSR:

$ openssl req -noout -modulus-在我的csr.csr | 打开 ssl md5

要查看证书模数的md5哈希值:

$ openssl x509 -noout -modulus -in mycert.crt | 打开 ssl md5

如果所有三个哈希都匹配,则 CSR,证书和私钥兼容。 您可以使用 diff3 一次比较所有三个文件的模量:

$ openssl req -noout -modulus-在我的csr.csr > csr-mod.txt $ openssl x509 -noout -modulus-在mycert.crt> cert-mod.txt $ openssl rsa -noout -modulus -in mykey.key> privkey-mod.txt $ diff3 csr-mod.txt cert-mod.txt privkey-mod.txt

如果所有三个文件都相同, diff3 将不会产生任何输出。 如果您只想比较两个文件(例如证书和私钥),则可以使用 diff:

$ diff cert-mod.txt privkey-mod.txt

同样, diff 如果文件相同,将不产生任何输出。

请注意: 有多个第三方在线工具,可让您检查证书和私钥之间的匹配。 但是,出于安全考虑,通常最好在安装私钥的计算机上进行任何涉及私钥的操作。 请记住,如果公开了私钥,则网站的安全性将受到威胁。 考虑到这一点,在将私钥通过Internet交给第三方进行检查时,应格外谨慎。
如有任何疑问或需要帮助,请通过以下方式与我们联系 Support@SSL.com,1-SSL证书(1-775-237-8434)或仅使用此页面右下方的“实时聊天”选项。 和往常一样,感谢您的选择 SSL.com!

订阅SSL.com的新闻通讯

不要错过SSL.com上的新文章和更新

保持信息灵通和安全

SSL.com 是网络安全领域的全球领导者, PKI 和数字证书。注册以接收最新的行业新闻、提示和产品公告 SSL.com.

我们希望收到您的反馈

参加我们的调查,让我们知道您对最近购买的想法。