Flusso di avvio

Il flusso di avvio consigliato per un dispositivo è il seguente:

Flusso di Avvio verificato

Figura 1. Flusso di Avvio verificato.

Flusso per i dispositivi A/B

Se il dispositivo utilizza A/B, il flusso di avvio è leggermente diverso. Lo slot da avviare deve essere contrassegnato come SUCCESSFUL utilizzando l'HAL per il controllo dell'avvio prima di aggiornare i metadati della protezione rollback.

Se un aggiornamento della piattaforma non va a buon fine (non è contrassegnatoSUCCESSFUL), lo stack A/B torna all'altro slot, che contiene ancora la versione precedente di Android. Tuttavia, se è stata impostata la protezione rollback, la versione precedente non può essere avviata a causa della protezione rollback.

Comunicare lo stato di Avvio verificato agli utenti

Dopo aver determinato lo stato di avvio di un dispositivo, devi comunicare questo stato all'utente. Se il dispositivo non presenta problemi, procedi senza visualizzare nulla. I problemi di Boot verificato rientrano nelle seguenti categorie:

  • GIALLO: schermata di avviso per i dispositivi BLOCCATI con impostazione root di attendibilità personalizzata
  • ARANCIONE: schermata di avviso per i dispositivi SBLOCCATI
  • ROSSO (eio): schermata di avviso per corruzione di dm-verity
  • ROSSO (no OS found): nessun sistema operativo valido trovato

Dispositivi BLOCCATI con root di attendibilità personalizzata

Esempio di schermata GIALLA:

Schermata di avviso del dispositivo gialla

Mostra una schermata GIALLA a ogni avvio se il dispositivo è BLOccato, è stato impostato un'autorità di attendibilità personalizzata e l'immagine è stata firmata con questa autorità di attendibilità personalizzata. Lo schermo Giallo viene chiuso dopo dieci secondi e il dispositivo continua a caricarsi. Se l'utente preme il tasto di accensione, il testo "Premi il tasto di accensione per mettere in pausa" viene modificato in "Premi il tasto di accensione per continuare" e lo schermo non viene mai chiuso (anche se il dispositivo potrebbe attenuare o spegnere lo schermo per proteggersi dal burn-in). Se viene premuto di nuovo, la schermata viene chiusa e lo smartphone continua a avviarsi.

Per hex-number, utilizza le prime 8 cifre del codice sha256 della rappresentazione libavb della chiave pubblica utilizzata per la verifica, ad esempio d14a028c.

Testo suggerito:

Sul dispositivo è stato caricato un sistema operativo diverso.

Per saperne di più, visita questo link su un altro dispositivo:

g.co/ABH

ID: hex-number

Premi il tasto di accensione per mettere in pausa

Dispositivi SBLOCCATI

Esempio di schermata ARANCIONE:

Schermata di avviso del dispositivo arancione

Mostra una schermata ARANCIONE a ogni avvio se il dispositivo è SBLOccato. Lo schermo ARANCIONE viene chiuso dopo dieci secondi e il dispositivo continua l'avvio. Se l'utente preme il tasto di accensione, il testo "Premi il tasto di accensione per mettere in pausa" diventa "Premi il tasto di accensione per continuare" e lo schermo non viene mai chiuso (il dispositivo potrebbe attenuare e/o spegnere lo schermo se necessario per proteggerlo da burn-in o simili). Se premuto di nuovo, la schermata viene chiusa e lo smartphone continua l'avvio.

Per hex-number, utilizza le prime 8 cifre dell'hash sha256 della rappresentazione di libavb della chiave pubblica utilizzata per la verifica, ad esempiod14a028c.

Testo suggerito:

Il bootloader è sbloccato e non è possibile garantire l'integrità del software. Any data stored on the device may be available to attackers. Non archiviare dati sensibili sul dispositivo.

Per saperne di più, visita questo link su un altro dispositivo:

g.co/ABH

ID: hex-number

Premi il tasto di accensione per mettere in pausa.

corruzione dm-verity

Esempio di schermata eio RED:

Schermata rossa di avviso del dispositivo eio

Mostra una schermata eio ROSSA se viene trovata una versione valida di Android e il dispositivo è attualmente in modalità dm-verity eio. L'utente deve fare clic sul tasto di accensione per continuare. Se l'utente non ha confermato la schermata di avviso entro 30 secondi, il dispositivo si spegne (per proteggere lo schermo dal burn-in e risparmiare energia).

