Boot-Flow

Der empfohlene Startablauf für ein Gerät ist wie folgt:

Verifizierter Bootflow
Abbildung 1 . Verifizierter Bootflow

Flow für A/B-Geräte

Wenn das Gerät A/B verwendet, ist der Startablauf etwas anders. Der zu bootende Steckplatz muss zuerst mit der Boot Control HAL als SUCCESSFUL markiert werden, bevor die Rollback Protection-Metadaten aktualisiert werden.

Wenn ein Plattform-Update fehlschlägt (nicht als SUCCESSFUL gekennzeichnet ist), fällt der A/B-Stack auf den anderen Steckplatz zurück, der noch die vorherige Android-Version enthält. Wenn jedoch die Rollback Protection-Metadaten gesetzt wurden, kann die vorherige Version wegen Rollback Protection nicht booten.

Kommunizieren des verifizierten Startstatus an Benutzer

Nachdem Sie den Startstatus eines Geräts ermittelt haben, müssen Sie diesen Status dem Benutzer mitteilen. Wenn das Gerät keine Probleme hat, fahren Sie fort, ohne etwas anzuzeigen. Verifizierte Startprobleme fallen in diese Kategorien:

  • GELB: Warnbildschirm für GESPERRTE Geräte mit benutzerdefiniertem Root-of-Trust-Set
  • ORANGE: Warnbildschirm für ENTSPERRTE Geräte
  • ROT (eio): Warnbildschirm für dm-verity-Korruption
  • ROT (kein Betriebssystem gefunden): Kein gültiges Betriebssystem gefunden

GESPERRTE Geräte mit benutzerdefiniertem Root of Trust

Beispiel GELBER Bildschirm:

Gelber Gerätewarnbildschirm

Zeigen Sie bei jedem Start einen GELBEN Bildschirm, wenn das Gerät GESPERRT ist, ein benutzerdefinierter Vertrauensanker festgelegt wurde und das Image mit diesem benutzerdefinierten Vertrauensanker signiert wurde. Der GELBE Bildschirm wird nach zehn Sekunden geschlossen und das Gerät bootet weiter. Wenn der Benutzer den Netzschalter drückt, ändert sich der Text „Drücken Sie den Netzschalter, um anzuhalten“ zu „Drücken Sie den Netzschalter, um fortzufahren“ und der Bildschirm wird nie geschlossen, obwohl das Gerät den Bildschirm zum Schutz vor Einbrennen möglicherweise dimmen oder ausschalten kann). Bei erneutem Drücken wird der Bildschirm geschlossen und das Telefon fährt mit dem Booten fort.

Verwenden Sie für die hex-number die ersten 8 Ziffern von sha256 der libavb-Darstellung des öffentlichen Schlüssels, der zur Verifizierung verwendet wird, zum Beispiel d14a028c .

Textvorschlag:

Ihr Gerät hat ein anderes Betriebssystem geladen.

Besuchen Sie diesen Link auf einem anderen Gerät, um mehr zu erfahren:

g.co/ABH

ID: hex-number

die Power-Taste, um anzuhalten

ENTSPERRTE Geräte

Beispiel ORANGE Bildschirm:

Orangefarbener Gerätewarnbildschirm

Zeigt bei jedem Start einen ORANGEN Bildschirm, wenn das Gerät UNLOCKED ist. Der ORANGE Bildschirm wird nach zehn Sekunden geschlossen und das Gerät bootet weiter. Wenn der Benutzer den Netzschalter drückt, ändert sich der Text „Drücken Sie den Netzschalter, um anzuhalten“ zu „Drücken Sie den Netzschalter, um fortzufahren“ und der Bildschirm wird nie geschlossen (das Gerät kann den Bildschirm dimmen und/oder ausschalten, wenn dies zum Schutz vor Einbrennen erforderlich ist). in oder ähnlich). Bei erneutem Drücken wird der Bildschirm geschlossen und das Telefon fährt mit dem Booten fort.

Verwenden Sie für die hex-number die ersten 8 Ziffern von sha256 der libavb-Darstellung des öffentlichen Schlüssels, der zur Verifizierung verwendet wird, zum Beispiel d14a028c .

Textvorschlag:

Der Bootloader ist entsperrt und die Integrität der Software kann nicht garantiert werden. Alle auf dem Gerät gespeicherten Daten können Angreifern zur Verfügung stehen. Speichern Sie keine sensiblen Daten auf dem Gerät.

Besuchen Sie diesen Link auf einem anderen Gerät, um mehr zu erfahren:

g.co/ABH

ID: hex-number

die Power-Taste, um anzuhalten.

dm-Verity-Korruption

Beispiel RED eio-Bildschirm:

Roter Warnbildschirm für eio-Geräte

Zeigen Sie einen eio -Bildschirm, wenn eine gültige Version von Android gefunden wird und sich das Gerät derzeit im eio dm-Verity-Modus befindet. Der Benutzer muss auf den Netzschalter klicken, um fortzufahren. Wenn der Benutzer den Warnbildschirm nicht innerhalb von 30 Sekunden bestätigt hat, schaltet sich das Gerät aus (um den Bildschirm vor Einbrennen zu schützen und Strom zu sparen).

