Szyfrowanie dysku: dobre i powolne

Dowiedz się o przyjęciu pełnego szyfrowania dysku na urządzeniach z Androidem, gdzie się udało, a gdzie nie!

W świecie, w którym są dane osobowe niezbyt osobiste, całe konta bankowe są powiązane z naszymi smartfonami, a inwigilacja i cyberprzestępczość są stale wysokie, bezpieczeństwo jest jednym z większości aspektów sfery technologicznej.

Proste blokady ekranu w postaci kodów PIN i wzorów istnieją już od dawna, ale dopiero niedawno, wraz z premierą Androida Honeycomb, w systemie Android pojawiło się pełne szyfrowanie dysku. Szyfrowanie i deszyfrowanie danych użytkownika na bieżąco, tj. podczas operacji odczytu i zapisu, znacznie zwiększyło bezpieczeństwo urządzenia w oparciu o klucz główny urządzenia.

Przed Androidem Lollipop wspomniany klucz główny opierał się wyłącznie na haśle użytkownika, co otwierało je na szereg luk w zabezpieczeniach za pośrednictwem zewnętrznych narzędzi, takich jak ADB. Jednak Lollipop przeprowadza pełne szyfrowanie dysku na poziomie jądra, używając najpierw wygenerowanego 128-bitowego klucza AES boot, który działa w połączeniu z uwierzytelnianiem wspieranym sprzętowo, takim jak TrustZone, pozbywając się ADB słaby punkt.

Szyfrowanie sprzętowe a programowe

Szyfrowanie dysku można przeprowadzić na dwóch różnych poziomach, a mianowicie na poziomie oprogramowania lub na poziomie sprzętu. Szyfrowanie oprogramowania wykorzystuje procesor do szyfrowania i deszyfrowania danych przy użyciu losowego klucza odblokowanego hasłem użytkownika lub przy użyciu samego hasła do uwierzytelniania operacji. Z drugiej strony szyfrowanie sprzętowe wykorzystuje dedykowany moduł przetwarzający do wygenerowania klucza szyfrującego, odciążając procesor i chroniąc krytyczne klucze oraz parametry bezpieczeństwa przed brutalną siłą i zimnym rozruchem ataki.

Pomimo nowszych układów SoC Qualcomm obsługujących szyfrowanie sprzętowe, Google zdecydował się na szyfrowanie oparte na procesorze w systemie Android, co wymusza przesyłanie danych szyfrowanie i deszyfrowanie podczas operacji we/wy dysku, zajmując pewną liczbę cykli procesora, a wydajność urządzenia poważnie spada, ponieważ wynik. Dzięki obowiązkowemu szyfrowaniu całego dysku przez Lollipop Nexus 6 był pierwszym urządzeniem, które wytrzymało największy ciężar tego typu szyfrowania. Wkrótce po premierze liczne testy porównawcze wykazały wyniki zwykłego Nexusa 6 w porównaniu z Nexusem 6 z wyłączonym szyfrowaniem przy użyciu zmodyfikowanych obrazów rozruchowych oraz wyniki nie były ładne, pokazując, że zaszyfrowane urządzenie jest znacznie wolniejsze od drugiego. Dla kontrastu urządzenia Apple obsługują szyfrowanie sprzętowe od czasu iPhone'a 3GS wraz z iPhone'em 5S będzie wspierać sprzętową akcelerację szyfrowania AES i SHA1 wspieraną przez 64-bitową wersję armv8 A7 chipset.

Szyfrowanie i oferta Nexusa

