CodeSign相关

  要让苹果App在真机上跑,需要私钥(PrivateKey),证书(Certificate)和描述文件(Provisioning Profile)。

(一) 安全基础:

  1.非对称加密:

  ../Art/security_asymmetric.jpg

  2.Hash码

(二) CodeSign

  打包app上传的时候,为了确保在传输过程中app内容没有被更改,需要一种验证机制,传输之前会用对整个app包进行hash算法计算得到一串hash码,再用私钥对这串hash码加密。在打包上传的时候我们需要提供一个证书,证书里面包含该私钥对应的公钥,上传到苹果那边之后他们用公钥解密之前加密的hash码,然后对比加密前和解密后的hash码,如果一样,则表示app包在传输过程中没有被改变。上传的证书在申请的时候也被苹果签名,证书包括公钥和作者或公司的一些信息,在证书的扩展里面也描述了证书的用途,比如一个用来验证签名过的邮件信息的证书是不能用来验证签名过的可执行代码。

  

 

(三) Provisioning Profile

  Provisioning准备配置应用程序设备启动使用应用程序服务过程开发的时候选择哪些设备可以运行iOS 应用程序哪些应用程序服务iOS Mac应用程序可以访问
provisioning profile会员中心下载并被包含在app包里面如果provisioning profile信息符合特定条件应用程序不会启动

  eg:TeamProfile

  ../Art/teamprovisioningprofile_2x.png

 

  

posted @ 2014-10-28 07:30  mic_yx  阅读(257)  评论(0编辑  收藏  举报