使用自签名代码证书运行不受信任的程序

Jun 28, 2020 • 预计阅读时间 1 分钟

有时候在网上下载了一些修改过的 APP,运行的时候会因为原有签名已损坏导致无法运行:

创建自签名的代码证书,名称必须是 signature

信任级别设置为“始终信任”:

在命令行里使用 codesign 对 APP 进行重新签名:

codesign --deep --force -s "signature" /Applications/Sketch.app

命令执行成功后输出:

/Applications/Sketch.app: replacing existing signature

如果遇到失败的信息:

/Applications/Sketch.app: resource fork, Finder information, or similar detritus not allowed

执行以下命令,再重新签名就可以了:

xattr -cr /Applications/Sketch.app

这个时候再运行 APP,提示就变成了:

点击“在访达中显示”,然后对 APP 点击右键,选择“打开”

现在就可以正常运行了:

在重新签名前不要运行程序,否则即使签名后还是会提示文件损坏。

Resign Shell

#!/usr/bin/env zsh

set -e

target=$1
xattr -cr "${target}"
codesign --deep --force -s "signature" "${target}"
macOS
版权声明:如果转发请带上本文链接和注明来源。

lvv.me

iOS/macOS Developer

RGB、HSL 和 HSV 互相转换

在 macOS 上使用 GNU 的 libtool