Vorrei rimuovere la firma digitale da un'app Mac che è stata firmata con il codesign. C'è un'opzione non documentata per il codesign, --remove-signature, che con il suo nome sembra essere quello di cui ho bisogno. Tuttavia, non riesco a farlo funzionare. Mi rendo conto che non è documentato, ma potrei davvero usare la funzionalità. Forse sto facendo qualcosa di sbagliato?bug? in codesign --remove-signature feature
codesign -s MyIdentity foo.app
opere normalmente, firmando l'applicazione
codesign --remove-signature foo.app
fa l'attività del disco per alcuni secondi, poi dice
foo.app: invalid format for signature
e foo.app è cresciuto fino a 1,9 GB !!! (In particolare, è l'eseguibile in foo.app/Contents/Resources/MacOS che cresce, da 1,1 MB a 1,9 GB.)
La stessa cosa accade quando provo a firmare/non firmare uno strumento di supporto binario invece di un .app.
Qualche idea?
Sfondo: questa è la mia app; Non sto cercando di sconfiggere la protezione della copia o qualcosa del genere.
Desidero distribuire un'app firmata in modo che ogni aggiornamento dell'app non necessiti dell'approvazione dell'utente per leggere/scrivere le voci dell'app nel portachiavi. Tuttavia, alcune persone hanno bisogno di modificare l'app aggiungendo la propria cartella in/Risorse. In tal caso, la firma diventa non valida e l'app non può utilizzare le proprie voci del portachiavi.
L'app può rilevare facilmente se si è verificata questa situazione. Se l'app potesse rimuovere la sua firma, tutto andrebbe bene. Quelle persone che fanno questa modifica dovrebbero dare l'autorizzazione modificata, ora non firmata per usare il portachiavi, ma per me va bene.
L'utente può avere più copie della app con diversi file aggiuntivi, e possono spostare l'applicazione in giro. Se i loro file extra sono nell'app, tutto funziona. Altrimenti, devo in qualche modo tenere traccia dei diversi file in base alla posizione dell'app, e quindi se l'app si sposta smette di funzionare. Complessivamente un casino. – user532477