Wykład 1 - łamacze szyfrów
Transkrypt
Wykład 1 - łamacze szyfrów
ŚCIŚLE TAJNE ŁAMACZE SZYFRÓW – kurs kryptologii WYKŁAD 1, str. 1 Wykład 1, w którym opowiemy o najstarszych metodach ukrywania informacji stosowanych niekiedy nawet po dzień dzisiejszy (oczywiście z uwzględnieniem postępu techniki)... Najstarsze inskrypcje, które z pewnością miały na celu ukrycie swej treści przed niepowołanym okiem, pochodzą ze starożytnego Egiptu, z okresu ok. 1.900 lat p.n.e. W najstarszych księgach Starego Testamentu niektóre pojęcia zapisywano szyfrem zwanym Atbasz; nie wiemy, czy użycie szyfru miało w tym wypadku na celu ukrycie treści, czy też podkreślenie wielkiej, Boskiej tajemnicy, z którą obcował czytelnik Pisma... Im bliżej naszych czasów, tym więcej pojawia się przykładów utajniania informacji oraz rośnie różnorodność jego form. Starożytni Spartanie utajniali niektóre przesłania nawijając spiralnie wąski pas skóry na drewnianą laskę (zwaną „skytale”), a następnie zapisując tekst przesłania wzdłuż laski; po rozwinięciu skórzanego pasa znaki występowały na nim w przypadkowej kolejności. Odbiorca czytał przesłanie po nawinięciu pasa na laskę o tej samej średnicy można powiedzieć, że średnica „skytale” stanowiła klucz do szyfru. Dość wcześnie pojawiły się trzy zasadnicze sposoby utajniania informacji, które zachowują swoją aktualność aż do dnia dzisiejszego: steganografia, kody i szyfry. Jako pierwsza pojawiła się bodaj steganografia, którą w języku polskim można określić bardziej swojskim mianem tajnopisu. 1. STEGANOGRAFIA Starożytny grecki pisarz Herodot przekazał informację o Greku Histiajosie, który służąc na dworze wielkiego króla Persji postanowił przesłać swemu krewnemu w Milecie informację o dogodnym momencie dla wzniecenia powstania przeciw perskim władcom. W tym celu przywołał jednego ze swoich niewolników, ogolił na łyso jego czaszkę i wytatuował na niej treść ostrzeżenia, po czym poczekał, aż posłańcowi odrosły włosy i wyprawił go w drogę do kraju. W starożytnych Chinach często zapisywano list na skrawku cienkiego jedwabiu, po czym zawijano go w gałkę wosku, którą posłaniec połykał. Opisane wyżej dwa przykłady to jedne z najstarszych zachowanych relacji o zastosowaniu technik steganograficznych. Istotą steganografii jest bowiem nie tyle ukrycie treści przekazu, lecz samego faktu, że przekaz ma miejsce. Strażnicy perskiej drogi królewskiej, którzy musieli wielokroć rewidować posłańca, z pewnością przeoczyli depeszę ukrytą pod włosami, zatem steganografia spełniła swoją rolę. Z czasem jej metody uległy wyrafinowaniu, © Marek Grajek, Szymon Dąbrowski ŁAMACZE SZYFRÓW – kurs kryptologii WYKŁAD 1, str. 2 kiedy użytkownicy uznali, że sam fakt wysyłania kuriera lub przesyłki budzi wystarczającą podejrzliwość ze strony wroga, jeśli nie zapewni się niewinnego i wiarygodnego zarazem powodu dla ich podróży. Zamiast więc ukrywać fakt przekazywania informacji, przesyłali pozornie niewinne wiadomości, ukrywając właściwą informację albo w ich treści, albo na jej nośniku. Przykładem jest rysunek motyla na ilustracji obok zrobiony przez „badacza owadów”, a w rzeczywistości generała armii brytyjskiej i przyszłego twórcę skautingu Roberta Baden-Powella. Jak się okazało motyl miał tu znaczenie drugorzędne - w rzeczywistości szkic przedstawiał narys i rozkład dział jednej z wrogich twierdz. Klasycznym, wykorzystywanym w celu ukrycia wiadomości sposobem było też użycie tzw. sympatycznych atramentów. Na karcie papirusu, pergaminu lub papieru notowano właściwą treść przekazu zapisując go np. mlekiem lub sokiem z cytryny (przy braku powyższych zawsze można było się posłużyć moczem), po czym po wyschnięciu pisma na tej samej karcie pisano normalnym atramentem list o zupełnie niewinnej treści, np. rodzinne pozdrowienia dla dalekiego krewnego. Nawet przy wnikliwiej rewizji posłaniec mógł utrzymywać, że przewozi jedynie niewinną korespondencję rodzinną. Właściwy odbiorca pisma ogrzewał je nad płomieniem świecy lub pocierał kartę szmatką nasączoną odpowiednim odczynnikiem i odczytywał tajną treść. Starożytne i średniowieczne poradniki pełne są receptur tajemnych atramentów, których nie wydobędą na jaw najpowszechniej stosowane przez przeciwnika odczynniki lub zabiegi. Epoka tajnych atramentów dobiegła kresu w zasadzie dopiero w czasie II wojny światowej, kiedy to Niemcy opracowali proces fizyczny pozwalający wydobyć na jaw praktycznie każdy rodzaj tajnego pisma. Alianci znaleźli w urzędach pocztowych pokonanej III Rzeszy dwa mniej lub bardziej zdewastowane egzemplarze tzw. „organów Wurlitzera”, których używano do badania poczty pod kątem obecności tajnego pisma na skalę przemysłową. Jak w prosty sposób stosować metody steganograficzne? Proszę zwrócić uwagę na słowo ‘przemysłową’ powyżej; znak ‘o’ został w nim zapisany nieco mniejszą czcionką, niż pozostałe litery. Zapewne przeoczyłeś, Czytelniku, ten fakt w pierwszym spojrzeniu. Teraz jednak, wiedząc czego szukać, bez trudu znajdziesz w pierwszym zdaniu poświęconym steganografii kilka znaków różniących się wielkością od pozostałych, które układają się we frazę ‘otoklucz’. © Marek Grajek, Szymon Dąbrowski ŁAMACZE SZYFRÓW – kurs kryptologii WYKŁAD 1, str. 3 Znaczące litery tekstu można wyróżniać na wiele sposobów; wielk ością, użyciem odmiennej czcionki, nieoczekiwanym użyciem ápostrofu lub podkreślenia. W czasie pierwszej wojny światowej popularną metodą utajniania informacji przekazywanych przez niemieckich szpiegów do Europy były tak zwane przekazy kropkowe. Wystarczało w tym celu kupić jakąkolwiek gazetę, pod kolejnymi literami tajnego tekstu delikatnie nakłuć stronę igłą, po czym umieścić egzemplarz w pakiecie gazet wysyłanych do jednego z neutralnych krajów w Europie, zakładając, że aliancki cenzor skupi swą uwagę raczej na listach, a nie gazetach. Zresztą, nawet w tym przypadku będzie szukać raczej śladów sympatycznego atramentu, niż niewinnych kropek na stronach. Jeszcze inną metodą przekazu było formułowanie pozornie niewinnej wiadomości, w której znaczące były jedynie wiadome odbiorcy znaki. Weźmy przykładowo frazę ‘Wiele minut ubiegło migiem: mimowolny dramat’: biorąc z niej jedynie trzecie litery każdego wyrazu otrzymujemy sekretną wiadomość ‘enigma’. Sformułowanie sensownego i niebudzącego podejrzeń tekstu maskującego stanowiło pewien problem, ale też depesze tego typu były zazwyczaj przesyłane jako telegramy handlowe, w których użycie np. listy towarów oraz umownych skrótów jest naturalne. 2. SZYFR CEZARA Popularną zabawą wśród dzieci były swego czasu łamigłówki, polegające na odwracaniu kolejności liter w wyrazach. Ten sam sposób bywał używany np. dla maskowania niezbyt pochlebnych przezwisk nadawanych nauczycielom. I tak LILIPUT zmieniał się w TUPILILa, LITERA w ARETILa, a SUPER w REPUSa (jak się wydaje, sami zainteresowani jedynie udawali, że nie rozumieją prawdziwego znaczenia tych ‘tajemniczych’ zwrotów). We wczesnym okresie rozwoju kryptologii podobne przekształcenia tekstu bywały zresztą traktowane zupełnie serio. Tyle tylko, że przekształcano zazwyczaj nie pojedyncze wyrazy, lecz cały alfabet, służący do ich zapisu. Jak wspomniano na początku wykładu pierwszym szyfrem, o którym wiadomość dotarła do naszych czasów, był system zwany Atbasz, stosowany w czasach opisanych w Starym Testamencie. Operował on na alfabecie języka aramejskiego w ten sposób, że pierwsza litera alfabetu była zastępowana przez ostatnią, druga – przez przedostatnią itd. Nazwa szyfru wywodzi się bezpośrednio od realizowanego przezeń przekształcenia (A zamienia się w T, Ba w Sz, itd.). Ten prosty szyfr nie zdołał jednak zdezorientować biblioznawców, którzy bez trudu odgadli, że nieznane słowo Szeszak w niektórych biblijnych przekazach odpowiada Babilonowi. Potem wyżej przez dłuższy czas dominowała opisana Steganografia, która, jak wiemy, do © Marek Grajek, Szymon Dąbrowski ŁAMACZE SZYFRÓW – kurs kryptologii WYKŁAD 1, str. 4 dzisiaj nie utraciła swego znaczenia. Jednak na przełomie naszej ery do łask powróciła kryptografia. Jej powrót dokonał się za sprawą Juliusza Cezara, który wśród licznych toczonych wojen musiał dysponować metodą poufnego przekazywania informacji wodzom swych wojsk. Wymyślił więc i używał własnego szyfru, który z czasem został ochrzczony jego imieniem. Według dzisiejszych standardów szyfr Cezara nie był szczytem kryptologicznego wyrafinowania. Polegał na zamianie każdej litery tekstu jawnego literą przesuniętą o trzy pozycje dalej w alfabecie. I tak litera A była zapisywana w szyfrogramie jako D, B jako E itd. Pełne przekształcenie realizowane przez szyfr Cezara przedstawiono poniżej: alfabet łaciński jawny: ABCDEFGHIKLMNOPQRSTUVXYZ alfabet łaciński szyfrowy: DEFGHIKLMNOPQRSTUVXYZABC W szyfrogramie Cezara jego imię, CAESAR, zostałoby zapisane jako FDHVDU. Z nieznanych nam przyczyn, być może po prostu na skutek rutyny, Cezar utrzymywał w swym szyfrze stałe przesunięcie trzech znaków pomiędzy alfabetem jawnym i szyfrowym. Innymi słowy, utajniał swe szyfrogramy używając ciągle tego samego klucza, co nie jest bezpieczną praktyką. Zapewne mógł pozwolić sobie na ten luksus prowadząc wojny głównie wśród plemion, które nie wiedziały nie tylko o istnieniu szyfrów, ale wręcz alfabetu. Gdyby jednak miał wojować z nieco bardziej cywilizowanymi przeciwnikami, jego szyfr okazałby się niebezpiecznie słaby. Sama konstrukcja sprawiała, że można było w nim użyć zaledwie 23 różne klucze, odpowiadające różnym przesunięciom wzajemnym alfabetów (ostatni, 24, przekształcał alfabet sam w siebie, co nie było rozwiązaniem użytecznym z punktu widzenia utajniania informacji). Innymi słowy, przeciwnik, który znałby zasadę konstrukcji szyfru Cezara, musiałby wypróbować co najwyżej 23 możliwości, by złamać każdą depeszę. Istnieje jednak stosunkowo prosty sposób, pozwalający podnieść bezpieczeństwo szyfru Cezara. W rzeczywistości – każdego szyfru, a kryptolodzy do dzisiaj korzystają z oferowanych przezeń możliwości. Jeżeli dysponujemy dwoma niezbyt mocnymi szyframi, możemy stosunkowo łatwo podnieść poziom bezpieczeństwa stosując je wobec tekstu jawnego po kolei. Moglibyśmy na przykład zastosować do słowa CAESAR najpierw dziecięcy szyfr polegający na odwróceniu kolejności znaków, a następnie zaszyfrować otrzymany rezultat klasycznym szyfrem Cezara. Spójrzmy na ten proces: tekst jawny: CAESAR szyfr ‘dziecięcy’: RASEAC szyfr Cezara: UDVHDF Ktokolwiek usiłowałby złamać ten szyfrogram, próbując kolejno zastosować doń wszystkie możliwe klucze szyfru Cezara, otrzyma nieistniejące w języku © Marek Grajek, Szymon Dąbrowski ŁAMACZE SZYFRÓW – kurs kryptologii WYKŁAD 1, str. 5 łacińskim słowo RASEAC. Czy zdoła domyślić się w nim Cezara pisanego wspak, zależy od jego intuicji i pomysłowości. W następnym wykładzie opowiemy o kolejnych szyfrach i sposobach ich łamania, tymczasem należy zmierzyć się z kilkoma zadaniami godnymi adeptów kryptologii na tym etapie kursu. Pozwolą one na przesunięcie rotorów Enigmy w panelu gracza, ale też, a może przede wszystkim, na uzyskanie dostępu do treści kolejnego wykładu... POWODZENIA zespół lamaczeszyfrow.pl © Marek Grajek, Szymon Dąbrowski