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 dispositivi A/B

Se il dispositivo utilizza A/B, il flusso di avvio è leggermente diverso. Lo slot per l'avvio deve essere prima contrassegnato come SUCCESSFUL utilizzando Boot Control HAL prima di aggiornare i metadati di Rollback Protection.

Se c'è un aggiornamento della piattaforma che non riesce (non è contrassegnato con SUCCESSFUL ), lo stack A/B torna all'altro slot, che contiene ancora la versione precedente di Android. Tuttavia, se sono stati impostati i metadati della protezione dal rollback, la versione precedente non può essere avviata a causa della protezione dal rollback.

Comunicazione dello stato di avvio verificato agli utenti

Dopo aver determinato lo stato di avvio di un dispositivo, è necessario comunicare tale stato all'utente. Se il dispositivo non presenta problemi, procedi senza visualizzare nulla. I problemi di avvio verificati rientrano in queste categorie:

  • GIALLO: schermata di avviso per dispositivi BLOCCATI con root of trust personalizzato impostato
  • ARANCIONE: schermata di avviso per dispositivi SBLOCCATI
  • ROSSO (eio): schermata di avviso per il danneggiamento di dm-verity
  • ROSSO (nessun sistema operativo trovato): nessun sistema operativo valido trovato

Dispositivi BLOCCATI con root of trust personalizzato

Esempio di schermata GIALLA:

Schermo di avviso del dispositivo giallo

Mostra una schermata GIALLA ad ogni avvio se il dispositivo è BLOCCATO, è stata impostata una radice di attendibilità personalizzata e l'immagine è stata firmata con questa radice di attendibilità personalizzata. La schermata GIALLA viene chiusa dopo dieci secondi e il dispositivo continua l'avvio. Se l'utente preme il pulsante di accensione, il testo "Premere il pulsante di accensione per mettere in pausa" cambia in "Premere il pulsante di accensione per continuare" e lo schermo non viene mai chiuso, anche se il dispositivo potrebbe oscurarsi o spegnere lo schermo per proteggersi dal burn-in). Se premuto di nuovo, lo schermo viene chiuso e il telefono continua l'avvio.

Per il hex-number utilizzare le prime 8 cifre dello sha256 della rappresentazione libavb della chiave pubblica utilizzata per la verifica, ad esempio d14a028c .

Testo suggerito:

Il dispositivo ha caricato un sistema operativo diverso.

Visita questo link su un altro dispositivo per saperne di più:

g.co/ABH

ID: hex-number

Premi il pulsante di accensione per mettere in pausa

Dispositivi SBLOCCATI

Esempio di schermata ARANCIONE:

Schermata di avviso del dispositivo arancione

Mostra una schermata ARANCIONE ad ogni avvio se il dispositivo è SBLOCCATO. La schermata ARANCIONE viene chiusa dopo dieci secondi e il dispositivo continua l'avvio. Se l'utente preme il pulsante di accensione, il testo "Premere il pulsante di accensione per mettere in pausa" cambia in "Premere il pulsante di accensione per continuare" e lo schermo non viene mai chiuso (il dispositivo potrebbe oscurarsi e/o spegnere lo schermo se necessario per proteggersi da ustioni). in o simili). Se premuto di nuovo, lo schermo viene chiuso e il telefono continua l'avvio.

Per il hex-number utilizzare le prime 8 cifre dello sha256 della rappresentazione libavb della chiave pubblica utilizzata per la verifica, ad esempio d14a028c .

Testo suggerito:

Il caricatore di avvio è sbloccato e l'integrità del software non può essere garantita. Tutti i dati archiviati sul dispositivo potrebbero essere disponibili per gli aggressori. Non memorizzare dati sensibili sul dispositivo.

Visita questo link su un altro dispositivo per saperne di più:

g.co/ABH

ID: hex-number

Premi il pulsante di accensione per mettere in pausa.

dm-verity corruzione

Esempio di schermata eio ROSSA:

