ssl - 如何使用 openssl 创建 P12 文件

标签 ssl x509certificate

我在创建 p12 文件以放置在我的 Windows 服务器上时遇到了一些严重的问题。

我使用了两个不同的网站来帮助我解决我需要做的事情:

http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1

我使用的第二个网站是网站内的评论如下:

http://arashnorouzi.wordpress.com/2011/06/19/sending-apple-push-notifications-in-asp-net-and-c-–-part-4-apns-sharp-c-wrapper-class/

首先,我创建了一个证书签名请求。 然后我将其上传到我的应用程序 ID,这使我能够生成 ape_dev 证书。 然后我转到我的 key 链并导航到“ key ”,我导出了我刚刚创建的 .p12 证书。

我现在有三个不同的文件

我的 p12 文件、我的开发证书和我的证书签名请求。

然后我打开终端并输入以下内容:

$ openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem

这会创建一个新的 pem 证书。

我输入的内容如下

$ openssl pkcs12 -nocerts -out PushChatKey.pem -in PushChatKey.p12

它提示我输入密码,我使用与创建证书时相同的密码。

完成此操作后,我剩下 2 个新文件,它们都是 PEM 文件。

我需要将这两个 PEM 文件组合成一个 p12 文件,以便它能够在我的 Windows 服务器上工作。

我已经尝试使用下面的行来组合它

openssl pkcs12 -export \
-in aps_developer_identity.pem \
-out aps_developer_identity.p12  \
-inkey APSCertificates.pem

这实际上有效并为我提供了一个 p12 文件。 然后我切换回 raywenderlich 网站并输入以下内容:

$ openssl s_client -connect gateway.sandbox.push.apple.com:2195 
-cert PushChatCert.pem -key PushChatKey.pem

它加载但我收到以下错误:

error:num=20:unable to get local issuer certificate

请问有没有人知道我做错了什么我受够了兜圈子。

当我将证书上传到服务器并将临时版本从设备上的应用程序中删除时,我仍然没有收到我发送的任何通知

提前致谢。

最佳答案

看看这个答案是否有帮助 Creating .pem file for APNS?

简而言之:openssl pkcs12 -in apns-dev-cert.p12 -out apns-dev-cert.pem -nodes -clcerts

关于ssl - 如何使用 openssl 创建 P12 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18981848/

相关文章:

go - 使用证书颁发机构签署证书请求

ssl - 如何通过浏览器访问 Kubernetes UI?

security - JDK 从 1.6 升级到 1.8 后 SSL 握手失败

ubuntu - apt-get 更新显示 : CAfile:/etc/ssl/certs/ca-certificates. crt CRLfile: 无

python - 通过 python 执行请求时 SSL 证书错误

java - 显示安卓证书

java - 通过 SSL 的 LDAP 连接不适用于参数 "com.sun.jndi.ldap.connect.timeout"

c# - 是否可以通过代码将证书上传到门户?

c# - 调试失败的 HTTPS WebRequest

c# - 无法使用 X509 客户端证书连接到 HTTPS