Maybe is the most quickly codesign alternative for iOS12+ in the world, cross-platform ( Linux & macOS ), more features.
If this tool can help you, please don't forget to star me. :)
You must install openssl library at first.
brew install openssl
and then (attention to replace your openssl version)
g++ *.cpp common/*.cpp -lcrypto -I/usr/local/Cellar/openssl/1.0.2s/include -L/usr/local/Cellar/openssl/1.0.2s/lib -O3 -o zsign
yum install openssl-devel
and then
g++ *.cpp common/*.cpp -lcrypto -O3 -o zsign
I have already tested on macOS and Linux, but you also need unzip and zip command installed.
Usage: zsign [-options] [-k privkey.pem] [-m dev.prov] [-o output.ipa] file|folder
options:
-k, --pkey Path to private key or p12 file. (PEM or DER format)
-m, --prov Path to mobile provisioning profile.
-c, --cert Path to certificate file. (PEM or DER format)
-d, --debug Generate debug output files. (.zsign_debug folder)
-f, --force Force sign without cache when signing folder.
-o, --output Path to output ipa file.
-p, --password Password for private key or p12 file.
-b, --bundleid New bundle id to change.
-n, --bundlename New bundle name to change.
-e, --entitlements New entitlements to change.
-z, --ziplevel Compressed level when output the ipa file. (0-9)
-l, --dylib Path to inject dylib file.
-w, --weak Inject dylib as LC_LOAD_WEAK_DYLIB.
-i, --install Install ipa file using ideviceinstaller command for test.
-q, --quiet Quiet operation.
-v, --version Show version.
-h, --help Show help.
./zsign demo.app/execute
./zsign -k privkey.pem -m dev.prov -o output.ipa -z 9 demo.ipa
./zsign -k dev.p12 -p 123 -m dev.prov -o output.ipa demo.app
./zsign -f -k dev.p12 -p 123 -m dev.prov -o output.ipa demo.app
./zsign -k dev.p12 -p 123 -m dev.prov -o output.ipa -l demo.dylib demo.ipa
./zsign -k dev.p12 -p 123 -m dev.prov -o output.ipa -b 'com.tree.new.bee' -n 'TreeNewBee' demo.ipa
./zsign -l "@executable_path/demo.dylib" demo.app/execute
./zsign -w -l "@executable_path/demo.dylib" demo.app/execute
If you have xmake installed, you can use xmake to quickly compile and run it.
xmake
xmake run zsign [-options] [-k privkey.pem] [-m dev.prov] [-o output.ipa] file|folder
xmake install
xmake install -o outputdir
binary: outputdir/bin/zsign
docker build -t zsign https://github.com/zhlynn/zsign.git
Mount current directory (stored in $PWD) to container and set WORKDIR to it:
docker run -v "$PWD:$PWD" -w "$PWD" zsign -k privkey.pem -m dev.prov -o output.ipa -z 9 demo.ipa
If input files are outside current folder, you will need to mount different folder:
docker run -v "/source/input:/target/input" -w "/target/input" zsign -k privkey.pem -m dev.prov -o output.ipa -z 9 demo.ipa
zsign is completely free. Please mark the source of zsign in your commercial product if possible.
You can unzip the ipa file at first, and then using zsign to sign folder with assets.
At the first time of sign, zsign will perform the complete signing and cache the signed info into .zsign_cache dir at the current path.
When you re-sign the folder with other assets next time, zsign will use the cache to accelerate the operation. Extremely fast! You can have a try!:)
Content type
Image
Digest
Size
3.9 MB
Last updated
over 6 years ago
docker pull lentin/zsign