Pomimo tego, że szyfr był wielokrotnie przerabiany, po raz pierwszy opisał go Giovan Battista Bellaso w 1553 roku. Następnie otrzymał imię francuskiego dyplomaty Blaise Vigenère. Ta opcja jest dość prosta do zaimplementowania i zrozumienia, ponieważ jest to najbardziej dostępna metoda kryptoanalizy.
Opis metody
Szyfr Wizhnera zawiera sekwencję kilku szyfrów Cezara. Ten ostatni charakteryzuje się przesunięciem kilku linii. Do celów szyfrowania możesz użyć tabeli alfabetów zwanej kwadratem Vigenère. W kręgach zawodowych określa się to mianem tabula recta. Tabela Vigenère składa się z kilku wierszy po 26 znaków. Każda nowa linia przesuwa określoną liczbę pozycji. W rezultacie tabela zawiera 26 różnych czcionek Cezara. Każdy etap szyfrowania wiąże się z użyciem innego alfabetu, który jest wybierany w zależności od charakteru słowa kluczowego.
Aby lepiej zrozumieć istotę tej metody, rozważmy szyfrowanie tekstu na przykładzie słowa ATTACKATDAWN. Osoba wysyłająca tekst zapisuje słowo kluczowe „CYTRYNA” do czasu, aż będzie ono pasować do długości przesyłanego tekstu. Słowo kluczowe będzie wyglądać tak:CYTRYNA CYTRYNA. Pierwszy znak danego tekstu - A - jest zaszyfrowany sekwencją L, która jest pierwszym znakiem klucza. Znak ten znajduje się na przecięciu wiersza L i kolumny A. Dla następnego znaku danego tekstu używany jest drugi znak klucza. Dlatego drugi znak zakodowanego tekstu będzie wyglądał jak X. Jest to wynik przecięcia wiersza E i kolumny T. Pozostałe części danego tekstu są zaszyfrowane w podobny sposób. Wynikiem jest słowo LXFOPVEFRNHR.
Proces deszyfrowania
Słowo jest odszyfrowywane za pomocą tabeli Vigenère. Musisz znaleźć ciąg pasujący do pierwszego znaku słowa kluczowego. Ciąg będzie zawierał pierwszy znak zaszyfrowanego tekstu.
Kolumna zawierająca ten znak będzie pasować do pierwszego znaku tekstu źródłowego. Kolejne wartości zostaną odszyfrowane w ten sam sposób.
Ważne wskazówki
Podając tekst zaszyfrowany, musisz podać słowo kluczowe. Będzie potrzebny również do odszyfrowania kodu za pomocą rosyjskiego szyfru Vigenère. Aby upewnić się, że kodowanie jest poprawne, lepiej dokładnie sprawdzić tekst. Jeśli tekst nie jest poprawnie zakodowany, nie można go poprawnie zdekodować.
W przypadku korzystania z kwadratu Vigenère ze spacjami i znakami interpunkcyjnymi proces dekodowania stanie się znacznie bardziej skomplikowany. Warto wiedzieć, że częste powtarzanie słowa kodowego ułatwi rozszyfrowanie tekstu. Dlatego informacje o kodzie muszą:być długi.
Ostrzeżenie dotyczące metody
Szyfr Vigenère, podobnie jak wiele innych, nie jest bezpieczny, ponieważ jest łatwy do złamania. Jeśli istnieje potrzeba przekazania tajnych informacji, nie musisz uciekać się do korzystania z tej metody. W tym celu opracowano inne metody. Szyfr Vigenère jest jedną z najstarszych i najpopularniejszych metod szyfrowania.
Kluczem jest specjalna fraza. Powtarza się kilka razy i jest nadpisywany nad zaszyfrowanym tekstem. W efekcie każda litera wysłanej wiadomości jest przesunięta względem podanego tekstu o określoną liczbę, która jest określona literą hasła. Od kilku stuleci ta metoda niezmiennie utrzymuje pozycję najbardziej niezawodnej metody szyfrowania. W XIX wieku odnotowano pierwsze próby złamania szyfru Vigenère'a, polegające na ustaleniu długości frazy kluczowej. Jeśli znana jest jego długość, to tekst można podzielić na pewne fragmenty, które są kodowane przez to samo przesunięcie.
Dodatkowe metody deszyfrowania
Możesz otworzyć oryginalną wiadomość za pomocą metody analizy częstotliwości, jeśli podany tekst jest wystarczająco długi. Rozwiązanie szyfru w dużej mierze sprowadza się do znalezienia długości frazy kluczowej. Istnieją dwie główne metody, które pozwalają określić długość frazy kluczowej. Pierwszą metodę dekodowania szyfru Vigenère opracował Friedrich Kassitzky. Ta metoda opiera się na wyszukiwaniu bigramów. Jego istota polega na tym, że jeśli ten sam schemat powtarza się w zakodowanej wiadomości w odległości będącej wielokrotnością długości kluczafrazy, to istnieje duże prawdopodobieństwo, że wystąpi ona w tych samych pozycjach w zaszyfrowanym tekście. Jeśli znajdziesz daną odległość, uzyskasz jej dzielniki, możesz otrzymać zbiór pewnych liczb. Będą długością frazy kluczowej. Jednak ta metoda wymaga trochę szczęścia. W dużym zakodowanym tekście można znaleźć losowe bigramy, co znacznie skomplikuje proces odszyfrowywania.
Drugą metodę rozszyfrowania tekstu zaproponował Friedman. Jej istota polega na cyklicznym przesunięciu zakodowanego komunikatu. Wynikowy tekst jest zapisywany pod oryginalnym zaszyfrowanym tekstem i zliczana jest liczba pasujących liter w dolnym i górnym wierszu. Otrzymane liczby pozwalają obliczyć tzw. indeks dopasowania. Jest to określane przez stosunek dopasowań do całkowitej długości wiadomości. Wskaźnik koincydencji dla tekstów rosyjskich wynosi około 6%. Jednak w przypadku tekstów przypadkowych wskaźnik ten wynosi około 3 lub 1/32. Metoda Friedmana opiera się na tym fakcie. Zakodowany tekst jest pisany z przesunięciem o 1, 2, 3 itd. stanowiska. Następnie dla każdej zmiany musisz obliczyć indeks dopasowań. Dlatego konieczne jest wykonanie cyklicznego przesunięcia całej wiadomości. Przesuwając indeks o określoną liczbę znaków, jego długość może drastycznie wzrosnąć. Sugeruje to, że długość słowa kluczowego może być równa pewnej liczbie. Jeśli zdarzy się sytuacja, w której wszystkie znaki zostaną przesunięte na tę samą pozycję, indeks dopasowania będzie miał taką samą wartość jak oryginałtekst. Jeśli indeks jest obliczany dla szyfru Vigenère'a, i tak następuje porównanie skutecznie losowego tekstu.
Przeprowadź analizę częstotliwości
Jeśli wynik procesu deszyfrowania jest pozytywny, możesz wprowadzić tekst w kolumnach. Kolumny tworzone są na podstawie tekstu źródłowego. Kassitzky wynalazł najbardziej zaawansowaną formę tekstu. Jednak środki tej metody nie mogą być zastosowane, jeśli siatka odbiega od standardowego ciągu liter alfabetu. Dlatego ta metoda pozwala poznać długość kluczy tylko w szczególnych przypadkach.