IOS应用重签名(三种方法)

终端命令(相关的一些指令)

•$security find-identity -v -p codesigning列出钥匙串里可签名的证书

•$Codesign–fs“证书串”文件名  强制替换签名

•$Chmod+x可执行文件  给文件添加权限

•$security cms -D -i ../embedded.mobileprovision 查看描述文件

•$codesign -fs “证书串” --no-strict --entitlements=权限文件.plistAPP包

•$Zip –ry输出文件 输入文件 将输入文件压缩为输出文件

用户权限

重签步骤

1.删除插件和带有插件的.app包(比如Watch)

2.对Frameworks里面的库进行重签名

3.给可执行文件 +x(可执行)权限

4.添加描述文件(新建工程,真机编译得到)

5.替换BundleID

6.通过授权文件(Entilements)重签.app包


实操一波

一、手动签名

    1、准备

        1.1、获取一个破壳的 ipa 包。

                可以通过PP助手下载越狱应用

        1.2、查看ipa包是否已经脱壳

                1.2.1、解压ipa包,进入playload文件夹,找到MachO文件

            1.2.2、在终端使用命令otool -l DingTalk | grep crypt,0是已脱壳,大于0是未脱壳(一般为1)                

        1.3、Apple Developer 开发者证书

                1.3.1、通过本地 CSR 从Apple Developer 网站申请开发者证书,安装到钥匙串。

                1.3.2、终端查看本地有效证书

                        命令:$security find-identity -v -p codesigning

    2、删除插件

        删除Plugins文件夹和Watch文件夹

    3、对所有.framework重新签名

        3.1、使用的命令

                $ codesign -fs "iPhone Developer: xxx " xxx.framework

        3.2、找到framework文件夹下所有.framework,分别使用上面的命令对其签名。

    4、描述文件(Provisioning Profile)

                描述文件包含了证书信息,App ID,具备调试、测试权限的设备,以及应用的一些功能信息等等,后缀名mobileprovision。

        4.1、使用XCode新建一个项目,选择需要使用证书。


         4.2、生成描述文件

                      然后build项目,在生成的.app中点击show in finder,接着显示包内容,找到生成的描述文件,放到ipa包->playload->xx.app包里面(MachO文件同级)

         4.3、创建entitlements.plist文件

                      查看描述文件内容,使用命令security cms -D -I embedded.mobileprovision,找到Entitlements节点,接着创建entitlements.plist文件,内容拷贝过去,最后把entitlements.plist文件拷贝到playload文件夹内(与xx.app同级)。

     5、修改xx.app包里面的info.plist中的bundleId为上面项目的bundleId

    6、对xx.app开始签名

         6.1、使用的命令

                    $ codesign -fs "iPhone Developer: xx" --no-strict --entitlements=entitlements.plist xx.app

7、生成ipa包

        7.1、使用的命令

                    $zip –ry 输出文件 输入文件 

        7.2、使用xcode或者助手安装

                    如果闪退,删除应用,先运行一遍上面创建的项目,然后在手机设置 通用 信任一下描述文件,再安装生成的ipa包。如果还闪退,请尝试下面使用xcode重签名方法。

二、使用xcode重签名

    1、重复上述1、2、3步骤,并修改info.plist

            修改info.plist中的BundleId为下面新建项目的BundleId,拷贝经过上述步骤xx.app备用

    2、使用xcode创建同名项目

    3、编译项目及替换xx.app


                使用步骤1中拷贝出来的xx.app替换上图中的xx.app    

    4、运行项目,重签名成功。

    5、生成ipa包

                成功运行项目到手机上后,一定要成功运行后,再次show in finder找到xx.app,拷贝xx.app。创建一个Payload文件夹,把xx.app放进去。


            5.1、使用的命令                

                    $zip –ry 输出文件 输入文件(Payload)

            5.2、使用xcode或者助手安装


三、使用脚本+xcode实现自动化重签名

    1、编写脚本sh


2、配置xcode运行脚本

    

    3、放置目标ipa

        把脚本放到项目同级目录下,以及创建targetApp文件夹。最后把需要重签名的IPA放到targetApp文件夹中。

    4、编译运行


至此已完成重签名,🍺🍺🍺🍺🍺🍺🍺🍺🍺🍺!

PS:此文章是一篇严肃的学术探讨类文章,仅仅用于学习研究,也请读者不要用于商业或其它非法途径上,笔者一概不负责哟~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容

  • 代码重签名 签名机制 iOS签名需要用到codesign这个命令,了解这个命令的用法可以增加我们对签名机制的了解 ...
    观星阅读 2,070评论 0 1
  • 一、越狱版应用重签名(正版的需要砸壳,这个以后介绍) 应用重签名需要以下几个步骤: 删除插件和带有插件的.app包...
    绿叶竹林阅读 1,406评论 0 0
  • 网上关于签名的脚本有很多,我找了个本人觉得比较好用的脚步iOS_resign_scripts,下载脚步里面有三个脚...
    涵元阅读 6,955评论 16 19
  • 为什么要重签名? 1、在没有源代码的情况下,你已经对某个应用进行了资源修改(比如修改了启动图或图标等)。修改完成以...
    Yochi阅读 8,534评论 9 11
  • 跟弟弟一样,从小便喜欢画画,不是去画那种很厉害的那种,就是喜欢画画动漫人物,或者去临摹一些小说人设。后来高中学业重...
    虎牙27阅读 203评论 2 1