如何解决将校验和文件添加到我的macOS公证应用程序捆绑包中
我想检测是否有人更改了我的macOS应用程序可执行文件。 我不会依赖Codesign,因为正如我在网络上看到的那样,即使Apple进行了公证,许多应用程序还是被破解了。我知道这不能保证最高的安全性,但是无论如何我都会添加此自定义保护。
A)如果在将应用程序存档后(在xcarchive软件包中),我在捆绑包的Resources文件夹中添加了校验和文件(为时过晚)。由于操作,该应用将无法启动。我因“终止原因:命名空间CODESIGNING,代码0x2”而崩溃。
B)如果我在对应用程序进行了公证后添加或修改了校验和文件,同样,它将无法启动。
C)如果在构建阶段,在“运行副本捆绑资源”阶段之前用shell脚本修改校验和资源文件,则校验和是错误的,因为此时可执行文件的文件大小和文件修改日期不同
那么,将我自己的校验和文件添加到我的应用程序包中的最佳方法是什么? 我运行macOS 10.15.6和XCode 11.5,然后为macOS 10.3 / 10.5编译我的64位应用程序。
解决方法
如果我理解正确,您是在尝试验证您的应用程序是否与您交付时一样?并且您担心协同设计还不够,因为它可能会被“破解”?
我不相信这可以通过使用任何类型的校验和来解决。任何可能危及协同设计的事情,也可能危及您的校验和。
我会转而查看新的 Apple Attestation API。这旨在允许应用程序验证它是否在 Apple 硬件上运行,并且是代码签名版本。 (修改和签名的应用程序会失败——它是由不同的密钥共同签名的)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。