【问题标题】:Creating.pem file for push notification?为推送通知创建.pem 文件?
【发布时间】: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文件?

【问题讨论】:

标签: iphone ios ipad


【解决方案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 文件)!**

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-29
      • 2013-04-09
      • 2023-03-05
      • 1970-01-01
      • 2014-02-10
      • 1970-01-01
      • 2011-05-03
      • 1970-01-01
      相关资源
      最近更新 更多