Tartalmi kivonat
Budapesti M szaki F iskola – Kandó Kálmán Villamosmérnöki F iskolai Kar Számítógéptechnikai Intézet - Székesfehérvár Bevezetés a kriptográfiába I. A kriptorendszerek els generációja Segédlet az Információtechnika c. tárgy Kriptográfia fejezetéhez Dr. Tóth Mihály f iskolai tanár Táskaszám: 2002. szeptember SZKÜTALI Spártai vezéri pálca, amit a rátekert szalaggal titkosításra is használtak. Az American Cryptogram Association (ACA) hivatalos szimbóluma Felel s kiadó: Dr. Bognár Sándor f igazgató Készült a BMF Sokszorosító üzemében M szaki vezet : Bélteky István Példányszám: 200 Munkaszám: 2 Tartalomjegyzék Bevezetés a kriptográfiába. 5 El szó. 5 Titkosítás és rejtés . 6 Kriptorendszerek generációi. 7 Alapfogalmak és jelölések. 9 Néhány általános megjegyzés a kriptorendszerekr l . 11 Az ó-egyiptomi írások és nyelv. 14 Az ó-egyiptomi írások és nyelv. 14 A sumér nyelv. 15 A sumér nyelv. 15 A
krétai lineáris B írás . 15 A megfejtések ma is hasznosítható tanulságai . 17 A megfejtések ma is hasznosítható tanulságai . 17 Els generációs kriptorendszerek . 18 A helyettesítés. 18 Monoalfabetikus helyettesítési módszerrel titkosított szöveg feltörése . 28 A reciprocitás elve . 40 A feltörés „receptje” . 40\ A 2.1 megfejtési példa tanulságai 43 Az els generációs rendszerek uniformitásai . 45 A két- és több-bet6s (biliterális, polyliterális) helyettesítések . 47 Mire jó a szövegstatisztika?. 48 A ; teszt . 50 A koincidencia-index . 51 A transzpoziciós titkosítás . 52 A geometriai titkosítás . 52 Miért geometriai ez a titkosítás?. 53 Transzpozició forgatható ráccsal. 55 A transzpoziciós titkosítási transzformáció jellegzetes tulajdonságai. 56 Az ismételt transzformációk . 57 A szorzat-transzformáció és az invertálhatóság . 58 3 Tárgymutató . 61 Szakirodalom. 63 4 1 Bevezetés a kriptográfiába1 El
szó Amióta az ember ismeri az írást és olvasást, azóta igény van arra is, hogy valamely leírt szöveget csak annak az elolvasására hivatottak legyenek képesek elolvasni és értelmezni. Más esetekben az írásokat, vagy a mai képregények ókori megfelel it éppenséggel arra szánták, hogy lehet leg minél több ember képes legyen azokat értelmezni. Az utóbbi kategóriába tartoznak pl a királyok nagy tetteit, isteni származását, dics ségét vagy törvényeit megörökít képek, feliratok, de ide tartoznak azok a feliratok, lenyomatok, jelek is, amelyek hitelesíteni hivatottak e jelekkel ellátott írásokat, okleveleket, kereskedelmi szerz déseket, rendelkezéseket, mint pl. az akár 4000 évnél is régebbr l el került pecsétek 1 A nyílt, mindenki által (t.i aki a nyelvet tudja) megérthet információk titkosításának, és az ilyen titkosított információ megfejtésének tudományát nevezik idegen szóval kriptográfiának (Cryptography). Ezt a
szót aztán az angol terminológia szóösszetételekben, jelz s szerkezetekben és igeként is használja ( Pl., Cryptoanalysis, Criptographic sg Cryptanalyst, Cryptosystem stb.) A Cryptosystem kifejezés felöleli egy titkosítási/megfejtési rendszer módszereit, sajátságait Helyette a szó szerinti fordítását, azaz a „kriptorendszer” megnevezést alkalmazzuk. Ismert és a magyar szaknyelvben használatos szó a francia eredet "sifrírozás" (angolban: encryption) szó is, valamint a származékai (pl. "desrifrírozás"), aminek az angol terminológiában a "cyphering - decyphering" szópár a megfelel je A sifrírozást (vagy a "cyphering"-et) persze jól helyettesíthetjük a "titkosítás" szóval, s még a "titkosított szöveg" kifejezés is elmegy (a "ciphertext" helyett), a fosztóképz s alakokra (desifrírozás, decyphering) azonban már új szót kell találnunk, mint pl.
"megfejtett" szöveg, vagy megfejtett kód. Ezek kissé nehézkesen hangzanak Az azonos alapelven m köd "cyphering" és "decyphering" gy jt fogalmaként alkalmazott "cipher" (vagy a francia chiffre) fogalom magyar megfelel jének megtalálásával aztán végképp gond van: esetenként kiírjuk helyette a "titkosító - megfejt " (eljárás) kifejezést, vagy egyszer en csak titkosító <esetleg kódoló< eljárásról beszélünk, de beleértjük a megfejtést is. Az alábbiakban, ahol csak lehet, magyar kifejezéseket használunk, de esetenként elkerülhetetlen valamelyik idegen eredet kifejezés magyar helyesírás szerinti átírásának használata. Ahol lehet, zárójelben vagy lábjegyzetben megadjuk az angol szakkifejezést is azoknak, akik az angol szakirodalmat olvassák. Jóllehet a magyarnyelv szakirodalomban használják már a "kriptográfia" helyett a "titkosítás" szót, ez még korántsem
elfogadott, s addig, amíg jobb szó nincs rá, itt a "kriptográfia" szót és válfajait is használjuk. Az alábbiakban nem csak lábjegyzetben, hanem a f szövegben is összefoglaljuk azokat a legfontosabb fogalmakat és megnevezéseket, amelyeket használni fogunk. 5 Mind a kétféle célnak léteznek a mai megfelel i. Az el bbiek a mai modern titkosírások, üzenetek, az utóbbiak pedig a valamilyen dokumentumot hitelesít , annak eredetét, tulajdonjogát, szerz jét azonosító technikák. Ma már sok országban ?így Magyarországon is? törvény gondoskodik arról, hogy ezeket az (elektronikus) technikákat a hagyományos aláírásokkal és hitelesítési módszerekkel azonos jogérvény6nek fogadják el mind a közigazgatásban, mind a mindennapi joggyakorlatban. Miért aktuális kérdés ma a kriptográfia gy6jt néven összefoglalt témakör és annak alkalmazásai? Nos nagyjából a második világháború végéig (és az azt követ további két
évtizedben) a titkos üzenetváltást szinte kizárólag katonai és diplomáciai célokra alkalmazták. Ez persze nem jelenti azt, hogy élesesz6, a rejtvények készítését és megfejtését szórakozásnak tekint emberek nem készítettek korábban is titkos írásokat vagy nem foglalkoztak elfelejtett nyelvek írásainak megfejtésével, de a titkosírások széleskör6, civil alkalmazásának és elterjedésének kezdetei kb. az 1970-es évek közepére tehet k Titkosítás és rejtés Említettük, hogy amióta írás létezik, annak az igénye is létezik, hogy az írott üzenetet csakis az arra illetékes személy vagy személyek legyenek képesek elolvasni és értelmezni. Bizonyos mértékig szóban közölt információkra is érvényes ez a megállapítás. „Nicht for dem Kinder” ? mondták a szül k egymásnak, ha olyasmi került szóba, amit nem a jelenlév gyerekeik fülének szántak.2 A második világháborúban a csendes óceáni amerikai flottánál navaho
(Navajo) indiánokat alkalmaztak híradósokként olyan alkalmakkor, amikor szóban kellett a japánok számára érthetetlen üzeneteket küldeni és nem volt id körülményes titkosításra és megfejtésre, valamint az üzenetküld személyének a hitelesítésére. Az ókorban a titkosírások mellett vagy helyett elterjedten alkalmazták az üzenetek elrejtését is. Még olyan kuriózus módszereket is (a görögök), hogy egy rabszolga leborotvált fejb rére tetoválták az üzenetet s megvárták míg kin a haja. Ez után küldték el az „üzenetet” saját lábán a címzettnek Polybios ?Kr.e 200 – 120 élt görög történetíró? a háború tudományáról írt könyvében titkosírási módszerek mellett rejtési módszereket is leír. Egy általa ismertetett módszer az, hogy egy ártatlannak látszó szöveg egyes jószerivel észrevehetetlenül megjelölt bet6it összeolvasva kapjuk meg a rejtett üzenetet. Polybios maga ólomlemezre írt üzenet egyes bet6it
apró t6szúrásokkal ajánlotta megjelölni Fény felé tartva az ólomlemezt, jól láthatóan el t6ntek a jelölések3 E módszernek egy változatát aztán még a második vi2 Feln ttek körében azonban nem illik olyan nyelven párbeszédet folytatni, amit nem ért meg a jelenlév k közül mindenki. Sajnos sok magyar turista gondolja külföldön, hogy úgysem érti senki, ha magyarul mondanak dehonesztáló megjegyzéseket egymásnak, pedig a legváratlanabb helyeken és alkalmakkor is lehet a közelükben olyan, aki megérti a magyar szót. Akár egy afrikai szafarin is a bennszülöttek között is. 3 Polybios még arra is kitért, hogy a vékony ólomlemezre írt üzenetet be lehet varrni egy saru dupla talpb rei közé és akkor sem megy tönkre, ha a sarú elázik. A következ kben még visszatérünk Polybiosra, de jegyezzük meg, hogy els sorban a történetírói tevékenységér l ismert s nem a titkosírások területén kitalált vagy leírt módszereir l. 6
lágháborúban is használták úgy, hogy a diplomáciai postával küldött nyomtatott újságok egyes bet6it jelölték meg pl. szabad szemmel nem is látható mikropontokkal. Számos láthatatlan tintát is használtak, ami csak vegyi hatásokra vagy h re vált láthatóvá Ma az elektronikus üzenetekben is elrejthet információ. Képekben pl úgy, hogy egy-egy képponthoz tartozó un. szín byteok legkisebb helyiérték6 bitjeibe rejtik az információt Ez ugyan megváltoztatja a kép színeit, de csak szemmel észrevehetetlen mértékben. Meglep en sok ilyen rejtett információt tartalmazhat egy-egy kép Ezzel a rejtési módszerrel azonban az a probléma, hogy elvész, ha a képet tömörítik, vagy editálják (átméretezik, a kontrasztját megváltoztatják, stb.) Lényegében ugyanígy, a legkisebb helyiérték6 bitekben lehet információt elrejteni hang fileok esetében is Html formátumú fileoknál kihasználható, hogy a formátum információt hordozó un
„tag”-ek nem érzékenyek a kisbet6-nagybet6 váltásra s így információt hordozhatnak pl. a nagybet6k Sajnos az un „fed szöveghez” képest igen kevés a „tag”, tehát csak kevés információ rejthet imígyen Az álló vagy mozgó képekbe, vagy hangfilokba rejtett információ ma leginkább az elektronikus „vízjel” szerepét tölti be és a copy-right információk hordozására alkalmazzák. Az információrejtés, idegen szóval szteganográfia, nem tartozik a kriptográfia témaköréhez, ezért majd másutt foglalkozunk vele részletesebben. Kriptorendszerek generációi Jóllehet ma már nem szokás a számítástechnika (ill. a számítógépek) és alkalmazásaik újabb s újabb eredményeit egy-egy új „generációként” emlegetni, érdemes arra emlékezni, hogy korábban a számítógépek un generációit lényegében az alkalmazott technika határozta meg. Ennek alapján neveztük (kés bb) az elektroncsöves számítógépeket els generációs
gépeknek, a félvezet s és un. ferrit-logikás számítógépeket második generációs számítógépeknek, s így tovább Ennek az írásnak a szerz je úgy véli, hogy hasznos lehet a kriptorendszerek generációiról beszélni annak alapján, hogy milyen technikák jellemz ek az egyes generációkra. Teszi ezt annak a tudatában, hogy a mai modern kriptorendszerek, és különösen azok alkalmazásai már olyan széles területet érintenek (és olyannyira összefüggenek pl. az adatbiztonsági és kommunikációs kérdésekkel), hogy ma már nem érdemes újabb generációkról beszélni, mint ahogyan a számítógépek esetében sem tesszük Nem a kriptográfia az egyetlen terület, amelynél az újabb s újabb rendszerek öröklik a megel z rendszerek valamely lényeges tulajdonságait. A kriptográfia mindenesetre ilyen Ezért nem csak érdekes, hanem a modern rendszerek megértéséhez szükséges is, hogy a korábbi, „történeti” kriptorendszerek lényegét
megértsük, legalább röviden foglakozzunk ezekkel a rendszerekkel. A kriptorendszerek generációinál egészen biztosan nagy szerepe van az alkalmazott titkosítási/megfejtési módszereknek, technikának, közös néven 7 4 az un. transzformációs módszereknek , de nagy szerepe van az üzenet továbbítási technikájának is, vagyis a kommunikációs technológiának5 is. Eszerint a kriptogenerációkat két technológia együttesen határozza meg. Nevezetesen a transzformációs és a kommunikációs technológia. Valahogyan úgy, ahogyan ezt a következ ábra szemlélteti NYÍLT SZÖVEG TITKOSÍTOTT SZÖVEG KÓDOLÁS DEKÓDOLÁS NYÍLT SZÖVEG TITKOSÍTÁS MEGFEJTÉS KOMMUNIKÁCIÓS TECHNOLÓGIA TRANSZFORMÁCIÓS TECHNOLÓGIA Jóllehet alább részletesebben is szólunk még a kriptorendszerek egyes generációiról, a következ táblázatban összefoglaljuk a legfontosabb jellemz iket. 4 A nyílt szöveget a titkosítási eljárás során átalakítjuk, más
szóval transzformáljuk. Innen az elnevezés 5 Szigorúan véve ez nem „csak” a kommunikációs technikát jelenti, hanem azokat a nagyon ravasz módszereket is, amelyekkel az üzenet sértetlensége legalább ellen rízhet és nagy biztonsággal csakis a küld és a címzett között jöhet létre a kívánt kapcsolat. Mindezeket gy jt néven protokolloknak szokás nevezni 8 GENERÁCIÓ JELLEMZHJE KOMMUNIKÁCIÓS TRANSZFORMÁCIÓS TECHNOLÓGIA Monoalfabetikus Helyettesítés Nagyon ritkán: keverés Nem jellemz 2. Polialfabetikus és blokkos Helyettesítés (kézi módszerrel) KULCSSZÓ Nem jellemz 3. Mint az el z de nagyon sok ábécével Bet nkénti helyettesítés (elektro) mechanikus (pl. rotoros) géppel Rádió kommunikáció Produkt-transzformációk sok rundban. Igen nagy kulcstér. Nagyon nagy számítási igény. Számítógéppel segített blokkos transzformációk, amelyeknek nem létezik a kulcs nélküli algoritmusos feltörése, csak a nyers
er módszere. Kommunikáció a világhálón, magánhálózatokon, vagy legalább virtuális magánhálózatokon 1. 4. Alapfogalmak és jelölések Az „eredeti”, titkosítatlan szöveg6: nyílt szöveg. Angol terminológiával: plaintext vagy cleartext Ha a nyílt szöveget egy képletben egyetlen betüvel jelöljük (ld alább), akkor arra a „P” jelölést használjuk a „Plaintext” kifejezés rövidítéseként. A titkosítás után kapott, a beavatatlan számára érthetetlen szöveg: a titkosított szöveg, kód vagy kriptogram.7 Angol terminológiával: ciphertext Ha a titkosított szöveget egy képletben egyetlen betüvel jelöljük (ld. alább), akkor arra a „C” jelölést használjuk a „Ciphertext” kifejezés rövidítéseként. 6 A „szöveg itt bármilyen karaktersorozat lehet, tehát számok is, vagy egy képpontokból álló kép egyes pontjaira vonatkozó (színvagy szürke-árnyalat) információk sorozata. 7 A „kód” mindenesetre sokkal
általánosabb fogalom, mint a „kriptogram vagy siffe”. Nehéz is definiálni, mint a nagyon széles körben használt fogalmakat általában. Azt mondhatjuk, hogy a „kód” valamilyen információnak valamilyen adott szempont szerinti leginkább alkalmas megjelenítési formája. Többnyire nem is titkosítás a célja Gondoljunk pl a Morze kódra, a tengerészeti jelzések nemzetközi kódjaira, vagy éppenséggel a DNS-ben kódolt genetikai információra. Kódnak tekinthet azonban pl a közlekedésrendészeti táblákon egyegy „ikonnal” jelzett, nyelvhez nem kötött információk rendszere is A titkosírások rendszerében azonban a „kód” a titkosított szöveget (ciphertext, siffre vagy kriptogram) jelenti. „Kódolóknak” nevezik azokat az embereket, akik a titkosítással foglalkoznak és „kódtör knek” azokat, akik a titkosított szövegek megfejtésével. Ld pl David Kahn klasszikus könyvét [8] William F. Friedman (a második világháború híres
kódtör inek egyike) elég élesen megkülönbözteti a kriptogram és a kód fogalmát. Szerinte a kriptogramot úgy kapjuk, hogy valamilyen kriptográfiai módszerrel (algoritmussal) transzformáljuk a nyílt szöveg egyes karaktereit vagy rögzített hosszúságú karaktercsoportjait, blokkjait. Maga a transzformációs algoritmus változatlan, míg a hozzá alkalmazott kulcs változik. Ezzel szemben a titkosítási kódot egy un. kódkönyvvel állítjuk el , amelyben tetsz leges karakterekhez, szavakhoz, több szavas kifejezésekhez, rész-szavakhoz egy-egy szimbólumot, vagy karaktercsoportot rendelünk hozzá. 9 A titkosítási eljárás: kódolás vagy siffrírozás. Angol terminológiával: encryption (vagy encipherment). Ezért az erre vonatkozó képletekben „E”-vel rövidítik. Érdemes megjegyezni, hogy ez a titkosítási (vagy –más szóval- kódolási) folyamat valamilyen algoritmus szerint átalakítja, azaz transzformálja a nyílt szöveget. A kulcs
(angolul: key) az egész titkosítási és megfejtési eljárás igen-igen fontos eleme. Ezért aztán fontos az is, hogy az arra illetékes személyeken kívül ne juthasson senki más birtokába A titkosítási eljárás és a kulcs együttesen hozza létre a nyílt szövegb l a titkosított szöveget. Ezt így jelöljük: EK(P) = C Lényeges, hogy ugyanaz a titkosítási eljárás ugyanabból a nyílt szövegb l más kulccsal más titkosított szöveget hoz létre, azaz EK1(P) EK2(P) ha K1 K2 A kulcs (vagy az egész titkosítási rendszer) kompromittálódásának nevezzük azt, ha a titkosítási kulcs arra illetéktelen személy birtokába jut. Ilyenkor szokás azt mondani, hogy arra illetéktelennek sikerült betörnie (betörés) a rendszerbe. Már itt hangsúlyozzuk, hogy a betörések túlnyomó többségének az oka emberi gondatlanság, a biztonsági el írások be nem tartása szokott lenni. (Pl elbocsátott dolgozó bosszúja, akinek a távozásakor nem cserélték ki
a kulcsokat, nem újították meg a jelszavakat, stb.) Egy adott titkosítási rendszerhez általában sokféle kulcs tartozhat, de egyáltalán nem mindegy, hogy hányféle. Ha egy kriptorendszernek mondjuk összesen 26 féle kulcsa létezhet, akkor biztosan nem nehéz és nem id igényes dolog kipróbálni mindegyik kulcsot egy ismeretlen kriptogram megfejtésére, mert még a legrosszabb esetben is megtalálható a megfelel kulcs a 26. próbálkozásra Egy konkrét kriptorendszerben alkalmazható valamennyi lehetséges kulcs összességét kulcstérnek nevezzük, és az adott kriptorendszer biztonsága annál nagyobb lehet, minél nagyobb a kulcstér. A titkosított szöveg visszafejtése a dekódolás vagy desiffrírozás. Angol terminológiával: decryption (vagy decipherment) Ezért az erre vonatkozó képletekben „D”-vel rövidítik. A desiffrírozás a titkosított szövegb l, azaz a kriptogramból el állítja az eredeti nyílt szöveget. Képletben: DK(C) = P A
desiffrírozás (=dekódolás) a titkosítási (=kódolási) eljárás ill. algoritmus inverze A dekódolási eljárás is transzformáció, amely a titkosított szöveget alakítja vissza az eredeti nyílt szöveggé. Kivétel nélkül minden tradicionális titkosítási rendszerben ugyanazt a kulcsot használták a kódoláshoz és a dekódoláshoz, bár nem feltétlenül ugyanolyan módon. (Gondoljunk pl. arra, hogy egy ajtó bezárásához és kinyitásához is ugyanazt a kulcsot 10 használjuk, de záráskor egyik irányba, nyitáskor pedig az ellenkez irányba kell a kulcsot elforgatni.) Szimmetrikus rendszereknek nevezzük azokat a titkosító rendszereket, amelyek ugyanazt a kulcsot használják a kódoláshoz és a dekódoláshoz. Mint említettük az imént, minden tradicionális titkosító rendszer ilyen volt egészen 1976-ig, amikor is feltalálták az un. aszimmetrikus (vagy más szóval: nyiltkulcsú) rendszereket, amelyekben más a kódolás kulcsa és más a
dekódolásé, de a két kulcs valamilyen bonyolult, és kívülálló számára megfejthetetlen módon összefügg egymással. A kódoló és a dekódoló eljárást, valamint az azokhoz használatos kulcsok rendszerét együttesen kriptorendszernek (Cryptosystem) nevezzük, a kriptorendszerekkel foglalkozó tudományt pedig kriptográfiának. A titkosított szöveg (= kriptogram) megfejtésére persze kiváncsi olyan ember is, aki nem ismeri a titkosítási kulcsot, bár lehet, s t valószín6, hogy a titkosítási módszert mégis csak felismeri. A kulcs nélkül azonban vagy egyáltalán nem tudja megfejteni a titkosított szöveget, vagy csak többkevesebb nehézséggel. Az ilyen (tehát a kulcs ismerete nélküli) megfejtést kriptoanalízisnek vagy kód(fel)törésnek nevezik. A kriptoanalízisnek nem feltétlenül célja a titkosított szöveg visszafejtése. Lehet, hogy csak a kulcsát szeretné megismerni, amellyel aztán további szövegeket már könnyen meg tud fejteni. Az
ilyen megfejtésekkel foglalkozó emberek a kódtör$k (Codebrakers) vagy kriptoanalizátorok (Cryptanalists). Néhány általános megjegyzés a kriptorendszerekr l Valamikor úgy gondolták, hogy a titkosítás lényege annak a módszere, mert a módszer az, amire az illetéktelen úgy sem képes rájönni. Ezért aztán a titkosítás története során több módszerr l is állították, hogy az megfejthetetlen Ez többé-kevésbé igaz is volt a technikai fejl désnek azon a szintjén, amely akkor állt fenn, amikor az adott módszert feltalálták. Legalább 200 éve rájöttek azonban arra, hogy a titkosításhoz használt kulcs az, ami igazán egyedivé és igazán biztonságossá teszi az alkalmazott módszert. A titkosítási módszer és a kulcs (vagy kulcsok) szerepe és jelent sége tehát nagyon is különböz . A ma használatos modern kriptorendszerek esetében a titkosítási módszer nem csak nyilvános, hanem egyenesen szabványosított8, és ugyanúgy közzéteszik,
mint bármely más szabványt. Nagyon sokszor és nagyon jól használhatók a kriptorendszerek lényeges tulajdonságainak megértetésére a zárak és lakatok analógiái. A mondottak szemléltetésére hadd említsük meg, hogy pl. egy ajtó zárjáról rendszerint 8 A szabványosítást megel z en egy-egy kriptorendszert annyi megbízhatósági próbának vetnek alá (pl. igen magas díjakat t znek ki adott id n belüli feltörésükre), hogy akármelyik potenciális felhasználó biztos lehet abban, hogy egy szabványos titkosító rendszer valószín leg sokkal biztonságosabb, mint egy csakis az használatára kitalált új és egyedi titkosító rendszer, amelynek esetleg egyáltalán nincsenek el zetes referenciái. 11 els rátekintésre megállapítható, hogy milyen rendszer6 zárról van szó (pl. un. cilinderzár), vagy egy számzáras táskáról az, hogy azon számkombinációs zár van, de a zár rendszerének az ismerete nem jelenti azt, hogy az kulcs nélkül
is kinyitható. (Tekintsünk el itt és most a zárak feltörésének mestereit l, akiknek mellesleg tetemes id re lehet szükségük a bonyolult zárak feltöréséhez.) Tulajdonképpen két eset van: 1. Vagy található az adott kriptorendszerhez valamilyen algoritmus, amely lehet vé teszi a kulcs nélküli megfejtést is ill. azt, hogy a kulcsot meghatározzuk (analógia az álkulcs), 2. vagy nincs hozzá (ismert) megfejtési algoritmus ebben az esetben nincs más mód a rendszer feltörésére, mint az összes lehetséges kulcs kipróbálása. Ezt nevezik a nyers er$ (brute force) módszerének. A kriptográfia története során megfejthetetlennek nevezett rendszerek esetében azok feltalálásakor nem volt a feltörésükre alkalmas módszer, de azonnal feltörhet vé váltak, amint ilyen módszert találtak. (A kés bb tárgyalandó un de Vigenere rendszer esetében azért erre az „azonnalra” majdnem 300 évet kellett várni.) Ezek a rendszerek tartoznak tehát a fenti 1
csoportba Ha a kriptorendszernek nem létezik (ismert) algoritmikus feltörési módszere, akkor nincs más lehet ség, mint valamennyi elképzelhet kulcsot sorra kipróbálni. Ezt nevezik a nyers er (brute force) módszerének Ezek a rendszerek tartoznak a fenti 2 csoportba és ezeknél van nagy jelent sége a kulcstér méretének. Tulajdonképpen az elképeszt en nagyméret6 kulcstér jelenti a mai modern rendszerek biztonságát is. Az un er s kriptorendszereknél olyan nagy a lehetséges kulcsok száma, hogy a mai leggyorsabb számítógépekkel is ezerévekbe (vagy még hosszabb id be) kerülne valamennyi lehetséges kulcs végigpróbálgatása. (Párhuzamos processzálásnál ez az id lényegesen rövidebb, de még ekkor is elképzelhetetlenül hosszú lehet.) Nem nyilvánvaló azonban, hogy egy újonnan felfedezett kriptorendszer az 1. vagy a 2. csoportba tartozik-e Lehet, hogy az innovátor meg van gy z dve arról, hogy az általa felfedezett kriptorendszernek nincs
algoritmikus feltörési módszere s kés bb valaki mégis talál hozzá ilyen módszert.9 Ezért szokás a szabványosítás el tt nyilvánossá tenni az új rendszereket és versenyt hirdetni azok feltörésére. A szabványosításra csak azután kerül sor, hogy a bevezetend új rendszer kiállta a kriptográfusok minden elképzelhet „támadását”. Ebben rejlik a szabványos kriptorendszerek megbízhatósága 9 Konkrét példák vannak arra is, hogy jelenleg nem létezik algoritmikus feltörési módszer és arra is, hogy egy kriptorendszerhez a rendszer publikálása után kés bb mégis találtak ilyet. Az el bbi esetre példa az RSA rendszer, amelynek az az alapja, hogy csak próbálgatással lehet eldönteni egy igen nagy (pl. 200 jegy ) számról, hogy az prímszám-e, vagy ha összetett szám, akkor melyek a törzstényez i. Ezért az un faktorizáción alapuló titkosítási módszerek (mint amilyen az RSA módszer is) csak addig megbízhatóak, amíg nem találnak
valamilyen gyors algoritmust az igen nagy számok törzstényez inek a meghatározására. (Már 300 éve hiába keresnek ilyen módszert, de ez nem jelenti azt, hogy nem is létezhet.) ellenpélda az un. knapsack titkosítás, amely a kitalálásakor igen megbízhatónak látszott de kés bb El Gamal talált hozzá algoritmikus megfejtést. Ezért a knapsack titkosítást nem is tekintik er s kriptorendszernek 12 Az elmondottakból következik, hogy a modern (er s) kriptorendszerek mind a 2. csoportba tartoznak, legalább is a mai ismereteink szerint10 A titkosító rendszereket kitaláló kriptográfusok és a kriptoanalizátorok (akik nemegyszer ugyanazok) között egyfajta verseny van: Melyikük képes túljárni a másik eszén? Melyik tud olyan rendszert alkotni, amit a másik nem tud feltörni, vagy fordítva: ki tudja el bb, vagy egyáltalán feltörni azt a rendszert, amelyet egy másik megalkotott? Ezért a kriptorendszerek kitalálásakor mindig gondolni kell arra, hogy
hogyan lehet azt úgy megalkotni, hogy legalább is nagyon megnehezítsük a feltörést megkísérl dolgát. Az alábbiakban mi is úgy tárgyaljuk a kriptorendszerek generációit, hogy megvizsgáljuk azok feltörési lehet ségét, módszerét is El bb azonban összefoglaljuk, hogy mit is kell tudni ahhoz, hogy megkísérelhessük egy titkosírás megfejtését. Ehhez a következ négy dolog kell: 1. Jó ha (legalább nagyjából) ismerjük azt a nyelvet, amelyen az a nyílt szöveg íródott, amelyb l el állították a megfejtend kriptogramot. 2. Valamilyen módon rá kell jönnünk, hogy milyen módszert alkalmaztak a titkosításhoz. (Identifikáció, azonosítás) 3. Meg kell határozni a titkosító rendszer vagy gép kezdeti beállítását11 4. Végül, de egyáltalán nem utolsó sorban, fel kell törni a rendszert, azaz meg kell fejteni a titkosírást, ha erre egyáltalán van valami remény. Az utóbbi félmondat a megfejtés egzisztenciájára utal. Más szóval arra,
hogy ha lehet (és nagyon sokszor lehet), akkor vizsgáljuk meg el ször, hogy egyáltalán érdemes-e a megfejtés fáradságos munkájához hozzálátni. Nincs-e annak valamilyen elvi vagy gyakorlati korlátja? 10 Felmerülhet az a kérdés, hogy elképzelhet -e olyan titkosítási rendszer, amely nem „csak” a mai ismereteink szerint, hanem elméletileg is feltörhetetlen. Erre a kérdésre az a válasz, hogy igen, elképzelhet Nem tudunk (ma) arról, hogy meg is valósítottak ilyen rendszert, de ha a titkosítás valamilyen fizikailag meghatározhatatlan elvre épül, akkor a természettörvényekb l következik, hogy feltörhetetlen Ilyen fizikai elv viszont létezik: Heisenberg határozatlansági tétele 11 Kés bb, a harmadik generációs (rotoros, elektromechanikus) titkosító gépeknél pl. nem „csak” a titkosítási kulcs lényeges, hanem az a kezdeti beállítás is, amelyb l a gép kiindul, amikor egy üzenet titkosítását elkezdi. Ilyen gép volt pl az un
Enigma, amelynél a kulcsot az éppen használt rotorok és azok sorrendje jelentette, a kezdeti beállítást pedig a kezdeti rotor-poziciók és az un. dugaszok kombinációja Ilyen kezdeti beállítás azonban a modern szimmetrikus rendszereknél is van. A DES üzemmódjai kapcsán pl szó lesz egy un kezdeti vektorról (Initial vector), ami nem azonos a titkosítás kulcsával. Klasszikus rendszereknél –mint amilyen pl. a Cézár kerék- a kezdeti beállítás egyúttal a titkosítási kulcsot is jelentette Általános esetben azonban más dolog a kezdeti beállítás és más dolog a kulcs. 13 Ez más szóval a megfejthet séget jelenti. Egészen nyilvánvaló pl, hogy ha csak nagyon kevés szöveg áll a rendelkezésünkre, akkor eléggé reménytelen azt megfejteni, míg ha sok, azonos módon titkosított szövegünk van, akkor több a remény a megfejtésre.12 Ezt a tapasztalatot alátámasztják egyes mára már elfelejtett (vagy nem ismert) nyelven és nem ismert
szimbólumokkal írt ókori írások megfejtései is. Az un. krétai lineáris B írást Michael Ventris és John Chadvick –a zsenialitásukon kívül- azért is tudták megfejteni, mert elég sok ezzel írt írás állt a rendelkezésükre, míg az ugyancsak Kréta szigetén talált un. phaistosi korong írása –többek között- azért megfejtetlen, mert mindmáig nem állnak rendelkezésre vele azonos írással írt más szövegek, vagyis túl kevés az elemezhet szövegmennyiség. Nagyon tanulságosak ebb l a szempontból az ókori írások megfejtései, amelyek egyrészt kultúrtörténeti mérföldkövek, másrészt vannak a mai kriptográfiában is hasznosítható tanulságaik. Ezért a kriptorendszerek generációinak tárgyalása el tt a következ kben röviden áttekintünk három, kultúrtörténeti írás-megfejtést. Az ó-egyiptomi írások és nyelv Az egyiptomi nyelv és írás ismerete nem maradt fenn úgy, mint pl. az ókori görögé, kínaié és a latiné.
Pythagoras (Kr.eVIsz) állítólag éveket töltött Egyiptomban, ahol a papoktól megtanulta a nyelvet is és az írást is, de ennek semmi nyoma nem maradt fenn az írásaiban. Alexandriai Kelemen egyházatya ( kb. Kru200) már tudta, hogy egyiptomban háromféle írást használtak Horapollon (Kr.u Vsz) eredetileg kopt nyelven írt írása a hieroglifákról görög átiratában maradt fenn s tartalmaz ugyan ma is jónak tartott megfejtéseket az ó-egyiptomi írásjelekr l, de annyira félrevezet magyarázatokkal, hogy azok elfogadhatatlanná teszik az egészet. (Vak tyúk is talál szemet) A megfejtéseivel az is baj, hogy csak szójelket ad meg, jóllehet ezek nem az egyetlen és nem is a legjelent sebb csoportja a hieroglifáknak. 1799-ben Rasid (Rosette) közelében Bonaparte Napóleon katonái sáncásás közben találták meg a Rosette-i követ, amelyre háromféle írással vésték rá ugyanazt a feliratot (t.i feltételezték, hogy mindhárom ugyanaz): Hieroglif,
hieratikus és görög írással. A k 196-ból származik J.FChampollion 1822-ben publikálta a megfejtést, 20 évi munka után Csak 1828-ban jutott el el ször Egyiptomba és nem sokkal kés bb, 42 éves korában meghalt. A hieroglif írás történeti, vallási, rituális (szent) szövegek k bevéséséhez használt képszer6 jeleket tartalmaz, de nem képírás. A megfejtések magánhangzói különböz ek Az írásjelek csak utalnak a hangértékekre A hieroglif 12 Erre Shannon egy információelméleti megfogalmazást is adott, amellyel majd a szimmetrikus kriptorendszerek tárgyalása során megismerkedünk. 14 írást többnyire jobbról balra írták, de találtak balról jobbra, és felülr l lefelé írt szövegeket is. A köznapi életben az írnokoknak diktálták a szöveget s ennek a leírására nem volt alkalmas a hieroglif írás. Ezért már az írásbeliség kezdetén kialakult egy másik írás is, amely rendszerében hasonlít a hieroglif írásra, de a
megjelenési formája egészen más. Ezt az írást a görögök hieratikusnak (= papi, szent) nevezték A Kr.el tti VIII-VII században ebb l fejl dött ki az un demotikus írás (a görög demos = nép szóból van a neve) Ez egyszer6bb jeleket és rövidítéseket tartalmaz és igen nehéz olvasni. Mind a hieratikus, mind a démotikus írást mindíg jobbról balra írták. A sumér nyelv • • • Szóvégz déseket (pl. ragokat) használó, un agglutináló nyelv Olyan sok ékírásos táblát sikerült Babilonban és Ninivében kiásni, hogy szignifikáns statisztikai analízist lehetett elvégezni. Rendelkezésre állt egy korábbi megfejtésb l a hasonlóan ékírásos perzsa írás megfejtése. Rawlinson megfejtésének (persze) el zményei is voltak. Nevezetesen az, hogy a perzsák is ékírást használtak, amit viszont nem Rawlinson, hanem egy a rejtvényfejtést hobbiból m6vel német középiskolai tanár: Georg Friedrich Grotenfeld fejtett meg. Ez a megfejtés is
érdekes és tanulságos. Rawlinson a sumér nyelvet fejtette meg, s nem az ékírást Egyébként is abból indult ki, hogy talált egy többféle írással k bevésett feliratot és feltételezte, hogy mindegyik írás ugyanazt a jelentést hordozza, bár különböz nyelveken. A sumér nyelv is szóvégz déseket, ragokat használ, mint a magyar, de e struktúrális sajátságon kívül semmilyen más nyelvi hasonlóságra nem akarok ezzel utalni. Vannak agglutináló nyelvek és kész Ha azonban valaki olyan foglalkozik egy agglutináló nyelv megfejtésével, aki anyanyelvének logikája attól teljesen különböz , nos az igen nagy nehézségekkel bírkózik. Így volt ezzel Henry Creswicke Rawlinson (1810-1895) is, aki 1844-t l politikai ügynök volt Bagdadban és aki végül is 1844-ben babiloni ékírásos táblák alapján megfejtette a sumér nyelvet. A megfejtés történeti érdekessége, hogy nagy segítségére volt Rónai Jácint, aki az 1848-as magyar szabadságharc
honvédtisztje volt és 49-ben Angliába emigrált. Rawlinson asszisztenseként dolgozott és a magyar anyanyalv6 Rónai számára semmiféle nehézséget nem jelentett egy ugyancsak agglutináló, de egyébként ismeretlen nyelv logikájának megértése. (Csak érdekességként: Az ékírás angol neve: cuneiform.) Ha a magyar nyelvben minden különböz végz dést külön-külön esetnek tekint valaki, akkor több, mint 800 esetet kell megkülönböztetnie. Ez el tt egyszer6en értetlenül áll egy angol anyanyelv6 ember (hacsak nem éppen idegen nyelvek megfejtésével foglalkozik, mint pl. Randall K Nichols professzor, az ACA volt elnöke a George Washington egyetemen.) A krétai lineáris B írás 15 • • • • • Nem volt ismert a nyelv, amelyet használtak Sok írásminta állt rendelkezésre Jó hipotézisekb l indult ki Ventris (és Chadwick) és képes volt összefüggések megtalálására Agglutináló nyelvr l és szótagírásról volt szó. Michael Ventris
1952-ben publikálta a megfejtést A krétai un. lineáris B írás megfejtéséhez sok írást találtak, ezért szignifikáns statisztikai analízist tudtak elvégezni. Ellenpélda az ugyancsak Krétán felfedezett un lineáris A irás, amelyb l kevés írásminta van és talán ezért, máig sem fejtették meg. Michael Ventris, aki megfejtette, építész volt és nagyon jó vizuális memóriával rendelkezett, ami segítette abban, hogy különböz írásminták jelei között összefüggéseket fedezzen fel. Megvizsgálták pl., hogy összesen hányféle jelet használtak (Nem volt nyilvánvaló, hogy a nagyon hasonló, de nem azonos jelek csak az írnokok egyéni eltérései-e, vagy tényleg különböz jelekr l van szó) Mintegy 86 jelet találtak, ami egy bet6írás ábécéjének túl sok, egy képíráshoz viszont túl kevés jel. Ezért feltételezték, hogy szótag-írásról van szó A 86 jel azonban még nem dönti el, hogy nem bet6írásról van szó, mert egy csomó
ábécében vannak olyan jelek is, amelyeknek nincs hangértékük, hanem csak a kiejtésre vagy a hangsúlyra utalnak, vagy egyszer6en csak az írás díszít elemei. Pl a 28 bet6s ábécével rendelkez arab írásnál igen fontos az írás dekoratív hatása, ezért vannak bet6k, amelyeket másképp írnak a szó elején, a végén, vagy a szó belsejében. Ventris feltételezte, hogy a megtalált krétai írások raktározási listák és nyilvántartások, tehát f leg csak f neveket és mennyiségeket tartalmaznak. Zavaró volt a dátumok teljes hiánya. Bizonyos jellegzetességek alapján feltételezték, hogy itt is agglutináló nyelvr l van szó Ez munkahipotézis volt, amely végül is m6köd képesnek bizonyult. Michael Ventris 1948-ban kezdett el foglalkozni a krétai lineáris B megfejtésével, miután a hadseregt l leszerelt. 1952-ben volt a „nagy áttörés” Kb ekkor jött rá, hogy a görög (akháj) nyelv egy nagyon régi, Homéroszt legalább 500 évvel megel z
változatáról van szó. Ventris autóbalesetben halt meg 34 éves korában 1956-ban. A krétai lineáris B írás megfejtésér l John Chadwick-kel együtt írt könyvet, ami Ventris halála évében, 1956-ban jelent meg. Chadwick-nek jelent s szerepe volt mind a munkahipotézisek felállításában, mind a megfejtésben. 16 A megfejtések ma is hasznosítható tanulságai • • • • Elegend en sok szöveggel kell rendelkezni ahhoz, hogy szignifikáns statisztikai elemzéseket lehessen végezni. A használt nyelv statisztikai szerkezetének ismerete nagyon nagy segítség a megfejtéshez. Ha az ismeretlen szöveg ismert nyelven is rendelkezésre áll, akkor ez kulcs a megfejtéshez. Ha a szöveg ill. a nyelv ismerete nélkül is következtetni lehet az eredeti szöveg értelmére (vagy legalább a rendeltetésére) akkor ez is segítség a megfejéshez Térjünk vissza ezek után a kriptorendszerek generációinak tárgyalásához. 17 2 Els generációs
kriptorendszerek Az els generációs kriptorendszerek legjellemz bb tulajdonsága az, hogy un. monoalfabetikus13 rendszerekr l van szó, amelyek a titkosított szöveg (= kriptogram, cyphertext) el állításához egyetlen titkos ábécét használtak. Ez a titkos ábécé persze lehetett valamilyen egyedi, a beavatatlan számára ismeretlen szimbólumkészlet is, de használható volt a mindennapi nyílt szövegek írására alkalmazott ábécé is úgy, hogy a kriptogram ábécé bet6i a nyílt szöveg ábécéjének más-más bet6ihez voltak hozzárendelve, azokat helyettesítették. Pl úgy, hogy a nyílt szöveg minden bet6je helyett az utána következ negyedik bet6t írták a titkosított szövegbe. Már az els generációs kriptorendszerek bevezették a titkosítási transzformációk két alaptipusát, nevezetesen • a helyettesítést és • a transzpoziciót (permutációt) vagyis a bet6k összekeverését. Ezt a két alapvet transzformáció-tipust aztán valamennyi
kés bbi generáció alkalmazta. A negyedik generációs, modern kriptorendszerek mindkett t vegyesen. A helyettesítés Jóllehet a kezdetekt l ismert volt mindkét említett transzformációs eljárás, mégis inkább a helyettesítés volt az, amelyet gyakrabban alkalmaztak az els t l a harmadik generációs kriptorendszerekben. Ezért mi is egy nagyon népszer6 els generációs kriptorendszeren, az un. Cézár-féle titkosítási eljáráson mutatjuk be a helyettesítési transzformáció legfontosabb tulajdonságait Jegyezzük meg azonban, hogy a Cézár-féle titkosítási módszer egyáltalán nem az egyetlen helyettesítést alkalmazó titkosítás 13 Pontosabb, ha azt mondjuk, hogy monoalfabetikus, vagy egyetlen kriptogram ábécére visszavezethet rendszerekr l van szó, de itt, e rendszerek bevezetésekor még nem szeretnénk a fogalmakat bonyolítani. Kés bb, a helyettesítési módszerek tárgyalása után majd példaként megemlítünk olyan titkosítást is, amelynél
a nyílt ábécé egy-egy bet jét pl. kétbet s bet csoport helyettesíti. 18 Legyen pl. a nyílt szöveg írásához használt ábécé a következ : AÁBCDEÉFGHIÍJKLMNOÓÖXPRSTUÚÜVYZ Legyen a nyílt szöveg pl. ABACUS Ha a nyílt szöveg mindegyik bet6jét az alkalmazott ábécé t le jobbra es negyedik bet6jével helyettesítjük, akkor a titkosított szöveg az adott példában a következ : DÉDFVÜ Megfejtésnél a kriptogram minden egyes bet6jét az alkalmazott ábécében a t le balra es negyedik bet6vel kell helyettesíteni. A könnyebb megkülönböztetés kedvéért írjuk csupa kisbet6vel a kriptogram szövegét. Akkor az adott példa esetében a nyílt szöveg (csupa nagybet6s) ábécéjét egy négy bet6hellyel eltolt csupa kisbet6s ábécével helyettesítjük. A Á B C D E É F G H I v y z a á b c d e Í J K L M N O Ó Ö H P R S T U Ú Ü Y V Y Z é f g h i í j k l m n o ó ö p r s t u ú ü Látható, hogy a kriptogram ábécének a
táblázat jobboldalán „kicsúszó” négy bet6jét a táblázat elejére írtuk be (vastagított bet6k). Az adott esetben tehát a nyílt szöveg csupa nagybet6s ábécéjét egyetlen, csupa kisbet6s kriptogram ábécével helyettesítettük. Az alkalmazott titkosítási technológia tehát monoalfabetikus helyettesítés, mert csak egyetlen kriptogram ábécét használunk ti. a csupa kisbet6b l állót. Elvileg mindegy, hogy a kriptogram ábécé bet6kb l áll-e vagy valamilyen, az adott titkosíráshoz kitalált speciális szimbólumkészletb l. A fenti példában bemutatott egyszer6 titkosírás kapcsán is sokmindent lehet elmondani. Néhány jellemz je a következ : • A titkosírás küld je és címzettje el re meg kell, hogy állapodjon az alkalmazott ábécében, beleértve ebbe a bet6k felsorolási sorrendjét is. Ezt akár a korábban már említett kezdeti beállításnak is tekinthetjük • Ugyancsak el zetesen meg kell, hogy állapodjanak a kriptogram ábécé
eltolásának mértékében, ami az adott esetben a titkosírás kulcsa. Az ábécé bemutatott eltolásán alapuló monoalfabetikus helyettesítést Cézár-féle titkosításnak nevezik, mert úgy tudjuk, hogy Julius Caesar alkalmazta el ször a gall háborúban (amikor még nem is volt császár). A Cézár-féle titkosíráshoz egy nagyon egyszer6 eszköz, az un. cézár kerék alkalmazható. Ez nem más, mint két, koncentrikus tárcsa, amelyek kerületére egyenl közökkel fel van írva az adott esetben alkalmazott ábécé (és ha egyéb jeleket, pl. bet6közöket is használnak, akkor azok a jelek is) A két tárcsát egymáshoz képest annyi pozicióval elforgatva, amennyit az 19 adott kulcs meghatároz, a kerületeken egymás alá ill. fölé kerülnek a nyílt szöveg és a kriptogram bet6i. Cézár kerék A küls –nagybet6s- kerék a nyílt szöveg, a bels –kisbet6s- kerék a kriptogram ábécét tartalmazza. Az ábécék (itt) nem tartalmazzák pl. a szóköz
karaktert és írásjeleket, számokat sem Itt mindkét ábécé 32 bet6s. Egyébként feltétel is, hogy a nyílt szöveg ábécéjében ugyanannyi karakter legyen, mint a kriptogram ábécében, de nem feltétlenül kell a két ábécé karakterkészletének megegyeznie. Az ábrán a küls és a bels kerék egymáshoz képest nincs elforgatva. A cézár-kerék „automatikusan biztosítja azt, hogy a bels kerék elforgatásakor az ábécé végén lév bet6k a küls kerék ábécéjének elején lév bet6k alá kerüljenek. A Cézár-féle monoalfabetikus helyettesítéshez egy igen célszer6 matematikai modell is rendelhet , nevezetesen n karakteres ábécé esetén a modulo n összeadás (a kódolásnál) ill. a modulo n kivonás (a dekódolásnál) 20 Ehhez az kell, hogy az alkalmazott n karakteres ábécé minden karakteréhez monoton növekv sorrendben14 egy-egy számot rendeljünk 0-tól (n-1)-ig.15 A nyílt szöveg titkosításakor a kulcsnak megfelel egyetlen számot
kell hozzáadni a nyílt szöveg aktuális karakterének a sorszámához s megkapjuk a kriptogram megfelel karakterét. Ha az összeg nagyobb lenne n-nél, akkor ki kell bel le vonni n-et s így kapjuk meg a kriptogram aktuális karakterének a sorszámát. Használjuk pl. az el bbi cézár-keréknél is alkalmazott magyar ábécét és titkosítsuk az ABACUS szót úgy, hogy a titkosítási kulcs most a 9 sz bet6, azaz H. A nyílt szó A B A C U S Sorszáma 0 2 0 3 2 5 2 3 A H kulcs 9 9 9 9 9 9 Az összeg 9 1 1 9 1 2 3 4 3 2 A mod 32 összeg 9 1 1 9 1 2 2 0 A kriptogram H Í H J B A Dekódoláskor a mod 32 kivonás m6veletét kell alkalmazni, azaz a kriptogram szöveg bet6sorszámaiból kell kivonni a kulcsbet6 sorszámát és ha negatív számot kapnánk eredményül, akkor ahhoz a modulust hozzá kell adni. Az adott példa esetében a következ képp: A kriptogram H Í H J B A A bet k sorszámai 9 1 1 9 1 2 2 0 A H kulcs 9 9
9 9 9 9 A különbség 0 2 0 3 -7 -9 A mod 32 különbség 9 1 1 9 1 2 2 5 2 3 A visszafejtett szöveg A B A C U S 14 Elvileg nem kikötés, hogy a számsorrend monoton növekv legyen, de mind az n karakterhez más-más szám kell, hogy tartozzék 0-tól (n-1)-ig. A monoton növekv sorrend számozás ezt biztosítja és pontosan megfelel a példában bemutatott, nem „kevert” ábécéj Cézár-féle titkosításnak is. 15 Nagyon lényeges, hogy a számozást 0-tól kell kezdeni, mert –mint a Számítástechnika algebrai alapjai c. tárgyban kifejtettükegy m veletnek csak akkor van inverze, ha van egységeleme és a mod n additív m veletnek éppen 0 az egységeleme 21 A Cézár-féle helyettesítési titkosításnak számos változata van. Elegend talán csak azt megemlíteni, hogy a kriptogram ábécé nem bet6szimbólumokból is állhat és ha ugyanolyan bet6kb l áll is, mint a nyíltszöveg ábécé, akkor is más lehet a kriptogram
ábécében a bet6k sorrendje. A példaként bemutatott eset a legegyszer6bb. Mivel itt 32 karakterb l áll az ábécé, a két kerék is 32 féle elforgatási poziciót vehet fel. Láttuk, hogy a Cézár-féle titkosítás kulcsa a két kerék egymáshoz viszonyított poziciója. Mivel itt 32 pozíció lehetséges, ezért 32 kulcs létezik, amelyek közül a legels nem is forgatja el egymáshoz képest a kereket, tehát nem is titkosít. Említettük már, hogy a nyers er$ (brute force) módszerének nevezzük bármilyen kriptogram olyan feltörését, amikor egyszer6en végigpróbálgatjuk valamennyi lehetséges kulcsot. A bemutatott Cézár-féle titkosításnál (az adott 32 karakteres ábécét feltételezve) 32 féle kulcs létezik, amelyeket nagyon könnyen és gyorsan végig lehet próbálgatni. Ennek a titkosításnak tehát nagyon kicsi a kriptográfiai er$ssége (= ellenállóképessége a feltörési kísérletek ellen), mert kicsi a kulcstér, azaz a lehetséges kulcsok
száma Ha figyelembe vesszük azt, hogy a kriptogram ábécében a bet6k permutálhatók is, akkor nagyságrendekkel nagyobb ugyan a nyers er vel kipróbálandó lehet ségek száma, de a monoalfabetikus helyettesítéssel el állított titkos szöveg nem csak a nyers er módszerével, hanem más úton-módon is feltörhet . Ezt mutatjuk be a következ kben A monoalfabetikus helyettesítés egyik tulajdonsága (és egyúttal gyengesége is) az, hogy a nyílt szöveg ugyanazon bet6jéhez a kriptogramban is mindig ugyanaz a bet6 tartozik. Egy beszélt nyelv (más szóval természetes nyelv) esetében a különböz bet6k különböz gyakorisággal fordulnak el . A magánhangzók gyakorisága pl általában nagyobb, mint a legtöbb mássalhangzóé és sem a magánhangzókból sem a mássalhangzókból nem állhat túl sok egycsomóban, azaz a nyelv nem engedi meg a széls séges torlódásokat. Az ilyenfajta tulajdonságokat gy6jt néven a nyelv statisztikai tulajdonságainak nevezzük,
amelyek jól kihasználhatók a kriptogram kulcs nélküli megfejtésénél, azaz feltörésekor. Ehhez persze tudni kell, hogy milyen nyelven írták azt a nyílt szöveget, amelynek a sifrírozott formája a kezünkben van. No és persze az sem közömbös, hogy rendelkezésünkre áll-e annyi szöveg, amennyib l már szignifikáns statisztikai következtetéseket tudunk levonni. Shannon képletet is adott az utóbbi kérdésre, azaz arra, hogy mennyi az a minimális szöveghossz, ami már elegend a statisztikai elemzésre. (Erre majd kés bb még kitérünk.) Itt elegend annyit mondani, hogy kb 200 bet6t tartalmazó kriptogram már többnyire elegend a sikeres statisztikai elemzésre a monoalfabetikus helyettesítéssel végzett titkosítások esetén, ha a nyílt szöveg nyelvezetének a statisztikai tulajdonságai ismertek. 22 Egészen pontosan négy dolgot kell (vagy kellene) tudnunk ill. ismernünk a kriptogram feltöréséhez:16 1. A nyílt szöveg nyelvét, nyelvezetét17
2. A nyílt és a kriptogram ábécét mint demonstrálni is fogjuk). 18 (amelyek nem feltétlenül azonosak, 3. A nyílt szöveg nyelvére vonatkozó legfontosabb statisztikai adatokat 4. Elegend en hosszú és statisztikailag szignifikáns kriptogramot (Erre mondtuk azt, hogy kb. 200 bet6b l álló kriptogram rendszerint elegend .) Az alábbiakban feltételezzük a következ ket I. A nyílt szöveg nyelve a magyar irodalmi nyelv II. A nyílt szöveg ábécéje a már alkalmazott 32 bet6s magyar ábécé a szóközzel kiegészítve, azaz a következ kben 33 karakteres nyílt ábécét tételezünk fel. A kriptogram ábécében azonban nem használunk szóközt, hanem a nyílt szöveg szóköz-karakterét a kriptogram ábécében valami olyan karakterrel helyettesítjük, ami a nyílt ábécében nem fordul el . III. A bet6gyakoriság és bet6pár-gyakoriság adatokat Arany János Toldijának a szövegelemzéséb l külön erre a célra készült programmal határozta meg e sorok
írója.19 16 Egy helyettesítési kriptogram feltörését demonstráló példa tanulságainak levonása után majd a 40. oldalon visszatérünk még arra, hogy a kriptoanalízis nagy doájenje, William F. Friedman szerint milyen m veletekre van szükség egy kriptogram feltöréséhez. 17 Nem elegend azt tudni, hogy a nyílt szöveg nyelve pl. magyar, mert szignifikáns eltérések lehetnek a magyar irodalmi nyelv és egy mai újságszöveg nyelvezete között. Arany János irodalmi nyelve pl nem használta a Q, W, X, bet ket, de egy mai újságszövegben el fordulhatnak idegen nevek, amelyekben ezek a bet k is megtalálhatók és az Y sem csak a magyar irodalmi nyelv GY, LY, NY, TY bet párjaiban található meg. Széls séges példa a játékos „eszprente” nyelvezet, amelyben az összes magánhangzó közül csak az E és az É fordul el . 18 Ezt sem határozza meg egyértelm en a nyílt szöveg nyelve. A kriptogram ábécékben ugyan nem szokás számjegyeket
szerepeltetni, hanem ehelyett szöveggel írják ki a számokat, és nem szokás a kis- és a nagybet k megkülönböztetése sem Egyáltalán nem mindegy azonban, hogy a szóköz el fordul-e a kriptogram ábécében vagy sem. Ennek az az oka, hogy bármelyik természetes nyelvben a szóköz gyakorisága messze a legnagyobb, ezért a kriptogram bet inek gyakoriságelemzésével nagyon könnyen meg lehet állapítani, hogy milyen karakter helyettesíti a szóközt. (Ld alább) 19 Az idegennynelv szakirodalom nem csak a saját nyelvére, hanem más nyelvekre is megad ilyen statisztikákat. (Pl [2] és [5]) Ismételten elkövetik azonban azt a hibát, hogy nem tesznek különbséget ugyanannak a bet nek az ékezetes és ékezet nélküli alakja között az el fordulási adatok meghatározásakor, pedig a magyarban pl. az A és az Á bet , vagy az E és az É bet egészen más hangalakot jelöl. (Itt azonban írott szövegekr l van szó és nem a hangalakokról, ezt hangsúlyoznunk
kell!) Az ékezetek elhagyása a szöveg jelentését is megváltoztathatja, ezért tartottuk fontosnak a statisztikák meghatározásakor az ékezetes és az ékezet nélküli bet k megkülönböztetését. 23 Lássuk el ször a magyar nyelv bet6gyakoriság statisztikáit. A Toldi 1%-nál nagyobb bet6gyakoriságai Sorrend Gyakoriság 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Bet6 ASCII kódok 0,146 0,070 e 0,063 a 0,057 t 0,044 n 0,044 l 0,041 s 0,031 k 0,030 r 0,029 o 0,028 i 0,027 g 0,026 á 0,025 m 0,025 z 0,022 é 0,021 y 0,017 d 0,014 v 0,013 b 0,011 h 0,011 j 0,204 egyéb 32 101 97 116 110 108 115 107 114 111 105 103 225 109 122 233 121 100 118 98 104 106 1,000 2.1 táblázat Az elemzés a teljes Toldi 73603 karakterére terjed ki.20 Az elemzésb l kivettük a soremelés és hasonló vezérl karaktereket valamint az írásjeleket. (A soremelés és a vessz gyakorisága is az els 25 karakter között szerepelne.) Az elemz program megkülönböztette a
kis- és a nagybet6ket. Az utóbbiak sem szerepelnek a fenti statisztikában. Figyelemre méltó, hogy a szóköz karakter (amelynek ASCII kódja 32) gyakorisága több mint kétszerese az utána következ legnagyobb gyakoriságú bet6ének, nevezetesen az e bet6 7%-os gyakoriságának. Ezért is állítottuk korábban, hogy a monoalfabetikus helyettesítésnél nagyon egyszer6en megállapítható, hogy van-e a szóköz karaktert helyettesít szimbólum a kriptogram ábécében. 20 A szöveget a Magyar Elektronikus Könyvtár internetes szolgáltatta. 24 Csak az érdekesség kedvéért megadjuk egy 34384 bet6s újságszöveg (több cikk) egyes bet6inek az el bbihez hasonló gyakoriság statisztikáját is. Egy 2002.nyári újságszöveg 1%-nál nagyobb bet6gyakoriságai Sorrend Gyakoriság 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23. Bet6 ASCII kódok 0,127 0,079 e 0,070 a 0,067 t 0,050 l 0,048 s 0,046 n 0,041 k 0,041 o 0,039 z 0,037 r 0,035 i 0,033 á 0,028 é
0,025 m 0,024 g 0,017 y 0,016 d 0,016 v 0,014 b 0,010 p 0,010 ó 0,126 egyéb 32 101 97 116 108 115 110 107 111 122 114 105 225 233 109 103 121 100 118 98 112 243 1,000 2.2 táblázat Ebben a táblázatban az y is bekerült az 1%-nál nagyobb gyakoriságú bet6k listájába. Talán azért, mert a vizsgált újságszövegek egy olyan id szakból származtak, amikor sokszor fordult el az újságokban y–ra végz d név. 25 A következ kben szükség lesz hosszabb karaktercsoportok gyakoriság statisztikáira is, ezért el ször táblázatosan megadjuk ezeknek a csoportoknak a szakirodalomban szokásos elnevezéseit, majd a Toldi bet6csoportjainak elemzése alapján a leggyakrabban el forduló bet6párok, majd az egy és kétbet6s magyar szavak gyakoriságait.21 A karaktercsoport hossza (db.karakter) Elnevezések 1 Szingli karakter, betüstatisztika, singleton 2 Karakterpár, duplet, digraph, bigraph 3 Karakterhármas, triplet, trigraph 4 Karakternégyes, quadruplet,
tetragraph 5 5-ös karakterlánc, quintuplet, pentagraph Sokbet6s karakterlánc Polygraph,Bet6többes 2.3 táblázat Karakterláncok elnevezései Az idegennyelv6 elnevezésekben a görög „gráf” szó el tt a karakterlánc hosszát jelent görög számnevek állnak, az angolszász „tuple”22 végz dés6 elnevezésekben pedig a név prefixuma a latin számnevekb l származik. 21 Az el bbiek a szóköz-bet -szóköz karakterhármasok, az utóbbiak a szóköz-bet -bet -szóköz karakternégyesek gyakoriságait jelentik. Ugyanilyen válogatással megadhatók a szókezd (szóköz-bet ) bet k és a szóvégek (bet -szóköz ill bet -pont vagy bet -vessz ) statisztikái is, de ezekre itt nem térünk ki. Az [5] szakirodalom az angol szövegek statisztikai elemzésének mikéntjére számos példát és referenciát sorol fel, amelyek éppenséggel példát is adhatnának arra, hogy milyen elemzéseket kellene és lehetne a magyar szövegekkel kapcsolatban elvégezni. 22 A
matematikai szakkifejezések körében olyan összetételekben használják mint pl. n-tuple, amit szám n-esnek fordítunk 26 A 0,2%-nál nem kisebb relatív gyakoriságú betüpárok Arany János Toldijában Sorrend % Bigráf ASCII kódok Sorrend % 1 1,22 sz (115; 122) 29 0,39 2 1,13 gy (103; 121) 3 0,93 el (101; 108) 4 0,87 en (101; 110) 5 0,7 tt (116; 116) 6 0,68 eg (101; 103) 7 0,67 te (116; 101) 8 0,66 em (101; 109) 9 0,62 et 10 0,56 11 12 ASCII kódok Sorrend % Bigráf ASCII kódok ar (97; 114) 58 0,28 ho (104; 111) 0,39 ze (122; 101) 0,27 sa (115; 97) 31 0,39 ha (104; 97) 60 0,27 ye (121; 101) 32 0,38 ra (114; 97) 61 0,27 ly (108; 121) 33 0,38 ki (107; 105) 62 0,26 lá (108; 225) 34 0,38 ek (101; 107) 63 0,26 ad (97; 100) 35 0,38 ve (118; 101) 64 0,26 zt (122; 116) 36 0,37 nt (110; 116) 65 0,26 nd (110; 100) (101; 116) 37 0,37 se (115; 101) 66 0,26 st
(115; 116) ol (111; 108) 38 0,36 og (111; 103) 67 0,25 la (108; 97) 0,55 ne (110; 101) 39 0,36 ke (107; 101) 68 0,25 ét (233; 116) 0,55 ak (97; 107) 0,36 az (97; 122) 69 0,24 ör (246; 114) (109; 101) 41 0,36 rt (114; 116) 70 0,24 ed (101; 100) 42 0,35 on (111; 110) 71 0,24 ko (107; 111) (98; 101) 72 0,24 ég (233; 103) 73 0,24 de (100; 101) 0,24 ma (109; 97) (122; 233) 30 40 Bigráf 59 13 0,54 me 14 0,53 an (97; 110) 15 0,53 le (108; 101) 43 0,35 be 16 0,52 ny (110; 121) 44 0,35 ár (225; 114) 0,52 mi (109; 105) 0,35 va (118; 97) 18 0,51 es (101; 115) 46 0,34 án (225; 110) 75 0,23 zé 19 0,49 ta (116; 97) 47 0,33 or (111; 114) 76 0,23 ka (107; 97) 20 0,49 na (110; 97) 48 0,33 ik (105; 107) 77 0,23 él (233; 108) 21 0,48 al (97; 108) 49 0,33 ja (106; 97) 78 0,23 fe (102; 101) 22 0,46 er (101; 114) 50 0,32 ál (225; 108) 79 0,22 di
(100; 105) 23 0,43 cs (99; 115) 51 0,32 ér (233; 114) 80 0,22 én (233; 110) 24 0,43 lt (108; 116) 52 0,31 is (105; 115) 81 0,21 to (116; 111) 25 0,42 át (225; 116) 53 0,3 at (97; 116) 82 0,21 ss (115; 115) 26 0,41 in (105; 110) 54 0,29 ot (111; 116) 83 0,21 aj (97; 106) 27 0,41 ag (97; 103) 55 0,29 ll (108; 108) 84 0,21 it (105; 116) 28 0,4 re (114; 101) 56 0,29 ba (98; 97) 85 0,21 ás (225; 115) 29 0,39 ar (97; 114) 57 0,28 os (111; 115) 86 0,2 zo (122; 111) 17 45 74 2.4 táblázat A leggyakoribb bet6párok A bet6pár-gyakoriságok nem azonosak a karakterpár-gyakoriságokkal. Ebb l a táblázatból is kihagytuk a szövegformátum-vezérl karakterpárokat, a szóköz és valamely bet6pár kombinációját (ami szókezdetet vagy szóvéget jelent) és az írásjelek valamint valamely bet6pár kombinációját. A statisztikában nem különböztettük meg a kis-és a nagybet6ket sem.
Valószín6síthet , hogy az mi és a to bet6párok relatív gyakoriság adata nem szignifikáns, mert a Toldiban mind a Miklós, mind a Toldi szavak többször fordulnak el , mint más szövegekben. 27 Egybet6s szavak a magyar irodalmi nyelvben: a (mint határozott nével ), az (mint személyes névmás), az s (mint az és köt szó rövid alakja) és az ó valamint az á (mint indulatszavak) Ezek közül minden bizonnyal az a a leggyakoribb. Kétbet6s szavakból már sok van: az, is, és, de, ha, (a nével és a köt szavak a leggyakoribb kétbet s szavak.) át, be, el, ki, le, rá, (határozószók ill. a ki kérd szóként is) ad, ah, ád, ám, bá, ej, he, hé, hú, ím, ja, jé, na, ne, ni, no, óh, (mint indulatszavak), ál, ár, ás, b , bú, eb, ez, ég, éj, él, ék, én,ép, ér, év, fa, fi, f , fú, f , hó, h , h , ír, ív, íz, jó, j , k , ló, l , ma, mi, n , oh, ok, ól, ón, óv, k, ön, s, öt, öv, z, se, sí, só, rí, ró, te, tó, t , t , un, úr, út,
ük, ül, üt, r, z, v , A felsorolást a teljesség igénye nélkül közöljük azzal, hogy egy-egy szó gyakorisága jellemz lehet az adott szövegre is. A „ló” szó pl a Toldiban nem is kis gyakorisággal el fordul, de a mai újságok szövegeiben szinte egyáltalán nem. Egyébként a Toldi szövegéb l a 0,2%-nál nagyobb gyakoriságú bet párok között az itt felsorolt kétbet s szavakból csak 23 féle fordul el , de azok sem feltétlenül önálló szóként, hanem egy-egy hosszabb szó részeként. A kérd szavak csak akkor jelennek meg két szóköz között, ha nem áll közvetlenül utánuk kérd jel, vagy –mint a titkosírásoknál gyakori- a mondatvéget jelz ponton és a vessz n kívül más írásjeleket egyáltalán nem szoktak sifrírozni. Ugyanez áll az indulatszavakra is Persze a nyíltszöveg nyelvére vonatkozó további ismeretek is segítik a megfejtést. A mondat elején álló kétbet s szó nagy valószín séggel az vagy ha (is, és és nem
lehet), de a felsorolt többi kétbet s szó közül szinte bármelyik. A mondottakból eléggé nyilvánvaló, hogy ha valamilyen módon sikerül a szóközöket azonosítani a kriptogramban, akkor a rövid szavak elég jó találgatási alapot nyújthatnak a megfejtéshez. Nem soroltunk fel a fentiek között olyan szakszavakat mint pl. a szolmizálásnál használtak Más szakszövegeknek is lehetnek a szövegekre jellemz szakszavai. Monoalfabetikus helyettesítési módszerrel titkosított szöveg feltörése 2.1 Példa A következ kben egy példát mutatunk be arra, hogy hogyan lehet egy monoalfabetikus helyettesítéssel titkosított szöveget a nyílt szöveg statisztikai adatainak (no és a titkosítás módjának) ismeretében megfejteni. Az adott esetben nem a Cézár-féle eltolásos helyettesítésr l van szó, hanem arról, hogy a magyar ékezetes ábécé minden egyes bet6jéhez egy-egy bet6t rendelünk hozzá, de nem az ábécé eltolásával (mint a Cézár-féle
helyettesítésnél), hanem úgy, hogy összekeverjük a nyílt szöveghez tartozó ábécé bet6it és ezt a kevert sorrend6 ábécét rendeljük hozzá kriptogram ábécéként a nyílt szöveg ábécéjéhez. 28 Mivel nem Cézár-féle (eltolásos) helyettesítésr l van szó, a kulcstér sem csak 32 kulcsból áll, hanem annyi kulcsból, amennyi a lehetséges permutációk száma egy 32 bet6s ábécénél, ami 32!, azaz igen nagy szám. Mindenesetre akkora, hogy nem igen van remény a nyers er vel való feltörés alkalmazására. A példával éppen azt szeretnénk demonstrálni, hogy egy ilyen reménytelennek látszó esetben sem nehéz egy monoalfabetikus helyettesítési kriptogram feltörése ha a nyelv és a módszer ismert és elegend en sok titkosított szöveg áll a rendelkezésünkre. (Mellesleg még néhány más dolgot is demonstrálunk majd a példával.) A feltörés az adott esetben nem csak a nyílt szöveg el állítását, hanem a titkosítás kulcsának a
megállapítását is jelenti. A 23. oldalon felsorolt feltételek most teljesülnek Nevezetesen: 1. A nyílt szöveg nyelve magyar irodalmi nyelv. 2. A nyílt ábécé a 32 bet6s ékezetes magyar ábécé (amelyben –mint a titkosításnál szokás- nem különböztetjük meg a kis- és a nagybet6ket és nem jelöljük az írásjeleket sem). 3. A nyílt szövegre vonatkozó legfontosabb statisztikai adatokat az el z leg közölt 2.1 és 24 táblázatok, valamint az el z ekben megadott szógyakoriságok jelentik. 4. A megadott titkosított szöveg (kriptogram)a következ : ÚÁSDR ÍRHJR XUMXT ZXDGS HJXEA UHÉLG XÜRÉR ÉÁEÁÉ XÖÜZÜ JXÍUV RÉXU XVGSO ÖHÖS RTXUX OTÉXL O GSÉ ÉXGSJ AÖÜUX GXUXL ÓÜHÉX ÉXUÜS ÜSZGL GHXÓÜ MXÁER ÖÉXDT NUYHU XRSÉU HUÓXÚ XÓTHJ NGOJX MROTH ÚTSLM UÓGHX ÉXSÖÉ HHXLR OXLMG OMÜXY SXÍÜE ÓUEÉU RSTÉX RLXUX ÜRXHR JXÖLÖ RZZRS NÖÉXÖ YUXÜR ZXSÖÉ SOÖHÖ KXEÜO GLXÓÁ XDRSR VRXHR ÖELG XÍÜSS EVÖÜU XROJX LUÓXU
HHXRO XROJR SXUÓÜ KXSGD 2.5 táblázat a 2.1 példa kriptogramja Az ötbet6s karaktercsoportok utáni szóközöknek az égadta világon semmi jelent ségük nincs, mármint a megfejtés szempontjából. Csak azért vannak beiktatva, hogy az egyébként zavaróan áttekinthetetlen karakterlánc mégis csak valamilyen módon rendezett legyen. 29 A korábban állítottak szerint kb. 200 karakternek elegend nek kell lennie ahhoz, hogy a kriptogramot egyértelm6en megfejthessük Most több, mint 300 karakter áll rendelkezésre, tehát minden bizonnyal elegend en sok ahhoz, hogy szignifikáns statisztikai megállapításokat tehessünk. Alább majd összefoglaljuk azt is, hogy ilyen esetekben milyen receptet lehet adni a megfejtésre, de azt már most állíthatjuk, hogy nagy könynyebbséget jelentene, ha a kriptogramban a nyílt szöveg szóközeit is kódolták volna s ezt meg tudnánk állapítani. Nos, a 2.1 táblázat eléggé egyértelm6en mutatja, hogy a szóközök
relatív gyakorisága csaknem kétszer akkora, mint a legnagyobb gyakoriságú bet6ké és a bet6gyakoriságok között nincs nagy százalékos eltérés. Mivel majdnem 300 kriptogram karakterünk van érdemes gyakoriság-elemzést végezni. Ennek az eredménye az adott példánál a következ : Sorrend % 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 15,00 12,22 6,67 5,83 5,83 5,56 5,00 3,61 3,33 3,33 3,33 2,78 2,50 2,22 2,22 2,22 Karakter ASCII Sorrend % 32 88 82 83 85 72 201 71 76 79 214 219 74 84 69 211 2,22 1,67 1,67 1,67 1,67 1,39 1,39 1,11 1,11 1,11 0,83 0,83 0,83 0,56 0,28 X R S U H É G L O Ö O J T E Ó 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Karakter ASCII Ü Á Z D M N Í V Ú Y Q K A 220 193 90 68 77 13 10 78 205 86 218 89 213 75 65 2.6 táblázat A megadott kriptogram bet6gyakoriságai Legnagyobb gyakoriságú a (32) ASCII kódú szóköz karakter (15,00%), de – mint mondtuk már– a megfejtés szempontjából ennek itt semmi jelent sége sincs.23 A
következ legnagyobb gyakoriságú (12,22%) karakter az X karakter. Ráadásul az ezt követ legnagyobb gyakoriságú karakter az R (6,67%), aminek a gyakorisága csaknem a fele az X karakterének Joggal feltételezhetjük 23 Nem biztos, hogy a kriptogram szóköz karakterének a gyakorisága mindig a legnagyobb (különösen nagyon rövid kriptogramok esetében), de azt mindig feltétezhetjük, hogy (ha a kriptogram pl. ötbet s csoportokba van rendezve) a szóköz karaktert és annak a gyakoriságát egyszer en kihagyhatjuk az elemzésb l. 30 tehát, hogy a titkosításkor a szóközöket is titkosították s a szóköz jele a kriptogram ábécében éppen az X. Ez a továbbiakban igen nagy könnyítést jelent. Használjuk ki mindjárt ezt a felismerést és bontsuk szavakra a kriptogramot a szóközökkel. Egyúttal meg is számozzuk a szavakat, hogy a következ kben hivatkozni tudjunk rájuk. 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ 6 7 L RSÉUÓUEÉU 8 9 10 11
12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ 26 LÖEVÖ U 27 28 29 30 ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ 31 32 UÜSUÓGH NÖÉ 33 34 35 36 ÖLUÓ U ÖÜZÜÜSZGLÉ SÖÉYU 37 38 RHH ROJ 39 40 41 42 43 44 45 46 ÍUVVH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHÖS 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS A kriptogram bet6statisztikája szerint a szóköz karakter utáni leggyakoribb bet6 az R. Valószín6síthet , hogy ez a nyílt szöveg e bet6jének felel meg, tehát R ( e A kriptogramot szemrevételezve látjuk azt is, hogy egybet6s szavakból mindössze kétféle van: U (2, 17, 24, 34,) és L (6,) Valószín6síthet tehát az U ( a helyettesítés is. Írjuk be ezeket a kriptogram táblázatába: 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ e a a e e 6 7 L RSÉUÓUEÉU e a a a 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ
ÓTHJRL e e a e e e e 31 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a a e e a a e 26 27 28 29 30 LÖEVÖ U ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ a e e e e e 31 32 33 34 35 36 37 38 U SUÓGH NÖÉ ÖLUÓ U ÜZ USZGLÉ SÖÉYU RHH ROJ a a a a a a e e 39 40 41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS a e e e e a e 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMü YK EÜOK SGDÖHÖS a A nyílt szöveg gyakoriságtáblája (2.1 táblázat) alapján az e bet6t az a és a t valamint az n és az l bet6k gyakorisága követi. A kriptogram gyakoriságtáblájában (26 táblázat) az U,S, H, É következik24 Esetünkben azonban a nyílt szöveg a bet6jének megfelel U bet6t már azonosítottuk. Így az S, H, É kriptogram bet6ket kellene kipróbálni a t helyetteseként A magyar nyelvben a tárgyragok és a múlt id ragjai miatt a szóvégi t gyakori. Vizsgáljuk meg a szöveget abból a szempontból, hogy az S, H, É bet6k közül melyik
fordul el legggyakrabban a szóvégeken. Nos ez az É bet6 (5, 11, 14, 27, 30, 32, 35, 42, ) A 30. szóban ráadásul kett zve Igaz, hogy nem nagyon valószín6, hogy a mindössze három bet6s 32. szóban múlt idót jelentene vagy tárgyrag lenne. Mégis jó tippnek látszik az É ( t helyettesítés25 Látható az is, hogy az UM (9. és 44) kétbet6s szavak a-val kezd dnek, tehát feltételezhetjük, hogy ezek az az határozott nével t jelölik, azaz megtippelhet az M ( z helyettesítés is. A 6. egybet6s szót pedig az és köt szó s rövid alakjának tippeljük, azaz L(s Egyébként minden ilyen helyettesítési tipp csak becslés, ami vagy bejön, vagy nem. Ki kell próbálni Sajnos a megoldás során bizony el fordulnak téves tippek is, s akkor onnan kell folytatni, ahol még jónak (vagy legalább is elfogadhatónak) látszott az utolsó behelyettesítési változat. 24 A statisztikai adatok természetüknél fogva szóródnak. Ezért nem lehet elvárni, hogy egy
szövegrészlet statisztikája legalább sorrendben kövesse egy nagyobb adathalmaz statisztikáját. 25 A nyílt szöveg bet inek gyakoriságtáblázata szerint az ábécé leggyakrabban el forduló nyolc bet je teszi ki a nyílt szöveg 38%át. ( e, a, t, n, l, s, k, r) Ha tehát ezeket sikerül azonosítani, akkor a kriptogramnak csaknem a 40%-át már megfejtettük s könnyebb lelet a még hiányzó bet ket kitalálni. 32 A helyettesít tippek kipróbálásakor a már meglév nyílt szöveg bet6kkel létrejöhetnek olyan kombinációk is, amelyek a természetes nyelvben nem fordulhatnak el . Az ilyesmik jelzik pl a tévutat Végezzük el a fentiekben megtippelt két újabb helyettesítést! 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ e a a a e e t 6 7 L RSÉUÓUEÉU s e ta a ta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL e e az é e t e e t es 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a s a e e a
ts a sze 26 27 28 29 30 LÖEVÖ U ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ s a ete sze e e t tt 31 32 33 34 35 36 37 38 U SUÓGH NÖÉ ÖLUÓ U ÜZ USZGLÉ SÖÉYU RHH ROJ a a t sa a a st t a e e 39 40 41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS a se t e e et az e sz 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS a z Az M ( z tippet a 25. 28 és 46 szavak sz bet6i alátámasztják (bár a helyességét nem bizonyítják). A bet6gyakoriságok annál kevésbé adnak támpontot, minél kisebb gyakoriságú bet6kr l van szó. Elvileg jó becslésekre vezethetnek a rövid szavak (mint pl. 12 21 22 kétbet6s, vagy az 50 ill 13 15 29 32 38 41 42. 47 hárombet6s szavak) Sajnos a kétbet6s szavakkal itt nem megyünk sokra mert amelyeknek egyik bet6je már megvan (21. és 22) azok több kétbet6s szót is jelenthetnek. (Ld a 27 oldalon felsoroltakat) A legrosszabb esetben, persze, mind ki lehet próbálni. A hárombet6s szavak között azonban vannak olyanok,
amelyek új tippeket sugallanak: A 13. HRZ szó pl a sem szót Sajnos ez tévút A 29 és a 38 szavak, s ráadásul a 43. szó eleje (ROJ) pl az egy szót sugallja, ami elég gyakori a magyarban. Ebb l O ( g és J ( y (Az utóbbi helyettesítés nyilvánvaló ellentmondásra vezet, ha a már meglév bet6k közül olyan bet6t követ az y, amelyet a nyelv szabályai szerint nem követhet.)A 41 szó (LRZ) pedig a sem szót sugallja, tehát Z ( m. 33 Ezeket behelyettesítve 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ e a a a s e yeg t 6 7 L RSÉUÓUEÉU s e ta a ta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL e e az g é e t e em t y yes 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a s y a gy e e a ts a szeg y 26 27 28 29 30 LÖEVÖ U ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ s a ete t szemme egy t tt 31 32 33 34 35 36 37 38 U SUÓGH NÖÉ ÖLUÓ U ÜZ USZGLÉ SÖÉYU RHH ROJ a a t sa a m a m st t a e egy 39 40
41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS a sem t egye et az eg sz g 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS a g z g A kriptogramban gyakori bet6 még a H. A 13 szó alapján tippeljük meg a H ( n helyettesítést. Ezt a becslést támogatja az is, hogy az 5 és a 25 szóban így ny-et ad a már meglév y-nal. A 25 szó viszont egyértelm6en mutatja a T ( é helyettesítést. 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ e é a a na s enyegét 6 7 L RSÉUÓUEÉU s e ta a ta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL e e az ég tna e ét e nem t y ényes 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a s ny a gy e ne ants n a szegény 26 LÖEVÖ U s a 27 28 29 30 ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ ete nt é szemme egy t tt 34 31 32 U SUÓGH NÖÉ a a n t 33 34 35 36 ÖLUÓ U ÜZ USZGLÉ SÖÉYU sa a m a m st t a 37 38 RHH ROJ enn egy 39 40 41 42 43 44
45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS a n nn sem t egye et az eg sz g n 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS a g t égz g n A nyílt szöveg bet6inek gyakoriságtáblájában (2.1 táblázat) a leggyakrabban el forduló bet6ket összesen 23 %-os gyakorisággal követi az l, s, k, r, o, i, és g, bet6k csoportja. Ezek közül már megtaláltuk az l-et és az s-et, de a többit még nem. Ugyanakkor e bet6k gyakoriság adatai elég kicsik (2,7 – 3,1%) és elég közel is esnek egymáshoz s ezért itt már nem igen segít az egyes bet6k relatív gyakoriságának a táblázata. Vagy el kell szedni azt, hogy melyik bet6 mely másik bet6kkel szokott gyakrabban el fordulni, vagy az eddigieknél „bátrabb” szó-találgatásokat kipróbálni. Tekintettel arra, hogy nem szándékozunk mélyebben és részletesebben foglalkozni a megfejtések módszereivel, maradjunk az utóbbinál, vagyis a szó-találgatásoknál és vizsgáljuk meg rendre, hogy nem
vezetnek-e a megtippelt helyettesítések ellentmondásokra, vagy fonetikai összeférhetetlenségre. A 20. szó pl lehet az elég gyakori hogy köt szó, s ebb l N ( h és G ( o következik. Próbáljuk ki, hogy nem vezet-e összeférhetetlenségre másutt 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ e é a ha na os enyegét 6 7 L RSÉUÓUEÉU s e ta a ta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL e e az ég o tna e ét e nem o t o y ényes 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a s ny h a hogy e ne antson a szegény 26 LÖEVÖ U s a 27 28 29 30 ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ ete nt é szemme egy t tt 31 32 U SUÓGH NÖÉ a a on h t 33 34 35 36 ÖLUÓ U ÜZ USZGLÉ SÖÉYU sa a m a most t a 37 38 RHH ROJ enn egy 35 39 40 41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS a on nn sem t egye et az eg szo g n 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS a
o g t égz g o n A 40. szó (ÓÜHH) dupla n-nel végz dik és lehetne a gyakori kinn, benn, lenn, fenn határozók bármelyike, de a második bet6je nem lehet e, mert azt a kriptogramban az R helyettesíti. Próbáljuk meg hát a kinn helyettesítést, azaz Ó ( k és Ü ( i26 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ e é a ha na i os k enyegét 6 7 L RSÉUÓUEÉU s e taka ta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL e e az ég o tnak e ét e nem o t o y kényes 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a s ny h a hogy e ne i antson a szegény 26 LÖEVÖ U s a 27 28 29 30 ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ etekint é szemme egy t tt 31 32 U SUÓGH NÖÉ a akon h t 33 34 35 36 ÖLUÓ U ÜZ USZGLÉ SÖÉYU sak a im a most t a 37 38 RHH ROJ enn egy 39 40 41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS a on kinn sem t egye et az eg szo g n 47 48 49 50 51 52 UÓÜ VGSOÖE
DTOMÜ YK EÜOK SGDÖHÖS aki o g t égzi ig o n 26 A magyar ékezetes bet k esetében zavaró, hogy néhány fontkészlet ne jól, vagy egyáltalán nem különbözteti meg a rövid és a hosszú ékezetes bet ket. Az itt bemutatott helyettesítési táblázatokban pl Courier bet tipust használtunk, hogy minden bet ugyanakkora helyet foglaljon el és pontosan egymás alá ill. fölé legyenek illeszthet ek Ez a bet tipus azonban nem tesz különbséget a rövid és a hosszú Ü – Y bet k között. Erre külön ügyelni kell Ittt a táblázatban, ahol éppen a rövid Ü bet t helyettesítjük, a hosszú Y bet ket aláhúzással is megkülönböztettük. Ugyanezt tesszük alább a hosszú H megkülönböztetésére. 36 A 7. szóból csak két bet6 hiányzik és feltételezzük hogy az S ( l és E ( r helyettesítések beválhatnak. Mellesleg a kriptogram gyakoriságtáblázatában az S és az E gyakorisága 5,56% ill 2,12%, a nyílt ábécé 21 gyakoriság táblázatában
pedig az l ill. az r gyakorisága 4,4% ill 3% Az eltérés tehát éppen elég ahhoz, hogy eltájoljon bennünket (de ne hagyjuk. Mint említettük már, a kisebb és egymástól nem jelent sen eltér gyakoriságú bet6k esetében a statisztikai gyakoriságok már nem adnak releváns információt). Ha az S ( l helyettesítés beválik, akkor a 8. szó alapján joggal feltételezhetjük, hogy a D ( v helyettesítés is megfelel Próbáljuk ki! 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ lvevé a ha nal iros k enyegét 6 7 L RSÉUÓUEÉU s eltakarta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL vele az ég oltnak elét e nem volt oly kényes 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a rs ny r h a hogy e ne illantson a szegény 26 LÖEVÖ U s r a 27 28 29 30 ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ etekint élszemmel egy t r tt 31 32 U SUÓGH NÖÉ a lakon h t 33 34 35 36 ÖLUÓ U ÜZ USZGLÉ SÖÉYU sak a
im almost l t a 37 38 RHH ROJ enn egy 39 40 41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS a on kinn sem l t egye et az reg szolg n l 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS aki olg t végzi rig lov n l További szó-kiegészítési tippek: 3: hajnal; Y ( j és E ( r 4: piros; í(p 10: égboltnak; 27: betekint 31: ablakon; ( b 11: felét; 28: félszemmel; Ú(f 32: hát; Ö(á 37 Ezeket is behelyettesítve: 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ f lvevé a hajnal piros k penyegét 6 7 L RSÉUÓUEÉU s eltakarta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL vele az égboltnak felét e nem volt oly kényes 17 18 19 20 21 22 23 24 25 U ELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a b rs ny r hába hogy be ne pillantson a szegény 26 LÖEVÖ U sár ba 27 28 29 30 ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ betekint félszemmel egy t r tt 31 32 U SUÓGH NÖÉ ablakon hát 33 34 35 36 37
38 ÖLUÓ U ÜZ USZGLÉ SÖÉYU RHH ROJ sak a imbalmost látja benn egy 39 40 41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS padon kinn sem lát egyebet az reg szolgánál 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS aki olgát végzi j rig lovánál További szó-kiegészítési tippek: 1: fölvevé; Á(ö 12: de; V(d 18: bársony; G(o 33: csak; X(c 1 2 3 4 5 ÚÁSDRDT U NUYHUS ÍÜEGL ÓÁÍRHJROTÉ fölvevé a hajnal piros köpenyegét 6 7 L RSÉUÓUEÉU s eltakarta 8 9 10 11 12 13 14 15 16 DRSR UM TO GSÉHUÓ ÚRSTÉ VR HRZ DGSÉ GSJ ÓTHJRL vele az égboltnak felét de nem volt oly kényes 17 18 19 20 21 22 23 24 25 U ÖELGHJ EANÖ U NGOJ R HR ÍÜSSUHÉLGH U LMROTHJ a bársony r hába hogy be ne pillantson a szegény 38 26 LÖEVÖ U csárdába 27 28 29 30 ÜRÉRÓ HÉ ÚTSLMRZZRS ROJ ÉÁEÁÉÉ betekint félszemmel egy törött 31 32 U SUÓGH NÖÉ ablakon hát 33 34 35 36 37 38 ÖLUÓ U ÜZ USZGLÉ SÖÉYU RHH ROJ csak a
cimbalmost látja benn egy 39 40 41 42 43 44 45 46 ÍUVGH ÓÜHH LRZ SÖÉ ROJR RÉ UM ÁERO LMGSOÖHS padon kinn sem lát egyebet az öreg szolgánál 47 48 49 50 51 52 UÓÜ VGSOÖE DTOMÜ YK EÜOK SGDÖHÖS aki dolgát végzi j rig lovánál Összesen három szóban hiányzik még egy-egy bet6, de nem nehéz kitalálni, hogy ezeket a: K ( ó, ill. az A ( u helyettesítések adják meg Kiegészítve a megfejtést írásjelekkel, nagybet6kkel pótolva a kisbet6ket ahol kell, kapjuk a következ megfejtést: Fölvevé a hajnal piros köpenyegét, S eltakarta vele az égboltnak felét, De nem volt oly kényes a bársony ruhába, Hogy be ne pillantson a szegény csárdába. Betekint félszemmel egy törött ablakon, Hát csak a cimbalmost látja benn egy padon, Kinn sem lát egyebet az öreg szolgánál, Aki dolgát végzi jó Rigó lovánál. (Arany János: Toldi 11. ének 1) A nyílt és a kriptogram ábécé egymáshozrendelése pedig a megtippelt és a próbáknál
ellentmondásmentesnek bizonyult helyettesítések összefoglalása, azaz a következ : a l m X U Ö X V R T Ú O N Ü P Y Ó S Z n á o b c ó ö H G K Á C d e é s f t g h p r Í E L É A F i u ú ü I í j k v x y B D z J M 39 A reciprocitás elve Némi vizsgálódással felt6nik, hogy tulajdonképpen csak a nyílt szöveg ábécé els feléhez (a szóközt l m-ig) vannak véletlenszer6en hozzárendelve a kriptogram ábécé (második felének) a bet6i. A kriptogram ábécé mintegy tükörképe a nyílt ábécének Ezt a tulajdonságot reciprocitásnak nevezik és az adott példánál szándékosan alkalmaztuk a nyílt és a kriptogram ábécé ilyen egymáshoz-rendelését. Ha az ábécék páratlan számú karaktert tartalmaztak volna, akkor lett volna olyan bet6, amelynek a helyettesít karaktere saját maga. Ez nem tiltott A reciprocitás elve lehet vé teszi, hogy a kódoló és a dekódoló algoritmus gyakorlatilag (majdnem) azonos
legyen. Ezért a harmadik, s t a negyedik generációs rendszerekben is alkalmazták ill. alkalmazzák a reciprocitás elvét A harmadik generációs (rotoros) titkosító gépek közül pl az Enigma lehet vé tette, hogy ugyanazzal a géppel és beállítással mind kódolni, mind megfejteni lehessen ugyanazt az üzenetet. Ugyanakkor az Enigmánál gondoskodtak arról, hogy kódoláskor a nyílt szöveg egyetlen bet6je se’ maradjon változatlanul Ez azonban nem er sítette a titkosítást, hanem éppenséggel gyengéje volt az Enigmának A reciprocitás elvét a negyedik generációs modern kriptorendszerekben is alkalmazták és alkalmazzák ma is. Lényegében ugyanazon okból, mint az Enigmánál. A m6ködési sebesség növelése céljából ugyanis általában nem szoftverrel valósítják meg a kódolást és a dekódolást, hanem külön erre a célra való hardvert építenek.27 A feltörés „receptje” Jóllehet a bemutatott példa ( a bet6statisztikák alkalmazásától
eltekintve) inkább azt sugallja, hogy a kriptogram feltörése inkább rejtvényfejtéshez hasonlít mintsem valamilyen módszeres tevékenységhez, mégis csak összefoglalható, hogy mi is a feltörés „receptje”.28 A következ , pontokba foglalt eljárás a monoalfabetikus helyettesítéssel el állított kriptogramok feltörésekor alkalmazható. 27 A célhardverekkel legalább 100-szoros sebességnövelés érhet el, de ez magától a kriptorendszert l ill. a titkosítási módszert l is er sen függ. Az azonban minden rendszerre igaz, hogy a célhardver sokkal gyorsabb, mint az általános célú számítógépen futtatott titkosító program. 28 Err l azért annyit, hogy nem egy „recept” van, hanem nagyon sokféle fogás, amelyek közül azt kell alkalmazni, ami az adott eset adott lépésében éppen a legmegfelel bb. Végül is ezt teszik a rejtvényfejt k is A feltöréshez alkalmazható módszer természetesen er sen függ attól, hogy milyen módszerrel
titkosították az adott kriptogramot. 40 1. Határozzuk meg a kriptogramban el forduló bet6k gyakoriságait (Ezt tettük a 2.6 táblázat kiszámításakor is) 2. Kiséreljük meg meghatározni, hogy a kriptogramban melyik karakter felel meg a nyílt szöveg szóköz karakterének, ha egyáltalán kódolták azt.29 Ha a kriptogram nem nagyon rövid, és a szóközt is kódolták, akkor könny6 megtalálni a neki megfelel karaktert, mert egy természetes nyelv6 szöveg30 karaktereinek mintegy 40%-a szóköz és írásjel, de a 40% túlnyomó többségét a szóközök teszik ki. Ráadásul a szóköz karaktereknek nem nagy távolságra kell követniük egymást, mert a természetes nyelvek szóhosszai azért korlátozottak. A szóköz karakterek relatív gyakorisága kb a duplája az leggyakrabban el forduló bet6 gyakoriságának, tehát a statisztikai eltérés nagyon is szignifikáns. 3. Miután azonosítottuk a szóköz karaktert írjuk át a kriptogramot úgy, hogy szavakra
tördeljük. Az így átírt kriptogram pontosan olyan hoszszú szavakból fog állni, amilyenek a nyílt szövegben vannak és pontosan ugyanolyan sorrendben is követik egymást a szavak Nem árt a szavakat megszámozni, mint ahogyan a példában is tettük. (Ott a hivatkozások és a demonstráció kedvéért, de a megfejtés közben is könnyebben készíthetünk jegyzeteket, ha megszámoztuk a szavakat) 4. Törekedjünk arra, hogy meghatározzuk a kriptogramban a nyílt szöveg legnagyobb gyakoriságú bet6it helyettesít karaktereket Ezek teszik ki a teljes szöveg mintegy 30-40%-át. A bet6gyakoriság táblázatok segítenek ugyan ebben is, de a statisztikai természetük miatt szórnak és egyáltalán nem biztos, hogy a kriptogramban is ugyanaz lesz a bet6gyakorisági sorrend, mint abban a nyíltszöveg-ábécé gyakorisági táblázatban, amellyel dolgozunk. A ritka bet6knél pl gyakorlatilag semmilyen segítséget sem jelent a bet6gyakoriság táblázat31 5. Ha már vannak
megfejtett szó-részleteink, akkor vegyük vizsgálat alá a rövid (két- vagy hárombet s, az adott nyelvben gyakori) szavakat. A bemutatott példában az egybet s szavak vizsgálata meg is el zte az el z pontbeli gyakoriságvizsgálatot és sikeresen azonosítani is tudtuk az a határozott nével t. (Az utóbbi segítségével pedig az az nével t.) A példában egyébként a többi kétbet s szó nem sokat segített, mert csak a második bet iket sikerült el ször megtalálni (és a magyarban jónéhány e-re végz d kétbet s szó van). Érdemes vizsgálni a gyakori szóvégz déseket is. (A példában pl a t bet azonosításában segített ez a megközelítés.) 6. A megoldás teljessé tételekor vegyük tekintetbe a nyelv grammatikai szabályait is és a szöveg jellegét, jelentését is. 29 Ha nem, akkor a helyzet nehezebb és feltétlenül vizsgálnunk kell a bet párokat és azokat a kombinációkat, amelyek segíthetnek a kriptogram szavakra tördelésében. Olyan
kombinációkat keresünk például ami a nyílt szövegben megfelelhet az az+magánhangzó bet hármasnak, vagy keressük a gyakori szóvégi kett s bet ket, stb. 30 Feltéve, hogy egyáltalán bet írásról van szó. A mondottak nyílván nem érvényesek a japán vagy a kínai írásra 31 A bemutatott megfejtési példa is jól mutatja ezt, de egyúttal azt is, hogy legalább törekedtünk a leggyakoribb bet k helyettesítéseinek a meghatározására, mert így tudtuk a kriptogramban a legtöbb bet -megfeleltetést megtalálni és ezzel olyan töredék-szavakhoz jutni, amelyek már jó alapot adtak a még hiányzó bet k találgatására. 41 Tipikus hibák a megfejtés során a következ k: a. „Elírjuk” a szöveget Ha lehet, kerüljük el az egyébként érthetetlen, össze-vissza kriptogram kézzel való átírását. Használjunk ehhez inkább számítógépes eszközöket. (Konkatenációt a táblázatok celláiba írt bet6k összef6zéséhez, a Word
helyetetsítési funkcióját pl. a szavakra tördeléshez, stb. b. „Félreolvassuk” a kriptogram valamely karaktereit Pl nem (jól) tudjuk megkülönböztetni az ékezetes és nem ékezetes bet6ket, vagy ugyanannak az ékezetes bet6nek a rövid és a hosszú változatát. A Word helyettesítési funkciója pl. erre is megoldás lehet Az [5] szakirodalom nagyon részletesen összefoglalja, demonstrálja és értékeli az id k során kitalált helyettesítési módszereket. Nagyon sok hivatkozást is közöl. „Természetesen” csaknem mindet angol nyelv6 szövegekre. Az itt hivatkozott szakirodalom ill. az általa hivatkozott William F Friedman szerint a kriptoanalízis szerint gyakorlatilag bármilyen kriptogram feltörésénél a következ négy m6velet alkalmazható: 1) A kriptogramhoz tartozó nyílt szöveg nyelvének a meghatározása.32 2) Az alkalmazott titkosítási eljárás általános módszerének a meghatározása.33 3) Ha a módszer már ismert, akkor az adott
esetben alkalmazott kulcs meghatározása. Kódkönyves titkosítás esetén34 a kódkönyv legalább részleges meghatározása. 4) A nyílt szöveg meghatározása 32 Látni fogjuk, hogy ez egyáltalán nem nyilvánvaló pl. a kriptogram ábécében alkalmazott karakterek segítségével s az ismeretlen ókori írások megfejtésekor a legnagyobb probléma éppen az volt, hogy a nyelv ismeretlen volt. 33 Ami nem egyszer megel zi az el z lépést. 34 Amikor a kriptogram egy-egy jelének vagy jelcsoportjának a szótár-szer kódkönyvben egy-egy szó, kifejezés, vagy egész mondat felel meg. 42 Ezek a kriptoanalízis klasszikus lépései, amelyek a következ három lépésre (is) redukálhatók: I. A feltörni kívánt kriptogram olyan újra és újra rendezése, amellyel kizárhatjuk azt, hogy a kriptogram véletlenszer6nek lássék. (Gyakoriság analízis, az ismétl d karakter-kombinációk megállapítása, az esetleges szimmetria felismerése, stb.) II. A
nem-véletlenszer6 tulajdonságok jellegének a megállapítása pl. statisztikai analízissel, vagy más módszerekkel III. A véletlenszer6t l eltér sajátságok megfogalmazása akár szöveggel, akár matematikai (leginkább statisztikai) kifejezésekkel (Rejtvényfejtési gyakorlattal, szerencsével, intelligenciával, kitartó és ismételt próbálkozással, stb.) A legnagyobb munkát az adott esetben alkalmazott titkosítási rendszer felismerése és azonosítása jelenti. Bármilyen kriptogram megfejtésének végs fázisában egy hellyettesítési titkosítás megfejtésére kerül sor.35 Ezért is foglalkoztunk ennyit az els generációs kriptorendszerek körében a helyettesítési titkosítással és foglalkozunk még a következ kben is valamennyit. A 2.1 megfejtési példa tanulságai A Toldi statisztikai elemzésekor nem csak az egész, 71 és fél ezer karakteres szöveg statisztikai elemzését végeztük el, hanem az El hang és mind a 12 ének külön-külön
bet6gyakoriság statisztikáit is elkészítettük. Az egys szövegrészek terjedelme természetesen er sen eltér volt, ezért aztán a terjedelemmel súlyozott átlagot számoltunk. Az egyes részek bet6gyakoriság-átlagai is szóródtak s ez módot adott a statisztikai szórások kiszámítására. 35 Mármint az algoritmikus megfejtéseknél. A nyers er módszerénél persze másról van szó 43 Az adatok táblázatos összefoglalása a következ : A teljes TOLDI Karakterszám Bet ASCII 73 603 % Sorrend 32 101 97 116 110 108 115 13 10 107 114 111 105 103 225 e a t n l s k r o i g á egyéb 14,61 7,03 6,33 5,69 4,43 4,35 4,07 3,37 3,37 3,08 2,96 2,89 2,75 2,75 2,55 29,77 3x relatív szórás % Átlag % Összesen % 71569 % 14,56 7,10 6,25 5,76 4,43 4,44 4,08 3,34 3,34 3,09 3,01 2,90 2,83 2,77 2,58 29,52 15,95 31,97 32,04 43,73 17,42 20,54 25,71 4,61 4,61 32,84 37,91 30,21 38,44 28,32 58,07 8,87 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 e, a, t, n, l, s k, r, o, i, g, a
Xsszesen átlag % Xsszesen átlag % e, a, t, n, l, s k, r, o, i, g, a 3 x relatív szórás % 3 x relatív szórás % 32,06 17,19 Alsó Fels tolerancia-határ tól ig 13,40 4,83 4,25 3,24 3,66 3,53 3,03 3,18 3,18 2,08 1,87 2,03 1,74 1,99 1,08 26,90 16,88 9,36 8,25 8,28 5,20 5,36 5,13 3,49 3,49 4,11 4,16 3,78 3,92 3,56 4,07 32,14 28,82 15,47 35,30 18,91 10,11 10,02 2.7 táblázat A Toldi szövegének statisztikai elemzési adatai „Beszédesebb” ennél a következ hisztogram: A leggyakoribb 15 karakter Karaktergyakoriság % 40,00 35,00 30,00 25,00 20,00 15,00 10,00 5,00 0,00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Karakterek csökken gyakoriság-sorrendben 44 A hisztogram számozott oszlopai rendre megfelelnek a 2.7 táblázat karaktereinek. Tehát az 1 oszlop a szóköz karkter gyakorisága, a 2 oszlop az e, a harmadik az a, a negyedik a t bet6é és így tovább. A hisztogram oszlopainak tetején látható sötétített (színesben barna) sávok a
+,háromszoros szórás-intervallumokat ábrázolják. Igen tanulságos, hogy ezek szerint a relatív karaktergyakoriságok többsége ugyancsak átlapolódik. Szignifikánsan elkülönül a szóköz (=az 1 oszlop), de a következ három bet6t (e, a, t,) már nem lehet a gyakoriságaik alapján egymástól megbízhatóan megkülönböztetni. Viszont a gyakoriságaik elég egyértelm6en elválaszthatók a sorrendben ket követ többi bet6ét l. A negyedik (azaz az n bet6t l kezdve aztán a gyakorisági értékek alapján szinte egyáltalán nem lehet megkülönböztetni egymástól az egyes bet6ket. Kissé más a helyzet az els és a második 6-6 bet6 csoportos, együttes gyakoriságainak a megkülönböztethet ségével, mint azt a következ hisztogram mutatja. Az els és a második 6-6 bet s karaktercsoport kumulált relatív gyakoriságai és azok szórásai 50,00 A 6-6 bet csoport összesített %os gyakoriságai 40,00 30,00 Adatsor2 20,00 Adatsor1 10,00 0,00 1 e,a,t,n,l,s 2
k,r,o,i,g,a A hisztogramból látható, hogy a kumulált gyakoriságok alapján szignifikánsan megkülönböztethet k egymástól a bet6csoportok. Az els generációs rendszerek uniformitásai Ismételten (és nem utoljára) emlékeztetünk arra, hogy az els generációs kriptorendszerek körében alapvat en két módszert, nevezetesen a helyettesítést (szubsztitúció) és a transzpoziciót (keverést, permutációt) vezették be. Ezeket a módszereket aztán megörökölték a kriptorendszerek további generációi is. Mégis, a helyettesítés volt a domináns módszer a kriptorendszerek els három generációjánál Nehéz erre magyarázatot találni Volt olyan 45 vélemény, amely a transzpoziciót nem tekintette elegend en védettnek a feltörési kisérletekkel szemben s volt olyan vélemény is, amely azt állította, hogy a helyettesítés sokkal könnyebben algoritmizálható, mint a transzpozició. Az „algoritmizálhatóság” régebben tulajdonképpen azt
jelentette, hogy szerkeszthet a titkosításhoz és a megfejtéshez valamilyen gép ill. eszköz Végül is a Cézár kerék is ilyen eszköz volt és az egyszer6sége éppenséggel indokolhatta is, hogy miért fejlesztették tovább a Cézár-féle titkosítási módszert második generációs, polialfabetikus rendszerekké. Err l azonban majd alább részletesen szólunk majd. A modern, negyedik generációs titkosító rendszerekben mind a helyettesítést, mind a keverést vegyesen, egy rendszeren belül alkalmazzák. A helyettesítésnek ráadásul egyfajta nemlineáris változatát Egy-egy rögzített hosszúságú blokk helyettesítését egy-egy un. S dobozzal hajtják végre, ahol az S szubsztitúciót, vagyis helyettesítést jelent. Ugyanilyen alapon persze a blokkok permutációját végrehajtó egységeket P doboznak is nevezhetnénk, de ezt a megnevezést ritkábban használják. Mindezekr l azonban majd a negyedik generációs (s azon belül is a szimmetrikus)
kriptorendszerek kapcsán szólunk majd b vebben. Az els generációs kriptorendszerekben tehát alapvet en kétféle transzformációt alkalmaztak. Az egyik a helyettesítés volt, a másik pedig a transzpozició, vagyis a nyílt szöveg bet6inek áthelyezése, összekeverése A helyettesítés a nyílt szöveg minden egyes bet6jéhez egy-egy karaktert rendelt a helyettesít ábécéb l. Tette ezt bet6r l bet6re, folyamatosan Ezért a titkosítással nyert kriptogramban a nyílt szöveg n-bet6s szavainak nbet6s szavak feleltek meg. Ha két bet6 szomszédos volt a nyílt szövegben, akkor az azokat helyettesít karakterek is szomszédosak maradtak a kroptogramban. A helyettesítési transzformáció tehát meg rzi a nyílt szöveg bet6inek szomszédosságát Ez tahát egységes (uniform) tulajdonsága mindenfajta helyettesítésnek Innen származik az, hogy a helyettesít transzformációnak unilaterális36 tulajdonsága van Az els generációs rendszerekben alkalmazott másik fajta
tipikus transzformáció a bet6ket nem változtatja meg, hanem összekeveri azokat. Mivel a bet6ket latin eredet6 szóval literáloknak is nevezik, ezért a keverési transzformációt uniliterális tulajdonságú transzformációnak is nevezik. Miel tt az utóbbiakat tárgyalnánk, térjünk még vissza a helyetetsítési transzformációkra. Fontos, hogy az itt bevezetett uniliterális kifejezés semmi esetre sem jelent helyettesítési transzformációt, hanem éppenséggel a keverési transzformáció jellegzetes tulajdonságára utal 36 A laterális latin eredet szó és oldalirányút jelent. Valószín leg azért vezették be itt szakszóként, mert jól összecseng a keveréses transzformációnál alkalmazott „literál” szóval, ami viszont bet t jelent. 46 A két- és több-bet s (biliterális, polyliterális) helyettesítések Az eddig bemutatott helyettesítéseknél a nyílt ábécé minden egyes bet6jének egy-egy bet6 felelt meg a kriptogramban. Ezt az egy
bet6 ( egy bet6 helyettesítést a szaknyelv singleliterális37 helyettesítésnek is nevezi. Ezzel szemben áll az az eset, amikor a nyílt ábécé egy-egy bet6jét több karakter helyettesíti a kriptogramban. Kétbet6s helyettesítéskor biliterális, több bet6s helyettesítéskor polyliterális rendszerr l beszélhetünk. Már az ókorban kitalálták (pl. Polybios is), hogy az ábécé bet6it egy mátrixba rendezzék és a nyílt szöveg karakterei helyett a mátrixnak azt a sorát és oszlopát adják meg egy-egy bet6vel jelölve, amelyben a nyílt szöveg adott bet6je áll. Egyszer6bb a dolgot egy példán bemutatni. Rendezzük el pl. a magyar ábécé bet6it (és néhány írásjelet) egy 6 x 6 –os mátrixba a következ képp: A B C D E F A a b c d e é B i f g h C k l m n o ó D ö p E u ú ü F , z . r : í j s t v y Polybios „sakktáblája” ? Ha megegyezünk abban, hogy minden kétbet6s helyettesítésnél az els bet6 a mátrix sorát, a
második pedig a mátrix oszlopát jelöli, akkor pl. a nyílt szöveg p bet6jét a DC bet6pár helyettesíti, a szóközt pedig az FF. Természetét tekintve ez is olyan, mint a monoalfabetikus helyettesítés, de a nyílt szöveg minden egyes bet6je helyett két-két bet6 áll a kriptogramban. A kriptogram bet6statisztikája azonban azonnal kimutatja, hogy összesen csak 6 bet6 fordul el benne és az is nyilvánvaló, hogy bet6párok fognak ismétl dni, méghozzá nem azonos, hanem a nyílt szöveg karaktereinek megfelel gyakorisággal. Ha ezt felismerjük, akkor a kriptogram már vissza is vezethet az egyszer6, monoalfabetikus helyettesítésre Polybios a 26 bet6s görög ábécében két ritka bet6t azonosnak vett és egy 5x5-ös mátrixban rendezte el a nyílt ábécé bet6it. Az angol biliterális rendszerekben a 26 bet6s angol ábécében az i és a j bet6t (vagy az u-t és a w-t) veszik azonosnak és így rendezik az ábécét ugyancsak egy 5x5-ös mátrixba. 37 Sajnos az a
helyzet, hogy erre is használják a fent már bevezetett uniliterális szakkifejezést, de más értelemben, mint ahogyan az imént bevezettük. 47 Természetesen semmi különleges indok nincs arra, hogy a nyílt ábécé bet6it éppen négyzetes mátrixokba rendezzük és annak sem, hogy ez az elrendezés pl sor- vagy oszlop-folytonos legyen. A 32 bet6s magyar ábécé pl egészen jól elrendezhet egy 4x8-as mátrixba is Annak sincs különösebb jelent sége, hogy a mátrix sorait és oszlopait bet6kkel, számokkal vagy másképp jelöljük Léteztek kett nél több bet6t alkalmazó helyettesítések is. Az egyik legels t Tritheimius abbé (Johann von Heidenberg, 1462-1516) vezette be. A lényege az, hogy három szimbólumból (pl az 1,2 és 3 számjegyekb l) összesen 33 = 27 permutáció képezhet (111, 112, 333) és ezek nagyon jól helyettesíthetik egy 27 bet6s ábécé bet6it.38 Érdekességként meg kell említeni Sir Francis Bacon (1561-1626) titkosítási rendszerét
is, amely a nyílt ábécé minden egyes bet6jéhez egy ötkarakteres kódot rendelt hozzá. Számunkra különösen érdekes, hogy e kódokban mindössze két szimbólumot hasznát, tehát a mai értelmezéssel tulajdonképpen ötbites bináris kódokkal helyettesítette az ábécé bet6it. A dolgot tovább bonyolította azzal, hogy egy „ártatlannak” látszó fed szövegben úgy rejtette el az ötkarakteres kódjait, hogy kisbet6vel írta a fed szöveg bet6it ott, ahol a kódban 0 állt és nagybet6vel ott, ahol 1 állt. Mire jó a szövegstatisztika? Az angol nyelv6 szövegekre nagyon sok és nagyon sokféle statisztikai elemzést publikáltak. WFFriedman pl kifejezetten (második világháborús) katonai szövegekre. Más idegen nyelvekre is publikáltak ilyeneket, de magyarra nem. A következ kben a teljesség igénye nélkül demonstrálni kívánjuk azt, hogy egyáltalán nem a bemutatott bet6statisztika az egyetlen statisztikai jellemz , és nem csak a helyettesítési
kriptogramok megfejtésére használható. Emlékezzünk arra, hogy a helyettesítési és a transzpoziciós titkosítás között az egyik leglényegesebb különbség az, hogy a helyettesítés a nyílt ábécé minden bet6jét egy-egy karakterrel helyettesíti, ami többnyire olyan bet6, ami nem azonos a nyílt karakterrel. Ebb l következik, hogy a kriptogram ábécé egybet6s gyakoriság statisztikája lényegesen eltér a nyílt szöveg bet6inek gyakoriság statisztikájától. Ezzel szemben a transzpoziciós titkosítás egyáltalán nem változtatja meg a nyílt szöveg bet6it, csak alaposan összekeveri azokat. A transzpozicióval el állított kriptogram bet6statisztikája tehát szükségképpen megegyezik a nyílt szöveg bet6statisztikájával. (A bet6pároké azonban már nyilvánvalóan nem.) A kriptogram egyes bet6inek relatív gyakoriság-táblázata alapján tehát egészen jól eldönthet , hogy a kriptogram helyettesítéssel vagy transzpozicióval készült-e.
(Feltéve, hogy tudjuk, hogy e két módszer valamelyikével készült) 38 Persze egy háromdimenziós tömbként is felfogható és ilyen értelemben a biliterális (kétdimenziós) helyettesítés három dimenziós (triliterális) általánosításának is tekinthet . 48 Ennél azonban többet is mond a bet6gyakoriság-eloszlás. 39 Eléggé egyértelm6en megmutatja, hogy monoalfabetikus vagy polyalfabetikus helyettesítésr l van-e szó. A helyettesítési példák kapcsán láttuk, hogy a Cézár-féle helyettesítésnél a megszokott bet6sorrend szerint rendezett (szabványos, sztenderd) ábécét használtunk, a 2.1 példánál pedig egy kevert ábécé volt a helyettesítés kulcsa A bet6gyakoriság-táblázatból kiolvasható az is, hogy a helyettesítéskor szabványos ábécét, esetleg fordított sorrend7 ábécét vagy kevert ábécét használtak-e. A többet6s statisztikák még mást is megmutatnak. A természetes nyelvekben a beszédben gyakran ismétl d ill.
el forduló hangcsoportoknak bizonyos bet6csoportok felelnek meg. Az ilyenek el fordulása a több-bet6s gyakoriság táblázatokban kimutatható A titkosítási módszerek kitalálói már a második generációs kriptorendszereknél tudatosan törekedtek arra, hogy a szövegstatisztikák ne nyújtsanak segítséget a kriptogram feltöréséhez.40 A kriptogram bet6statisztikájának eloszlási jellege is utalhat arra, hogy milyen módszert alkalmaztak a titkosításhoz A modern, negyedik generációs kriptorendszereknél pl teljesen véletlenszer6nek t6nik a kriptogramok bet6statisztikája Ezeknél a bet6eloszlás meglehet sen egyenletes. (Már ha egyáltalán megjelennek bet6k a kriptogramban) A bet6statisztika mindenesetre ezt is kimutatja A statisztikák alkalmazásakor kell, hogy legyen valami sejtésünk arról, hogy azok mennyire megbízhatóak. Egy 1000 bet6s szöveg statisztikája már majdnem azonos egy jóval több bet6s szövegével, de ha a szöveghossz csökken, akkor a
bet6statisztika egyre jobban eltér az átlagostól. Az eddig elmondott min ségi megállapítások mellet természetesen léteznek mennyiségekkel meghatározható statisztikai próbák is. Ilyen pl az un fí teszt, ami arra alkalmas, hogy megállapítsuk, hogy egy kriptogram monoalfabetikus titkosítással készült-e vagy sem. 39 Angol terminológiával a Single-literal Frequency Distribution rövidítéseként SFD, ill. ha a Single-literal helyett az egyébként megtéveszt Uniliteral kifejezést használják, akkor UFD. Randall K Nichols az [5]-ben az utóbbit vezette be 40 Újabb kutatások szerint valamikor az els ezredforduló tájékán arab matematikusok jöttek rá és írták le, hogy a titkosított szövegek karakter (ill. szimbólum) gyakoriságainak elemzése jó esélyt ad a kriptogramok megfejtésére 49 A Z teszt Vezessük be a következ jelöléseket: N: A vizsgált (angol) szöveg karaktereinek a száma i(o) A tesztelt kriptogram
bet6gyakoriság-eloszlására jellemz érték. (o ( observed) i(p) Az el bbihez tartozó nyílt ábécé bet6gyakoriság eloszlására jellemz érték. (p ( plaintext) i(r) Ha az ábécé minden bet6je azonos gyakorisággal fordulna el , akkor nagy átlagban éppen 1/n (ahol n az ábécé bet6inek a száma) lenne egy-egy bet6 el fordulási gyakorisága. Ha azonban a vizsgált minta N bet6b l áll, akkor i(r) egy-egy bet6re jellemz statisztikai érték. Friedman alábbi képletében a 0,0385 konstans a 26 bet6s angol ábécéb l számított 1/26. Friedman szerint az angol katonai szövegekre i(r) = 0,0385 N (N-1) i(p) = 0,0667 N (N-1) 2.2 Példa Számítsuk ki a fí tesztet a következ N = 50 bet6s kriptogramra: O W Q W Z A E D T D Q H H O B A W F T Z W O D E Q T U W R Q B D Q R O X H Q D A G T B D H P Z R D K A következ táblázatban f az egyes bet6k el fordulásainak számát jelöli, a megadott ábécé pedig a 26 bet6s angol ábécé. f: 3 3 7 2 1 1 4 1 4 1 6 3
4 1 5 1 3 ábécé: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z f(f-1) 6 6 42 2 0 0 12 0 12 0 30 6 12 0 20 0 0 Ezekb l: (o) = i=1 f i ( f i 1) =154 (r ) = 0,358 N (N 1) = 0,358 × 50 × 49 = 94 ( p ) = 0,0667 × 50 × 49 = 163 26 Mivel i(o) közelebb esik i(p)-hez mint i(r)-hez, ezért arra következtetünk, hogy a vizsgált kriptogram monoalfabetikus. Érdekes eredményt kapunk, ha kriptogramként megvizsgáljuk a nyomtatók és fontkészletek tesztelésére alkalmazott ismert szöveget: 50 A QUICK BROWN FOX JUMPS OVER THE LAZY DOG Itt N = 33; i(o) = 20; i(r) = 41 és i(p) = 70 , Mivel i(o) kevesebb, mint fele a teljesen egyenletes véletlen eloszlásra jellemz i(r)-nek a teszt eredménye azt sugallja, hogy a vizsgált szöveg semmilyen nyelven sem lehet nyílt szöveg. persze van más értelmezés is: Ebben a rövid szövegben legalább egyszer el fordul a 26 bet6s angol ábécé minden egyes bet6je. A bet6eloszlás tehát meglehet sen egyenletes, azaz nagyon
„véletlenszer6” A helyettesítési titkosítások körében igaz az el bbi következtetés, de pl. a mai modern kriptorendszerek éppen arra törekednek, hogy a kriptogram bet6inek az eloszlása minél inkább véletlenszer6 legyen, hogy a megfejt sehol se’ találjon semmilyen rést, ahol elkezdhetné a kriptogram módszeres feltörését. A koincidencia-index Friedman az egyik alapvet cikkében a fenti ; jellemz k egy másféle értelmezését adja. Az un koincidencia-index definició szerint a következ : IC = (o) (r ) Az angol nyelv esetén a koincidencia index elméleti értéke: IC = 0,0667 = 1,73 0,0385 Teljesen véletlenszer6 teszt szöveg esetén a koincidencia index értéke 1,00 Mindezt annak a szemléltetésére mutattuk be, hogy egyáltalán nem csak a bet6gyakoriság-statisztikák jelentik a kriptogramok megfejtésekor alkalmazható statisztikai módszereket, vizsgálatokat. A bemutatott statisztikai elemzéseken kívül még számos más is létezik A
következ kben szólnunk kell még valamennyit az els generációs kriptorendszerek „másik”, eddig csak néhányszor említett transzformációs módszerér l, nevezetesen a transzpozicióról. 51 A transzpoziciós titkosítás A transzpozició a nyílt szöveg bet6inek az eredetit l eltér , más poziciókba való áthelyezését jelenti. Másképpen fogalmazva a bet6k valamilyen kulcs szerinti összekeverését, permutációját Emlékeztetünk arra, hogy az els generációs kriptorendszerekre jellemz transzformációk egyik alaptipusa a helyettesítés, a másik pedig a keverés. Nos, a következ kben az utóbbiról lesz szó, tehát a tárgykörünk még mindig az els generációs kriptorendszereké. Ha a nyílt szöveg (vagy annak csak a szavai) bet6it fordított sorrendben írjuk le, már az is egyfajta titkosításnak tekinthet . A bet6k maguk nem változnak, csak a szövegben eredetileg elfoglalt pozicióikat változtatjuk. Ez igen egyszer6 „titkosítás”. Ilyen
bet6keverést hajtottak végre a spártaiak által kifejlesztett szkütalira tekert szalagra írt szöveggel is.41 A transzpoziciós titkosításról középkori feljegyzések is szólnak. Pl a nápolyi Giovanni Porta úgy írta le a De furtivis literarum notis c könyvében 1536-ban, mint a titkosítás alapvet módszerét. Röviddel utána azonban feledésbe merült s ismét domináns lett a helyettesítés. A XVII században aztán nagyon népszer6 rejtvényként foglalkoztak az anagrammák kitalálásával. Az anagramma egy adott szó bet6it úgy rendezi át más sorrendbe, hogy lehet leg egy másik értelmes szót kapjunk. Rejtvénynek, vagy szórakoztató játéknak jó, de titkosítási módszernek nem igazán. A geometriai titkosítás A transzpozició egy jól kezelhet , igen változatos és népszer6 módja az un. geometriai titkosítás A nyílt szöveg bet6it egy (geometriai) rácsszerkezetbe írják be, és más sorrendben olvassák ki ugyanabból a rácsszerkezetb l. A
beírási és kiolvasási módszerek igen változatosak lehetnek és gyakran alkalmazták azt a technikát is, hogy az els összekeveréssel el állított kriptogram bet6it még egyszer összekeverték vagy ugyanazzal a módszerrel, vagy valamilyen más módszerrel. Ez mindenesetre er sebbé tette a titkosítást, vagyis ellenálóbbá a feltörési kisérletek ellen. 41 Ennek a rajza látható e jegyzet elején a bels borítólapon. Thüszidédesz görög történetíró rta le az ötödik században(de az arabok is ismerték) és ezideig az els olyan eszköz, amelyet ismereteink szerint titkosításhoz ill. megfejtéshez használtak 52 2.3 példa Írjuk be egy hatoszlopos mátrixba sorfolytonosan a következ nyílt szöveget: A gépek sohasem pótolhatják az emberi képzeletet (Tegyük ezt a titkosításnál szokásos módon, szóközök nélkül) A G É P E K S O H A S E M P Ó T O L H A T J Á K A Z E M B E R I K É P Z E L E T E T A
transzpozició egyszer6 módja, ha a szöveget pl. oszlop-folytonosan olvassuk ki (és a szokásos módon ötös csoportokba rendezzük): ASMHA RIGOP AZILÉ HÓTEK EPATJ MÉTES OÁBPE KELKE ZT123 Ebben a kriptogramban a bet6gyakoriságok természetesen pontosan megegyeznek a nyílt szöveg bet6gyakoriságaival. A helyettesítési módszernél meg rz d „szomszédosság” (= a nyílt szöveg szerkezete, az unilateralitás) azonban elvész. A kriptogram feltöréséhez „gyanús szavak” bet6sorait keressük úgy, hogy feltételezzük, hogy azok bet6i egymástól azonos távolságra kerültek az összekeveréskor. Persze a dupla transzpozició ezt is megváltoztatja Miért geometriai ez a titkosítás? Ennek két oka is van: El ször is az az alakzat, amelybe beírjuk a nyílt szöveget nem csak egy párhuzamos oldalú mátrix lehet, hanem más, mez kre osztott síkidom is. Pl háromszög, trapéz vagy éppenséggel hatszög is Másodszor pedig az, hogy a kiolvasás módja (azaz a
keverés) nagyon sokféle lehet. A fenti mátrixból pl kiolvashatjuk a szöveget úgy is, hogy a páratlan oszlopokat felülr l lefelé, a páros oszlopokat pedig alulról felfelé olvassuk, de lehet átlósan is kiolvasni és lehet a mátrix szerkezetét követ csigavonalban is, hogy csak néhányat említsünk. 53 Mindezek mellett és ellenére a modern kriptorendszerekben egy un. permutációs mátrix a keverés kulcsa. Ez megmutatja, hogy egy adott, megállapodás szerinti mátrixba beírt nyílt szöveg bet6it a keverés egy ugyanolyan szerkezet6 mátrix melyik cellájába (vagy ha sorfolytonosnak tekintjük mind a nyílt szöveget, mind a kriptogramot, akkor a kriptogram hányadik bet6helyére) viszi át a keverési kulcs. Az el z példa permutációs kulcsa például a következ : 1 8 1 5 2 2 2 9 3 6 2 9 1 6 2 3 3 0 3 7 3 1 0 1 7 2 4 3 1 3 8 4 1 1 1 8 2 5 3 2 3 9 5 1 2 1 9 2 6 3 3 4 0 6 1 3 2 0 2 7 3 4 4 1 7 1 4 2 1 2 8 3 5 4 2 A
transzpozicióhoz persze ezt a mátrixot is sorfolytonosan kell olvasni és megadhattuk volna a kulcsot pl. az 1, 8, 15, 22, 29, 36, 2, 9, 34, 41, 7, 14, 21, 28, 35, 42; szám sorozattal is, ami azt jelenti, hogy a nyílt szövegblokk els bet6je a kriptogram els bet6helyére, a nyílt szöveg második bet6je a kriptogram nyolcadik bet6helyére, a nyílt szöveg harmadik bet6je a kriptogram 15. bet6helyére kerül, és így tovább. Nyilvánvaló, hogy a keverési kulcs ilyen táblázatos megadásával nagyon véletlenszer6 keverési sorrendet is könnyen definiálhatunk és számítógéppel semmivel sem nehezebb egy ilyen transzpoziciót végrehajtani, mint bármelyen cseles klasszikus „geometriai” kiolvasási módszerét. Ma már tehát egyáltalán nincs is értelme geometriai transzpozicióról beszélni. A keverés egymaga ugyan ma már nem nyújt elegend en biztos titkosítást, de helyettesítésekkel kombinálva és többszörös keverést alkalmazva nagyon is beépül a
modern, negyedik generációs kriptorendszerekbe is. 54 Transzpozició forgatható ráccsal Egy négyzetes mátrixba beírt szöveg egy forgatható ráccsal is összekeverhet .42 Egy páros elemszámú négyzetes mátrixban mindig kijelölhet az elemszám egynegyedének megfelel cella úgy, hogy a mátrix transzponálásakor egyik ilyen megjelölt elem se’ kerüljön egy másik helyére. Ezt is egyszer6bb egy példán bemutatni. 2.4 példa 1 2 1 2 3 10 3 11 19 12 4 5 7 8 28 20 13 14 6 4 21 22 15 29 30 23 31 24 32 16 17 33 25 9 18 26 27 34 35 36 A cellakijelöl mátrix négy forgatási poziciója és a nyílt szöveg beírásának bet6sorrendje A permutációs mátrix 28 10 1 19 11 2 3 20 12 29 30 21 13 22 31 4 23 14 32 5 24 15 6 33 7 16 17 34 8 25 26 35 9 27 36 18 Az Olvasó kipróbálhatja, hogy egy 6 x 6 –os négyzetrácsnak kivágja az 1. pozicióban sötétített celláit és a négyzetrács
elforgatásával titkosít egy 36 bet6s szöveget. 42 Ilyen titkosítást ír le Verne Gyula a Sándor Mátyás c. regényében 55 A transzpoziciós titkosítási transzformáció jellegzetes tulajdonságai 43 1. A nyílt szöveg bet6it nem változtatja meg, csak összekeveri azok sorrendjét. 2. A kriptogram ábécéje (és bet6gyakoriságai) pontosan megegyeznek a nyílt szöveg ábécéjével és bet6gyakoriságaival. 3. A transzformáció monoalfabetikus. 4. A nyílt szöveg bet6-többeseinek gyakoriságai azonban már nem egyeznek a kriptograméval. 5. Ez a transzformáció tehát uniliterális (a bet6 egyezések miatt) de nem unilaterális (a bet6sorrend összekeverése miatt). 6. Az ábécé nem kötött (mint a helyettesítésnél). Tetsz leges karakterek használhatók. 7. Nem feltétlen kikötés ugyan43 a nyílt szöveg egyszerre titkosított un. blokkjának a mérete, de szinte minden gyakorlati esetben azonos számú bet6t tartalmazó blokkokra
tördelik a szöveget és ezeket a szövegblokkokat külön-külön egymás után transzformálják. A transzpoziciós titkosítás tehát többnyire kötött hosszúságú szövegblokkokkal m6ködik. 8. A transzformáció kulcsa a permutációs mátrix. Ha a 2.3 példára gondolunk, ott csak a transzpoziciós mátrix oszlopainak a száma volt megadva, a soroké nem. Hosszabb szöveghez többsoros mátrix tartozhatott volna 56 Az ismételt transzformációk Mind a helyettesítési, mind a transzpoziciós titkosítás esetén ismételten is alkalmazható ugyanaz a tipusú transzformáció, csak minden ismétlés más-más kulccsal.44 Könnyen belátható azonban, hogy a transzformációk megismétlése nem jelent lényegi változást. A helyettesítéskor pl. helyettesítse az A bet6t B az els transzformációnál (amelynek a kulcsát jelölje K1), és helyettesítse C a B bet6t a második (K2 kulcsú) transzformációnál E két, egymásutáni helyettesítés felfogható
egyetlen (valamilyen K3) kulcsú helyettesítési transzformációnak is, amely a nyílt szöveg minden A bet6jét C-be viszi át. (A K3 kulcs a K1-b l és a K2-b l eredeztethet ) Két, vagy több helyettesítési transzformáció egymásutáni alkalmazása tehát egyetlen helyettesítési transzformációnak tekinthet és úgy is kezelhet . Ez igaz akkor is, ha az egymás utáni transzformációk mindegyikének más a helyettesítési kulcsa (és n bet6s bet6csoportot mindig n bet6s bet6csoporttal helyettesít). Mivel mindegyik helyettesítési transzformáció unilaterális (azaz meg rzi a nyílt szöveg bet6inek a szomszédosságát) ezért az ismételt helyettesítési transzformációk „ered je” is unilaterális az eredeti szövegre nézve is. Ne feledjük, hogy mindez akkor, és csak akkor érvényes, ha valamennyi transzformáció kulcsa rögzített. Ha bármelyik komponens transzformáció kulcsa megváltozik, akkor változik az „ered ” transzformáció kulcsa is. Amíg
a transzpoziciós titkosításokat kézi módszerrel végezték, addig valóban nehezíthette a megfejtést a permutációk ismétlése.45 Például sorfolytonosan beírták a nyílt szöveget egy „k” oszlopos mátrixba és oszlop folytonosan kiolvasták bel le, majd a kapott kriptogramot sorfolytonosan ismét beírták egy „k” oszlopos mátrixba és átlósan kiolvasták bel le. Ez a két permutációs eljárás végeredményben egyetlen permutációként is felfogható, amelynél azonban nem érvényes a sorfolytonos beírás – oszlop-folytonos kiolvasás, hanem egy permutációs táblázattal kell megadni az „ered ” permutációt. 44 Ez magától értet d ha az ismételt transzformációk mindegyike egy bet t egy bet vel helyettesít. A dolg azonban általánosabb ennél: Igaz akkor is, ha n bet s bet csoportot n bet s csoporttal hellyettesítünk az egymást követ transzformációk mindegyikében. Ez a feltétel végül is a transzformációs függvények
izomorfiájaként is megfogalmazható, de ebbe itt nem szándékozunk belemenni. 45 A transzpoziciós titkosítás tárgyalásakor utaltunk is az un. „geometriai” transzformációra, ami csakis annyit jelentett, hogy a nyílt szövegnek a permutációs mátrixba való beírásakor és/vagy a kiolvasásakor valamilyen „geometriai” elrendezést követtünk. Ha a permutációs kulcs táblázattal van megadva, akkor –a számítógépes megoldásoknál- nem igen van jelent sége az ilyen és ehhez hasonló geometriai mintázatoknak. 57 Az ismételt permutációkra is igaz tehát, hogy azok „ered je” egyetlen permutációval helyettesíthet és igaz az is, hogy ha valamennyi komponens permutáció uniliterális (azaz „csak” összekeveri az eredeti nyílt szöveg bet6it) akkor az „ered ” transzformáció is ugyanígy uniliterális lesz az eredeti nyílt szövegre nézve. Ne feledjük azonban, hogy a permutációt mindig blokkokon hajtjuk végre. Az egymást követ
transzpoziciók akkor és csakis akkor felcserélhet k, ha a blokkhosszúság mindegyik közbens transzformációnál ugyanaz A szorzat transzformáció és az invertálhatóság Mind a helyettesítési, mind a transzpoziciós titkosítás esetén ismételten is alkalmazható ugyanaz a tipusú transzformáció, esetenként minden ismétlés más-más kulccsal. Mind az ismételt helyettesítéseknél, mind az ismételt permutációknál felfogható az „ered ” transzformáció a komponensek szorzatakén, tehát még a komponens transzformációk végrehajtási sorrendjére nézve is invariáns az ered transzformáció. Az ilyen tulajdonságú ismételt transzformációkat szorzat, azaz produkttranszformációknak. nevezzük Nem kell külön bizonyítani, hogy mind a helyettesítési, mind a transzpoziciós transzformációk „visszafelé” is alkalmazhatók, azaz invertálhatók. Ennek így is kell lennie ahhoz, hogy egy velük titkosított szöveg kriptogramja visszafejthet
legyen. Az invertálhatóság tehát a visszafejthet ség feltétele. A szorzat-transzformációkról eddig elmondottak értelmében a produkt transzformációk is invertálhatók, tehát visszafejthet k.46 Mi a helyzet akkor, ha egy nyílt szövegen el ször egy helyettesítési, majd egy transzpoziciós transzformációt hajtunk végre? Nos, a helyettesítési transzformáció nem változtatja meg az eredeti szöveg bet6inek egymásmelletiségét (mivel unilaterális) a permutáció pedig csakis az utóbbit változtatja és nem befolyásolja a szöveg bet6it (mivel uniliterális). A helyettesítési és a keverési transzformációk alapvet en eltér jellege miatt tehát az egyik semmilyen hatást sem gyakorol a másikra. Ezért egy helyettesítési és egy transzpoziciós transzformáció egymás utáni alkalmazása is produkt transzformáció, amelyben a komponens-transzformációk felcserélhet k. 46 Ez már csak azért is igaz, mert ha minden helyettesítési transzformáció
invertálható, akkor ennek igaznak kell lennie a komponens transzformációk ered jeként el álló hellyettesítési transzformációra is és nyílván ugyanez a helyzet a az ismételt permutációk ered jeként kapott transzpoziciós transzformációra is. (Feltéve ha teljesülnek a korábban már említett izomorfia feltételek a transzformációs függvényekre.) 58 A helyettesítési transzformációk „blokk-hosszúságának (pl. egy bet6t egy bet6be visz át) nem kell azonosnak lennie a permutációs transzformációk blokk-hosszúságával. Már csak azért sem, mert pl egyetlen bet6b l álló „blokkot” nem is lehet keverni, de helyettesíteni igen. Ez az ered transzformáció azonban más, se nem helyetesítési, se nem transzpoziciós, hanem a kett keveréke. A fentiekben elmondottak miatt mind a helyettesítési transzformációk egy akárhány tagú sorozata egyetlen helyettesítési transzformációként fogható fel, amelyben az egyes
komponens-transzformációk végrehajtási sorrendje közömbös és ugyanígy értelemszer6en igaz ez a permutációs transzformációkra is. (Feltéve, hogy az egymás utáni helyettesítések blokkhosszúságai egymással azonosak és az egymás utáni permutációs blokkméretek is egymással – de nem a helyettesítési blokkméretekkelazonosak.)47 Ha az ismételt transzformációknál nem csak a kulcs, hanem pl. a blokkméretek is változnak (azaz nem teljesül az alkalmazott transzformációk izomorfia-feltétele) akkor az ered már nem produkt transzformáció, hanem egymásba ágyazott transzformációkról. van szó, amelyek invertálhatók ugyan, de a visszafejtési sorrend egyáltalán nem közömbös és a transzformációk nem felcserélhet k. Az azonos tipusú transzformációk mondott összevonása ill. szorzatként való értelmezhet sége s t: a helyettesítési és a transzpoziciós transzformációk szorzat-transzformációnak tekinthet sége, persze, jelent s
könnyebbséget jelenthet az ered kriptogram feltörésekor. Ett l, persze, a kriptogram feltörése még nagyon nehéz feladat, de a kriptoanalízis avatott szakemberei számára még a legkisebb fogódzók is segítséget jelenthetnek. Ennek tudatában vannak a kriptorendszerek megalkotói is. Látni fogjuk kés bb, a negyedik generációs, iterációs kriptorendszerek tárgyalásakor, hogy a modern szimmetrikus kriptorendszerekben vegyesen és felváltva alkalmazzák mind a helyettesítési, mind a transzpoziciós transzformációkat, de az azonos tipusúaknál is törekednek arra, hogy a mondott izomorfia-feltétel ne teljesüljön, tehát egyáltalán ne legyen közömbös a visszafejtéskor az alkalmazott transzformációk sorrendje. Emellett még más, a két alaptipustól eltér transzformációt is bevezettek némelyik rendszerbe csak azért, hogy a potenciális feltör k dolgát megnehezítsék. 47 Ez akkor teljesül, ha a helyettesített szöveg kevert képe megegyezik a
kevert szöveg helyettesített képével, ami a kétféle (nevezetesen a helyettesítési és a keverési) transzformációk izomorf tulajdonságával függ össze. 59 Ha pedig az „ered k” szorzat jellegét (azaz kommutativitását) is figyelembe vesszük, akkor azt állíthatjuk, hogy ha helyettesítési és transzpoziciós transzformációk egy tetsz leges sorozatát tekintjük, akkor mindegy, hogy e sorozat komponens transzformációit milyen sorrendben hajtjuk végre, az eredmény ugyanaz lesz. Ez, persze, az inverz transzformációkra, azaz a megfejtésre is igaz A fentiekben induktív következtetéssel kapott eredmények, persze, általánosíthatók is. Azt állítjuk, hogy mind a helyettesítési, mind a permutációs transzformációk a mondott blokkméret-feltételek mellett un. izomorf transzformációk és egymásra nézve is teljesül az izomorfiájuk Az azonos tipusú izomorf transzformációk sorozata pedig szorzat transzformációt eredményez, amelyben –a
szorzat kommutativitása miatt- a komponenstranszformációk sorrendje felcserélhet , azaz az ered transzformáció invariáns a komponensek sorrendjére. Ha találunk két különböz lineáris transzformáció-tipust, amelyek egymásra semmilyen befolyást nem gyakorolnak, akkor ezek egymás utáni alkalmazása is szorzat transzformációt eredfményez. 60 Tárgymutató agglutináló nyelv . 16 anagramma . 55 Arany János. 42 aszimmetrikus kriptorendszer . 10 Bacon, Sir Francis . 51 beágyazott transzformáció. 62 bet6pár . 29 bet6-többes. 27 bigraph. 27 biliterális. 50 brute force . 11, 23 cézár kerék . 20 Cézár-féle titkosítás . 19 Chadvick, John . 14 cleartext. 8 Codebrakers . 10 cryptanalist . 10 cryptosystem. 10 cuneiform. 15 decipherment. 9 dekódolás . 9 desiffrírozás . 9 duplet. 27 egybet6s szavak . 30 eltolásos helyettesítés . 30 encipherment. 9 encryption . 9 Enigma . 43 fordított sorrend6 ábécé . 52 Friedman, William F. 45 geometriai
titkosítás. 55 Grotenfeld,Georg Fridrich . 15 Heidenberg, Johann von. 51 helyettesítés . 18, 48 hieratikus írás . 14 hieroglif írás . 14 Horapollon . 14 izomorf transzformációk. 63 J.FChampollion 14 Julius Caesar. 19 kétbet6s szavak . 30 keverés . 18, 48 kevert ábécé . 52 kód(fel)törés. 10 koincidencia-index . 54 kompromittálódás . 9 61 konkatenáció . 45 krétai lineáris B írás . 14, 16 kriptoanalizátorok. 10 kriptoanalízis. 10 kriptográfia. 10 kriptográfiai er sség . 23 kriptogram. 8, 10 kriptorendszer . 10 kulcs . 9 kulcstér . 23 modulo n kivonás. 21 modulo n összeadás. 21 monoalfabetikus . 18 monoalfabetikus helyettesítés . 19 Navajo indián . 5 nyers er módszere . 23 nyers er ódszere . 11 nyílt szöveg. 8 nyiltkulcsú kriptorendszer . 10 P doboz . 49 pemutáció . 55 pentagraph . 27 permutáció. 18, 48 permutációs kulcs. 57 permutációs mátrix . 57 plaintext . 8 Polybios . 50 polygraph . 27 polyliterális . 50 Porta, Giovanni. 55
produkt transzformáció. 61 Pythagoras . 14 quadruplet. 27 quintuplet . 27 Rasid . 14 Rawlinson, Henry Creswicke . 15 reciprocitás elve. 43 Rónai Jácint. 15 Rosette . 14 rosette-i k . 14 S doboz . 49 Sándor Mátyás . 58 Shannon . 23 siffrírozás . 9 singleliterális . 50 singleton . 27 statisztikai tulajdonságok . 23 szabványos ábécé . 52 szimmetrikus rendszerek . 10 szótag-írás . 16 62 szteganográfia . 6 szubsztitúció . 48 természetes nyelv. 23 tetragraph . 27 Toldi. 42 transzpozició. 18, 48, 55 trigraph . 27 Tritheimius . 51 unilaterális . 49 Ventris, Michael . 14, 16 Verne Gyula. 58 ; teszt. 53 Szakirodalom A Budapesti M6szaki F iskola Kandó Kálmán Villamosmérnöki F iskolai Karának székesfehérvári Számítógéptechnikai Intézete intranet hálózatán is találhatók aktuális anyagok a következ webkiköt címén: http://www.szgtibmfhu További website-ok: www.sshfi/tech/crypto/algorithmshtml amely a nyílt és a titkos kulcsú algoritmusokról
ad rövid ismertet t www.sshfi/tech/crypto/protocolshtml amely viszont a legfontosabb kriptográfiai protokollokat sorolja fel, köztük azokat is, amelyeket ma már szabványosítottak. A számos angolnyelv6 könyv közül csak néhányat említünk: [1] Randall K. Nichols: ICSA (= International Computer Security Association) Guide to Cryptography. McGraw-Hill, 1999 ISBN 0-07-913759-8 A legjobb (és egyik legfrissebb, angolnyelv ) kézikönyv a kriptográfiáról, amelyben gyakorlatilag minden megtalálható, amit ma err l tudni kell) [2] Robert Churchhouse: Codes and Ciphers Cambridge University Press, 2002. ISBN: 0 521 00890 5 [3] F.LBauer: Decrypted Secrets Methods and Maxims of Cryptology Springer Verlag 1997. ISBN: 3-540-60418-9 [4] Randall K. Nichols, Daniel & Julie Ryan: Defending Your Digital Assets. McGraw-Hill, 2000 ISBN 0-07-212285-4 [5] Randall K. Nichols: Classical Cryptography Course Vol1 & Vol2 Aegean Park Press CA-USA 1996. ISBN 0-89412-263-0 &
0-89412-264-9 [6] Bernard Sklar: Digital Communications – Fundamental and Applications Prentice Hall Inc. 1998 ISBN 0-13-212713-x025 63 [7] Bruce Schneier: Applied Crytography. John Wiley & Sons, 1994. [8] David Kahn: Codebrakers. Az adott támával foglalkozó kevésszámú magyarnyelv6 szakirodalomból a következ könyvek ajánlhatók: [9] Németh József: Adatvédelem számítógépes és hírközl rendszerekben Számalk, Budapest 1984. [10] Nemetz Tibor - Vajda István: Az algoritmusos adatvédelem Akadémiai kiadó, 1991. [11] Ködmön József: Kriptográfia. Computer Books Kiadói Kft, Budapest 1999/2000. ISBN 963 618 224 8 [12] Simon Singh: Kódkönyv.Park Könyvkiadó, Budapest 2001 ISBN: 963 530 525 7 ZÁRSZÓ A fentiekkel a kriptogenerációk tárgyalását egyáltalán nem tekinti befejezettnek a szerz . Ennek a segédletnek várhatóan lesz folytatása, amely majd a második és a harmadik generációs kriptorendszerekkel foglalkozik. A negyedik
generációs kriptorendszerek közül „DES” címmel (és Randall K, Nichols professzorral közösen megírva) már megjelent a szimmetrikus kriptorendszerekkel foglalkozó segédlet és a szerz tollából az Aszimmetrikus kriptorendszerekr l írt anyag is. Megjelent továbbá néhány nagyobb esszé pl a digitális aláírásról, meg az adatvédelemr l. Ezek hozzáférhet ek a BMFKVK távoktatási jegyzetei és segédletei között, valamint elolvashatók a www.szgtibmfhu/~mtoth webkiköt vonatkozó mappáiban Székesfehérvárott, 2002. augusztus 15-én Dr. Tóth Mihály CSC ,f iskolai tanár 64