ios证书
内容提要:
安装app时提示 “无法下载应用,此时无法安装“XXX””。我遇到过多次是由于ios的app出现证书问题。本篇文章讲解用ios证书制作过程,以及每个步骤的解释。
正文:
Xcode签名至少需要2样东西:证书和配置文件。证书有效一年,通常只要不过期不会需要更新,只跟开发账户有关。配置文件则跟app的权限、绑定的设备等很多内容相关。虽然有效期同为一年,但是由于经常需要添加测试设备或者增减app的权限设置(如apple pay,app group等),经常需要更换。而工程文件里,证书是通过名字在索引的,而配置文件则是通过UUID来索引。
打包或运行真机app,需三步认证:
(1)需要证书对应的私钥来进行签名,用于标识这个App是否合法、安全、完整;
(2)需AppId,并验证Bundle ID是否与其一致;
(3)若真机测试,需确认这台iphone设备是否授权。
用ios证书打包app步骤:
(1)在mac的钥匙串中,生成.certSigningRequest文件(即CSR文件);
解释:
keychain生成一个包含开发者身份信息的CSR(Certificate Siging Request)文件,同时,KeyChain Access|Keys中新增一对Public|Private Key Pair。
private key始终保存在Mac OS的Keychain Access中,用于签名对外发布的APP;
public key随证书(随provisioning profile,随APP)散布出去,对APP签名进行校验认证。
(2)在apple的开发者网站上,使用.certSigningRequest文件,生成.cer文件;
解释:
Apple证书颁发机构WWDRCA(Apple Worldwide Developer Relations Certificate Authority)将使用private key对CSR中的public key和一些身份信息进行加密生成数字证书(ios_development.cer),并记录在案(Apple Member Center)。
(3)下载.cer文件到MAC,双击安装证书。然后在keychain access中看到证书,此keychain里的证书,可右键导出成p12;
解释:
除了下载.cer文件到MAC上双击安装证书,还可以在Xcode中添加开发者账号自动同步证书和[生成]配置文件。
证书安装成功后,keychain Access|keys ——》 公钥
keychain Access|certificates ——》 私钥(即ios_development.cer文件)
certificate在Xcode中的位置:Xcode Target | Build Setting |Code Signing | Code Signing Identity 下有 Identities from profile
(4)使用appid和.cer文件生成.mobileProvision文件;
解释:
Xcode将配置文件provisioning profile 放在目录 ~/Library/MobileDevice/Provisioning Profiles下。
(5)用p12和.mobileprovision打包;
上面提到的文件的关系可以用下图表示:

(https://github.com/SheronLv/Images/tree/master/mobileProfile)
ios证书的更多相关文章
- iOS证书失效
iOS证书突然失效 今早上班打包直接报错,错误如图 根据错误信息到“钥匙串”里面看了一下证书,证书都莫名其妙的失效了,昨天还是好好的. 重新去钥匙串从证颁发中心获取证书,然后登陆开发者账号重新申请证书 ...
- IOS证书/私钥/代码签名/描述文件
1. 相关资源 (1) 钥匙串程序(常用工具->钥匙串),用于创建证书请求.安装证书.导出私钥等 (2) IOS开发中心:https://developer.apple.com/de ...
- iOS证书申请详细流程
一.事前准备 1.1 准备苹果帐号 首先您需要有一个苹果的开发者帐号,一个mac系统.如果没有帐号可以打开申请加入苹果的开发者计划.如何申请网上有详细的介绍,在此不多做介绍. 如果您已经有了一个帐号, ...
- iOS 证书申请和使用详解(详细版)
对于iOS开发者来说,apple开发者账号肯定不会陌生.在开发中我们离不开它.下面我简单的为大家分享一下关于iOS开发中所用的证书相关知识. 第一部分:成员介绍 1.Certification(证书) ...
- iOS 证书调试的理解(Personal)
证书签名 证书:众所周知,我们申请一个Certificate之前,需要先申请一个Certificate Signing Request (CSR) 文件,而这个过程中实际上是生成了一对公钥和私钥,保存 ...
- 阐明iOS证书和provision文件
译:阐明iOS证书和provision文件 许多iOS开发人员都会和你说在iOS开发很困惑的问题之一,将app真正运行在真实的设备(iPhone iPad而不是模拟器),因为所有的这些都会涉及从苹果获 ...
- 真机测试---iOS证书(.p12)和描述文件(.mobileprovision)
iOS证书和描述文件: 证书类型 使用场景 开发(Development)证书和描述文件 用于开发测试,在starain中打包后可在真机环境通过Safari调试 发布(Distribution)证书和 ...
- (转)iOS 证书、密钥及信任服务
iOS 证书.密钥及信任服务 ——翻译自Apple Reference<Certificate,Key,and Trust Services Programming Guide> 本章描述 ...
- iOS 证书与签名 解惑详解
iOS 证书与签名 解惑详解 分类: iPhone2012-06-06 19:57 9426人阅读 评论(1) 收藏 举报 iosxcodecryptographyappleiphone测试 目录 ...
随机推荐
- c# windows service
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 调用WebServiceWebService提示The maximum string content length quota (8192) has been exceeded while reading XML data的解决办法
在web.config中,bindings节点下,对应的服务名称中,原本可能是自动折叠的“/>”,需要改成手动折叠的</binding>,然后在中间加上<readerQuota ...
- 生成CSV文件后再将CSV文件导入到mysql
1.生成CSV jar包:http://pan.baidu.com/s/1xIL26 String csvFilePath = "d:\\test.csv"; CsvWriter ...
- BZOJ3925: [Zjoi2015]地震后的幻想乡
Description 傲娇少女幽香是一个很萌很萌的妹子,而且她非常非常地有爱心,很喜欢为幻想乡的人们做一些自己力所能及的事情来帮助他们. 这不,幻想乡突然发生了地震,所有的道路都崩塌了.现在的首要任 ...
- 【C语言】06-基本数据类型
C语言有丰富的数据类型,因此它很适合用来编写数据库,如DB2.Oracle都是C语言写的. C语言的数据类型大致可以分为下图中的几类: 回到顶部 一.变量 跟其他语言一样,C语言中用变量来存储计算过程 ...
- nodejs 更新最新版本
sudo npm cache clean -f sudo npm install -g n sudo n stable
- KMS错误代码收集
Q:KMS认证时,错误讯息代码0x80070005? A:-0x80070005:存取遭拒.要求的动作要求较高的权限. -这个错误讯息,代表您在执行命令提示字元(cmd)时,没有以系统管理员的身份执行 ...
- linux查看时间和修改时间
查看当前时间,date -R 设置时间 date -s 例如当前时间2014年11月3日17:22:48 date -s 11/3/2014 date -s 17:22:48 先设置日期后设置具体时间 ...
- DS实验题 Inversion
题目: 解题过程: 第一次做这题的时候,很自然的想到了冒泡和选择,我交的代码是用选择写的.基本全WA(摊手). 贴上第一次的代码: // // main.cpp // sequenceschange ...
- 如何使用Xcode分析调试在真机运行的UE4 IOS版游戏
写本文的是因为UE4 官方文档虽然也有,但主要讲的是是用UE4Editor把游戏打成一个IPA包的形式发布的方法 而对于想通过Xcode分析UE4的渲染流程来学习或优化的朋友,那官方文档的资料还是不够 ...