苹果开发证书集锦(cer、p12、pem等生成使用)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了苹果开发证书集锦(cer、p12、pem等生成使用)相关的知识,希望对你有一定的参考价值。
参考技术A 前段时间,有朋友跳槽,上班第一天就需要发布新版本,结果前任留下的证书他在公司新配的电脑上连调试都调试不了,然后问我ios这些个杂七杂八的证书到底需要怎么弄最好,于是想,特以此文来记录下我于苹果证书的爱恨情仇。。。要想有创建证书的资格,第一步,你得先有苹果开发者账号,而这个账号的类型比较复杂,整理如下:
1、个人版 99美元
可以上架,上架前设备号白名单 测试
最大支持100个设备号
申请地址:
https://developer.apple.com/programs/iOS/
2、公司版 99美元
申请DUNS码(申请地址: https://developer.apple.com/ios/enroll/dunsLookupForm.action )
可以上架,上架前设备号白名单测试
最大支持100个设备号
3、企业版 299美元
申请DUNS码(申请地址: https://developer.apple.com/ios/enroll/dunsLookupForm.action )
不能上架,不需要设备号内部自由使用
最大支持200个设备号
申请地址:
https://developer.apple.com/programs/ios/enterprise/
申请审批时长一般需要:2-4周
看看哪个适合你,然后按 申请流程 一步一步爬坑就可以了。
这个cer证书是我们平时用的最多的,生成过程网上也很多,我直接上图:
第一步 App IDs
如果需要推送,勾选,但是你还没添加推送证书会显示黄色的(如今需要单独去创建,详见下文),注册好后如图:
第二步,用你电脑的导出的CertificateSigningRequest.certSigningRequest文件,创建4个cer证书,如图:
分别是生产证书、开发证书、生产推送证书、开发推送证书,此时,app id 中的push notification 就是可用的了。
PS:如果你想用另外一台电脑开发,则需要用该电脑的CertificateSigningRequest.certSigningRequest新建证书.
第三步,
这是证书的配置文件,也要创建开发和生产两个版本,也可以把devices里的设备加入以用来测试和真机调试。
PS:如果在新电脑上开发,需要Edit旧的provisioning profile,把你新建的证书添加进去.
图中标的两个地方是在你的电脑钥匙串中的,只要在我的证书中,且证书可以打开(即有灰色三角形,基本都有),就直接右键,导出,P12个人信息文件,如果不能打开,则P12选项是灰的,此时,可以重新安装下你的证书,如果实在不行,revoke你的证书重新生成即可。
注意:导出时不要打开小三角.
有些地方需要pem文件,生成方法是你有p12文件且知道他的密码的情况下,用终端:
1、cd p12文件的目录
2、openssl pkcs12 -in filename.p12 -out filename.pem -nodes(-nodes 是空密码,如果不加这句,pem需要加4位以上的密码)
3、输入p12文件的密码
4、终端输出:MAC verified OK
本文结束。
P12, cer, provisioning profile
p12,本地私钥(实际上证书和私钥可以一起导出成p12,这里我们仅指私钥)
cer,证书,即苹果签名后的公钥
provisioning profile描述文件
一个证书对应一个私钥,也就是本地的p12,所以当多个开发者公用一个开发者账号进行开发时,开发的时候每个人的电脑上都会生成一个私钥,相应的开发者网站上都会对应一个证书,(苹果现在的限制是最多允许10个证书),同时xcode自动生成的provisioning profile中也需要包括这10个证书,这样在真机调试时provisioning profile就可以通过其中包含的证书去验证app的签名,当用自动签名时,如果xcode发现当前的证书没有在provisioning profile中,它会自动生成一个provisioning profile,使其包含当前的证书。
在配置工程进行手动签名时,签名的证书需要包含在provisioning profile中。这里设置签名的证书只是签名的第一步,真正签名的时候xcode会通过该证书找到对应的私钥进行签名。
以上是关于苹果开发证书集锦(cer、p12、pem等生成使用)的主要内容,如果未能解决你的问题,请参考以下文章