当前位置: 网站首页  >> ios/苹果动态  >> 苹果动态  >> 查看详情

超级签名的原理大家知道多少?

时间:2019-10-24 15:22:58 作者: 苹果动态

  我们大家知道签名,前面小编也是介绍了很多关于苹果签名,但是小编很少说到超级签名。超级签名的原理大家知道多少?接下来跟随ipa签名小编来详细的了解一下吧:
 

 

  签名原理

 

  签名原理其实就一句话,使用了苹果提供给开发者的Ad-Hoc分发通道,把安装设备当做开发设备进行分发。

 

  既然签名用是 Ad-Hoc ,那么 Ad-Hoc 所具有的优劣势也一并继承了下来:

 

  优点:

 

  直接分发,安装即可运行,不需要用户做企业证书的信任操作

 

  目前稳定,不会有证书吊销导致的业务风险(后续苹果政策风险非常高)

 

  缺点:

 

  单开发者账号的iPhone设备数量只有100个,导致分发成本非常高

 

  开发者账号需要预先写入安装设备的UDID,在工具链不通的情况下,获取用户的UDID相对困难和繁琐,而且手动写入UDID不存在商用可行性,当然目前这个缺点被解决了

 

  整体架构

 

  接下来我们就看看整套机制是如何进行的:

 

  在这里插入图片描述

 

  1.设备安装描述文件后,会向服务器发送设备的UDID。

 

  2.服务器收到UDID后,将UDID注册到某个开发者账号下。

 

  3.再生成签名用的描述文件,给IPA签名。

 

  4.然后iPA传Server,使用itms-services方式让用户下载。

 

  Apple Developer Center 自动化工具

 

  接下来的关键点就是如何在获取到用户的UDID之后,秒级完成注册新的开发者设备+更新Provisioning Profile的。 这里我们需要借助开源工具(Spaceship):

 

  技术细节

 

  使用配置文件获取UDID

 

  苹果公司允许开发者通过IOS设备和Web服务器之间的某个操作,来获得IOS设备的UDID(包括其他的一些参数)。这里的一个概述:

 

  1.在你的Web服务器上创建一个.mobileconfig的XML格式的描述文件;

 

  2.用户在所有操作之前必须通过某个点击操作完成.mobileconfig描述文件的安装;

 

  3.服务器需要的数据,比如:UDID,需要在.mobileconfig描述文件中配置好,以及服务器接收数据的URL地址;

 

  4.当用户设备安装描述文件后,设备会回调你设置的URL,如果你的URL返回302跳转的话,Safari浏览器会跳转到你所给的地址;

 

  5.mobileconifg写法


回到顶部