AES-128 vs AES-256 - czym różnią się znane standardy szyfrowania

Czy nowsze rozwiazanie zawsze jest lepsze? AES-256 jest silniejsze, ale nie pozbawione wad.

W związku z rosnącą liczbą cyberzagrożeń analitycy do spraw cyberbezpieczeństwa zachęcają do stosowania różnych metod zwiększających bezpieczeństwo danych. Zaliczamy do nich między innymi szyfrowanie danych, które na przestrzeni ostatnich kilku lat stało się znacznie popularniejsze. Producenci sprzętu elektronicznego zaczęli szyfrować nośniki swoich urządzeń już w fabryce na etapie produkcji. Również użytkownicy coraz częściej interesują się szyfrowaniem danych, które pozwala skutecznie poprawić bezpieczeństwo danych bez negatywnych konsekwencji dla użytkowników.

Na jaki rodzaj szyfrowania się zdecydować?
Źródło: Markus Spiske / Unsplash

Na jaki rodzaj szyfrowania się zdecydować?

Źródło: Markus Spiske / Unsplash

Obecnie na rynku istnieje wiele rodzajów szyfrowania danych jednak na prowadzenie wysuwają się dwa standardy z rodziny AES, a więc AES-128 oraz AES-256. Jaka jest pomiędzy nimi różnica? Którą wersję AES warto wykorzystać w organizacji?

Czym jest szyfrowanie AES?

AES to skrót od Advanced Encryption Standard, a więc zaawansowanego standardu szyfrowania. AES pojawił się na rynku pod koniec 2001 roku, a już w maju 2022 roku został przyjęty przez rząd federalny Stanów Zjednoczonych, przez co szybko zyskał na popularności.

Co ciekawe szyfrowanie AES posiada również drugą, mniej znaną nazwę - Rijndael, która ze względu na wysoki poziom skomplikowania nie przyjęła się na rynku.

AES bazuje na szyfrowaniu symetrycznym, a więc ten sam klucz wykorzystywany jest do szyfrowania oraz deszyfrowania danych. W procesie szyfrowania symetrycznego AES wykorzystuje algorytm szyfru blokowego, który korzysta z grupy bitów o stałej długości. W terminologii szyfrowania bity odnoszą się do długości klucza używanego do kodowania danych.

Algorytmy z rodziny AES wykorzystują także sieć substytucji-permutacji (SPN) obejmującą szereg powiązanych ze sobą operacji matematycznych, które składają się na działanie algorytmów szyfrów blokowych. Wśród operacji tych można wyróżnić między innymi zastępowanie bitów wejściowych bitami wyjściowymi, a także tasowanie bitów.

Ważnym elementem szyfrowania AES jest proces rozszerzania klucza, który pozwala na rozszerzenie klucza początkowego (nazywanego również głównym) do kilku oddzielnych kluczy nazywanych kluczami okrągłymi. Takie rozwiązanie to kolejny ukłon w stronę bezpieczeństwa - rozszerzanie klucza pozwala zwiększyć jego poziom.

Warto przypomnieć, że na rynku istnieje wiele różnych standardów szyfrowania symetrycznego takich jak DES, TEA, 3DES, Blowfish czy RC6, ale z różnych powodów nie zyskały one tak dużej popularności.

Bardzo często AES jest opisywany przez wiele firm jako sposób szyfrowania klasy wojskowej. Opis ten odnosi się najczęściej do szyfrowania AES-128, które faktycznie jest wykorzystywane w podmiotach wojskowych. Szyfrowanie AES wykorzystywane jest przez największe firmy technologiczne z Microsoft, Apple i Google na czele.

Co wyróżnia AES spośród innych sposobów szyfrowania danych?

Rodzina sposobów szyfrowania AES w praktyce składa się z trzech typów szyfrowania AES - 128-bitowego, 192-bitowego oraz 256-bitowego. Najpopularniejszymi rodzajami, które są wykorzystywane to 128 oraz 256-bitowe szyfrowanie AES. Pośredni model AES-192 nie zyskał uznania rynkowego.

Główną różnicą pomiędzy AES-128, a AES-256 jest długość klucza
Źródło: Markus Winkler / Unsplash

Główną różnicą pomiędzy AES-128, a AES-256 jest długość klucza

Źródło: Markus Winkler / Unsplash

