我想從已使用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