Schermata di avviso del dispositivo eio rossa

Mostra una schermata eio ROSSA se viene trovata una versione valida di Android e il dispositivo è attualmente in modalità eio dm- eio . L'utente deve fare clic sul pulsante di accensione per continuare. Se l'utente non ha riconosciuto 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 ci si può fidare e potrebbe non funzionare correttamente.

Visita questo link su un altro dispositivo per saperne di più:

g.co/ABH

Premi il pulsante di accensione per continuare.

Nessun sistema operativo valido trovato

Esempio di schermata ROSSA:

Schermata di avviso rossa del dispositivo danneggiato

Mostra una schermata ROSSA viene visualizzato se non è possibile trovare una versione valida di Android. Il dispositivo non può continuare l'avvio. Se l'utente non ha riconosciuto la schermata di avviso entro 30 secondi, il dispositivo si spegne per proteggere lo schermo dal burn-in e risparmiare energia).

Per il hex-number utilizzare le prime 8 cifre dello sha256 della rappresentazione libavb della chiave pubblica utilizzata per la verifica, ad esempio d14a028c .

Testo suggerito:

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

Visita questo link su un altro dispositivo per saperne di più:

g.co/ABH

ID: hex-number

Premi il pulsante di accensione per spegnere.

Conferma di sblocco

Esempio di schermata:

SBLOCCA la schermata di avviso del dispositivo

Mostra una schermata di conferma dello sblocco in risposta al comando di fastboot flashing unlock di avvio rapido eseguito tramite l'interfaccia di avvio rapido. Il focus è inizialmente su Non sbloccare . Se l'utente non ha interagito con la schermata di avviso entro 30 secondi, la schermata scompare e il comando non riesce.

Testo suggerito:

Se sblocchi il bootloader, sarai in grado di installare il software del sistema operativo personalizzato su questo telefono. Un sistema operativo personalizzato non è soggetto allo stesso livello di test del sistema operativo originale e può impedire il corretto funzionamento del telefono e delle applicazioni installate. L'integrità del software non può essere garantita con un sistema operativo personalizzato, quindi tutti i dati archiviati sul telefono mentre il bootloader è sbloccato potrebbero essere a rischio.

Per impedire l'accesso non autorizzato ai tuoi dati personali, lo sblocco del bootloader cancellerà anche tutti i dati personali sul tuo telefono.

Premi Volume su/Volume giù per selezionare se sbloccare il bootloader, quindi il pulsante di accensione per continuare.

Sbloccare

Sblocca bootloader.

Non sbloccare

Non sbloccare il bootloader e riavviare il telefono.

Conferma blocco

Mostra una schermata di conferma del blocco in risposta al comando di fastboot flashing lock di avvio rapido eseguito tramite l'interfaccia di avvio rapido. Il focus è inizialmente su Non bloccare . Se l'utente non ha interagito con la schermata di avviso entro 30 secondi, la schermata scompare e il comando non riesce.

Testo:

Se blocchi il bootloader, non sarai in grado di installare il software del sistema operativo personalizzato su questo telefono. Per impedire l'accesso non autorizzato ai tuoi dati personali, il blocco del bootloader cancellerà anche tutti i dati personali sul tuo telefono.

Premi Volume su/Volume giù per selezionare se bloccare il bootloader, quindi il pulsante di accensione per continuare.

Serratura

Blocca bootloader.

Non bloccare

Non bloccare il bootloader e riavviare il telefono.

Comunicazione dello stato di avvio verificato ad Android

Esempio di schermata:

Schermata di avviso del dispositivo di conferma BLOCCO

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

  • green : se il dispositivo è LOCKED e la radice di attendibilità impostabile dall'utente non viene utilizzata
  • yellow : se il dispositivo è LOCKED e viene utilizzata la 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 caricatore di avvio rispetto alla gestione degli errori dm-verity. Per maggiori dettagli, consulta Gestione degli errori di verifica .