Szyfry klasyczne

Początki stosowania kryptografii sięgają ponad 3000 lat wstecz. Pierwsze zapiski dotyczące stosowania szyfrów znaleziono na tabliczkach z pismem klinowym w Mezopotamii, a ich powstanie datuje się na 1500 rok p.n.e. Pierwsze wzmianki dotyczące stosowania kryptografii w celach politycznych pochodzą z IV w. p.n.e. z Indii. Wymieniana jest ona jako jeden ze sposobów zdobywania informacji przez przebywających za granicą ambasadorów.

O szyfrach klasycznych możesz posłuchać na poniższym filmiku.

Klasyczne metody kryptograficzne dzielą się na dwa rodzaje – podstawieniowe oraz przestawieniowe. Metoda przestawieniowa polega na zamianie szyku liter w zdaniach – tworzony jest anagram. Pierwszym znanym urządzeniem szyfrującym, które wykorzystywało tą metodę szyfrowania jest spartańska scytale  z V wieku p.n.e. Był to drewniany pręt o podstawie wielokąta, na który nawijano skórzany lub pergaminowy pas. Następnie pisano wiadomość wzdłuż pręta i odwijano pas, na którym widniała z pozoru bezsensowna sekwencja liter. Aby odczytać wiadomość wystarczyło nawinąć pas na pręt o identycznej długości jak ten wykorzystany do jej napisania. Jak widać na rysunku poniżej po nawinięciu pasa z wiadomością na scytale można odczytać wiadomość o treści „send more troops to southern flank and...”(wyślij więcej żołnierzy na południową flankę i…). Natomiast na nie nawiniętym na scytale pasie z wiadomością widnieje z pozoru przypadkowy ciąg liter „S, T, S, F …”.

Scytale - spartańskie urządzenie szyfrujące
Rys. 1. Scytale – sprtańskie urządzenie szyfrujące

 

O metodzie przestawieniowej można posłuchać na poniższym filmiku.

Metoda podstawieniowa była bardziej popularna i jak sama nazwa wskazuje polegała ona na podstawianiu za litery tekstu jawnego symboli bądź innych liter. Doskonałym przykładem tej metody jest szyfr Cezara, który jest zarazem najsławniejszym algorytmem szyfrującym starożytności. Jak łatwo się domyślić jego twórcą jest Juliusz Cezar, który wykorzystywał ten algorytm do szyfrowania korespondencji z Cyceronem.  Szyfr ten polegał na zastąpieniu każdej litery inną znajdującą się o trzy miejsca dalej w alfabecie. Natomiast rozszyfrowanie wiadomości przebiegało dokładnie w odwrotny sposób, czyli zastąpienie każdej litery wiadomości literą leżącą o trzy miejsca wcześniej w alfabecie.

Jedna z metod szyfrowania wiadomości, czyli metoda podstawieniowa na przykładzie szyfru Cezara.

Postaram się przedstawić działanie tego szyfru na przykładzie. Chcąc zaszyfrować wiadomość o treści: „TAJNE” zamieniamy każdą z liter wiadomości literą leżącą o trzy miejsca dalej. Literę „T” zastępujemy W”, A” zastępujemy „D” itd., czyli nasza zaszyfrowana wiadomość będzie wyglądała następująco „WDMRH„. Z pozoru wygląda jak nic nie znaczący ciąg liter, jednak znając klucz, w tym wypadku jest to przesunięcie o 3, można ją odszyfrować poprzez zamienienie każdej litery, inną znajdującą się o trzy miejsca w alfabecie wcześniej.

szyfr cezara
Rys. 2. Szyfr Cezara

 

Powyżej przedstawione szyfry nazywają się szyframi monoalfabetycznymi, oznacza to, że dokładnie każdej literze alfabetu jawnego przyporządkowuje się dokładnie jeden symbol, literę lub kombinację cyfr. Zasadniczą wadą tego rodaju szyfrów jest podatność na tak zwaną analizę częstości. Przedstawię na czym ona polega na przykładzie języka angielskiego. Po zbadaniu dłuższego tekstu w języku angielskim, można zauważyć, że najczęściej występującą literą jest „E”, następne w kolejności są „T” oraz „A” i tak dalej. W celu odszyfrowania wiadomości należy sprawdzić jak często w zaszyfrowanym tekście występuje dany symbol lub litera. Jeśli przykładowo najczęściej występującą literą jest „B”, prawdopodobnie zastępuje ona „E”. Podobnie sprawdza się pozostałe litery i tak jeśli drugą najczęściej występującą literą jest „C”, oznacza to że prawdopodobnie zastępuje literę „T” itd. Tabela przedstawiająca częstość występowania poszczególnych liter w tekstach angielskich przedstawia rysunek poniżej. Szyfry te są stosunkowo łatwe do odczytania dlatego z czasem zaczęły powstawać szyfry polialfabetyczne, czyli takie w których do zaszyfrowania wiadomości stosuje się wiele alfabetów szyfrowych. Przykładem tej kategorii szyfrów jest szyfr Vigenere’a.

