iOS相关

iOS重签名(手动签名)

2018-05-09  本文已影响494人  不忘初心_R

1、准备工作

借助PP助手下载越狱的IPA包,一般的APP在上面都是有的。点击下载可以找到对应的ipa包。(小坑:本来连着手机,没有下载两个字,只有安装。纠结半天。。后来把手机退了就OK了)


PP助手截图
WeChat.app

利用命令查看是否破壳 (codesign -vv -d 文件名)

$ codesign -vv -d WeChat.app
已破壳

附加一张正版的执行结果图


正版

cd到app文件里面

$ cd WeChat.app/

执行命令

$ otool -l WeChat | grep crypt
执行结果

cryptid==0越狱应用 cryptid==1未越狱应用 不可用!

$ security find-identity -v -p codesigning

随便创建一个工程,选择好证书之后,连接真机编译。


工程

找到生成的app目录,show in finder -->显示包内容(内含描述文件)

2、进入正题

右键显示包内容
将所有插件和watch.app删除


插件
watch.app

对 .app文件中 Framework 文件夹中库进行重签名,(没有的跳过)

重签名命令(codesign -fs "证书" 需要签名的文件)

$ codesign -fs "iPhone Developer: xxx (4N7XH2PX6N)"  xxx.framework

注:有几个文件就要执行几遍,即对framework依次进行重签名!
下面是获取证书名字的地方


证书名字
$ chmod +x WeChat
执行后变成可执行文件
$ security cms -D -i embedded.mobileprovision
权限文件

将权限文件复制,然后在xcode中生成一个plist文件,并复制到WeChat的同目录下。如图


效果图
$  codesign -fs "iPhone Developer: xxx (4N7XH2PX6N)" --no-strict --entitlements=lc.plist WeChat.app
签名成功
$ zip -ry WeChat.ipa Payload

最后通过Xcode或者其他方式将ipa包装到自己手机就OK了。亲测可用,手动签名成功

注:很多地方需注意cd的路径位置,没有表明很清楚

第一次认真的写文章,想尽可能的写详细点。

上一篇下一篇

猜你喜欢

热点阅读