Notifica

You can now request help from the Help page in your Play Console account.  If you don't have access to Play Console, ask your account admin for an invite.

Utilizzare la firma dell'app di Google Play

Con la firma dell'app di Google Play, Google gestisce e protegge la chiave di firma della tua app nella stessa infrastruttura sicura su cui Google archivia le proprie chiavi. Queste chiavi sono protette dal Key Management Service (KMS) di Google. Per scoprire di più su questa infrastruttura leader del settore, leggi il white paper su Google Cloud per la sicurezza.
 

Perché utilizzare la firma dell'app di Google Play? Oltre a proteggere le chiavi da perdita o compromissione permanente, la registrazione alla firma dell'app di Google Play sblocca miglioramenti per gli Android App Bundle (.aab). Se consenti a Google di firmare gli APK di distribuzione ottimizzati generati dagli app bundle, ottieni l'accesso a servizi preziosi come la protezione automatica e la traduzione automatica delle stringhe utilizzando i modelli Gemini. I giochi ottengono l'accesso a servizi automatici aggiuntivi come Play Games Sidekick, Gioca durante il download e prove senza costi per i titoli a pagamento.

Per configurare la firma dell'app di Google Play, devi essere il proprietario dell'account.

Concetti principali

Quando utilizzi la firma dell'app di Google Play, hai a che fare con due chiavi distinte. Comprendere la differenza e i relativi formati tecnici è fondamentale per evitare problemi di autenticazione con le API di terze parti.

Tipo di chiave Chi ne è in possesso Dettagli tecnici e scopo

Chiave di caricamento

Tu (conserva questo dato in modo sicuro)

  • Formato: memorizzato in un archivio chiavi Java (.jks o .keystore).
  • Requisito: deve essere una chiave RSA di almeno 2048 bit.
  • Scopo: utilizzi questa chiave per firmare l'app bundle prima di caricarlo su Play Console. Google la usa per verificare la tua identità. Se viene compromessa o smarrita, Google può reimpostarla per te.
Chiave di firma dell'app

