如何利用IPA/iOS/苹果签名工具在Mac和win电脑上进行重签名

Posted 解决者signer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何利用IPA/iOS/苹果签名工具在Mac和win电脑上进行重签名相关的知识,希望对你有一定的参考价值。

推荐使用766signer这个工具,他是一款IPA/iOS/苹果重签名工具,支持windows电脑和MacOS苹果电脑,并且带有大量实用功能。

下载:wwa.lanzoui.com/b010l6c2d

软件特性与功能:

1.支持随意变更:图标icon,BundleID 、应用名称、版本号等信息且不影响包体。

2.应用加锁:可自由设置到期时间,选择到期后app将无法进入。

3.应用去锁:选择后系统会自动或手动去除您ipa文件里的第三方外部注入库。

4.完全重签:使用后会强制将当前ipa包内的BundleID修改为签名描述文件对应的BundleID,非常适合用于app store或者testflight上架。

5.安装限额:可自由设置安装数量,若超出设置的数量,则超出之后安装的新用户会闪退,老用户不影响。

6.证书检测:免费检测证书状态,快速知晓是否掉签,并告知掉签的原因是被封还是人为撤销。

7.检测偷包:本工具可检测ipa包内是否存在阻止时间锁生效的特性,从而帮您判断哪些包存在偷包嫌疑。

8.大包支持:支持10G以内所有ipa,可选择适合自己的压缩方式。

 



 

苹果开发者账号那些事儿

一、关于证书

苹果使用密文签名技术来验证App的合法性,不管是iOS应用还是Mac应用都需要相应的签名证书来作为测试或发布App用。这里主要谈谈iOS的证书,当然,Mac的证书也基本类似。

在开发iOS应用的时候,我们需要签名证书(开发证书)来验证,并允许我们在真机上对App进行测试。另外,在发布App到App store的时候,我们也需要证书(发布证书)来做验证。那么什么是签名证书,如何获取签名证书,下面听我慢慢道来。

首先,证书(Certificate)是用来证明某一件事是否成立的,好比拿到的获奖证书,是证明参加比赛并获奖的凭证。类似,在iOS开发中,用证书来证明你是否具有某些权限或者能力来做某事。代码签名验证允许我们的操作系统来判断是谁对App进行了签名,在安装了Xcode后,Xcode会在项目编译期间使用你的代码签名验证,这个验证由一个由Apple认证过的公钥-私钥对组成,私钥存储在你的钥匙串中(Mac本地,在系统实用工具中),公钥包含在证书(Certificates)中,证书在本地钥匙串和开发者账号中都有存储,这种公钥-私钥验证授权的方式在很多地方都有使用到,比如Git中的SSH协议也是通过这种方式来确认访问权限。另外,还有一个我们可以叫做媒介证书的证书来确保我们的证书(Certificates)是经过授权而发布的。如下图所示:

技术分享

当安装好Xcode时,媒介证书(Intermediate Certificate)就已经安装到我们的钥匙串中去了。通过在开发者账号(Developer Account)和本地(Mac)都经过验证的证书(Certificate)我们就可以利用合法的证书进行App的测试和发布了。

二、请求证书

在为App签名前,我们需要向Apple请求签名证书,前提是你已经注册了开发者计划并付费。

1、打开Xcode并进入右上角Organizer窗口,选中顶部第一个名为Devices的Tab,如下图:

技术分享

2、点击菜单栏Editor并选择Refresh from Developer Portal

3、输入开发者账号用户名和密码并点击“Log in”,如下图:

技术分享

4、完成后点击“Submit Request”按钮,此时Xcode会向开发者后台请求相应的证书,证书包括开发证书(Development)和发布证书(Distribution)。窗口如下图所示:

技术分享

5、请求完毕后,Xcode会询问是否需要导出开发者证书,选择“Export”导出。前面的介绍中我们提到过,私钥(Private key)是存储在本地的,证书(Certificate)随着公钥(Public key)存储在开发者账号后台,公钥=私钥对完成对一个开发者和一台开发Mac设备的授权,所以,当我们创建证书时就需要马上备份我们的证书,当切换Mac进行作业时,我们只需要导入我们的私钥证书即可(公钥证书在本地和开发者中心都存储有)。

技术分享

6、导出过程中会要求你对导出的证书设置密码,下次导入此证书时需要输入该密码,所以需要记住此处设置的密码。导出的证书扩展名为.developerprofile,当下次切换Mac进行开发时,,导入该证书即可。

技术分享

导入.developerprofile证书:

技术分享

三、验证证书

1、在Xcode Organizer中左侧TEAMS选项卡中可以看到两个证书显示其中,一个是开发证书(Development),一个是发布证书(Distribution),如果开发者证书验证授权成功,则在证书上的小人头像会显示绿色小钩。

技术分享

2、当请求了开发者证书后,会自动在钥匙串中(系统实用工具-钥匙串访问)显示开发证书和发布证书。当选中一个证书时,顶部的说明信息包括了证书发行商和授权信息,同样如果看到绿色打钩说明证书已经安装成功。

技术分享

3、在开发者后台查看开发证书,登陆Developer后台以后进入Certificates选项卡,分别在Development和Distribution选项卡中查看开发证书和发布证书。此时,证书的信息应该和在Xcode中一致。

技术分享

四、回顾总结

在上面的讨论中,我们介绍了签名证书以及如何请求及验证证书。在iOS开发中,总的来说主要包括两个证书,一个是开发证书(Development certificates)用来验证哪些设备能用来测试App,在开发测试阶段使用这个证书。另一个是发布证书(Distribution certificates),用来验证是否能向App store提交App审核和发布。如果是公司团队账号,发布证书能在具有发布权限的团队成员间共享。以下是官方对证书类型和名字的一个列表统计,比较详细的例举了证书类型、名字以及简要描述。

技术分享

后记:本次关于苹果开发者账号证书相关的介绍就到此结束了,不足之处望大家指正和补充。下篇将主要介绍Provisioning Profile的二三事。欢迎继续关注。

以上是关于如何利用IPA/iOS/苹果签名工具在Mac和win电脑上进行重签名的主要内容,如果未能解决你的问题,请参考以下文章

uniapp在线打包ipa - iOS篇

uniapp在线打包ipa - iOS篇

Mac OSX系统下的渗透利用工具Empyre

苹果电脑的ip地址在哪里

苹果mac系统如何查看cpu占用率?

苹果开发者账号那些事儿