Procedura uruchamiania

Zalecany proces uruchamiania urządzenia jest opisany na tej stronie i zilustrowany na rysunku 1:

Przebieg weryfikacji podczas uruchamiania

Rysunek 1. Proces weryfikacji podczas uruchamiania.

Proces w przypadku urządzeń A/B

Jeśli urządzenie korzysta z aktualizacji A/B, proces uruchamiania jest nieco inny. Gniazdo, z którego ma nastąpić rozruch, musi najpierw zostać oznaczone jako SUCCESSFUL za pomocą interfejsu HAL kontroli rozruchu przed zaktualizowaniem metadanych ochrony przed wycofaniem.

Jeśli aktualizacja platformy się nie powiedzie (nie zostanie oznaczona jakoSUCCESSFUL), stos A/B przełączy się na drugie gniazdo, w którym nadal będzie zainstalowana poprzednia wersja Androida. Jeśli jednak metadane ochrony przed przywracaniem zostały ustawione, poprzednia wersja nie może się uruchomić z powodu ochrony przed przywracaniem.

Informowanie użytkowników o stanie weryfikacji podczas uruchamiania

Po określeniu stanu rozruchu urządzenia poinformuj o nim użytkownika. Jeśli urządzenie nie ma żadnych problemów, przejdź dalej bez wyświetlania żadnych informacji. Problemy z weryfikacją podczas uruchamiania dzielą się na te kategorie:

  • ŻÓŁTY: ekran ostrzeżenia dla ZABLOKOWANYCH urządzeń z ustawionym niestandardowym głównym źródłem zaufania
  • POMARAŃCZOWY: ekran ostrzeżenia dla ODblokowanych urządzeń
  • CZERWONY (eio): ekran ostrzegawczy w przypadku uszkodzenia dm-verity
  • CZERWONY (nie znaleziono systemu operacyjnego): nie znaleziono prawidłowego systemu operacyjnego

ZABLOKOWANE urządzenia z niestandardowym źródłem zaufania

Wyświetla ŻÓŁTY ekran przy każdym uruchomieniu, jeśli urządzenie jest ZABLOKOWANE, ustawiono niestandardowy główny certyfikat zaufania, a obraz został podpisany tym niestandardowym głównym certyfikatem zaufania. Po 10 sekundach ŻÓŁTY ekran znika i urządzenie kontynuuje 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 zamknięty (urządzenie może przyciemnić lub wyłączyć ekran, aby zapobiec wypaleniu). Jeśli naciśniesz go ponownie, ekran zostanie zamknięty, a telefon będzie kontynuować uruchamianie.

W przypadku hex-number użyj pierwszych 8 cyfr SHA256 reprezentacji libavb klucza publicznego używanego do weryfikacji, np. d14a028c.

Sugerowany tekst:

Urządzenie wczytuje inny system operacyjny.

Otwórz ten link na innym urządzeniu:

g.co/ABH

Odcisk cyfrowy systemu operacyjnego: hex-number

 Naciśnij przycisk zasilania, aby wstrzymać

Przykład ekranu ŻÓŁTEGO
Rysunek 2. Przykład ekranu ŻÓŁTEGO

ODBLOKOWANE urządzenia

Wyświetlaj POMARAŃCZOWY ekran przy każdym uruchomieniu, jeśli urządzenie jest ODBLOKOWANE. POMARAŃCZOWY ekran zniknie po 10 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 zamknięty (urządzenie może przyciemnić lub wyłączyć ekran, jeśli jest to konieczne, aby zapobiec wypaleniu lub podobnym problemom). Jeśli ponownie naciśniesz przycisk, ekran zostanie zamknięty, a telefon będzie kontynuować uruchamianie.

W przypadku hex-number użyj pierwszych 8 cyfr SHA256 reprezentacji libavb klucza publicznego używanego do weryfikacji, np. 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 osób przeprowadzających atak. Nie przechowuj na urządzeniu żadnych danych wrażliwych.

Otwórz ten link na innym urządzeniu:

g.co/ABH

ID: hex-number

 Naciśnij przycisk zasilania, aby wstrzymać.

Przykład ekranu POMARAŃCZOWEGO
Rysunek 3. Przykład ekranu ORANGE

Uszkodzenie pliku dm-verity

Wyświetl czerwony ekran eio, jeśli wykryto prawidłową wersję Androida, a urządzenie jest w trybie eio dm-verity. Aby kontynuować, użytkownik musi nacisnąć przycisk zasilania. Jeśli użytkownik nie potwierdzi ekranu ostrzeżenia w ciągu 30 sekund, urządzenie wyłączy się (aby chronić ekran przed wypaleniem pikseli i oszczędzać energię).

