• Nem Talált Eredményt

A monoalfabetikus titkosírás és sérülékenysége

A kriptográfi a 1400 előtti történetére nem kellene sok szót vesztegetnünk, ha nem lettek volna az arabok. A nyugati latin, majd nemzeti nyelven folyó titkosítási mód-szerek jelentős része a késő középkori századokig az egyszerű behelyettesítés szintjén maradt. A rejtjelező eleinte csak a magánhangzókat cserélte ki pontokból álló jelekre majd grafi kus szimbólumokra, később pedig a titkosítandó (más szóval: nyílt) szöveg minden egyes betűjének megfeleltetett egy adott számot, betűt vagy jelet. Minden alkalommal, amikor a nyílt szövegben az a betű következett volna, a neki megfelelő számot, betűt vagy jelet írta le a titkosított szövegben, más szóval: a kódszövegben.2 Minthogy az ilyen módszer egyetlen jel-, szám- vagy betűsorozatot feleltetett meg egy az egyben az ábécének, más szóval egyetlen kódábécét használt a nyílt szöveg titkosítására: az eljárást monoalfabetikus titkosírásnak hívják.

1. Monoalfabetikus titkosírás Mantovából 1395-ből3

A monoalfabetikus titkosírás meglehetősen sérülékeny, a legkevésbé sem biztonságos.

Első pillantásra úgy tűnhet, hogy a kódfejtőnek egy 22 betűből álló kódábécé esetében 22! (huszonkét faktoriális), azaz 22×21×20…×3×2×1 = 1 124 000 727 777 607 680 000 db lehetséges megoldásból kéne kiválasztania a megfelelőt, ami igencsak időigényes feladat,

1 Ebben a részben A Rohonci kód című könyvem hatodik fejezetének szövegét jelentős mértékben kibővítettem és továbbfejlesztettem.

2 A  középkori módszereket hasznos kategóriákba rendezve mutatja be Bernhard Bischoff, Übersicht über die nichtdiplomatischen Geheimschrift en des Mittelalters, Mitteilungen des Instituts fur Österreichische Geschichtsforschung 62 (1954), 1–27, lásd még Kahn, Th e Codebreakers; Meister, Die Anfänge der modernen diplomatischen Geheimschrift , Meister, Die Geheimschrift im dienste der päpstlichen Kurie.

3 Meister uo., 41.

Titkosírás.indb 25

Titkosírás.indb 25 2015.05.02. 21:44:062015.05.02. 21:44:06

Powered by TCPDF (www.tcpdf.org)

26

számítógépes támogatás nélkül majdnem lehetetlen. A kódfejtő élete azonban ennyire nem nehéz, számos matematikai módszer áll ugyanis rendelkezésre a lehetőségek szá-mának radikális leszűkítésére, az ilyen jellegű titkosírások feltörésére. A legismertebb ilyen módszer a frekvenciaanalízis, vagyis a gyakoriságelemzés. Ez viszonylag egyszerű módszer, lényege abban áll, hogy a kódfejtő leszámolja, a titkosírásban melyik karakter hányszor fordul elő, és a leggyakoribbakat igyekszik megfeleltetni a nyílt szöveg általa feltételezett nyelve leggyakoribb betűinek. Minden nyelvnek igen erős jellegzetessége ugyanis, hogy melyek a leggyakoribb betűi, és ez a tulajdonsága meglehetősen állandó minden, az adott nyelven írt szövegben. Mindez persze csak akkor igaz, ha a szerző nem kizárólag egyetlen magánhangzót használ, például nem eszperente szöveget ír, nem követ el nagy mennyiségben szándékosan helyesírási hibákat, és nem szaknyelvet használ, például katonai zsargont, amelyben a névelők kisebb arányban fordulnak elő.

A mai angol nyelvben az E T A O I N S H R D L U a leggyakoribb betűk gyakoriságuk sorrendjében, és a Z a legritkább. A franciában a E N A S R I U T O L D C, a németben az E N R I S T U D A H G L, az olaszban az E I A O R L N T S C D P, a spanyolban az E A O S R I N L D C T U a leggyakoribb betűk sorozata, míg a mai magyar nyelv frekvenciatáblázata az E A T L N betűkkel kezdődik. Bármelyik nyelvhez hamar el-készíthetjük a betűinek relatív frekvenciáját tartalmazó grafi kont, egyszerűen csak le kell számolnunk egy féloldalas szöveg összes betűjét.

