Jak szyfry blokowe zmieniły szpiegostwo podczas I wojny światowej

12

Współczesne szyfrowanie jest złożone, ale jego korzenie są zaskakująco proste. Szyfr blokowy opiera się na prostej zasadzie wielowarstwowego bezpieczeństwa. Bierzesz zwykły tekst, szyfrujesz go raz, a następnie ponownie szyfrujesz wynik. Łącząc dwie lub więcej podstawowych technik podstawienia lub permutacji, tworzysz obronę, która jest znacznie trudniejsza do przełamania niż obrona jednowarstwowa.

W epoce przedkomputerowej kryptografowie szeroko stosowali tę technikę. Nie mieli algorytmów do wykonywania skomplikowanych obliczeń. Zamiast tego do tasowania danych użyli kluczy opartych na słowach i macierzy prostokątnych. Jedną z popularnych opcji był system frakcjonowania. Oto jak to działało: Po pierwsze, znaki w tekście jawnym zostały zastąpione kilkoma nowymi znakami. Jeśli pojedyncze litery zamieniano parami, nazywano to szyfrem dwuliniowym. Następnie zastosowano końcowy etap permutacji. Ten ostatni krok jest często nazywany superszyfrowaniem.

Najbardziej znanym przykładem tego podejścia był szyfr ADFGVX. Używała go armia niemiecka podczas I wojny światowej. Był to szyfr polowy, który łączył podstawienie i permutację w pomysłowy i zabójczy sposób.

Silnik szyfrujący ADFGVX

W systemie ADFGVX zastosowano matrycę 6×6. Siatka ta przetworzyła 26 liter alfabetu i 10 cyfr. Każdy znak oryginalnej wiadomości został zastąpiony parą znaków wybranych ze zbioru: A, D, F, G, V i X. W ten sposób powstał szyfr dwuliniowy.

Ale na tym szyfrowanie się nie skończyło. Powstałe pary zapisano w prostokątnej tablicy. Ostatnim krokiem była zmiana trasy. Żołnierze czytają kolumny w określonej kolejności, określonej słowem kluczowym. To przegrupowanie zniekształciło już zaszyfrowany tekst, czyniąc wiadomość praktycznie nieczytelną dla tych, którzy nie znali matrycy i słowa kluczowego.

Szyfr ADFGVX był jednym z najsłynniejszych szyfrów polowych w historii.

Dlaczego to miało znaczenie

To nie było tylko ćwiczenie akademickie. To była informacja z pola bitwy. Niemcy zaufali temu systemowi. Uważali, że połączenie podstawienia i permutacji zapewnia niezawodną ochronę. I przez jakiś czas tak było. Ale nakładanie warstw stworzyło również przewidywalną strukturę. To właśnie ta konstrukcja stała się kluczem do jego upadku.

W 1918 roku francuski kryptoanalityk Georges J. Painvin złamał kod. Nie miał superkomputera. Używał analizy statystycznej i rozpoznawania wzorców. Pengven zidentyfikował krytyczne luki w sposobie, w jaki armia niemiecka korzystała z kodu. Jego sukces miał natychmiastowe i niszczycielskie konsekwencje. Zmienił równowagę sił w drugiej bitwie nad Marną.

Zaufanie armii niemieckiej do szyfru blokowego upadło. Zamiast tego warstwy mające chronić ich komunikację narażały je na ataki wykwalifikowanych analityków. Praca Pengwen pokazała, że ​​nawet złożone systemy ręczne mają ograniczenia. Udowodniła, że ​​niezależnie od ilości nałożonych warstw, jeśli w metodzie podstawowej znajdzie się błąd, zostanie on wyeksponowany.

Dziś nadal używamy tej samej podstawowej logiki. Szyfrowanie oprogramowania jest również wielowarstwowe. Ale teraz „produkt” jest przetwarzany przy użyciu silikonu, a nie siatek papierowych. Zasada pozostaje ta sama: więcej warstw może oznaczać większe bezpieczeństwo. Ale może to również oznaczać większą złożoność. I tu właśnie zdarzają się błędy.

Szyfr ADFGVX jest obecnie reliktem. Ale jego historia jest nadal aktualna. Przypomina nam, że bezpieczeństwo to nie tylko narzędzia.