Przepływ rozruchowy

Zalecany przebieg rozruchu urządzenia jest następujący:

Zweryfikowany przepływ rozruchowy
Rysunek 1 . Zweryfikowany przepływ rozruchowy

Przepływ dla urządzeń A/B

Jeśli urządzenie korzysta z trybu A/B, przebieg rozruchu jest nieco inny. Przed aktualizacją metadanych funkcji Rollback Protection należy najpierw oznaczyć gniazdo przeznaczone do rozruchu jako SUCCESSFUL przy użyciu warstwy HAL kontroli rozruchu .

Jeśli aktualizacja platformy zakończy się niepowodzeniem (nie zostanie oznaczona jako SUCCESSFUL ), stos A/B wraca do drugiego gniazda, w którym nadal znajduje się poprzednia wersja Androida. Jeśli jednak ustawiono metadane funkcji Rollback Protection, poprzednia wersja nie będzie mogła zostać uruchomiona z powodu funkcji Rollback Protection.

Przekazywanie użytkownikom stanu zweryfikowanego rozruchu

Po określeniu stanu rozruchu urządzenia należy poinformować o tym stanie użytkownika. Jeśli z urządzeniem nie występują żadne problemy, kontynuuj bez wyświetlania czegokolwiek. Zweryfikowane problemy z rozruchem można podzielić na następujące kategorie:

  • ŻÓŁTY: ekran ostrzegawczy dla ZABLOKOWANYCH urządzeń z niestandardowym ustawionym katalogiem głównym zaufania
  • POMARAŃCZOWY: Ekran ostrzegawczy dla ODBLOKOWANYCH urządzeń
  • CZERWONY (eio): Ekran ostrzegawczy dotyczący uszkodzenia prawdziwości dm
  • CZERWONY (nie znaleziono systemu operacyjnego): Nie znaleziono prawidłowego systemu operacyjnego

ZABLOKOWANE urządzenia z niestandardowym katalogiem zaufania

Przykład ŻÓŁTY ekran:

Żółty ekran ostrzegawczy urządzenia

Wyświetlaj ŻÓŁTY ekran przy każdym uruchomieniu, jeśli urządzenie jest ZABLOKOWANE, ustawiono niestandardowy katalog główny zaufania, a obraz został podpisany tym niestandardowym katalogiem głównym zaufania. ŻÓŁTY ekran zniknie po dziesięciu sekundach, a urządzenie będzie kontynuować uruchamianie. Jeśli użytkownik naciśnie przycisk zasilania, tekst „Naciśnij przycisk zasilania, aby wstrzymać” zmieni się na „Naciśnij przycisk zasilania, aby kontynuować”, a ekran nigdy nie zostanie wyłączony, chociaż urządzenie może przyciemnić lub wyłączyć ekran, aby zabezpieczyć się przed wypaleniem). Ponowne naciśnięcie powoduje zamknięcie ekranu i kontynuowanie uruchamiania telefonu.

W przypadku hex-number użyj pierwszych 8 cyfr sha256 reprezentacji libavb klucza publicznego używanego do weryfikacji, na przykład d14a028c .

Sugerowany tekst:

Na Twoim urządzeniu załadowano inny system operacyjny.

Kliknij ten link na innym urządzeniu, aby dowiedzieć się więcej:

g.co/ABH

ID: hex-number

Naciśnij przycisk zasilania, aby wstrzymać

ODBLOKOWANE urządzenia

Przykładowy ekran POMARAŃCZOWY:

Pomarańczowy ekran ostrzegawczy urządzenia

Wyświetlaj POMARAŃCZOWY ekran przy każdym uruchomieniu, jeśli urządzenie jest ODBLOKOWANE. Po dziesięciu sekundach ekran POMARAŃCZOWY zniknie, a urządzenie będzie kontynuować uruchamianie. Jeśli użytkownik naciśnie przycisk zasilania, tekst „Naciśnij przycisk zasilania, aby wstrzymać” zmieni się na „Naciśnij przycisk zasilania, aby kontynuować”, a ekran nigdy nie zostanie wyłączony (urządzenie może przyciemnić i/lub wyłączyć ekran, jeśli jest to konieczne w celu ochrony przed poparzeniem) w lub podobne). Ponowne naciśnięcie powoduje zamknięcie ekranu i kontynuowanie uruchamiania telefonu.

W przypadku hex-number użyj pierwszych 8 cyfr sha256 reprezentacji libavb klucza publicznego używanego do weryfikacji, na przykład d14a028c .

Sugerowany tekst:

Program rozruchowy jest odblokowany i nie można zagwarantować integralności oprogramowania. Wszelkie dane przechowywane na urządzeniu mogą być dostępne dla atakujących. Nie przechowuj żadnych wrażliwych danych na urządzeniu.

Kliknij ten link na innym urządzeniu, aby dowiedzieć się więcej:

g.co/ABH

ID: hex-number

Naciśnij przycisk zasilania, aby wstrzymać.

korupcja dm-verity

Przykładowy ekran eio RED:

Czerwony ekran ostrzegawczy urządzenia eio

Wyświetl CZERWONY ekran eio , jeśli zostanie znaleziona prawidłowa wersja Androida, a urządzenie znajduje się obecnie w trybie eio dm-verity. Aby kontynuować, użytkownik musi kliknąć przycisk zasilania. Jeśli użytkownik nie zatwierdzi ekranu ostrzegawczego w ciągu 30 sekund, urządzenie wyłączy się (w celu ochrony ekranu przed wypaleniem i oszczędzania energii).

