苹果的双重验证主要是指以下两次签名验证:
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
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。