为推送通知创建.pem 文件?
Posted
技术标签:
【中文标题】为推送通知创建.pem 文件?【英文标题】:Creating.pem file for push notification? 【发布时间】:2012-07-18 07:46:34 【问题描述】:我有一个 iPhone 应用程序,我在其中实现推送通知。为此,我创建了一个 csrfile、p12 文件和生产 cer。为应用程序 id 启用了推送通知。并下载了配置文件。当我在设备上运行时我也收到了注册通知。但是当我将证书中的 pem 文件和 p12 密钥中的 pem 文件组合在一起,并生成另一个 pem 文件并放入我的服务器时。推送通知没有进入我的手机。我用过这个终端上的命令来创建文件。`
openssl x509 -in aps_production.cer -inform der -out phoneapp.pem
openssl pkcs12 -nocerts -out phoneappKey.pem -in veapp.p12
cat phoneapp.pem phoneappKey.pem > applicationwebservice.pem
`谁能帮我正确获取pem文件?
【问题讨论】:
这里:***.com/a/1762824/624091,试试这个。 【参考方案1】:得到p12文件后,需要在终端执行这个命令,转换成PEM格式:
openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in apns-dev-cert.p12
openssl pkcs12 -nocerts -out apns-dev-key.pem -in apns-dev-key.p12
如果您想删除密码,请在导出/转换时不要设置或执行:
openssl rsa -in apns-dev-key.pem -out apns-dev-key-noenc.pem
最后,您需要将密钥和证书文件组合成一个 apns-dev.pem 文件,我们将在连接到 APNS 时使用:
cat apns-dev-cert.pem apns-dev-key-noenc.pem > apns-dev.pem
这是获取pem文件的方法,更多详情请参考my blog
【讨论】:
完美,也帮助了我。谢谢 我必须使用openssl pkcs12 -nocerts -in apple_push_dev.p12 -nodes -out y.pem
才能将密钥以未加密的形式推出(OpenSSL 1.0.1f)【参考方案2】:
试试下面这些命令:
openssl pkcs12 -clcerts -nokeys -out cert.pem -in cert.p12
openssl pkcs12 -nocerts -out key.pem -in key.p12
openssl rsa -in key.pem -out key.unencrypted.pem
cat cert.pem key.unencrypted.pem > ck.pem
【讨论】:
【参考方案3】:要创建 .pem 文件,您需要遵循以下简单步骤。
给你。
第 1 步:登录到您的开发者帐户,进入 Provisioning Portal,点击“证书”。然后,点击“+”按钮。
第 2 步:在 Distribution 部分选择 Apple Push Notification service SSL (Production) 选项,然后点击“Continue”。
第 3 步:选择要用于 BYO 应用的应用 ID(如何创建应用 ID),然后点击“继续”进入下一步。
第 4 步:按照“关于创建证书签名请求 (CSR)”的步骤创建证书签名请求。
第五步:上传第四步生成的“.CSR”文件,然后点击“生成”。
第6步:点击“完成”完成注册,ios Provisioning Portal Page将会改变UI。
第 7 步:现在转到“钥匙串”,查找您刚刚安装的证书。如果不确定哪个证书是正确的,则应以“Apple Production IOS Push Services:”开头,后跟您应用的捆绑包 ID。
第 8 步:展开证书,您应该会看到带有您的姓名或公司名称的私钥。使用键盘上的“选择”键选择这两个项目,右键单击(如果使用单键鼠标,则单击 cmd),选择“导出 2 个项目”。 然后将名为“yourselectedname.p12”的 p12 文件保存到桌面 - 现在系统会提示您输入密码以保护它,您可以单击 Enter 跳过密码或输入您想要的密码。
第 9 步:现在在您的 Mac 上打开“终端”,然后运行以下命令: 光盘 光盘桌面 openssl pkcs12 -in pushcert.p12 -out pushcert.pem -nodes -clcerts
** DONE 您已成功创建 Apple 推送通知证书(.pem 文件)!**
【讨论】:
以上是关于为推送通知创建.pem 文件?的主要内容,如果未能解决你的问题,请参考以下文章
更新 ios 推送通知的 SSL 证书时是不是需要重新创建 CK.pem?