linux运行ipa软件下载,超级签名:绕过苹果商店安装APP的方式--linux版本 ,技术全揭秘...

一、何为超级签名:

即使用苹果个人开发者账号用Ad_Hoc方式建立分发。

1、优缺点

优点:可以利用web直接进行分发,用户点击即可。无需用户进行企业信任;相对企业签而言稳定,但也并不是百分百稳定。仍然面临封号风险。

缺点:价格昂贵,由于个人开发者账号设备数量有限只有100台。导致分发成本非常高。国内688元/一年/100台设备。

二、整体流程

1、通过web向用户发送描述文件,让用户安装描述文件从而获取用户的UDID,将获取到的UDID 发送给服务器。

2、服务器自动化登陆开发者账号,注册UDID,同时新建带此UDID的mobileprovision。下载mobileprovision和证书对IPA进行签名。

3、使用itms-services方式让用户下载。

三、技术核心

1、获取UDID

在web服务器上创建一个XML 的描述文件。配置好服务器接收用户的URL地址。当用户安装好描述文件后。会回调你设置的url。

PayloadContent

URL

#requestURL#/signature/udid/#appid#/post

DeviceAttributes

UDID

IMEI

ICCID

VERSION

PRODUCT

PayloadOrganization

#requestURL#

PayloadDisplayName

查询设备UDID

PayloadVersion

1

PayloadUUID

超级签名

PayloadIdentifier

dev.skyfox.profile-service

PayloadDescription

本文件仅用来获取设备ID

PayloadType

Profile Service

2、自动注册UDID 及生成 mobileprovision

此处即是超级签名重点,写到这了不得不感谢一下 Spaceship 了。

Spaceship公开了Apple Developer Center的API,且能在极短时间内进行请求和返回。而且还预留接口。我们可以通过写ruby脚本在实现自动化注册UDID新建描述文件。

#登陆飞船

spaceship = Spaceship::Launcher.new(account, password)

#添加新设备号

device = spaceship.device.create!(name:udidname, udid:udid)

#添加描述文件

profile = spaceship.provisioning_profile.development.create!(bundle_id: bundleID,certificate: certs,name: "profilename")

#下载描述文件

aFile = File.write("profile.mobileprovision", profile.download)

以上为 Spaceship 部分ruby调用代码。更具体的方法可以查看Spaceship 的开发文档。

3、签名

如果在mac服务器下,将会有很多可以签名的开源工具。然而在linux下,少之又少。

可以自行开发,也可以使用开源工具,isign。

isign工具是为数不多的可以在linux下可以签名的工具。但是此工具对ipa的支持并不完善。有些包会无法签名报错。这个就需要各位自行探索了。

4、分发

重签名后获得的包可以使用itms-services进行分发。

写在最后:

目前很多签名商都会在上传的包内注入动态库,以实现获取安装,安装、点击的数据以及控制app闪退,时间锁等。更有甚者直接窃取用户数据。如果仅仅想要自行分发的话,建议还是自行部署一套吧。

IOS技术开发交流群:685955170

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值