Testo suggerito:

Il tuo dispositivo è danneggiato. Non è attendibile e potrebbe non funzionare correttamente.

Per saperne di più, visita questo link su un altro dispositivo:

g.co/ABH

Premi il tasto di accensione per continuare.

Nessun sistema operativo valido trovato

Esempio di schermata ROSSA:

Schermata di avviso del dispositivo danneggiato rossa

Viene visualizzata una schermata ROSSA se non è possibile trovare una versione valida di Android. Il dispositivo non può continuare ad avviarsi. Se l'utente non conferma la schermata di avviso entro 30 secondi, il dispositivo si spegne per proteggere lo schermo dal burn-in e risparmiare energia.

Per hex-number, utilizza le prime 8 cifre dell'hash sha256 della rappresentazione di libavb della chiave pubblica utilizzata per la verifica, ad esempio d14a028c.

Testo suggerito:

Non è stato possibile trovare un sistema operativo valido. Il dispositivo non si avvia.

Per saperne di più, visita questo link su un altro dispositivo:

g.co/ABH

ID: hex-number

Premi il tasto di accensione per spegnere.

Conferma sblocco

Schermata di esempio:

Schermata di avviso SBLOCCA dispositivo

Mostra una schermata di conferma dello sblocco in risposta al comando fastboot flashing unlock eseguito tramite l'interfaccia fastboot. All'inizio, lo stato attivo è impostato su Non sbloccare. Se l'utente non interagisce con la schermata di avviso entro 30 secondi, la schermata scompare e il comando non va a buon fine.

Testo suggerito:

Se sblocchi il bootloader, puoi installare software di sistema operativo personalizzato su questo smartphone. Un sistema operativo personalizzato non è soggetto allo stesso livello di test dell'OS originale e può causare l'interruzione del funzionamento dello smartphone e delle app installate. L'integrità del software non può essere garantita con un sistema operativo personalizzato, pertanto i dati archiviati sullo smartphone mentre il bootloader è sbloccato potrebbero essere a rischio.

Per impedire l'accesso non autorizzato ai tuoi dati personali, lo sblocco del bootloader elimina anche tutti i dati personali sullo smartphone.

Premi Alza il volume/Abbassa il volume per selezionare se sbloccare il bootloader, quindi premi il tasto di accensione per continuare.

Sblocca

Sblocca il bootloader.

Non sbloccare

Non sbloccare il bootloader e non riavviare lo smartphone.

Conferma della serratura

Mostra una schermata di conferma del blocco in risposta all'esecuzione del comando fastboot flashing lock tramite l'interfaccia fastboot. inizialmente l'opzione selezionata è Non bloccare. Se l'utente non ha interagito con la schermata di avviso entro 30 secondi, la schermata scompare e il comando non va a buon fine.

Testo:

Se blocchi il bootloader, non puoi installare software personalizzato per il sistema operativo su questo smartphone. Per impedire l'accesso non autorizzato ai tuoi dati personali, il blocco del bootloader comporta anche l'eliminazione di tutti i dati personali sullo smartphone.

Premi i tasti Alza il volume/Abbassa il volume per selezionare se bloccare il bootloader, quindi premi il tasto di accensione per continuare.

Blocca

Blocca il bootloader.

Non bloccare

Non bloccare il bootloader e non riavviare lo smartphone.

Comunica lo stato dell'Avvio verificato ad Android

Schermata di esempio:

Schermata di avviso del dispositivo di conferma LOCK

Il bootloader comunica lo stato di Avvio verificato ad Android tramite parametri di comando del kernel o tramite bootconfig a partire da Android 12. Imposta l'opzione androidboot.verifiedbootstate su uno dei seguenti valori:

  • green: se il dispositivo è LOCKED e non viene utilizzato un insieme di criteri di attendibilità impostabile dall'utente
  • yellow: se il dispositivo è LOCKED e viene utilizzata una radice di attendibilità impostabile dall'utente
  • orange: se il dispositivo è UNLOCKED

L'opzione androidboot.veritymode è impostata su eio o restart a seconda dello stato in cui si trova il bootloader in relazione alla gestione degli errori dm-verity. Per maggiori dettagli, consulta la sezione Gestire gli errori di verifica.