iOS应用签名的双重验证流程

苹果的双重验证主要是指以下两次签名验证:

1、iOS系统中通过内置的公钥A验证CRT证书

2、从CRT证书中取出的公钥M验证App的签名

p12 证书就是本地私钥M

描述文件:包含证书、权限文件(Entitlements - 权限开关)、设备UUID、AppID 等信息。不能修改

双重验证流程:

1、在Mac中通过钥匙串 公钥M+证书颁发机构信息 生成CSR文件

2、将CSR文件传递到苹果服务器,申请CRT证书

3、苹果服务器通过私钥A加密公钥M,生成CRT证书,并对公钥M的hash值进行数字签名(即通过RSA加密)。同时苹果还提供了描述文件

4、通过私钥M对Mach-O进行签名,生成一个App的签名,同时将描述文件、CRT证书等打包,形成一个ipa包

5、App安装到iOS设备

6、从iPhone手机中获取公钥A,通过公钥A解密CRT证书,得到公钥M

7、通过6中得到公钥M验证App的签名

作者:Style_月月
链接:https://www.jianshu.com/p/59c3977c4a0b
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

在北京的灯中,有一盏是我家的。这个梦何时可以实现?哪怕微微亮。北京就像魔鬼训练营,有能力的留,没能力的走……
原文地址:https://www.cnblogs.com/huangzs/p/14922057.html