Google Adiantum: algorytm szyfrowania dla mniej wydajnych urządzeń
Google opublikowało nowy algorytm szyfrowania. Adiantum, jak nazwano rozwiązanie, ma cechować się wyjątkowo niskim zapotrzebowaniem na moc obliczeniową, a przez to działać sprawnie ze smartfonami klasy low-end i oprzyrządowaniem smartdomu.
Szyfrowanie stało się obecnie podstawowym ogniwem zabezpieczeń. Dotyczy to również systemu Android, gdzie począwszy od wydania Marshmallow – Android 6.0, Google zobowiązało producentów do włączenia szyfrowania na większości urządzeń. W tym celu robocik ma zaimplementowane dwa algorytmy, AES-128-CBC-ESSIV oraz AES-256-XTS. Pierwszy służy do szyfrowania całego nośnika, drugi zaś – pojedynczych plików. Niestety czasem bywa to kulą u nogi.
Urządzenia klasy niższej nie mają sprzętowej akceleracji algorytmu AES. Wydajność szyfrowania wynosi do 50 MB/s, co oczywiście przekłada się na wyraźne spowolnienie sprzętu.
Tylko powszechnie dostępne instrukcje
Firma z Mountain View twierdzi, że znalazła rozwiązanie tego problemu. Otóż zamiast AES, który jest szyfrem blokowym, czyli operującym na permutacjach (przekształceniach zbiorów), zastosowano szyfr strumieniowy ChaCha. Ten szyfruje każdy bit oddzielnie, z użyciem operacji powszechnie dostępnych w procesorach, na przykład dodawania lub funkcji XOR.
Według oficjalnych deklaracji, Adiantum przy czipie ARM Cortex-A7 o taktowaniu 1,9 GHz jest pięciokrotnie szybsze od AES-256-XTS, zapewniając zarazem porównywalny poziom bezpieczeństwa.
Dla dociekliwych – warto zapoznać się z blogiem Google w tej sprawie.