Sugerowany tekst:

Twoje urządzenie jest uszkodzone. Nie można mu ufać i może nie działać prawidłowo.

Kliknij ten link na innym urządzeniu, aby dowiedzieć się więcej:

g.co/ABH

Naciśnij przycisk zasilania, aby kontynuować.

Nie znaleziono prawidłowego systemu operacyjnego

Przykładowy CZERWONY ekran:

Czerwony ekran ostrzegawczy o uszkodzonym urządzeniu

Pokaż CZERWONY ekran jest wyświetlany, jeśli nie można znaleźć prawidłowej wersji Androida. Urządzenie nie może kontynuować uruchamiania. Jeśli użytkownik nie potwierdzi wyświetlenia ekranu ostrzegawczego w ciągu 30 sekund, urządzenie wyłączy się, aby chronić ekran przed wypaleniem i oszczędzać energię).

W przypadku hex-number użyj pierwszych 8 cyfr sha256 reprezentacji libavb klucza publicznego używanego do weryfikacji, na przykład d14a028c .

Sugerowany tekst:

Nie znaleziono prawidłowego systemu operacyjnego. Urządzenie nie uruchamia się.

Kliknij ten link na innym urządzeniu, aby dowiedzieć się więcej:

g.co/ABH

ID: hex-number

Naciśnij przycisk zasilania, aby wyłączyć.

Potwierdzenie odblokowania

Przykładowy ekran:

ODBLOKUJ ekran ostrzegawczy urządzenia

Wyświetl ekran potwierdzenia odblokowania w odpowiedzi na polecenie fastboot flashing unlock wykonywane przez interfejs fastboot. Początkowo fokus jest ustawiony na Nie odblokowuj . Jeżeli użytkownik nie wykonał żadnej interakcji z ekranem ostrzegawczym w ciągu 30 sekund, ekran zniknie, a polecenie nie powiedzie się.

Sugerowany tekst:

Jeśli odblokujesz bootloader, będziesz mógł zainstalować na tym telefonie niestandardowe oprogramowanie systemu operacyjnego. Niestandardowy system operacyjny nie podlega takim samym poziomom testów jak oryginalny system operacyjny i może spowodować, że telefon i zainstalowane aplikacje przestaną działać prawidłowo. Nie można zagwarantować integralności oprogramowania w przypadku niestandardowego systemu operacyjnego, dlatego wszelkie dane przechowywane w telefonie, gdy program rozruchowy jest odblokowany, mogą być zagrożone.

Aby zapobiec nieautoryzowanemu dostępowi do Twoich danych osobowych, odblokowanie programu ładującego spowoduje również usunięcie wszystkich danych osobistych z Twojego telefonu.

Naciśnij przycisk zwiększania/zmniejszania głośności, aby wybrać, czy odblokować program ładujący, a następnie przycisk zasilania, aby kontynuować.

Odblokować

Odblokuj bootloader.

Nie odblokowuj

Nie odblokowuj bootloadera i nie uruchamiaj ponownie telefonu.

Potwierdzenie blokady

Wyświetl ekran potwierdzenia blokady w odpowiedzi na polecenie fastboot flashing lock wykonywane przez interfejs fastboot. Początkowo fokus jest ustawiony na Nie blokuj . Jeżeli użytkownik nie wykonał żadnej interakcji z ekranem ostrzegawczym w ciągu 30 sekund, ekran zniknie, a polecenie nie powiedzie się.

Tekst:

Jeśli zablokujesz program ładujący, nie będziesz mógł zainstalować niestandardowego oprogramowania systemu operacyjnego na tym telefonie. Aby zapobiec nieautoryzowanemu dostępowi do Twoich danych osobowych, zablokowanie programu ładującego spowoduje również usunięcie wszystkich danych osobistych z Twojego telefonu.

Naciśnij przycisk zwiększania/zmniejszania głośności, aby wybrać, czy chcesz zablokować program ładujący, a następnie naciśnij przycisk zasilania, aby kontynuować.

Zamek

Zablokuj bootloader.

Nie blokuj

Nie blokuj bootloadera i nie uruchamiaj ponownie telefonu.

Przesyłanie stanu zweryfikowanego rozruchu do systemu Android

Przykładowy ekran:

Ekran ostrzegawczy urządzenia z potwierdzeniem ZABLOKOWANIA

Program ładujący przekazuje systemowi Android stan zweryfikowanego rozruchu za pomocą parametrów poleceń jądra lub poprzez konfigurację rozruchu, począwszy od systemu Android 12. Ustawia opcję androidboot.verifiedbootstate na jedną z następujących wartości:

  • green : jeśli urządzenie jest LOCKED i nie jest używany ustawiany przez użytkownika katalog główny zaufania
  • yellow : jeśli urządzenie jest LOCKED i używany jest root zaufania ustawiany przez użytkownika
  • orange : jeśli urządzenie jest UNLOCKED

Opcja androidboot.veritymode jest ustawiona na eio lub restart , w zależności od stanu programu ładującego w zakresie obsługi błędów dm-verity. Aby uzyskać więcej informacji, zobacz temat Obsługa błędów weryfikacji .