Sugerowany tekst:

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

Otwórz ten link na innym urządzeniu:

g.co/ABH

 Aby kontynuować, naciśnij przycisk zasilania.

Przykład ekranu RED eio
Rysunek 4. Przykład ekranu RED eio

Nie znaleziono prawidłowego systemu operacyjnego

Wyświetl CZERWONY ekran, jeśli nie znaleziono prawidłowej wersji Androida. Urządzenie nie może kontynuować rozruchu. Jeśli użytkownik nie potwierdzi ostrzeżenia 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, np. d14a028c.

Sugerowany tekst:

Nie udało się znaleźć prawidłowego systemu operacyjnego. Urządzenie się nie uruchomi.

Otwórz ten link na innym urządzeniu:

g.co/ABH

ID: hex-number

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

Przykład ekranu RED
Rysunek 5. Przykład ekranu RED

Potwierdzenie odblokowania

Wyświetl ekran potwierdzenia odblokowania w odpowiedzi na polecenie fastboot flashing unlock wykonane za pomocą interfejsu fastboot. Początkowo zaznaczona jest opcja Nie odblokowuj. Jeśli użytkownik nie wejdzie w interakcję z ekranem ostrzeżenia w ciągu 30 sekund, ekran zniknie, a polecenie nie zadziała.

Sugerowany tekst:

Odblokowanie programu rozruchowego umożliwi Ci zainstalowanie na tym telefonie niestandardowego oprogramowania systemu operacyjnego. Niestandardowy system operacyjny nie jest poddawany takiemu samemu poziomowi testów jak oryginalny system operacyjny i może spowodować, że telefon i zainstalowane aplikacje przestaną działać prawidłowo.

W przypadku niestandardowego systemu operacyjnego nie można zagwarantować integralności oprogramowania, więc wszystkie dane zapisane na telefonie, gdy program rozruchowy jest odblokowany, mogą być zagrożone.

Aby zapobiec nieautoryzowanemu dostępowi do Twoich danych osobowych, odblokowanie programu rozruchowego spowoduje też usunięcie wszystkich danych osobowych z telefonu.

Naciśnij przyciski głośności, aby wybrać, czy chcesz odblokować program rozruchowy, a następnie naciśnij przycisk zasilania, aby kontynuować.

Nie odblokowuj programu rozruchowego i ponownie uruchom telefon.

Odblokuj program rozruchowy.

Przykład ekranu potwierdzenia odblokowania
Rysunek 6. Przykład ekranu potwierdzenia odblokowania

Potwierdzenie blokady

Wyświetl ekran potwierdzenia blokady w odpowiedzi na polecenie fastboot flashing lock wykonane za pomocą interfejsu fastboot. Początkowo fokus jest ustawiony na opcję Nie blokuj. Jeśli użytkownik nie wejdzie w interakcję z ekranem ostrzeżenia w ciągu 30 sekund, ekran zniknie, a polecenie nie zadziała.

Tekst:

Jeśli zablokujesz program rozruchowy, nie będzie można zainstalować na tym telefonie niestandardowego oprogramowania systemu operacyjnego.

Aby zapobiec nieautoryzowanemu dostępowi do Twoich danych osobowych, zablokowanie programu rozruchowego spowoduje też usunięcie wszystkich danych osobowych z telefonu.

Naciśnij przyciski głośności, aby wybrać, czy chcesz zablokować program rozruchowy, a następnie naciśnij przycisk zasilania, aby kontynuować.

Nie blokuj programu rozruchowego i ponownie uruchom telefon.

Zablokuj program rozruchowy.

Ekran ostrzeżenia urządzenia z potwierdzeniem blokady
Rysunek 7. Ekran ostrzeżenia urządzenia potwierdzającego blokadę.

Przekazywanie stanu weryfikacji podczas uruchamiania do Androida

Program rozruchowy przekazuje stan weryfikacji podczas uruchamiania do Androida za pomocą parametrów poleceń jądra lub za pomocą konfiguracji uruchamiania w Androidzie 12 i nowszym. Program rozruchowy ustawia opcję androidboot.verifiedbootstate na jedną z tych wartości:

  • green, jeśli urządzenie jest LOCKED i nie jest używane ustawiane przez użytkownika źródło zaufania;
  • yellow, jeśli urządzenie jest LOCKED i używane jest ustawiane przez użytkownika źródło zaufania
  • orange jeśli urządzenie jest UNLOCKED

Opcja androidboot.veritymode jest ustawiona na eio lub restart w zależności od tego, w jakim stanie jest program rozruchowy w odniesieniu do obsługi błędów dm-verity. Więcej informacji znajdziesz w sekcji Obsługa błędów weryfikacji.