Molte app di app store OS X sono elencate come "app" danneggiata e non può essere aperta


11

Senza aver cambiato nulla, ora ricevo questo messaggio quando provo ad aprire l'app "Breeze" - Altre app falliscono allo stesso modo su altri Mac:

inserisci qui la descrizione dell'immagine

Ho provato a sbarazzarmi di questo messaggio reinstallandolo dall'App Store, ma non cambia nulla. Anche il riavvio e la modifica delle preferenze di sicurezza del gatekeeper non aiutano scegliendo "consenti app scaricate da qualsiasi luogo".

Che diavolo sta succedendo?


Pensi che questo possa essere correlato al mio problema ? (Ironia della sorte, oggi è il mio compleanno.)
geokavel,

Risposte:


17

Praticamente tutti sono nella tua stessa barca. La situazione è piuttosto complicata, ma questa immagine mostra alcuni dettagli dei livelli dei certificati coinvolti nella creazione di un file "ricevuta":

inserisci qui la descrizione dell'immagine

Gli ingegneri Apple hanno utilizzato un certificato contrassegnato come Non valido dopo: 11 novembre 21:58:01 2015 GMT per firmare le app scaricate per un lungo periodo quest'anno. Inoltre, uno dei certificati era firmato con l'algoritmo della firma: sha1WithRSAEncryption e sta passando a sha256WRSRSAEncryption che non è completamente supportato da tutti i sistemi operativi e gli sviluppatori.

La migliore scrittura (di molti buoni) è di Ben Toms:

In breve, uno dei tasti che compongono il wrapper utilizzato dalle app per verificare il corretto download dell'App Store è scaduto ieri. Apple ha rinnovato quel certificato, ma potrebbe essere necessario agire ora per porre rimedio a questo errore.

Stranamente, le app che Apple stesso ha creato, fanno affidamento su un'altra catena di fiducia di convalida poiché includono lo stesso certificato ormai scaduto ma ancora in esecuzione su OS X. Fondamentalmente, quelle app sembrano usare un'altra (o nessuna) convalida della ricevuta per correttezza .

Se hai dimestichezza con la riga di comando, prova a riavviare il processo che tende a queste ricevute dell'app ora obsolete:

killall -KILL storeaccountd

Se spegni il Mac, questo fa anche girare il demone degli account e dovrebbe sistemare le cose in modo da non dover scaricare nuovamente le app sul computer dopo il tempo in cui quel certificato Apple è scaduto.

A questo punto, quando tenti di eseguire l'app, ti verrà chiesto di inserire nuovamente la password una volta. In questo modo riceverai un nuovo certificato da Apple che potrebbe risolvere il problema o meno a seconda di come o se l'applicazione utilizza il file di ricevuta.

Un'altra cosa che può correggere i fallimenti dei certificati falsi è controllare le impostazioni di data / ora e quindi provare a uscire completamente dal Mac App Store. Se non riesci ancora a eseguire l'app dopo l'accesso, potresti essere costretto a eliminare l'app e a scaricarla di nuovo dopo aver verificato la tua data / ora e riavviato il sistema operativo. Assicurati di controllare i riflettori ed eliminare tutte le copie dell'app. Svuota il cestino prima di provare a ripristinare il download.

Se tutto il resto fallisce, contattare sia lo sviluppatore della tua app specifica sia il supporto Apple per assistenza potrebbe essere prudente poiché i programmi che gestiscono questa convalida e generazione della ricevuta non sono ben documentati.

Un grande ringraziamento anche a Craig Hockenberry e Paul Haddad per le grandi spiegazioni tecniche su ciò che sta accadendo qui. Senza la comunità che lavora insieme potremmo essere nell'oscurità molto più a lungo quando sorgono rotture spiacevoli come questa.


Inoltre, è un po 'doloroso per raccogliere a parte i messaggi di errore relativi alle storelegacy da CommerceKit, indenni da significativi sandboxderrori, storeassetd, storeuid, storeaccountde storelegacysegnalazioni di processo e gli errori per capire cosa è cambiato dopo il riavvio dopo il tempo di fallimento per OS X per aggiornare la ricevuta che era memorizzato nella cache del filesystem con una data di scadenza più recente. Sarebbe sicuramente bello avere un po 'di questo documentato o un interruttore da lanciare in modo da poter caricare un'app quando la prossima catena di fiducia fallisce a causa di un errore dell'utente o di una previsione insufficiente degli sviluppatori del sistema operativo.
bmike

