了解将.pem文件转换为.pfx的OpenSSL步骤

了解将.pem文件转换为.pfx的OpenSSL步骤,openssl,pem,pfx,crossrider,code-signing-certificate,Openssl,Pem,Pfx,Crossrider,Code Signing Certificate,我正在使用Crossrider开发一个插件,需要一个代码签名证书作为该过程的一部分。为此,我采取了以下行动 按照GoDaddy的指示生成CSR,如图所示 将CSR和私钥发送给客户,并要求他们购买CSC,他们这样做了 客户从GoDaddy给我发送了.pem和.spc文件 我使用OpenSSL将.pem文件转换为Crossrider需要的.pfx文件 OpenSSL>pkcs12-export-out certificate.pfx-inkey-privateKey.key-in certifica

我正在使用Crossrider开发一个插件,需要一个代码签名证书作为该过程的一部分。为此,我采取了以下行动

  • 按照GoDaddy的指示生成CSR,如图所示

  • 将CSR和私钥发送给客户,并要求他们购买CSC,他们这样做了

  • 客户从GoDaddy给我发送了.pem和.spc文件

  • 我使用OpenSSL将.pem文件转换为Crossrider需要的.pfx文件

    OpenSSL>pkcs12-export-out certificate.pfx-inkey-privateKey.key-in certificate.pem

  • 当OpenSSL请求我“输入导出密码”时,我使用了与生成CSR时相同的密码

  • 我将.pfx文件上传到Crossrider,并再次提供了相同的密码

  • Crossrider表示文件或密码无效。我在上述步骤中是否犯过错误或遗漏了什么

    更新:太平洋标准时间04/30 4:45

    GoDaddy中的.pem文件已经显示了四个
    ----BEGIN CERTIFICATE-----
    ----END CERTIFICATE-----
    组,所以它们似乎进行了链接?我能够将我生成的.pfx文件导入到OSX上的KeyChain Access中,它显示了我们公司的名称以及GoDaddy发布的所有详细信息

    当我运行openssl时,请验证这是我得到的

    OpenSSL> verify certificate.pem 
    certificate.pem: /C=US/O=The Go Daddy Group, Inc./OU=Go Daddy Class 2 Certification Authority
    error 18 at 0 depth lookup:self signed certificate
    OK
    

    我很迷茫,所以请提供任何建议。我可以发布任何有助于解决问题的信息。

    这是Crossrider的问题,而不是.pfx文件的OpenSSL生成。昨晚我把这个问题发布到他们的支持板上,他们回复说他们的开发团队看了一下,让我再试一次。我上传了它,它成功了。

    可能的副本看起来您缺少颁发证书的CA的中间产物。在创建
    {PFX | P12}
    文件之前,必须手动将它们添加到
    certificate.pem
    。@jww–感谢您的回复。我刚刚读了你的链接文章,正在尝试消化这些信息。我用更多的信息修改了我的问题,这些信息可能会提供更多的见解。要解决OpenSSL问题,请从下载相应的CA(Go Daddy Class 2证书颁发机构)。然后发布
    openssl verify certificate.pem-CAFile
    ,其中
    是您下载的CA。您应该得到类似于“验证返回代码:0(确定)”的内容。如果一切正常,则在上载之前尝试从
    {PFX | P12}
    文件中删除密码。由于密码已上载到服务器,并且可能存储在文件系统中,因此它是一个没有意义的点。@jww–我如何知道要下载哪个密码?我尝试了两个似乎适用的根证书gd-class2-root.crt和gdroot-g2.crt,但当我将它们指定为CAFile时,它们都抛出了错误:
    打开证书文件时出错-CAFile
    如前所述,CSC上载机制的问题现已解决@ThinkCL,感谢您报告问题,并为给您带来的不便表示歉意[披露:我是一名Crossrider员工]