iOS签名机制的作用
保证安装到用户手机上的APP都是经过Apple官方允许的
不管是真机调试,还是发布APP,开发者都需要经过一系列复杂的步骤
- 1.生成CertificateSigningRequest.certSigningRequest文件
- 2.获得ios_development.cer\ios_distribution.cer证书文件
- 3.注册device、添加App ID
- 4.获得*.mobileprovision文件
App开发到安装到用户手机涉及到这三大块
iOS签名机制 – 流程图
- Apple后台相当于CA认证机构,它用来生成证书
- 证书里面最重要的东西是开发者Mac的公钥,证书的存在就是防止中间人攻击
- mobileprovision里面就是证书,AppID ,devices,entitlements和签名等信息
- 最终通过Apple公钥从证书中验证签名,获取到Mac公钥,用Mac公钥验证ipa安装包
.certSigningRequest文件– Mac公钥
.cer文件– 利用Apple私钥(CA),对Mac公钥j生成了数字签名
.mobileprovision– 利用Apple私钥(CA),对[.cer证书+AppID+devices+entitlements]进行数字签名
如果APP是从AppStore下载安装的,里面是没有mobileprovision文件的
大概流程图