WST P DO KRYPTOGRAFII Grzegorz Szkibiel ul. Wielkopolska 15, pokój 206a konsultacje: wtorek 9.00-12.00 e-mail: szkibiel@wmf.univ.szczecin.pl www: wmf.univ.szczecin.pl/ szkibiel 1
Rozdziaª 1 Kryptograa a steganograa Kryptograa jako dyscyplina matematyczna zajmuj ca si metodami przesy- ªania wiadomo±ci w zakamuowanej formie tak, aby tylko adresat mógª odczyta wiadomo±, rozwin ªa si w drugiej poªowie dwudziestego wieku chocia» byªa ona stosowana znacznie wcze±niej. Do czasów drugiej wojny ±wiatowej szyfrów oczywi±cie u»ywano, jednak aparat matematyczny nie byª stosowany do ich tworzenia. Prawdziwa bomba wybuchªa, kiedy u»ywane od lat dwudziestych maszyny mechaniczne zostaªy zast pione przez komputery o du»ej mocy obliczeniowej. Wówczas okazaªo si,»e praktycznie ka»dy szyfr wynaleziony do tego czasu mo»e by zªamany w do± krótkim czasie. Zaistniaªa potrzeba szyfru, który nie tylko chroniªby tajemnice wojskowe, ale przede wszystkim informacje bankowe ukryte w ªatwo dost pnej sieci komputerowej. Z drugiej strony, na pocz tku lat siedemdziesi tych ujawniono w ko«cu, kto zªamaª tajemnic niemieckiej ENIGMY. To zmusiªo wielu matematyków i informatyków do gª bszego zainteresowania si,,now dziedzin nauki, która stanowi najszersz drog od matematyki do informatyki. Kryptograa jednak»e jest nauk si gajac jeszcze czasów staro»ytnych. W trakcie wykªadu przedstawimy gªównie histori tej nauki i tylko nieznacznie zaczepimy o najnowsze osi gni cia. 2
1.1 Steganograa Oprócz kryptograi, kamuowaniem wiadomo±ci zajmuje si te» steganograa. Ró»nica pomi dzy tymi dwiema dyscyplinami polega na tym,»e steganograa zajmuje si dosªownie,,chowaniem tekstu jawnego, a kryptograa zast powaniem go tekstem zaszyfrowanym. Kryptograa wraz ze steganogra tworz dziedzin nauki zwan kryptologi. Poni»ej opiszemy najpopularniejsze metody steganografów. Jedn z metod jest u»ywanie w tek±cie dwóch charakterów pisania poszczególnych liter. Litery napisane inaczej utworz ukryty tekst. Innym sposobem jest robienie maªej przerwy tu» przed liter, któr chcieliby±my»eby adresat przeczytaª. Zamiast pisa dªugi i nic nie znacz cy tekst mo»na wykorzysta tekst ju» napisany (np. gazet lub ksi»k ) i zaznaczy potrzebne litery tak, aby nikt niepowoªany nie domy±liª si, ze co± jest zaznaczone. Inn metod jest wskazanie ci gu liczb pokazuj cych pozycj danej litery b d¹ w alfabecie, b d¹ te» w jakiej± ksi»ce. Na przykªad posªuguj c si ksi»k Neal'a Koblitza,,Wykªad z teorii liczb i kryptograi mo»emy zaszyfrowa sªowo,,mama ci giem liczb 21 26 31 2. Ci g ten rozszyfrowujemy licz c litery od okre±lonego miejsca w ksi»ce. W naszym przypadku jest to pocz tek tekstu,,wst pu. By wskaza po» dany ci g liczb mo»emy posªu»y si cho by pudeªkiem domina przesªanym w paczce. Aby ukry wiadomo± mo»na te» si posªu»y rebusem, lub te» labiryntem z literami w korytarzach. Prawidªowe przej±cie takiego labiryntu ujawni nam ukryty tekst. Podobnie, wiadomo± mo»emy schowa w obrazek z dziwnymi detalami, który staje si czytelny, gdy w odpowiedniej od niego odlegªo±ci mrugniemy oczami i zobaczymy trójwymiarowy rysunek. Obraz, jako taki, te» mo»e posªu»y steganografowi do ukrycia wiadomo±ci. Na przykªad pewne detale (¹d¹bªa traw lub tym podobne) mog ukªada si w kod Morse'a. Ciekaw grup metod steganogracznych jest zamiana ukrywanej wiadomo±ci w ªatwo, ale na pewno ¹le zrozumian wiadomo± brzmi c caªkiem nieszkodliwie. Mo»na rozró»ni tu dwie kategorie: maskowanie i zasªanianie. Maskowanie wymaga najpierw zgody obu stron co do przekazywanego kodu. Cz sto stosuj to bryd»y±ci, którzy trzymaj c odpowiednio papierosa lub robi c szereg niewinnych czynno±ci, w istocie przekazuj sobie informacje. Mistrzami w przekazywaniu zamaskowanych informacji s te» wi ¹niowie, którzy tworz swój swoisty»argon. niektóre sªowa w tym»argonie to dziura, paka wi zienie; ±nieg, cukier kokaina; obczyszczenie kradzie» itp. 3
W czasie drugiej wojny ±wiatowej, Amerykanie zatrudnili radiooperatorów, którzy rozmawiali w swoim ojczystym j zyku Nawaho. Japo«czycy nie mogli przechwyci i zidentykowa»adnej z wysyªanych wiadomo±ci. Bardzo dobry (jak na tamte czasy) niemiecki szyfr ENIGMA zostaª, jak wiadomo, zªamany. Mówi c o maskowaniu, trudno jest tu nie wspomnie o audycjach radia BBC w 1944 roku, gdzie w±ród tzw, prywatnych wiadomo±ci zapodziaªo si hasªo,,dªugie struny jesiennych skrzypiec, a jaki± czas pó¹niej,,rani me serce monotonnym brzmieniem. Oznaczaªo to dokªadn dat i miejsce inwazji na Francj. Niemiecka Abwehra Admiraªa Canarisa rozszyfrowaªa dokªadnie t wiadomo±, która dotarªa do wszystkich niemieckich jednostek z wyj tkiem stacjonuj cej w Normandii VII armii. Do dzi± nie wyja±niono w peªni, dlaczego armia ta nie zostaªa ostrze»ona. Wspomnie mo»emy tak»e o audycjach Polskiego Radia, nadaj cych sªynne,,uwaga, uwaga, nadchodzi, KO-MA 27. Tak»e Japo«czycy,»eby przekaza swoim statkom wiadomo± o wojnie z USA u»yli sªów,,higaszi no kaze ame (wschodni wiatr, deszcz). Sªowa te zostaªy wplecione w prognoz pogody i powtórzone dwukrotnie. Z maskowaniem sªów za pomoc zjawisk meteorologicznych trzeba jednak mocno uwa»a, o czym przekonaªa si Miss Holly Golightly w lmie,, niadanie u Tianiego. Przekazana przez ni,,wiadomo± o pogodzie, która brzmiaªa,,±nieg w Nowym Orleanie byªa mocno podejrzana i stró»owie prawa skojarzyli to sobie z handlem kokain. Zasada zasªaniania tekstu najcz ±ciej jest typu,,czytaj nt liter po okre±lonym znaku. Mo»e to by spacja, pocz tek nowej linii tekstu lub samogªoska. Zasªanianie stosowali powszechnie»oªnierze, którzy chcieli przekaza miejsce swego pobytu rodzinie, ale nie mogli tego zrobi w ocjalny sposób. Dla jednego z nich nie sko«czyªo si to dobrze, poniewa» rodzice w li±cie powrotnym spytali go:,,gdzie jest to Nutsi? Nie mo»emy znale¹ tego w»adnym atlasie!. Równie» Kornel Makuszy«ski w ksi»ce,,szatan z siódmej klasy u»yª ten rodzaj zasªaniania. Bohater ksi»ki tak sprytnie napisaª list,»e jego przyjaciele bez wi kszego trudu rozszyfrowali wiadomo±, któr chciaª przekaza. Inny sposób zasªaniania wymaga szablonu, którym zasªania si napisany tekst. W okienkach szablonu odczytujemy nasz ukryt wiadomo±. Metoda ta wymaga jednak doskonaªego wyczucia miejsca umiej tno±ci dopasowania tekstu tak, aby odpowiedni wyraz znalazª si w wyznaczonym szablonem miejscu. 4
1.2 Szyfry przestawieniowe Szyfry przestawieniowe (lub anagramowe) s tak»e rodzajami steganogramów. Dokªadnie,»eby zaszyfrowa pewien teks przestawiamy jego litery wedªug okre±lonego algorytmu. Przytoczymy tu dwa przykªady szyfrów przestawieniowych. Szyfr pªotowy. Ukªadamy litery tekstu,,wzdªó» pªotu, tj. wzdªó» ªamanej zªo»onej ze sko±nych odcinków. Wysoko± pªotu jest okre±lona liczb liter przypadaj c na jeden odcinek ªamanej. Nast pnie tekst zaszyfrowany odczytujemy wierszami. Na przykªad, chc c zaszyfrowa tekst INSYGNIA MIERCI pªotem o wysoko±ci 3, zapisujemy I G R N Y N A M E C S I I I i przepisujemy ig±rnynamecsiii. Generalnie, przy szyfrowaniu obowi zuje zasada,»e w tek±cie zaszyfrowanym nie ma znaków interpunkcyjnych ani spacji. Mo»e to prowadzi do nieporozumie«, ale zasada ta utrudnia te» ewentualne ªamanie szyfru. Przy pªocie wysoko±ci 5, zaszyfrowany tekst kªsókipr ew»i, to KSI E PÓŠKRWI. Szyfr kwadratowy. Tekst, który chcemy zaszyfrowa wpisujemy w kwadrat (lub kilka takich samych kwadratów) wierszami, a jako szyfr odczytujemy kolumnami, i to wedªug pewnej permutacji. Na przykªad, u»yjemy kwadratu 4 4 z permutacj (12)(34) i zaszyfrujemy tekst KOMNATA TAJEMNIC. Poniewa» tekst ten ma mniej ni» 16 liter, na jego ko«cu dopisujemy dowolne litery (tzw. nulle) i wpisujemy tekst w kwadrat K O M N A T A T A J E M N I C X Odczytuj c kolumy wg kolejno±ci 2 1 4 3, otrzymujemy otjikaanntmxmaec. Istotn wskazówk identykuj c szyfr kwadratowy jest fakt,»e liczba liter w tek±cie zaszyfrowanym jest wielokrotno±ci kwadratu liczby naturalnej n. Sama liczba n oznacza dªugo± boku kwadratu. Np. tekst aeim«lkifzinocyofz ma 18 liter, co mo»e oznacza,»e zostaª u»yty szyfr kwadratowy z kwadratem o boku 3, a do zaszyfrowania u»yto dwóch kwadratów. 5