【转】iOS开发者账号和证书

原文网址:http://www.jianshu.com/p/8e967c1d95c2

从Xcode7之后,苹果支持了免证书调试,但是若是需要调试推送功能,或者需要发布App,则需要使用付费的开发者账户。
证书的配置过程,网上的教程很多、也很详细,对照步骤一步一步来,一般都可以配置成功。
本文主要探索这些步骤背后的机理,以及每一步骤所达到的目的。

本文主要内容有:

  1. 证书配置一般步骤
  2. 每一步骤背后的机理

证书配置一般步骤

1. 钥匙串访问 -> 生成CSR文件 
2. 开发者中心 -> Certificates -> add -> iOS App Development -> 上传CSR文件,生成cer证书文件
3. 下载并安装证书文件
3.1. 若上一步中的证书不能识别授权方(此证书是由未知颁发机构签名的),可以下载并安装AppleWWDRCA.cer证书来解决
4. 添加App IDS
5. 添加设备UUID
6. Provisioning Profiles -> add -> 依次选择App ID、certificate、devices,生成描述文件
7. 安装描述文件
8. 真机调试程序,会弹出"codesign"想要使用您的钥匙串中的密钥"xxxx"进行签名,点击允许,可以进行真机调试

每一步骤背后的机理

1. 钥匙串访问 -> 生成CSR文件 
# Mac钥匙串中生成一对密钥,包含公钥和私钥,可选中登录&密钥查看。
# CSR文件中包含用户的公钥和邮箱信息
2. 开发者中心 -> Certificates -> add -> iOS App Development -> 上传CSR文件,生成cer证书文件  
# WWDR使用CA的密钥对CSR文件进行签名认证,确认这个公钥是属于此开发者账号的
3. 下载并安装证书文件
# 此时的证书是CA加密后的用户公钥和用户信息
3.1. 若上一步中的证书不能识别授权方,可以下载并安装AppleWWDRCA.cer证书来解决
# 不能识别的原因是因为本机没有CA的公钥,不能对签名后的证书进行验证  
[https://developer.apple.com/certificationauthority/AppleWWDRCA.cer]
# 证书遵循非对称加密中的“私钥签名 - 公钥验证”
# 所以需要下载CA的公钥进行验证
4. 添加App IDS  
# 标识App的bundle ID
5. 添加设备UUID
# 标识那一台iPhone或者iPad
6. Provisioning Profiles -> add -> 依次选择App ID、certificate、devices,生成描述文件
# 真机调试时,Xcode会将描述文件打包入App,描述文件中包含信息的作用
7. 安装描述文件
# 描述文件被添加到~/Library/MobileDevice/Provisioning Profiles路径下
# XCode在编译的时候会自动搜索此目录
8. 真机调试程序,会弹出"codesign"想要使用您的钥匙串中的密钥"xxxx"进行签名,点击允许,可以进行真机调试
# 打包app的时候,Xcode会使用用户的私钥进行签名



文/HonglingHe(简书作者)
原文链接:http://www.jianshu.com/p/8e967c1d95c2
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

posted on   wi100sh  阅读(3623)  评论(2编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
历史上的今天:
2015-05-19 MFC记录

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示