我想从已使用codesign签名的Mac应用中删除数字签名。有一个没有记录的编码签名选项,--remove-signature,它的名字似乎是我所需要的。但是,我无法让它工作。我意识到它是无证的,但我真的可以使用这些功能。也许我做错了什么?错误? in codesign --remove-signature feature
codesign -s MyIdentity foo.app
正常工作时,签署应用
codesign --remove-signature foo.app
做磁盘活动几秒钟,然后说
foo.app: invalid format for signature
和foo.app已发展到1.9 GB! (具体来说,它是foo.app/Contents/Resources/MacOS中的可执行文件,从1.1 MB增加到1.9 GB。)
当我尝试签署/取消签名二进制支持工具而不是。应用程序。
任何想法?
背景:这是我自己的应用程序;我并没有试图打败复制保护或类似的东西。
我想分发一个已签名的应用程序,这样应用程序的每次更新都不需要用户批准来读取/写入该应用程序在Keychain中的条目。但是,有些人需要通过将自己的文件夹添加到/ Resources来修改应用程序。如果他们这样做,签名变得无效,并且应用程序不能使用它自己的钥匙串条目。
该应用程序可以很容易地检测到这种情况是否发生。如果应用程序可以删除它的签名,一切都会好起来的。那些进行这种修改的人需要给已修改的,现在未签名的应用程序权限来使用钥匙串,但这对我来说很好。
的用户可能具有不同的额外文件的应用程序的多个副本,并且可以四处移动应用程序。如果他们的额外文件在应用程序中,则一切正常。否则,我必须以某种方式跟踪基于应用程序位置的不同文件,然后如果应用程序移动它停止工作。一塌糊涂。 – user532477