Jak działa szyfrowanie symetryczne i dlaczego AES zastąpił DES

12

Zasadniczo jest to tajny uścisk dłoni dla maszyn.

W ten sam sposób, w jaki dwaj spartańscy generałowie potrzebowali dokładnie tego samego szyfru do wymiany informacji o ruchach wojsk, nie dając wrogowi możliwości odszyfrowania ich planów, tak komputery korzystające z szyfrowania kluczem symetrycznym opierają się na wspólnym sekrecie. Zasada jest prosta: jeśli chcesz wysłać zaszyfrowane dane, zarówno nadawca, jak i odbiorca muszą posiadać ten sam klucz. Tutaj nie możesz po prostu rozgłaszać klucza publicznego i mieć nadzieję na najlepsze. To jest zamknięta pętla.

Musisz dokładnie wiedzieć, które urządzenia ze sobą rozmawiają, zanim będziesz mógł ustawić ten klawisz na obu końcach. To jest wspólna tajemnica. Pomyśl o tym jak o grze dla dzieci, w której zgadzasz się, że „A” staje się „C”, a „B” staje się „D”. Jeśli Twój znajomy ma ten sam arkusz zasad („Przesuń o 2”), będzie mógł przeczytać Twoją notatkę. Jeśli osoba z zewnątrz przechwyci pakiet, zobaczy tylko bzdury.

Komputery robią to na masową skalę, ale „kody” nie są tak urocze, jak przesuwanie liter w alfabecie.

Pierwszym głównym algorytmem, który stał się standardem w Stanach Zjednoczonych, był standard szyfrowania danych (DES). Pojawił się w latach 70-tych. Długość klucza? Tylko 56 bitów. Wtedy wydawało się to bezpieczne. Dziś mnie to śmieszy.

Dlaczego? Ponieważ prawo Moore’a nie dba o twoje szyfrowanie.

Klucz 56-bitowy oferuje 72 biliardy możliwych kombinacji. To brzmi dużo, dopóki nie uświadomisz sobie, że nowoczesny sprzęt może przełączać się między tymi kombinacjami w atakach brutalnej siły w ułamku czasu potrzebnego do zaparzenia kawy. DES faktycznie jest uszkodzony. Został on zastąpiony przez Advanced Encryption Standard (AES), którego prawdopodobnie teraz używasz.

AES wykorzystuje klucze 128-, 192- lub 256-bitowe. Matematyka staje się astronomiczna. Jeden 128-bitowy klucz zawiera więcej kombinacji niż ziarenka piasku na wszystkich plażach na Ziemi. Większość ekspertów zgadza się, że AES będzie niezawodny przez długi, długi czas. Ale nie chodzi tylko o liczby. Chodzi o architekturę.

Zobacz jak działa stary zamiennik. Podobny trik zastosował Juliusz Cezar. Nie przesunął go o dwie pozycje. Przesunął go do trzech. Aby napisać „CROSSING THE RUBICON”, napisałby „FURVV LQJWK HUXEL FRQ”. Podzielił także słowa na równe grupy, aby ukryć ich długość. Jak na swoje czasy był dowcipny. Nie jest to jednak szyfrowanie symetryczne we współczesnym znaczeniu. To tylko szyfr zastępczy. A złamanie tego za pomocą analizy częstotliwości jest banalne.

Szyfrowanie symetryczne jest inne. To nie tylko zmiana liter. Jest to proces matematyczny, który tasuje cały pakiet danych. Klucz określa permutację. Bez tego konkretnego klucza dane pozostają zablokowane.

Ale jest pewien haczyk.

Największym problemem związanym z symetrycznymi systemami szyfrowania nie jest samo szyfrowanie. To jest kluczowa dystrybucja. Jak mogę bezpiecznie dostarczyć ten klucz prywatny do innego komputera? Jeśli wyślesz klucz w postaci zwykłego tekstu, już przegrałeś. Jeśli używasz otwartego kanału, klucz może zostać przechwycony. Właśnie dlatego istnieje szyfrowanie asymetryczne – aby rozwiązać problem wymiany kluczy. Ale dla samego przesyłania danych? Szyfrowanie symetryczne jest nadal królem. Jest szybciej. Jest lżejszy. Nie wymaga dużego obciążenia obliczeniowego kryptografii klucza publicznego.

Więc używasz obu. Asymetryczny do symetrycznej wymiany kluczy. Symetryczny do przesyłania samych danych.

Jest to podejście hybrydowe. Skuteczny. Bezpieczna. Standard.

Ale nie niezniszczalny.

Ciągle pojawiają się nowe ataki. Na horyzoncie wyłaniają się obliczenia kwantowe, które mogą przełamać obecne standardy poprzez rozwiązywanie problemów z rozkładem na czynniki całkowite i logarytmem dyskretnym w ciągu kilku sekund. Pracujemy już nad algorytmami postkwantowymi. Ale na razie? AES 256-bitowy to złoty standard. Jest niezawodny. Jest to powszechne. To działa.