Dzięki możliwości wyboru długości klucza AES to wysoce uniwersalny standard. Dodatkowo AES jest bardzo wydajnym standardem szyfrowania, które nie wymaga wyśrubowanej specyfikacji technicznej, a w praktyce nie wpływa negatywnie na wydajność urządzeń.

AES-128, a AES-256

Kluczową różnicą pomiędzy AES-128, a AES-256 jest oczywiście długość klucza. Pierwszy rodzaj korzysta ze 128-bitowego klucza, a drugi z dwukrotnie dłuższego, 256-bitowego klucza.

Oba standardy wykorzystują 128-bitowe bloki danych, ale w przypadku AES-256 jest ich dwukrotnie więcej, niż przy AES-128.

AES-128 wykorzystuje 10 rund przetwarzania do stworzenia kluczy, a AES-256 14 rund.

Powyżej przedstawiliśmy różnice pomiędzy oboma standardami. Zarówno AES-128, jak i AES-256 wykorzystują podobne algorytmy szyfrowania.

Który standard jest lepszy?

Na pierwszy rzut oka może wydawać się, że AES-256 to naturalnie lepsze rozwiązanie. Nie do końca jest to prawdą.

AES-256 w teorii może wpłynąć negatywnie na wydajność i czas pracy na baterii urządzenia
Źródło: Markus Spiske / Unsplash

AES-256 w teorii może wpłynąć negatywnie na wydajność i czas pracy na baterii urządzenia

Źródło: Markus Spiske / Unsplash

AES-128 jest prostszym standardem szyfrowania, ale w praktyce nigdy nie udokumentowano udanej próby złamania szyfrowania AES-128 oraz AES-256.

Oba protokoły są bardzo bezpieczne i z tego powodu są używane przez rządy i firmy zajmujące się bezpieczeństwem cybernetycznym.

AES-256 posiada dłuższy klucz, który trudniej złamać, ale należy rozpatrzyć również inne aspekty.

AES-128 jest w rzeczywistości zauważalnie wydajniejszy od bardziej skomplikowanego AES-256. Oznacza to, że korzystając z urządzenia o takiej samej wydajności zaszyfrujemy lub odszyfrujemy większą ilość danych. Szyfrowanie AES-256 wykorzystuje o 40% więcej zasobów systemowych niż AES-128. Zatem użycie szyfrowania AES-256 może bardziej obciążać komponenty sprzętowe i programowe. W praktyce nowe urządzenia są na tyle wydajne, że różnica nie jest odczuwalna w płynności działania sprzętu, ale może powodować szybsze wyczerpanie baterii.

Warto podkreślić również większe opóźnienia AES-256 względem AES-128.

Pomimo powyższych wad AES-256 ze względu na dłuższą długość klucza jest najbezpieczniejszym standardem szyfrowania i w kwestii poziomu bezpieczeństwa znacząco przerasta AES-128.

Zwiększona długość klucza przekłada się na większą liczbę rund przetwarzania, co również może zmniejszyć szansę na udany atak. Z tego powodu szyfrowanie AES-256 jest bardziej odporne na ataki typu brute-force w porównaniu z AES-128.

Z drugiej strony warto mieć na uwadze, że szacowany czas złamania AES-128 wynosi miliard lat, a AES-256 tryliony lat. Z tego właśnie względu warto rozważyć stosowanie szybsze i mniej obciążającego szyfrowania AES-128, które nadal jest bardzo bezpieczne i nie zostało nigdy złamane.

Szyfrowanie AES jest obecnie niełamalne, a wszystkie trzy różne typy utrzymują swoje bezpieczeństwo od ponad 20 lat. Użytkownicy mają tendencję do zakładania, że AES-256 jest znacznie lepszy od AES-128 przez fakt, że używa on dłuższego klucza. Trudno się z tym nie zgodzić.

Niezależnie od rodzaju AES zapewnia bezpieczne szyfrowanie danych
Źródło: Carlos Muza / Unsplash

Niezależnie od rodzaju AES zapewnia bezpieczne szyfrowanie danych

Źródło: Carlos Muza / Unsplash

AES-128 czy AES-256?

Niezależnie od tego, czy wykorzystamy szyfrowanie AES-128 czy AES-256, dane będą odpowiednio zabezpieczone. Standard szyfrowania AES pozostaje nieprzenikniony w całej rozciągłości, więc można swobodnie wybrać szyfrowanie 128- lub 256-bitowe i cały czas utrzymywać niezwykle wysoki poziom bezpieczeństwa.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200