ADFGVX
Szyfr ADFGVX – prosty szyfr podstawieniowy używany przez wojska niemieckie w czasie pierwszej wojny światowej[1] do komunikacji na polu bitwy. W rzeczywistości szyfr ten był rozwinięciem szyfru ADFGX. Jego działanie opiera się na zmodyfikowanej szachownicy Polibiusza oraz pojedynczej transpozycji. W wyniku zaszyfrowania tekstu jawnego otrzymujemy szyfrogram zawierający litery A, D, F, G, V oraz X. Zostały one wybrane w taki sposób, aby znacząco różniły się od siebie podczas nadawania ich za pomocą alfabetu Morse’a. Miało to na celu zmniejszenie ryzyka powstania błędów przy nadawaniu lub odbiorze wiadomości.
Rodzaj algorytmu |
szyfr podstawieniowy |
---|---|
Data stworzenia |
1918 |
Autorzy |
Frtiz Nebel |
Data złamania |
czerwiec 1918 |
Złamany przez |
Georges Painvin |
Został on wymyślony przez pułkownika Frtiza Nebela[1], i wprowadzony do użytku w marcu 1918 roku.
ADFGX
edytujZałóżmy, że chcemy zaszyfrować wiadomość „Tajna wiadomosc” (oryginalna wersja szyfru umożliwiała szyfrowanie liter alfabetu angielskiego, przy czym nie rozróżniano liter I oraz J). Na początku wypełniamy szachownice Polibiusza o wymiarach 5x5 alfabetem o zmienionej kolejności liter (która jest znana tylko nadawcy i odbiorcy wiadomości).
A | D | F | G | X | |
---|---|---|---|---|---|
A | b | t | a | l | p |
D | d | h | o | z | k |
F | q | f | v | s | n |
G | g | j | c | u | x |
X | m | r | e | w | y |
Używając tej tabeli zamieniamy tekst jawny na odpowiadający mu szyfrogram:
T a j n a w i a d o m o s c AD AF GD FX AF XG GD AF DA DF XA DF FG GF
Następnie wybieramy tajne słowo, które będzie służyło do dalszego szyfrowania i wypisujemy pod nim, w wierszach, otrzymamy wcześniej szyfrogram. Należy pamiętać, aby w słowie tym nie powtarzały się litery (ewentualnie można powtarzające się litery pominąć).
H A S L O A D A F G D F X A F X G G D A F D A D F X A D F F G G F G X
Ostatnie dwie litery zostały dodane, aby we wszystkich wersach występowała taka sama liczba liter. GX to „X” po zaszyfrowaniu pokazaną wcześniej szachownicą Polibiusza. Litera X na końcu naszej wiadomości z pewnością nie zmienia jej znaczenia.
W następnym kroku przestawiamy kolumny wraz z literami występującymi nad nimi w taki sposób, aby te ostatnie zostały ułożone alfabetycznie:
A H L O S D A F G A F D A F X G X D A G D F D F A A X F F D G G G X F
Czytając kolumnami otrzymujemy szyfrogram: DFGDAG ADXFXG FADDFG GFAFFX AXGADF . Litery szyfrogramu zostały podzielone na 6-znakowe grupy dla łatwiejszego czytania. Nie należy dzielić ich ze względu na liczbę liter w wierszu, gdyż to może ułatwić złamanie szyfru.
ADFGVX
edytujW czerwcu 1918 roku została dodana litera V, co umożliwiało szyfrowanie 36 znaków – całego alfabetu (I oraz J były oddzielnymi literami) i cyfr od 0 do 9.
Kryptoanaliza
edytujADFGVX został złamany przez francuskiego porucznika Georges Painvina. Na początku Painvin zdołał jedynie ustalić, że szyfrowanie opiera się na szachownicy Polibiusza, a do szyfrowania używane są klucze dzienne. Okazało się, że niektóre z wiadomości nadawanych tego samego dnia miała identyczne początki. Jednocześnie wyodrębnił litery służące do szyfrowania (ADFGVX), a następnie sprawdził jak często występują poszczególne pary liter. Najczęstszą występującą kombinacją było DG – wywnioskował stąd, że jest to litera e, która w języku niemieckim występuje najczęściej. Na podstawie dalszej analizy statystycznej udało mu się zrekonstruować całą tablicę. Dzięki temu był w stanie łamać klucze dzienne niemieckich szyfrantów.
Od 1 czerwca przechwytywane szyfrogramy zawierały dodatkową literę – V. Oznaczało to, że Niemcy zmienili szyfr – była to nowa wersja, ADFGVX. Ponownie, wykorzystując analizę statystyczną, Painvin odtworzył szachownicę służącą do szyfrowania.
Zobacz też
edytuj- enigma – niemiecka maszyna szyfrująca
Przypisy
edytuj- ↑ a b Mateusz Dański , Szyfry ADFGX i ADFGVX [online], mattomatti.com [dostęp 2022-02-17] (pol.).