Szyfr Nihilistów

Z Wikipedii, wolnej encyklopedii

Szyfr Nihilistówszyfr podstawieniowy z podwójnym kluczem używany przez członków rosyjskiego ruchu nihilistów w 2 połowie XIX wieku.

Szyfrowanie i rozszyfrowywanie[edytuj | edytuj kod]

Do zaszyfrowania tekstu używa się dwóch słów-kluczy (np. klucz 1: WIKIPEDIA, klucz 2: SZACHY).

Przy pomocy pierwszego klucza tworzy się szachownicę Polibiusza – w komórki tabeli należy wpisać najpierw słowo-klucz (opuszczając powtarzające się litery – w przykładzie literę I), a następnie uzupełnić tabelę pozostałymi literami alfabetu. Litera J nie występuje w szachownicy – w tekstach szyfrowanych zastępuje ją litera I.

1 2 3 4 5
1 W I K P E
2 D A B C F
3 G H L M N
4 O Q R S T
5 U V X Y Z

Używając powstałej tablicy przeprowadza się pierwsze szyfrowanie tekstu jawnego (np. SZYFROWANIE Z DWOMA KLUCZAMI).

Litery należy zamienić na dwucyfrowe liczby opisujące ich położenie na szachownicy (w układzie wiersz+kolumna).

S Z Y F R O W A N I E Z D W O M A K L U C Z A M I
44 55 54 25 43 41 11 22 35 12 15 55 21 11 41 34 22 13 33 51 24 55 22 34 12

Teraz, używając szachownicy i drugiego słowa-klucza, należy stworzyć klucz numeryczny, który będzie potrzebny do drugiego przekształcenia tekstu szyfrowanego.

S Z A C H Y
44 55 22 24 32 54

Klucz numeryczny wpisuje się pod liczbami szyfru tyle razy, aby wyrównać długość tekstu zaszyfrowanego, a następnie dodaje się do siebie liczby tekstu i klucza.

szyfr według klucza 1 44 55 54 25 43 41 11 22 35 12 15 55 21 11 41 34 22 13 33 51 24 55 22 34 12
klucz 2 + 44 55 22 24 32 54 44 55 22 24 32 54 44 55 22 24 32 54 44 55 22 24 32 54 44
szyfr ostateczny = 88 110 76 49 75 95 55 77 57 36 47 109 65 66 63 58 54 67 77 106 46 79 54 88 56

Po dodaniu liczb z pierwszego szyfrowania i klucza numerycznego powstaje ostatecznie zaszyfrowany tekst:
88, 110, 76, 49, 75, 95, 55, 77, 57, 36, 47, 109, 65, 66, 63, 58, 54, 67, 76, 106, 46, 79, 54, 88, 56.

Odbiorca zaszyfrowanego tekstu zna oba słowa klucze, więc tworzy szachownicę i klucz numeryczny, odejmuje liczby klucza numerycznego od liczb z otrzymanego tekstu, a następnie przy pomocy szachownicy odczytuje tekst jawny.

Odporność na złamanie[edytuj | edytuj kod]

Mimo pozornej złożoności szyfr nie był zbyt odporny na złamanie, co wykorzystywali kryptoanalitycy carskiej tajnej policji politycznej - Ochrany. Liczby szyfru wysyłano wypisując je po kolei i oddzielając przecinkami. Jeżeli kryptoanalityk znał podstawy szyfru, to liczba trzycyfrowa wskazywała, że dodano do siebie liczby większe niż 50. To z kolei znaczyło, że litera tekstu jawnego i litera, na podstawie której utworzono daną liczbę klucza numerycznego, leżały w prawej dolnej ćwiartce szachownicy. Ogólnie – im wyższa była liczba, tym niżej najprawdopodobniej leżały na szachownicy obie litery. Ułatwiało to znalezienie klucza.

Choć szyfr Nihilistów nie dawał pewnego zabezpieczenia szyfrowanych tekstów, zawarta w nim idea podwójnego przetwarzania tekstu przetrwała. Radzieccy kryptolodzy tworząc w latach 20 i 30 XX w. szyfry dla swoich agentów wywiadu korzystali z podstaw tego szyfru rozwijając go i komplikując. Jednym z lepszych szyfrów opartych jego zasadach był tzw. szyfr Ramsaya używany przez siatkę radzieckich szpiegów w Japonii w latach 1935-41. Również na bazie szyfru Nihilistów powstał szyfr VIC, uznawany za najlepszy w historii szyfr ręczny (czyli taki, w którym do szyfrowania nie używano żadnych urządzeń mechanicznych lub elektrycznych).

Bibliografia[edytuj | edytuj kod]