当Mac OS X验证磁盘映像(.dmg)文件时,有谁知道幕后究竟发生了什么?有没有办法扩展或自定义程序?
编辑:我想创建一个磁盘映像,验证它是否完全应该执行的操作,仅此而已。例如,如果我分发一些管理密码的软件,恶意用户可以修改我的包以将密码发送给不合理的第三方。对于最终用户来说,功能看起来与我的程序完全相同,他们永远不会知道包被破坏了。我想在登上时执行此验证。
答案 0 :(得分:6)
据我所知,你不能修改这个程序(除非你做一些我不推荐的系统黑客攻击)。我相信它将它与内部校验和进行比较,并确保磁盘的卷标题正常。它遍历所有文件以查看是否有任何文件已损坏。
答案 1 :(得分:0)
我对dmg的理解是有限的,但据我所知,它本质上是一种特定于osx的存档格式,类似于拉链。一种选择是分发你的dmg的校验和。这不是非常有用,好像攻击者可以更改用户从您的网站下载的dmg,他们也可以修改校验和。
我相信您正在寻找的功能是代码签名。它是一项加密验证,表明应用程序自作者签名后未对其进行修改。由于您需要Apple开发人员计划的开发人员证书,因此使用它有一点障碍。
Apple的代码签名文档可以在这里找到: https://developer.apple.com/library/mac/documentation/Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html#//apple_ref/doc/uid/TP40005929-CH4-SW5