Purtroppo questo non ha aiutato per me. Il riavvio, la reinstallazione, l'uccisione del processo sopra descritto, la verifica della data / ora e la disconnessione e il ritorno all'App Store non sono stati utili. Questo è su un Mac 10.10.5. L'apertura dal prompt dei comandi non ha aiutato neanche: $ open -a Breeze.app LSOpenURLsWithRole () non riuscito per l'applicazione /Applications/Breeze.app con errore -10810
Andrew

Grazie mille per la tua risposta. Sfortunatamente, nulla di tutto ciò aiuta. Più in dettaglio, ho provato il trucco della riga di comando, riavviato, reinserito la password, ma ricevo ancora quel messaggio. Le impostazioni di data / ora mi sembrano perfette (cosa dovrei controllare lì?) Dopo averlo reinstallato, ricevo ancora lo stesso messaggio. Qualche idea?
Corsin Pfister,

Ho appena ricevuto una telefonata con il supporto Apple e ho usato la condivisione dello schermo per provare alcune cose. Ciò includeva: Verifica della data e dell'ora, eliminazione / spostamento di alcuni elementi dalla Libreria, Riavvio, Verifica di altre app di terze parti (che si sono rivelate non interessate). Ho anche reso il ragazzo del supporto consapevole di questa domanda qui su AskDifferent. Dopo aver provato diverse cose che non hanno aiutato, ha suggerito di contattare i creatori di Breeze (cosa che farò) e mi ha dato l'ID del caso nel caso in cui volessi contattare nuovamente il Supporto Apple.
Corsin Pfister,

Ho aggiunto un altro passaggio. @CorsinPfister: verifica la presenza di più copie dell'app e l'eliminazione del cestino. Scollegherei anche l'unità Time Machine dopo aver effettuato un backup per essere sicuro al 100% che il storeaccountsdprocesso riceva una nuova ricevuta per l'app in questione. È altamente improbabile che questo sia il problema dello sviluppatore. Tutti non hanno fatto lo stesso errore ieri alle 1800 GMT. Speriamo che Apple documenterà meglio le cose in futuro.
bmike

7

Sembra che le ricevute integrate nelle applicazioni scaricate dal Mac App Store siano firmate con un certificato scaduto.

Paul Haddad di Tapbot ha sottolineato il problema all'inizio di oggi su Twitter.

https://twitter.com/tapbot_paul/status/664653066679906304

Per alcuni utenti il ​​riavvio è sufficiente per richiedere al sistema operativo di recuperare nuove ricevute dallo Store. Altri utenti trovano che viene richiesto di accedere nuovamente al Mac App Store per aggiornare le ricevute dell'applicazione. Altri sviluppatori come C-Command Software suggeriscono agli utenti di eliminare applicazioni e scaricarle di nuovo .


Questo non è tutto quello che c'è da sapere nella storia. Ho delle app che si avviano ancora anche se sono firmate con il certificato contrassegnato come non valido dopo l'11 novembre 21:58:01 2015 GMT - Xcode ad esempio funziona ancora, quindi sto scavando in ciò che può essere fatto prima dell'eliminazione e reinstallare ogni app che OS X ritiene sia ora "danneggiato".
bmike

2
Forse il sistema operativo non controlla la ricevuta ad ogni avvio dell'app. E / o forse controlla solo dopo un periodo di inattività. Supponresti che questo sia stato documentato da qualche parte. :)
Alistair McMillan,

1
Poiché questa è una grande sorpresa per la maggior parte delle persone che le applicazioni possono "scadere" e sarà un vero dolore per le persone che volano in aereo o in viaggio lontano dal WiFi per continuare a lavorare su Mac OS, mi aspetterei una spiegazione pubblica da Apple su cosa è successo, perché è successo e come risolvere / impedire che ciò accada in futuro. Fondamentalmente, Gatekeeper ha bisogno di una funzione per segnalare in anticipo le app in scadenza e un interruttore per ignorare temporaneamente questo controllo. Egg sul volto di Apple di sicuro su come non sono riusciti a educare gli utenti e cercarli.
bmike

2
Trovo sorprendente che le aziende abbiano regolarmente problemi con la scadenza dei certificati. Se solo avessero un modo per ricordare automaticamente a se stessi che certe cose devono essere rinnovate in determinati giorni.
Alistair McMillan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.