Tôi muốn xóa chữ ký số khỏi ứng dụng Mac đã được ký bằng mã hiệu. Có một tùy chọn không có giấy tờ để codesign, --remove-signature, mà theo tên của nó có vẻ là những gì tôi cần. Tuy nhiên, tôi không thể làm cho nó hoạt động được. Tôi nhận ra nó không có giấy tờ, nhưng tôi thực sự có thể sử dụng chức năng này. Có lẽ tôi đang làm gì đó sai?lỗi? in codesign --remove-signature feature
codesign -s MyIdentity foo.app
công trình bình thường, ký kết hợp ứng dụng
codesign --remove-signature foo.app
không hoạt động đĩa trong vài giây, sau đó nói
foo.app: invalid format for signature
và foo.app đã phát triển đến 1,9 GB !!! (Cụ thể, đó là tệp thực thi trong foo.app/Contents/Resources/MacOS tăng từ 1,1 MB đến 1,9 GB.)
Điều tương tự cũng xảy ra khi tôi cố ký/hủy công cụ hỗ trợ nhị phân thay vì .app.
Bất kỳ ý tưởng nào?
Bối cảnh: Đây là ứng dụng của riêng tôi; Tôi không cố gắng để đánh bại bảo vệ bản sao hoặc bất cứ điều gì như thế.
Tôi muốn phân phối ứng dụng đã ký để mỗi lần cập nhật ứng dụng sẽ không cần sự chấp thuận của người dùng để đọc/ghi các mục nhập của ứng dụng trong Keychain. Tuy nhiên, một số người cần sửa đổi ứng dụng bằng cách thêm thư mục của riêng họ vào/Tài nguyên. Nếu họ làm điều đó, chữ ký sẽ không hợp lệ và ứng dụng không thể sử dụng các mục nhập Keychain của riêng nó.
Ứng dụng có thể dễ dàng phát hiện nếu tình huống này đã xảy ra. Nếu sau đó ứng dụng có thể xóa chữ ký của nó, mọi thứ sẽ ổn. Những người thực hiện sửa đổi này sẽ cần phải cung cấp cho phép ứng dụng đã được sửa đổi, hiện tại chưa được ký để sử dụng Keychain, nhưng điều đó tốt với tôi.
Các người sử dụng có thể có nhiều bản sao của ứng dụng với các tập tin phụ khác nhau, và có thể di chuyển các ứng dụng xung quanh. Nếu các tệp phụ của họ nằm trong ứng dụng, tất cả đều hoạt động. Nếu không, tôi phải bằng cách nào đó theo dõi các tập tin khác nhau dựa trên vị trí của ứng dụng, và sau đó nếu ứng dụng di chuyển nó ngừng hoạt động. Hoàn toàn là một mớ hỗn độn. – user532477