【问题标题】:How can I extract a key from an SSL certificate?如何从 SSL 证书中提取密钥?
【发布时间】:2013-07-07 18:07:18
【问题描述】:

我购买了.pem.crt.der 格式的 SSL 证书。我想知道如何从证书中获取密钥文件。有没有办法做到这一点?

【问题讨论】:

  • 你说的是私钥吗?
  • 为什么?您已经拥有私钥和公钥。那是你开始的地方。您生成了一个密钥对,创建了一个 CSR,对其进行了签名,现在您拥有了签名证书。如果您丢失了开始使用的密钥对,那么无论如何您都会被水淹,您必须重新开始。

标签: ssl ssl-certificate rsa pki pem


【解决方案1】:

您可以提取公钥。这具有有限的用处。也许您打算将相同的密钥与不使用证书的其他工具(如 SSH 或 PGP)一起使用。

使用 OpenSSL:

openssl x509 -pubkey -noout < cert.pem > pubkey.pem

您不能从证书派生私钥。那会让整个事情变得毫无意义,不是吗?

【讨论】:

  • 运行命令时出现错误:openssl rsa -pubout &lt;cert.pem &gt; key.pem` 无法加载私钥 99416:error:0906D06C:PEMroutines:PEM_read_bio:no start line:/SourceCache/OpenSSL098/OpenSSL098- 47.1/src/crypto/pem/pem_lib.c:648:期望:任何私钥`
  • @nkcmr 我很抱歉。我以为我正在测试证书上的命令,但它实际上是我为s_server 制作的文件。在这种格式中,私钥被附加到证书中,并且该私钥的存在允许rsa 实用程序工作。请使用我更正的答案。
猜你喜欢
  • 2011-08-17
  • 1970-01-01
  • 1970-01-01
  • 2014-08-19
  • 2011-08-12
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 2013-01-02
相关资源
最近更新 更多