我想检测我的 macOS 应用程序可执行文件是否已被某人更改。我不会依赖 Codesign,因为正如我在网上看到的那样,即使经过 Apple 公证,许多应用程序也已被破解。我知道这不能保证最高的安全性,但无论如何我都会添加这种自定义保护。
A)如果我在应用程序存档后(因此在 xcarchive 包中)在捆绑包的 Resources 文件夹中添加校验和文件,则为时已晚。由于操纵,该应用程序将无法启动。我因“终止原因:命名空间代码设计,代码 0x2”而崩溃。
B)如果我在应用程序公证后添加或修改校验和文件,同样,它不会启动。
C)如果我在构建阶段使用 shell 脚本修改校验和资源文件,在“运行复制捆绑资源”阶段之前,校验和是错误的,因为此时可执行文件具有不同的文件大小和文件修改日期。
那么,将我自己的校验和文件添加到我的应用程序包中的最佳方法是什么?我运行 macOS 10.15.6 和 XCode 11.5 并为 macOS 10.3/10.5 编译我的 64 位应用程序。