指定CSR文件时,OpenSSL pkcs12导出失败

时间:2018-08-28 21:29:59

标签: openssl apple-push-notifications pushsharp

我正在尝试创建一个与PushSharp一起使用的p12文件,以发送iOS推送通知。一年前,我使用这个确切的过程来更新我们的证书,并且效果很好。但现在在最后一步失败了。

这是我在做什么:

  1. 在“钥匙串访问”中创建一个名为e.grade AS grade的文件的证书签名请求
  2. 从“钥匙串访问”中导出私钥,将文件另存为SELECT
  3. 转到developer.apple.com,使用第1步中的CSR文件创建生产Apple Push Services证书,并以CertificateSigningRequest.certSigningRequest格式下载文件
  4. 在shell中运行以下命令(与在其他一些Stack Overflow帖子中发现的命令几乎相同):
private_key.p12

最终的openssl命令失败,并显示以下错误:

  

无法加载证书

我无法弄清楚我在做什么错;所有这些都在一年前运行良好的脚本中完成。我可以通过删除aps.cer参数来使openssl x509 -in aps.cer -inform DER -out app_cert.pem -outform PEM openssl pkcs12 -nocerts -out private_key.pem -in private_key.p12 openssl rsa -out private_key_noenc.pem -in private_key.pem openssl pkcs12 -export -in app_cert.pem -inkey private_key_noenc.pem -certfile CertificateSigningRequest.certSigningRequest -name "MyAppName" -out pushsharp.p12 命令成功执行,但是我相信由此生成的p12文件将不适用于PushSharp。

1 个答案:

答案 0 :(得分:2)

请勿尝试将CS​​R文件作为参数RecyclerView

-certfile可用于向商店添加其他证书。

例如app_cert.pem的CA证书链:

-certfile

通常,如果相应的证书已经存在,则无需使用CSR。