Zeszłoroczny Motorola Nexus 6 był pierwszym urządzeniem Nexus, które wymuszało na użytkownikach szyfrowanie oprogramowania, a wpływ, jaki wywarło to na operacje odczytu/zapisu pamięci masowej – powodując ich wyjątkowo powolne – był powszechny krytykowany. Jednak podczas AMA w serwisie Reddit wkrótce po premierze Nexusa 5X i Nexusa 6P wiceprezes Google ds. inżynierii, Dave Burke, stwierdził, że tym razem również szyfrowanie opierało się na oprogramowaniu, powołując się na 64-bitowe układy SoC armv8, obiecując jednocześnie wyniki szybsze niż sprzęt szyfrowanie. Niestety, A recenzja przez AnandTech pokazało, że pomimo znacznej poprawy w stosunku do Nexusa 6, Nexus 5X wypadł o około 30% słabiej niż LG G4 w bezpośrednim porównaniu, pomimo podobnej specyfikacji i użycia eMMC 5.0 w obu przypadkach urządzenia.

Wpływ na doświadczenie użytkownika

Pomimo, że Nexus 6 i pozornie Nexus 5X borykają się z problemami we/wy dysku wynikającymi z szyfrowania, optymalizacje oprogramowania w Lollipop polegają na dział wydajności, który wyrenderował Nexusa 6 na platformie Lollipop z pełnym szyfrowaniem dysku prawdopodobnie szybciej niż teoretyczny działający Nexus 6 KitKat. Jednak użytkownicy końcowi o bystrym spojrzeniu mogą czasami zauważyć lekkie zacinanie się podczas otwierania aplikacji wymagających dużej ilości dysku, takich jak galeria, lub podczas strumieniowego przesyłania lokalnych treści 2K lub 4K. Z drugiej strony szyfrowanie znacząco zabezpiecza Twoje dane osobowe i chroni Cię przed programami takimi jak inwigilacja rządowa, jedynym kompromisem jest lekkie zacinanie się, więc jeśli można z tym żyć, szyfrowanie jest zdecydowanie najlepszym rozwiązaniem Iść.

Producenci OEM i szyfrowanie

Mimo że szyfrowanie urządzeń jest mechanizmem niezwykle korzystnym dla użytkowników końcowych, niektórzy producenci OEM sporadycznie postrzegają je w niezbyt korzystnym świetle, a najbardziej znanym z nich jest Samsung. Smartwatch Gear S2 producenta OEM z Korei Południowej i oferowane przez niego rozwiązanie do płatności mobilnych, Samsung Pay, są niekompatybilne z szyfrowanymi urządzeniami Samsung... z pierwszym odmawia pracy i ten ostatni uniemożliwia użytkownikom dodawanie kart, informując użytkowników, że do ich funkcjonowania wymagane jest pełne odszyfrowanie urządzenia. Biorąc pod uwagę, że szyfrowanie zwiększa bezpieczeństwo urządzenia, blokowanie użytkownikom możliwości dodawania kart jest pozornie dziwaczne posunięcie, w którym bezpieczeństwo jest głównym czynnikiem decydującym o przyjęciu płatności mobilnych rozwiązania.

Czy to naprawdę potrzebne?

Dla większości użytkowników, zwłaszcza grupy wykluczającej użytkowników zaawansowanych, szyfrowanie jest czymś, na co raczej się nie natkną, a tym bardziej umożliwieniem chętnie. FDE z pewnością zabezpiecza dane urządzenia i chroni je przed programami inwigilacyjnymi, aczkolwiek z niewielkim kompromisem w zakresie wydajności. Podczas gdy Menedżer urządzeń Android przyzwoicie usuwa dane z urządzeń, które wpadły w niepowołane ręce, bezpieczeństwo zapewnia szyfrowanie barierę o krok do przodu, więc jeśli jesteś gotowy na kompromis w zakresie wydajności, FDE niewątpliwie chroni Twoje dane przed niewłaściwym ręce.

Co sądzisz o szyfrowaniu urządzeń? Czy uważasz, że Google powinien pójść drogą szyfrowania sprzętowego? Czy masz włączone szyfrowanie, a jeśli tak, czy występują jakieś problemy z wydajnością? Podziel się swoimi przemyśleniami w sekcji komentarzy poniżej!