消费者都清楚ios的APP只有从苹果商店才可以下载,而ios系统的开发者便是苹果公司,因此苹果公司能在所有ios系统中统一所有,这就意味着在ios系统中内置一个公钥A,与安卓系统不同,它不能随意装置任何应用。苹果这样的行为是苹果公司拥有绝对的管理权!下面看看 小编是怎么说的吧!
二、iOS APP签名角色
角色 密钥
Mac电脑公钥M、私钥M
苹果服务器私钥A
iPhone手机公钥A
三、请求证书的过程
iOS 开发者需要在苹果开发者网站生成证书,其中的过程如下:MAC电脑会生成一个CSR文件(也就是我们的公钥M)发送给苹果的服务器,然后苹果的服务器接到这个公钥后用自己的私钥A对公钥M(CSR)进行一次SHA256加密,此时就生成了一个证书(包含公钥M和公钥M的HASH值) 这个过程就是签名,这个证书苹果服务器会发给你,然后下载存储到本地 ,也就是这代码签名在Mach-O文件里的Code Signature。
四、APP安装到手机的过程
Xcode 在安装APP到IPhone的时候,会用私钥M 对APP进行一次签名。签名的过程:首先对APP进行一次SHA256加密,获得APP的HASH值,在用私钥M 对HASH值进行加密就生成了一个APP签名
五、手机进行验证
首先手机里面的公钥A会对APP里面的证书进行解密,判断证书是否合法,得到公钥M以及HASH值,然后用公钥M对APP签名进行解密,判断APP是否合法
六、苹果的限制
1.苹果开发者后台有显示一个开发者最多添加100设备,限制苹果后台注册过的设备(UDID)才可以安装
2.签名只能说针对唯一一个APP
别的电脑(开发者)也想编译、安装这个App,这个时候就需要把私钥M导出成p12文件给别的开发者。因为只有你有了p12(私钥M),你才能对App进行签名。
本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/%e5%85%b3%e4%ba%8eapp%e7%ad%be%e5%90%8d%e7%9a%84%e8%af%a6%e8%a7%a3%ef%bc%81%e5%85%b3%e4%ba%8eios%e7%b3%bb%e7%bb%9f%e7%9a%84%e7%9b%b8%e5%85%b3%e7%9f%a5%e8%af%86%ef%bc%81.html
郑重声明:
本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
我们不承担任何技术及版权问题,且不对任何资源负法律责任。
如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。
如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!