Tabela częstości występowania liter w tekstach angielskich
Rys. 3. Tabela częstości występowania liter w tekstach angielskich

 

Szyfr Vigenere’a jest szyfrem bardziej skutecznym w porównaniu z opisanymi powyżej dzięki zastosowaniu aż 26 alfabetów szyfrowych. Proces szyfrowania rozpoczyna się od stworzenia tak zwanej tablicy Vigenere’a. Na górze tablicy znajduje się alfabet jawny, a w każdym kolejnym wierszu znajdują się alfabety szyfrowe – każdy przesunięty o jeden w stosunku do poprzedniego. Pierwszy alfabet szyfrowy przesunięty jest o jedną pozycję, drugi o dwie itd. Po wypisaniu wszystkich 26 alfabetów szyfrowych można przejść do szyfrowania wiadomości. Kolejnym krokiem jest ustalenie klucza, który zostanie użyty do zaszyfrowania wiadomości. Przedstawię proces szyfrowania na przykładzie wiadomości „divert troops to east ridge” („skieruj oddziały ku wschodniej grani”) przy użyciu klucza „WHITE”. Na początku należy napisać tekst jawny, a nad nim słowo kluczowe.

Słowo kluczowe, tekst jawny oraz tekst zaszyfrowany
Rys. 4. Słowo kluczowe, tekst jawny oraz tekst zaszyfrowany

 

Metody monoalfabetyczne i szyfr Vinegere’a zostały wyjaśnione na poniższym filmiku.

Należy powtarzać słowo kluczowe jeśli jest krótsze niż wiadomość którą chcemy zaszyfrować, natomiast jeśli słowo kluczowe jest dłuższe skracamy je by odpowiadało długością tekstowi jawnemu. Po wykonaniu tych czynności można przejść do procedury szyfrowania. Sprawdzamy jaka litera klucza odpowiada pierwszej literze tekstu jawnego, w tym wypadku pierwszą literą tekstu jawnego jest „d”, natomiast odpowiadającą jej literą słowa kluczowego jest „W”. Szukamy w pierwszej kolumnie litery „W” (znajduje się w 22 wierszu), następnie wyszukujemy w pierwszym wierszu litery „d”. Wypisujemy literę znajdującą się na przecięciu tego wiersza oraz kolumny, jest nią „Z”, czyli odpowiednikiem litery „d” w tekście jawnym jest litera „Z” z tekstu zaszyfrowanego. Kolejną literą klucza jest „H” znajdująca się w wierszu 7, na przecięciu wiersza odpowiadającego literze „H” oraz kolumny „i” znajduje się litera „P” i to ona jest drugą literą tekstu zaszyfrowanego. Jak można zauważyć, słowo kluczowe mające 5 liter sprawia, że wiadomość jest szyfrowana za pomocą pięciu różnych alfabetów. Oczywiście im dłuższe słowo kluczowe tym więcej alfabetów będzie użytych do zaszyfrowania, a tym samym szyfr będzie silniejszy.

Tablica Vigenere'a
Rys. 5. Tablica Vigenere’a

Szyfr Vigenere’a posiada jedną bardzo istotną zaletę, a mianowicie nie można go złamać za pomocą analizy częstości. W słowie „troops” znajdują się dwie litery „o”. W tekście zaszyfrowanym za pomocą szyfrów monoalfabetycznych pierwszemu „o” odpowiadać będzie taka sama litera jak drugiemu. Natomiast jak widać na rysunku 4 w zaszyfrowanym za pomocą szyfru Vigenere’a słowie „troops” podwójne „oo” zaszyfrowane zostało jako „HS”. Kolejną niewątpliwą zaletą jest ogromna ilość możliwych do zastosowania kluczy. Jako klucz przyjąć można praktycznie dowolne znajdujące się w słowniku słowo lub ich dowolną kombinację.

Obecnie stosowane szyfry można podzielić na dwa rodzaje: symetryczne oraz asymetryczne. O ile szyfry klasyczne można stosować bez używania komputerów, o tyle współczesne wymagają do zastosowania użycia komputera, gdyż szyfrowanie wykonywane jest na bitach lub bajtach.

Dodaj komentarz