https://www.cnblogs.com/MrJalen/p/6813309.html

iOS推送证书生成pem文件(详细步骤)

 

1、pem文件概述

pem文件是服务器向苹果服务器做推送时候需要的文件,主要是给php向苹果服务器验证时使用,下面介绍一下pem文件的生成。

2、生成pem文件步骤

1、打开钥匙串,选择需要生成的推送证书

选择相应证书
 

2、将Certificate和Private key导出得到 .p12 文件

2.1、生成证书apns_dev_cert.p12的p12文件,按照下面操作导出p12,桌面对应生成apps_dev_cer.p12文件

导出相应的 p12 文件
 

导出证书Cer的p12文件,设置密码
 
 

2.2、生成证书对应的秘钥apns_dev_key.p12的p12文件,按照下面操作导出p12,桌面对应生成apps_dev_ker.p12文件。

导出相应证书Key的p12文件

导出证书Key的p12文件,设置密码
 
 

3、将apns_dev_cert.p12和apns_dev_key.p12文件对应转化为apns_dev_cer.pem和apns_dev_key.pem文件

3.1、打开终端,输入cd Desktop

3.2、将apns_dev_cert.p12文件转换为pen格式,输入openssl pkcs12 -clcerts -nokeys -out apns_dev_cert.pem -in apns_dev_cert.p12

1>. 要求输入一个密码,输入123456.(此处为导出p12的保护密码),此时桌面会生成一个apns_dev_cert.pem文件 

3.3、将apns_dev_key.p12文件转换为pen格式,输入openssl pkcs12 -nocerts -out apns_dev_key.pem -in apns_dev_key.p12

1>. 要求输入一个密码,输入123456.(此处为导出p12的保护密码)

2>. 要求验证保护密码,再一次输入123456,此时桌面会生成一个apns-dev-key.pem文件

4、将apns_dev_cer.pem和apns_dev_key.pem文件合成为apns_dev.pem文件,此文件将给php后台用于连接苹果服务器时需要使用,在终端继续输入:cat apns_dev_cer.pem apns_dev_key.pem > apns_dev.pem,此时桌面生成一个apns_dev.pem

3、验证生成的pem文件

在终端测试:openssl s_client -connectgateway.sandbox.push.apple.com:2195-cert apns_dev_cert.pem -key apns_dev_key.pem

终端最后显示以下内容,表示配置pem文件成功,

.............................

Key-Arg   : None

Start Time: 1467854873

Timeout   : 300 (sec)

Verify return code: 0 (ok)

版权声明:本文为博主原创文章,未经博主允许不得转载。

oc之证书的更多相关文章

  1. oc学习之路----APNS消息推送从证书到代码(2015年4月26号亲试可用)

    前言:看这篇博客之前要准备:首先的有一个99刀的个人开发者账号或者199刀的企业开发者账号,其次你用的是apns消息推送,(本人之前四处打听有没有其他消息推送的方法:收获如下:首先如果想做到apns的 ...

  2. RSA非对称加密,使用OpenSSL生成证书,iOS加密,java解密

    最近换了一份工作,工作了大概一个多月了吧.差不多得有两个月没有更新博客了吧.在新公司自己写了一个iOS的比较通用的可以架构一个中型应用的不算是框架的一个结构,并已经投入使用.哈哈 说说文章标题的相关的 ...

  3. WKWebView与Js (OC版)

    OC如何给JS注入对象及JS如何给IOS发送数据 JS调用alert.confirm.prompt时,不采用JS原生提示,而是使用iOS原生来实现 如何监听web内容加载进度.是否加载完成 如何处理去 ...

  4. WKWebView与Js实战(OC版)

    前言 上一篇专门讲解了WKWebView相关的所有类.代理的所有API.那么本篇讲些什么呢?当然是实战了! 本篇文章教大家如何使用WKWebView去实现常用的一些API操作.当然,也会有如何与JS交 ...

  5. oc常见误区

    1.同步请求可以从因特网请求数据,一旦发送同步请求,程序将停止用户交互,直至服务器返回数据完成,才可以进行下一步操作, 2.异步请求不会阻塞主线程,而会建立一个新的线程来操作,用户发出异步请求后,依然 ...

  6. Unity3D研究院之IOS全自动编辑framework、plist、oc代码

    Unity打IOS时会先生成一个Xcode工程,如果你需要增加一些第三方的framework那么需要手动一条一条的添加,这太烦了..而且可能你还需要修改Plist文件,甚至还可能要修改unity自动生 ...

  7. 【腾讯Bugly干货分享】iOS 中 HTTPS 证书验证浅析

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/-fLLTtip509K6pNOTkflPQ 导语 本 ...

  8. OC学习10——内存管理

    1.对于面向对象的语言,程序需要不断地创建对象.这些对象都是保存在堆内存中,而我们的指针变量中保存的是这些对象在堆内存中的地址,当该对象使用结束之后,指针变量指向其他对象或者指向nil时,这个对象将称 ...

  9. 企业版证书打包APP发布,安装后闪退问题解决。

    企业版证书打包APP发布,安装后闪退问题解决. 我现在就碰到这个问题,只要项目与Swift沾上边的,都会出问题. 如果我们是直接使用开发者证书进行真机调试,那么就不会出现问题,像往常一样好.但如果我们 ...

随机推荐

  1. Python:字符串格式化

    Python中提供了多种格式化字符串的方式,遇到一个项目,在一个文件中,就用了至少两种方式.特别是在使用Log时,更让人迷惑. 因此特地花时间来了解一下Python中字符串格式化的几种方式: # -* ...

  2. Linux下完全删除用户

    实验环境:Centos7虚拟机 首先创建一个普通用户gubeiqing. [root@localhost ~]# useradd gubeiqing [root@localhost ~]# passw ...

  3. 使用Razor Generator构建模块化ASP.NET MVC应用程序

    在构建Web应用程序的时候,我们很难做到模块化的开发,这是因为Web应用程序不仅仅包含编译的C#代码,还包含了js.css和aspx等资源. 在ASP.NET MVC中,我们发布应用程序的时候,还会包 ...

  4. 注册mySQL到JDBC驱动程序方法浅谈

    一.注册方法(4种) 1)服务提供者框架: 符合JDBC 4.0规范的驱动程序包含了一个文件META-INF/services/java.sql.Driver,在这个文件中提供了JDBC驱动实现的类名 ...

  5. flex布局快速成型(原创)

    最近我根据一个UI设计,耗时3h快速实现较复杂页面布局,如上图.根据这份UI设计图,实现代码如下,暂不考虑具体细节,先以成型为主: <!DOCTYPE html> <html> ...

  6. UVA437-The Tower of Babylon(动态规划基础)

    Problem UVA437-The Tower of Babylon Accept: 3648  Submit: 12532Time Limit: 3000 mSec Problem Descrip ...

  7. spool

    一.常用设置 set lin 1000 --一行可容纳字符数{80|n};输出大于设置值,则折行显示set wrap on --输出行长度大于设置长度时(set lin n设置);值为on,多余字符另 ...

  8. 七、Oracle 数据库设计

    1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体. 在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证 ...

  9. java kafka单列模式生产者客户端

    1.所需要的依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...

  10. 初学Python——介绍一些内置方法

    1.abs()求绝对值 a=abs(-10) print(a) # 输出:10 2.all() 用来检测列表元素是否全部为空.0.False print(all([0,5,4])) #当列表所有元素都 ...