Minthogy a monoalfabetikus titkosírásokban az azonos betűk helyett azonos, kü-lönböző betűk helyett kükü-lönböző karakterek állnak a kódolt szövegben, az alapnyelv frekvenciatáblázatának kiugró oszlopait egy kis próbálgatással jól meg lehet feleltetni a kódszöveg frekvenciatáblázata hasonló oszlopainak. Minél hosszabb a rendelke-zésünkre álló titkosírás, annál pontosabban fog illeszkedni a frekvenciatáblázata az alapnyelv táblázatára, de általában egy féloldalas szövegrész is elegendő minta ehhez a művelethez. Az interneten persze bőséggel találhatók olyan oldalak, amelyekbe bemásolva a szövegünket, automatikusan megkapjuk a frekvenciaanalízisét.4 Ez a megfeleltetés természetesen szinte soha nem működik automatikusan, sok próbálko-zásra van szükség, amíg a leggyakoribb karakterek sorát valóban sikerül ráilleszteni a leggyakoribb betűk sorára.

Haladó kódfejtők nemcsak a betűk, hanem a bigramok (betűpárok), a trigramok (betűhármasok) és a kettős karakterek gyakoriságát is elemzik. Az angol nyelvben a leggyakoribb betűpár a TH, a leggyakoribb betűhármas pedig – nem meglepő mó-don – a THE, míg a gyakoribb kettős karakterek a SS EE és a TT. A nyelvstatisztika ilyen részleteinek ismeretében a monoalfabetikus titkosírások a legkevésbé sem szá-mítanak biztonságos módszernek.

Bár e módszerek megkönnyítik a kódfejtő dolgát, a tapasztalat mégis az, hogy sokszor egyszerűen nyers erővel bánnak el a monoalfabetikus titkosírásokkal: keres-nek egy kiugró mintázatot a karakterfolyamban, és azt megfeleltetik a nyílt szöveg feltételezett nyelvében leggyakrabban előforduló szótagoknak. Igen jó példa erre az

4 http://www.characterfrequencyanalyzer.com/. Letöltve: 2015. február 03.

Titkosírás.indb 26

Titkosírás.indb 26 2015.05.02. 21:44:062015.05.02. 21:44:06

Powered by TCPDF (www.tcpdf.org)

27

a rejtvény (Cipher Challenge), amelyet Simon Singh titkosírástörténeti könyvének eredeti kiadásában tett közzé. A feladat tíz kódolt üzenetből állt, a megfejtőnek Singh komoly pénzjutalmat tűzött ki. A Nagy Feladatot végül a világ több pontján dolgozó amatőrök és profi k együttműködő csapata fejtette meg 2000 októberében több mint egy év munka után. Megfejtési módszerüket publikálták, így pontosan látjuk, hogy az egyszerűbb kódolt üzeneteknek (a tíz növekvő nehézségű feladat közül az elsők-nek) papírral, ceruzával és nyers erővel álltak neki, nem bonyolították az életüket algoritmikus számítógépes módszerekkel.5

Most azonban, hogy meggyőződtünk, mennyire könnyű lehet, akár frekvencia-analízissel, akár puszta erővel megfejteni a mai monoalfabetikus titkosírásokat, érde-mes felhívni a fi gyelmet arra, hogy ez az optimizmus igencsak félrevezető a történelmi titkosírások esetében. Nyilvánvaló, hogy a „ránézek a kódszövegre, és felismerem a nyelv bizonyos struktúráit” módszer akkor működik jól, ha a kódszövegben vannak szóhatárok, tudjuk, mi az alapnyelv, mi magunk is jól ismerjük azt a nyelvet, és a kó-doló következetes helyesírással dolgozott. Amennyiben nincsenek szóhatárok és nem vagyunk biztosak benne, milyen nyelven írták a szöveget, már nem lesz olyan könnyű a puszta ránézés a kezdéshez. Ilyenkor érdemes elővenni a betűgyakoriság módszereket.