Textvorschlag:

Ihr Gerät ist beschädigt. Es ist nicht vertrauenswürdig und funktioniert möglicherweise nicht richtig.

Besuchen Sie diesen Link auf einem anderen Gerät, um mehr zu erfahren:

g.co/ABH

den Netzschalter, um fortzufahren.

Kein gültiges Betriebssystem gefunden

Beispiel ROTER Bildschirm:

Roter Warnbildschirm für beschädigtes Gerät

Ein ROTER Bildschirm wird angezeigt, wenn keine gültige Version von Android gefunden werden kann. Das Gerät kann den Bootvorgang nicht fortsetzen. Wenn der Benutzer den Warnbildschirm nicht innerhalb von 30 Sekunden bestätigt hat, schaltet sich das Gerät aus, um den Bildschirm vor Einbrennen zu schützen und Strom zu sparen).

Verwenden Sie für die hex-number die ersten 8 Ziffern von sha256 der libavb-Darstellung des öffentlichen Schlüssels, der zur Verifizierung verwendet wird, zum Beispiel d14a028c .

Textvorschlag:

Es konnte kein gültiges Betriebssystem gefunden werden. Das Gerät bootet nicht.

Besuchen Sie diesen Link auf einem anderen Gerät, um mehr zu erfahren:

g.co/ABH

ID: hex-number

den Netzschalter, um das Gerät auszuschalten.

Bestätigung entsperren

Beispielbildschirm:

Warnbildschirm für das Gerät ENTSPERREN

Zeigen Sie einen Entsperr-Bestätigungsbildschirm als Reaktion auf den fastboot flashing unlock Befehl, der über die Fastboot-Schnittstelle ausgeführt wird. Der Fokus liegt zunächst auf Don't unlock . Wenn der Benutzer nicht innerhalb von 30 Sekunden mit dem Warnbildschirm interagiert hat, wird der Bildschirm ausgeblendet und der Befehl schlägt fehl.

Textvorschlag:

Wenn Sie den Bootloader entsperren, können Sie benutzerdefinierte Betriebssystemsoftware auf diesem Telefon installieren. Ein benutzerdefiniertes Betriebssystem unterliegt nicht demselben Testniveau wie das ursprüngliche Betriebssystem und kann dazu führen, dass Ihr Telefon und installierte Anwendungen nicht mehr richtig funktionieren. Die Softwareintegrität kann mit einem benutzerdefinierten Betriebssystem nicht garantiert werden, sodass alle Daten, die auf dem Telefon gespeichert sind, während der Bootloader entsperrt ist, gefährdet sein können.

Um unbefugten Zugriff auf Ihre persönlichen Daten zu verhindern, werden beim Entsperren des Bootloaders auch alle persönlichen Daten auf Ihrem Telefon gelöscht.

Drücken Sie die Lauter/Leiser-Taste, um auszuwählen, ob der Bootloader entsperrt werden soll, und dann die Ein-/Aus-Taste, um fortzufahren.

Freischalten

Bootloader entsperren.

Nicht entsperren

Entsperren Sie den Bootloader nicht und starten Sie das Telefon neu.

Sperrbestätigung

Anzeigen eines Sperrbestätigungsbildschirms als Reaktion auf den fastboot flashing lock , der über die Fastboot-Schnittstelle ausgeführt wird. Der Fokus liegt zunächst auf Don't lock . Wenn der Benutzer nicht innerhalb von 30 Sekunden mit dem Warnbildschirm interagiert hat, wird der Bildschirm ausgeblendet und der Befehl schlägt fehl.

Text:

Wenn Sie den Bootloader sperren, können Sie keine benutzerdefinierte Betriebssystemsoftware auf diesem Telefon installieren. Um unbefugten Zugriff auf Ihre persönlichen Daten zu verhindern, werden beim Sperren des Bootloaders auch alle persönlichen Daten auf Ihrem Telefon gelöscht.

Drücken Sie die Lauter/Leiser-Taste, um auszuwählen, ob der Bootloader gesperrt werden soll, und dann die Ein-/Aus-Taste, um fortzufahren.

Sperren

Bootloader sperren.

Nicht abschließen

Bootloader nicht sperren und Telefon neu starten.

Kommunizieren des verifizierten Startstatus an Android

Beispielbildschirm:

LOCK-Bestätigungsgerät-Warnbildschirm

Der Bootloader teilt Android den Verified Boot-Status über Kernel-Befehlsparameter oder ab Android 12 über bootconfig mit. Er setzt die Option androidboot.verifiedstate auf einen der folgenden Werte:

  • green : Wenn das Gerät LOCKED ist und der vom Benutzer einstellbare Vertrauensanker nicht verwendet wird
  • yellow : wenn das Gerät LOCKED ist und ein vom Benutzer einstellbarer Vertrauensanker verwendet wird
  • orange : wenn das Gerät UNLOCKED ist

Die Option androidboot.veritymode ist auf eio oder restart eingestellt, je nachdem, in welchem ​​Zustand sich der Bootloader in Bezug auf die Behandlung von dm-verity-Fehlern befindet. Weitere Einzelheiten finden Sie unter Umgang mit Verifizierungsfehlern .