【问题标题】:Is it possible to convert an SSL certificate from a .key file to a .pfx?是否可以将 SSL 证书从 .key 文件转换为 .pfx?
【发布时间】:2010-10-07 21:04:28
【问题描述】:

有没有办法将 .key 文件转换为 .pfx 文件? 谢谢。

编辑:我只有 .key 文件,但我的托管服务提供商说我可以仅使用该文件将其转换为 .pfx。

【问题讨论】:

    标签: ssl-certificate pfx


    【解决方案1】:

    你可以试试这个
    https://www.sslshopper.com/ssl-converter.html

    openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt
    

    【讨论】:

    • 嗨,戴夫,问题是我只有一个 .key 文件,没有 .crt 文件。 .key 是否可能包含证书?
    • 我的托管服务提供商坚持认为这是他们使用的格式,并且其中包含证书。
    • 多年后......在搜索了 SO 并经历了至少十几个类似的问题和无数的答案之后,这个答案正是我从证书创建 PFX (PKCS12) 所需要的,私钥在.KEY 文件和一系列根/中间信任权限。谢谢!
    • 啊,共享证书的私钥并不是保证安全的最佳方式
    • user65663,你是最棒的。
    【解决方案2】:

    根据OpenSSL Command-Line HOWTO,它应该可以使用

    # export mycert.key as PKCS#12 file mycert.pfx
    openssl pkcs12 -export -out mycert.pfx -in mycert.key -name "My Certificate"
    

    【讨论】:

      【解决方案3】:

      检查您的 .key 文件是否包含您需要的所有内容:

      #check if file contains a valid certificate:
      openssl x509 -text -in file.key
      

      它应该打印出证书详细信息。如果它打印包含文本“无法加载证书”的错误,则说明您的文件不足。

      #check if file contains a valid key:
      openssl rsa -text -in file.key
      openssl dsa -text -in file.key
      

      上述命令之一应打印出有效的密钥详细信息。另一个将给出文本“期望 rsa 密钥”或“期望 dsa 密钥”的错误。

      如果错误文本显示“解密错误”,则您提供的密码无效,或者文件已损坏。

      如果错误文本显示“期望:任何私钥”,那么您的文件不够用。

      如果您有一个密钥和一个与该密钥匹配的证书(以及可选的其他一些证书),那么您就有足够的能力将文件转换为 pfx。然后,正如 ISW 所说,这只是一个问题

      #convert file containing key and certificate(s) to PKCS#12 pfx file.
      openssl pkcs12 -export -out file.pfx -in file.key
      

      你就完成了。

      【讨论】:

      • @jlp - 不,OpenSSL 不是 Windows 的一部分,它是一个独立的软件包 (openssl.org),也可用于 Windows (openssl.org/related/binaries.html)
      • 如果第一个命令失败,您可以这样做:在记事本中打开 .key 和 .spc,复制这两个文件的全部内容并创建一个名为 newfile.key 的新文件。然后再次运行openssl x509 -text -in newfile.key 命令,它应该可以工作了。然后您可以使用 openssl pkcs12 -export -out newfile.pfx -in newfile.keynewfile.key 转换为 .pfx
      • @dacap:谢谢 - 是的,如果您在单独的文件中拥有密钥和证书,您可以按照您的描述将它们组合起来。您也可以使用下面建议的@fig 方法,using -inkey for the key file, and -in for the certificate (.spc) file...
      • ...为什么微软在pvk2pfx或signtool中没有提供将.key转为.pvk的功能?
      【解决方案4】:

      您可以使用工具http://www.chilkatsoft.com/p/p_347.asp 将您的 .key 文件转换为 .pvk,然后使用 GoDaddy 上的说明将 .scp 和 .pvk 合并为一个 .pfk。只需确保在生成 .pvk 文件时使用密码即可。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-12-14
        • 2012-04-15
        • 2010-10-22
        • 2019-12-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多