Igen ám, de egy 17. századi magyar szöveg ebben az esetben is megizzaszthat. Hiába számítunk például arra, hogy egyazon jel háromszor egyazon szóban nem állhat egy-más mellett (hiszen egyetlen magyar szóban sincs hármas betűismétlődés), ugyanis a kódolók nagyon gyakran követtek el hibákat, felejtettek ki jeleket, írtak le véletle-nül egy számot eggyel többször. Hiába számítunk arra, hogy koherens helyesírással dolgozott, mert mi sem állt távolabb tőle, mint hogy a mi modern kori elvárásainkat teljesítse a következetességgel kapcsolatban. Nem tudhatjuk példának okáért, hogy vajon a „hogy”-ot „hogy”-nak, vagy „hogi”-nak betűzte-e. Azt sem, hogy külön jeleket használt-e az ékezetes betűknek, vagy csak az ékezet nélküli ábécét használta, esetleg keverte a kettőt. Nem tudjuk, megkülönböztette-e a v és az u betűt, vagy az i és a j betűt, és esetleg egy jellel kódolta mindkettőt. Nem érdemes kiindulni abból sem, hogy a mai magyar nyelvben milyenek a betűgyakoriság-viszonyok, de az sem segít, ha az adott kor kiadott – tehát a követett szövegkiadási szabályoktól függően többé vagy kevésbé modernizált – szövegei alapján készítjük el a gyakoriságtáblázatokat. Választhatjuk persze egy kézirat tökéletesen betűhív átírását erre a célra, ebben az esetben is el kell azonban döntenünk, ékezetes vagy ékezet nélküli átírás alapján számoljuk a betűgya-koriság-táblázatainkat, vagy hogy egynek tekintjük-e az u és v, az i és j betűket. Ameny-nyiben a szöveg német, latin vagy francia is lehet, a nehézségeink csak sokszorozódnak.

Ilyen és ehhez hasonló problémákkal szembesültünk annak a titkosírás-elemző programnak az elkészítése során, amelyet kollégáimmal történelmi titkosírások meg-fejtésére fejlesztettünk.6 Itt elég annak rögzítése, hogy hiába állapítjuk meg egy 17.

5 http://www.simonsingh.com/Cipher_Challenge.html

6 Héder Mihály, Láng Benedek, Lévai Szabolcs, Filológiai okok egy monoalfabetikus titkosírás-fejtő szoft ver mellett: a program működése és tapasztalatai, Magyar Könyvszemle, 129 (2013/4), 511–519.

Titkosírás.indb 27

Titkosírás.indb 27 2015.05.02. 21:44:062015.05.02. 21:44:06

Powered by TCPDF (www.tcpdf.org)

28

századi magyarországi titkosírásos levélről, hogy monoalfabetikus rejtjelezést tartal-maz, amennyiben nem láthatóak a szóhatárok, az alapnyelv nem ismert, és a titkosító következetlen helyesírással írt, a történésznek minden gyakoriságelemző módszer ellenére beletörhet a bicskája a megfejtésbe. Nem érdemes hát lebecsülnünk az ilyen módszerrel kódolt levelek okozta nehézségeket, amelyek – mint ezt az alábbiakban látni fogjuk – meglepően nagy számban maradtak fenn a kora újkori magyar törté-nelem forrásanyagában.

A mai kódfejtési problémáink után térjünk azonban vissza a múlt szereplőihez.

Nekik ugyanis kevesebb nehézséggel kellett megküzdeniük, rendszerint tudhatták, milyen nyelven íródott egy rejtjelezett levél, mint ahogy az adott nyelv akkori állapotát is igen behatóan ismerték (nem zavarta őket a nyelv többszáz évvel későbbi állapotá-nak ismerete). Ezért lehet az, hogy bár mind Julius Caesar, mind Nagy Károly, mind a középkori pápaság és egy sor itáliai város környezetéből van tudomásunk egysze-rű monoalfabetikus titkosírás használatáról a frekvenciaanalízist pedig láthatólag nemigen gyakorolták a középkori Nyugaton, nincs okunk meglepődni azon, hogy leggyakrabban mégsem e törékeny eszközre bízták a diplomácia biztonságát. Az üze-netek sérülékenységét növelte, hogy a 15. századot megelőző titkosírások egy jelentős része részleges és könnyen kiismerhető volt, mert például csak a magánhangzókat cserélték ki, olykor pedig az ábécé betűinek egyszerű eltolásával nyerték a kódábécét (a helyett b-t írtak, b helyett c-t). Bár több tucat rejtjelezett levél maradt fenn, mint ahogy számos titkosírástábláról is van tudomásunk, az 1400 előtti időkben a fontos üzenetek elrejtésének rendszerint más, nem a kriptográfi a területére tartozó módjait választották, például egyszerűen eldugták őket a küldönc ruhájában.