Szyfrowanie

Szyfrowanie to proces kodowania wszystkich danych użytkownika na urządzeniu z Androidem za pomocą kluczy szyfrowania symetrycznego. Po zaszyfrowaniu urządzenia wszystkie dane utworzone przez użytkownika są automatycznie szyfrowane przed zapisaniem na dysku, a wszystkie odczyty automatycznie odszyfrowywane przed przekazaniem do procesu wywołania. Szyfrowanie zapewnia, że nawet jeśli nieautoryzowana osoba spróbuje uzyskać dostęp do danych, nie będzie mogła ich odczytać.

Android obsługuje 2 metody szyfrowania urządzenia: szyfrowanie oparte na plikach i szyfrowanie całego dysku.

Szyfrowanie oparte na plikach

Android 7.0 i nowsze wersje obsługują szyfrowanie oparte na plikach. Szyfrowanie oparte na plikach umożliwia szyfrowanie różnych plików za pomocą różnych kluczy, które można odblokować niezależnie. Urządzenia obsługujące szyfrowanie plików mogą też obsługiwać Direct Boot, co pozwala na uruchamianie zaszyfrowanych urządzeń bezpośrednio na ekranie blokady, zapewniając szybki dostęp do ważnych funkcji urządzenia, takich jak usługi ułatwień dostępu i alarmy.

Dzięki szyfrowaniu opartym na plikach i interfejsach API, które informują aplikacje o szyfrowaniu, aplikacje mogą działać w ograniczonym kontekście. Może się to zdarzyć, zanim użytkownicy udostępnią swoje dane logowania, a prywatne informacje użytkowników nadal będą chronione.

Szyfrowanie metadanych

Android 9 wprowadza obsługę szyfrowania metadanych, jeśli jest dostępna obsługa sprzętowa. W przypadku szyfrowania metadanych jeden klucz obecny w momencie uruchamiania szyfruje wszystkie treści, które nie są szyfrowane przez FBE, takie jak układy katalogów, rozmiary plików, uprawnienia i czasy utworzenia/modyfikacji. Ten klucz jest chroniony przez Keymaster, który z kolei jest chroniony przez weryfikowany rozruch.

Pełne szyfrowanie dysku

Urządzenia z Androidem od 5.0 do 9 obsługują szyfrowanie całego dysku. Szyfrowanie całego dysku używa jednego klucza chronionego hasłem użytkownika, aby chronić całą partycję danych użytkownika na urządzeniu. Po uruchomieniu użytkownik musi podać swoje dane logowania, zanim będzie można uzyskać dostęp do dowolnej części dysku.

Jest to bardzo korzystne z poziomu bezpieczeństwa, ale oznacza, że większość podstawowych funkcji telefonu nie jest od razu dostępna po ponownym uruchomieniu urządzenia przez użytkowników. Dostęp do danych użytkownika chroni dane logowania użytkownika, dlatego funkcje takie jak alarmy nie mogły działać, usługi ułatwień dostępu były niedostępne, a telefony nie mogły odbierać połączeń.