Google Play

  • Formato: associato a un certificato pubblico (.der o .pem).
  • Requisito: le chiavi generate da Google sono RSA a 4096 bit. Le chiavi personalizzate devono essere RSA ad almeno 2048 bit.
  • Scopo: Google utilizza questa chiave per firmare gli APK finali inviati ai dispositivi degli utenti. Puoi chiedere a Google di generarla o fornirne una tua. Questa chiave non può essere ripristinata se la gestisci autonomamente (senza la firma dell'app di Google Play) e la perdi.
Predisposta per la tecnologia quantistica Google Play
  • Formato: due chiavi associate a certificati pubblici (.der o .pem).
  • Requisito: la firma ibrida predisposta per la tecnologia quantistica combina una chiave RSA classica a 4096 bit e una chiave ML-DSA-65 post-quantistica. Google genera una nuova chiave classica per la firma ibrida diversa dalla chiave classica che utilizza per i dispositivi precedenti ad Android 17, pertanto nella tua app vengono utilizzate tre chiavi distinte.
  • Scopo: i dispositivi con Android 17 e versioni successive verificano l'app utilizzando lo schema di firma dell'APK v3.2 per proteggerla da futuri attacchi di computer quantistici. I dispositivi con versioni precedenti di Android continuano a verificare l'app con blocchi di firma classici.

Nota: per consentire la massima sicurezza, la chiave di caricamento e la chiave di firma dell'app devono essere diverse.

In che modo Google firma la tua app: quando Google genera e firma gli APK con la chiave di firma dell'app, utilizza apksigner per aggiungere due timbri al file manifest dell'app (com.android.stamp.source e com.android.stamp.type). Questi timbri garantiscono che i tuoi APK siano tracciabili in modo sicuro fino al signer originale.

Configura la firma dell'app di Google Play

La procedura di configurazione varia a seconda che pubblichi una nuova app o fai la migrazione di una esistente.

Per le nuove app

  1. Crea una nuova app: la tua app verrà registrata automaticamente per la firma ibrida e predisposta per la tecnologia quantistica con chiavi generate da Google. Generiamo anche una chiave classica separata da utilizzare nei blocchi di firma riconosciuti sui dispositivi con Android 16 e versioni precedenti.
  2. Crea una chiave di caricamento: genera un archivio chiavi per firmare l'app bundle della release. Puoi generarlo in Android Studio o utilizzare l'utilità Java Keytool dalla riga di comando.
  3. Carica l'app bundle: vai a Play Console e prepara una nuova release. Per impostazione predefinita, quando carichi l'app bundle, la tua app viene registrata automaticamente per la firma ibrida predisposta per la tecnologia quantistica con chiavi generate da Google.
  4. (Facoltativo) Modifica la chiave di firma dell'app: gli sviluppatori esperti che vogliono gestire la propria chiave possono modificare questa impostazione predefinita prima che venga rilasciata una release nel canale di test aperto o nel canale di produzione. Per farlo, vai a Protetto con Play > Distribuzione sul Play Store > Vai alla firma dell'app di Google Play e fai clic su Cambia la chiave di firma dell'app. Puoi quindi scegliere tra una delle seguenti opzioni:
  • Utilizza la stessa chiave utilizzata da un'altra app in questo account sviluppatore
  • Fornisci una copia della chiave di firma dell'app (seguendo le istruzioni)

Per le app esistenti

Se al momento gestisci le tue chiavi e carichi gli APK, puoi fare l'upgrade alla firma dell'app di Google Play per sfruttare i vantaggi degli app bundle e dei miglioramenti di Play.

  1. Vai a Protetto con Play > Distribuzione sul Play Store > Vai alla firma dell'app di Google Play in Play Console.
  2. Se non l'hai ancora fatto, accetta i Termini di servizio.
  3. Trasferisci una copia della chiave originale: scarica lo strumento PEPK e segui le istruzioni passo passo unificate per criptare e caricare la chiave di firma dell'app esistente da qualsiasi repository.
(Opzione consigliata) Crea una nuova chiave di caricamento: genera una nuova chiave in Android Studio da utilizzare come chiave di caricamento in futuro e registra il relativo certificato in Play Console.

Registrati con i provider di API

Se la tua app utilizza API (come Google Maps, OAuth o Facebook Login), questi servizi autenticano la tua app utilizzando l'impronta della chiave di firma dell'app.

Poiché Google firma l'APK finale, devi registrare l'impronta della chiave di firma dell'app detenuta da Google con i tuoi provider di API, non solo la tua chiave di caricamento locale.

  1. Vai a Protetto con Play > Distribuzione sul Play Store > Vai alla firma dell'app di Google Play.
  2. Scorri fino alla sezione Chiave di firma dell'app.
  3. Copia le impronte richieste (SHA-1 o SHA-256). Se la tua app utilizza la firma ibrida predisposta per la tecnologia quantistica, devi copiare le impronte di tre chiavi e registrarle singolarmente con i tuoi fornitori di API: le nuove chiavi classiche e PQC utilizzate sui dispositivi più recenti e la chiave classica utilizzata sui dispositivi meno recenti.
  4. Incolla queste impronte nella console del tuo provider di API (ad esempio, la console Google Cloud).
    Suggerimento: aggiorna il file assetlinks.json con queste impronte se utilizzi Android App Links.

Gestisci le chiavi

Fai l'upgrade della chiave di firma dell'app

Se la chiave di firma dell'app è compromessa o hai bisogno di una chiave più efficace dal punto di vista della crittografia, puoi richiedere un upgrade annuale della chiave per tutte le installazioni su Android 17 (livello API 37) e versioni successive.

Come funziona l'applicazione forzata nelle varie versioni di Android:

  • Android 17 (livello API 37) e versioni successive: la piattaforma Android impone rigorosamente l'utilizzo della chiave ibrida predisposta per la tecnologia quantistica di cui è stato fatto l'upgrade. Consulta lo schema di firma dell'APK v3.2.
  • Da Android 13 (livello API 33) ad Android 16 (livello API 36): la piattaforma Android impone rigorosamente l'utilizzo della chiave classica più recente. Consulta lo schema di firma dell'APK v3.1.
  • Da Android 7 (livello API 24) ad Android 12 (livello API 32): la piattaforma Android non impone l'utilizzo della chiave di cui è stato fatto l'upgrade e riconosce comunque la chiave classica più recente. Tuttavia, Google Play Protect fornisce un'ulteriore convalida controllando che gli aggiornamenti dell'app siano firmati con la chiave classica più recente (a meno che non sia stato disattivato dall'utente).

Considerazione importante:

  • Dati condivisi: poiché la piattaforma non impone la chiave di cui è stato fatto l'upgrade su Android S (livello API 32) e versioni precedenti, se utilizzi la stessa chiave in più app per condividere i dati, queste versioni precedenti di Android riconosceranno solo la chiave precedente per funzionalità come la condivisione delle autorizzazioni personalizzate.

Come fare l'upgrade:

  1. Vai a Protetto con Play > Distribuzione sul Play Store > Vai alla firma dell'app di Google Play.
  2. Nella sezione Chiave di firma dell'app, fai clic su Esegui l'upgrade della chiave.
  3. Scegli il percorso di upgrade:
    • (Opzione consigliata) Consenti a Google Play di generare una nuova chiave di firma dell'app
    • Usa la stessa chiave di firma dell'app di un'altra app in questo account sviluppatore
    • Fornisci una copia della chiave di firma dell'app (seguendo le istruzioni)
  4. Fai clic su Salva.
  5. Registra le nuove impronte della chiave con i provider di API. Se la tua app utilizza la firma ibrida predisposta per la tecnologia quantistica, devi registrare le impronte per due nuove chiavi: la nuova chiave classica e la nuova chiave PQC.

Richiedi la reimpostazione della chiave di caricamento

Se perdi la chiave di caricamento o sospetti che sia stata compromessa, non perdi l'accesso alla tua app.

  1. Crea una nuova chiave di caricamento in Android Studio.
  2. Esporta il certificato in formato PEM:
    keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
    (per maggiori informazioni su Keytool e sui percorsi dell'archivio chiavi, consulta la guida alla firma dell'app di Android Studio).
  3. Una volta generato il file PEM, invia la richiesta di reimpostazione in Play Console.
  4. Vai a Protetto con Play > Protezione del Play Store > Gestisci la firma dell'app di Google Play.
  5. Nella sezione Certificato della chiave di caricamento, fai clic su Richiedi la reimpostazione chiave di caricamento.
  6. Inserisci il motivo della reimpostazione.
  7. Carica il file upload_certificate.pem e fai clic su Richiedi.

Best practice e distribuzione alternativa

  • Sicurezza: proteggi l'accesso a Play Console imponendo la verifica in due passaggi per tutti gli utenti.
  • Miglioramenti dell'app bundle: la registrazione alla firma dell'app di Google Play consente di accedere ai miglioramenti per i tuoi app bundle. Per applicare i miglioramenti, apporta prima le modifiche di configurazione necessarie durante la creazione di una nuova release, quindi carica un nuovo app bundle.
  • Distribuzione al di fuori di Google Play: se distribuisci tramite altri store e vuoi utilizzare la stessa chiave di firma ovunque, hai due opzioni. [1] Puoi chiedere a Google di generare la chiave di firma dell'app e scaricare un APK universale firmato da Play Console o dall'API Play Developer per distribuirlo altrove (in Play Console vai a Testa e rilascia > Release e bundle più recenti, seleziona il tuo app bundle e fai clic sulla scheda Download) oppure [2] puoi generare la chiave di firma dell'app che vuoi utilizzare per tutti gli store e trasferirne una copia a Google quando configuri la firma dell'app di Google Play. Scopri di più su come funzionano gli aggiornamenti delle app e sulle opzioni per attivare o disattivare gli aggiornamenti cross-store.
  • Test: utilizza la condivisione interna delle app per testare esattamente ciò che Google Play distribuirà agli utenti oppure scarica gli APK specifici per il dispositivo da Explorer per app bundle e installali localmente utilizzando adb install-multiple *.apk.
  • Schema di firma dell'APK v4: la firma dell'app di Google Play utilizza automaticamente la firma v4 per le app idonee per supportare la distribuzione ottimizzata sui dispositivi con Android 11 e versioni successive. Non è necessario alcun intervento da parte tua. Sono escluse tutte le app che utilizzano la firma ibrida predisposta per la tecnologia quantistica, che non è ancora compatibile con la firma v4. Per scoprire di più sui vantaggi tecnici, consulta la documentazione sullo schema di firma dell'APK v4.

Progetti Google Cloud self-hosted 

Se hai requisiti di sicurezza molto specifici (ad esempio, l'utilizzo di chiavi OEM), puoi utilizzare l'API Play Developer per registrarti alla firma dell'app di Google Play utilizzando un progetto Google Cloud self-hosted.

Si tratta di una configurazione non standard che non è consigliata. L'utilizzo di un progetto self-hosted implica l'assunzione della piena responsabilità delle operazioni di firma dell'app.

  • Impedisce a Google Play di gestire funzionalità essenziali come il disaster recovery.
  • Google non può rigenerare o correggere una release esistente. Per correggere eventuali errori relativi alla release, devi caricarne una nuova.
  • In questa configurazione potrebbero non essere disponibili ottimizzazioni avanzate, determinati miglioramenti di Play e funzionalità di sicurezza come la firma ibrida predisposta per la tecnologia quantistica.
  • Genera o importa le chiavi di firma in Cloud KMS, assicurandoti che la località sia configurata come multiregione US e segui la documentazione sull'importazione delle chiavi KMS.
  1. Per modificare la chiave di firma, utilizza il metodo enrollApp. Le chiavi di firma possono essere modificate solo prima che l'app venga rilasciata nei canali di test aperto o produzione.
  2. Per fare l'upgrade della chiave di firma dopo la pubblicazione, utilizza il metodo rotateAppSigningKey
  3. Concedi i seguenti ruoli IAM al client o al service account che autentica con l'API Google Play Developer:
    1. role/cloudkms.signer
    2. roles/cloudkms.viewer
    3. roles/cloudkms.publicKeyViewer
  4. Assicurati di disporre di una quota sufficiente per svolgere operazioni crittografiche. In particolare, ti consigliamo di aumentare la quota per asymmetric_requests ad almeno 350 QPS.
  5. Per vedere come vengono utilizzate le chiavi di firma, attiva l'audit log nel tuo progetto Cloud KMS.
Questa pagina potrebbe includere contenuti tradotti usando la tecnologia AI. Le traduzioni con l'AI potrebbero contenere errori.

È stato utile?

Come possiamo migliorare l'articolo?

Hai bisogno di ulteriore assistenza?

Prova i passaggi successivi indicati di seguito:

Ricerca
Cancella ricerca
Chiudi ricerca
Menu principale
12348568525961831804
true
Cerca nel Centro assistenza
false
true
true
true
true
true
92637
false
false
false
false
false