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

(一) 安全基础:

  1.非对称加密:

  

  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

  

  

最新文章

  1. Js IP转数字
  2. AngularJS 验证
  3. ClassPathXmlApplicationContext的启动
  4. java基础之hashmap
  5. MODULE_DEVICE_TABLE
  6. [原创]obj-c编程16:键值编码(KVC)
  7. vld(Visual Leak Detector) 内存泄露检测工具
  8. VS2013调试的时候出现 “检测到在集成的托管管道模式下不适用的 ASP.NET 设置的解决方法”
  9. 找礼物(find)
  10. 201521123121 《Java程序设计》第12周学习总结
  11. python3 - 文本读音器
  12. JS输入框统计文字数量
  13. DAPP 开发直通车-如何基于NEL 轻钱包来开发DAPP
  14. python3集合练习(set)
  15. Python——Radiobutton,Checkbutton参数说明
  16. Java正则表达式易错题
  17. Android基础之6.0系统以上的权限分配
  18. Luogu 1764 翻转游戏 - 枚举 + 搜索
  19. 【转】【Python】Python多进程与多线程
  20. [Openwrt 项目开发笔记]:Samba服务&vsFTP服务(四)

热门文章

  1. Toast问题记录:This Toast was not created with Toast.makeText()
  2. es6 export、import
  3. es6 repeat() 原字符串重复
  4. 一维数组解最长上升公共子序列(LCIS)
  5. 2017 [六省联考] T5 分手是祝愿
  6. 某考试 T2 bomb
  7. webstorm 2016 激活破解
  8. 【spring mvc】后台spring mvc接收List参数报错如下:org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Specified class is an interface
  9. xamarin.IOS App闪退日志----crash
  10. 织梦dedecms 去掉后台登陆验证码的方法