Skip to main content

iOSReSignApp

对'.app/.ipa'文件,进行重签名;
注意:仅支持 Python3;

安装 Install


pip3 install iOSReSignApp

CLI 使用说明

iosresignapp -h 

Python Modules 使用说明

from iosresignapp import resign

app_path = "~/Desktop/hello.app"
mobileprovision_path = "~/Desktop/hello.mobileprovision"

# 自动检测mobileprovision文件 sign信息+entitlements信息
resign(app_path, mobileprovision_path)

# is_show_ipa: 重签完成后,使用Finder打开ipa文件所在目录
resign(app_path, mobileprovision_path, is_show_ipa=True)

# 到系统路径(~/Library/MobileDevice/Provisioning Profiles),查找"Name"属性为"dev-hello"的最新的mobileprovision文件
resign(app_path, "Name:dev-hello")

# 到系统路径(~/Library/MobileDevice/Provisioning Profiles),查找"UUID"属性为"a4adb1bd-948f-1234-5678-79628e8ce280"的最新的mobileprovision文件
resign(app_path, "UUID:a4adb1bd-948f-1234-5678-79628e8ce280")

# 使用是在的sign和entitlements信息重签名
entitlements_path = "~/Desktop/entitlements.plist"
sign = "40位长签名证书的SHA1字符串,例如:ABC5F4F03263A3A29F0BC84910303364E0123456"
resign(app_path, mobileprovision_path, sign=sign, entitlements_path=entitlements_path)

Example CLI:

iosresignapp -h 

usage: 对'.app/.ipa'文件,进行重签名 [-h] -m MOBILEPROVISION_INFO [-s SIGN]
                            [-e ENTITLEMENTS_PATH]
                            [--re-suffix-name RE_SUFFIX_NAME]
                            [-o OUTPUT_IPA_PATH] [-q] [-S]
                            app_path

positional arguments:
  app_path              '.app/.ipa'文件路径

optional arguments:
  -h, --help            show this help message and exit
  -m MOBILEPROVISION_INFO, --mobileprovision MOBILEPROVISION_INFO
                        mobileprovision文件路径,或者Name属性,或者UUID属性
  -s SIGN, --sign SIGN  (可选)签名证书的 SHA1或者name
  -e ENTITLEMENTS_PATH, --entitlements-path ENTITLEMENTS_PATH
                        (可选)entitlements环境plist文件
  --re-suffix-name RE_SUFFIX_NAME
                        (可选)重签名后的文件名后缀,如果设置了'--output-ipa-
                        path',此选项无效,默认为'resign'
  -o OUTPUT_IPA_PATH, --output-ipa-path OUTPUT_IPA_PATH
                        (可选)ipa文件输出路径,不传此值则输出到.app同级目录下
  -q, --quiet           是否隐藏print信息
  -S, --show-ipa        是否打开Finder显示最终的ipa文件

注意

重签名时,需要使用 Keychain(钥匙串)里的证书,这时候就有2个点要注意:
1.证书所在的钥匙串(一般为登录钥匙串)必须要被解锁(也可以通过security来解锁);
2.证书首次被使用时,会有授权弹框提示,这是需要手动确认(可以通过security导入证书到钥匙串,解决授权弹框问题);

待完成的功能

  • 检测.app文件里可执行文件是否已经 加壳/砸过壳;
  • 优化codesign命令输出的log信息;
  • 支持App的扩展,例如watch, today等;
  • 支持修改更多Info.plist的参数;
  • 支持换图标icon;
  • 支持在图标上版本号等额外信息;
  • 屏蔽:读取info.plist信息时的错误输出;

公司招聘:

欧科云链招募新同学:
可分布式居家办公,行业龙头,高薪资,年终奖优越,拒绝加班,1075工作制,公司提供团建费每人每周200元,还提供各种福利;
各地同学均可在家办公(拿北京薪资+社保,在老家工作+生活),也可在北京公司内(海淀上地)办公;
支持远程 线上面试;
web前端、后端、移动端均在招人,欢迎加入团队~
简历可发送至:wshw333@gmail.com
微信搜索“shede333sw”咨询岗位详情;

移动端招聘详情如下:

iOS工程师任职要求:
1.本科以上学历,可使用英文交流者加分;
2.三年以上的iOS平台研发经验,良好的代码编写规范。有已上线App开发经验加分,有跨平台开发经验加分;
3.精通Object-C/Swift语言,熟悉账户Xcode等开发佛能根据,熟练掌握使用iOS SDK,熟悉Go、Python、Ruby语言加分;
4.有高性能客户端编程经验,有性能调优经历加分;
5.熟悉iOS主流开源框架,并学习、研究过实现原理和源码;

Android工程师任职要求:
1.本科以上学历,可使用英文交流者加分;
2.三年以上Android开发经验;
3.熟悉Android常用控件的使用并理解其原理;
4.熟悉Android Framework原理,阅读过Android源代码者优先;
5.对java、Kotlin、基本数据结构、计算机网络有较为深入的了解;

Metadata

Release files for iOSReSignApp 1.5.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iOSReSignApp 1.5.8
File Size Uploaded Provenance Actions
iOSReSignApp-1.5.8.tar.gz 10.5 kB Without provenance Details for iOSReSignApp-1.5.8.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for iOSReSignApp 1.5.8
File Interpreter ABI Platform Actions
iOSReSignApp-1.5.8-py3-none-any.whl Python 3 none any Details for iOSReSignApp-1.5.8-py3-none-any.whl

Total release size: 22.6 kB

Release files / iOSReSignApp-1.5.8.tar.gz

Download URL iOSReSignApp-1.5.8.tar.gz
Size 10.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2db2c830f0ae5a3d6f3639e43a81dd5ccfb803f8e0bd5b6ef953adf1eef0498c
BLAKE2b-256 checksum
How to use checksums
429071fca0a570675aa28a819ba3c2a8eb5615c553ff387cfe63f1e1acb9ad57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.10

Release files / iOSReSignApp-1.5.8-py3-none-any.whl

Download URL iOSReSignApp-1.5.8-py3-none-any.whl
Size 12.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1d8dd1fff5911f56dc8e13dfab53896dc45a75db627346f455267f7b93a252d8
BLAKE2b-256 checksum
How to use checksums
3fe042dcf61f9962610ca7c3b920b7c016b8018c822dd39dc3bdbd30ed801a32
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.10

Security for iOSReSignApp 1.5.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page