hirdetés
hirdetés

Kriptoszökevények

Fejezetek a titkosírás történetéből

Az óvni kívánt tartalmakat régen is gyakran titkosították elmés szerkezetekkel, trükkös megoldásokkal. Manapság a számítógép uralja a kriptográfiát (is).

hirdetés

A kriptográfia és a számelmélet manapság számos ponton kapcsolódik egymáshoz, ami felnagyítja a számelmélet területén elért új eredmények jelentőségét. Ezért is kapták fel a fejüket a titkosítási szakértők, amikor egy japán matematikus bejelentette, hogy megfejtette a – a természetes számok közül csak eggyel és önmagukkal osztható – prím számok egyik régóta kutatott titkát.

– Sok kriptográfiai eljárás, például az e-mail-titkosító programok egy része „azon alapszik, hogy egy nagyon nagy, esetenként több száz számjegyből álló számról nem dönthető el gyorsan, hogy prím-e vagy sem. Az ekkora számok prímtényezős bontása még a szuperszámítógéppel is több ezer évig tartana” – magyarázza Sági Gábor, a BME Algebra tanszékének docense. A prímek eloszlásának jobb megértése segíthetne kideríteni, hogy az osztók megkeresése elvi okok miatt halad lassan, vagy netán mégis létezik gyors eljárás.

Minden kezdet nehéz

A kriptográfia, vagyis a titkosítás tudománya jóval régebbi a számítógépeknél. A Kr.e. VI. században héber tudósok már titkosítottak szövegeket az úgynevezett atbas-módszerrel: felcserélték a héber ábécé betűit, az elsőt az utolsóval, a másodikat hátulról a másodikkal, és így tovább. A módszer elnevezése magából a mechanizmusból fakad: alefből taw, béth-ből sin lett. A spártai hadsereg az úgynevezett keveréses módszert használta az üzenetek titkosítására. Hosszú, ártalmatlannak látszó üzeneteket gyártottak, amelyekben el volt rejtve a rövidebb, valódi információ.

A Kr.e. VI. században héber tudósok már titkosítottak szövegeket
A Kr.e. VI. században héber tudósok már titkosítottak szövegeket

Mindehhez a szkütalét használták: egy bőrcsíkot feltekertek egy adott vastagságú rúdra úgy, hogy a csíkok egymás mellé illeszkedjenek. Ezután a rúd hosszában felírták az üzenetet, vagyis egy sorba jutott egy betű. Amikor elkészültek, legöngyölítették a rúdról a bőrcsíkot, így az üzenet betűi távol kerültek egymástól. Ezeket a betűket foglalták bele egy hosszabb szövegbe. A megfejtéshez tudni kellett, milyen átmérőjű rúdra kell feltekerni a bőrdarabot.

Az ábécé eltolásával titkosította hadi dokumentumait Julius Caesar, akinek módszerét azóta is Caesar-rejtjelnek nevezik. Az első római császár a 3-as számot használta kulcsként, vagyis a titkosított verzióban az A-ból D, a B-ből E lett, és így tovább. A sor végén az X-ből lett az A, az Y-ból a B. Az efféle titkosítások azonban akár a kulcs ismerete nélkül is könnyedén visszafejthetők. Mivel egy adott betűt mindig ugyanaz a másik betű helyettesíti, csak meg kell nézni, melyik betű milyen gyakorisággal szerepel a titkosított szövegben. Ha egy magyar szöveget Caesarral titkosítanak, és a rejtjelezett verzióban D-ből van a legtöbb, feltételezhető, hogy az egész ábécét eggyel visszafelé tolták el, a magyar szövegekben ugyanis statisztikailag az E betű szerepel a leggyakrabban.

Ezek megfejtése idővel rutinná vált, az ennél bonyolultabb rejtjelezésekről azonban még a XVI. században is azt gondolták, hogy a kulcsok ismerete nélkül a titkosírások megfejthetetlenek. „Amikor Giovanni Mocenigo velencei követ megtudta, hogy Francois Viète (IV. Henrik francia király matematikusa) II. Fülöp spanyol király titkosírással írt levelezését a kulcs előzetes ismerete nélkül megfejtette, megvádolta Franciaországot a pápánál, hogy ördögöket és boszorkánymestereket fogadott szolgálatába” – írja Titkosírások című 1978-as kötetében Révay Zoltán.

Megfejtésre vár

Megfejthetetlennek tűnő szövegek azért akadnak: a ma Ausztriában található Rohonc településről származó nagyjából 1530-ra datálható kódex szövege 800 különböző titkos jelet tartalmaz (vagyis a 39 betűs magyar ábécé minden betűjét 20 jel is helyettesítheti akár, bár a szakemberek szerint az ábrák felépítése inkább a kínai írásjelekhez hasonló). Az Egri csillagok és A láthatatlan ember című klasszikusokat jegyző Gárdonyi Géza titkos írású naplóját megfejtő Gyürk Ottó évszázadokkal később 3 évet foglalkozott vele, mire – például a jobb oldali margó szabályossága alapján – úgy vélte, hogy a szöveget jobbról balra kell kiolvasni, valamint megfejtettnek kiáltotta ki a számok egy részét is.

Ennél sokkal tovább azóta sem jutott senki. Kossuth Lajos és kormánya jól döntött tehát, amikor az 1848-49-es forradalom idején úgy titkosították az általuk írt dokumentumokat, hogy a jelkészletükbe mindenféle írásjelet – latint, görögöt, cirillt egyaránt – kevertek. Valóságos kriptográfiai orgia köszöntött be az első világháborúval, hiszen a kommunikáció jó része távírón illetve távbeszélőn (rádión) zajlott, amit könnyen le lehetett hallgatni. Ennek fényében meglepő lehet, hogy a Caesar-módszer továbbfejlesztett változatát még 1915-ben is alkalmazták.

A jóval bonyolultabb módon rejtjelezett orosz üzenetek egyik sztárfejtője Pokorny Hermann volt, aki az orosz szövegekben tett kalandozásairól külön könyvet készült írni, ám 1945 januárjában – mint A láthatatlan kém című visszaemlékezéseiben írja – „az orosz vezérkar vette át e könyv másolatát, az összes általam desifrírozott (18) eredeti orosz kulccsal és kb. 12000 megfejtett rádiógramm másolattal együtt. A könyvet oroszra fordították, s mint vezérkaruk titkos segédletét használták.”

Háborús alkalmazások

Az első világháborúban használt komplett kódkönyvek kétnyelvű szótárakként működtek. Az efféle kötetek egyfajta előképe az arab világból eredeztethető virágnyelv. Mivel a lányok és a fiúk másképp nemigen érintkezhettek, ki-ki titkos üzeneteket küldözgetett szerelmének a virágok neveinek segítségével. Az ánizs például azt jelentette, ne hagyd rászedni magad, míg a százszorszép arról biztosította a hallgatót, hogy „nem válunk el”. A virágnyelv később társalgási forma lett, majd a diplomácia területére is betört. Többnyire azonban a szavakat az első világháború idején számok helyettesítették.

A szavakat az első világháború idején számok helyettesítették
A szavakat az első világháború idején számok helyettesítették

Az Osztrák-Magyar Monarchia hadi szótára például háromjegyű számokból állt, vagyis összesen 1000 szót lehetett vele kifejezni. Az ellenséges csapatok kulcsainak a megfejtésére nem mindig volt idő, így gyakran cselekhez folyamodtak: az Osztrák-Magyar Monarchia kódfejtői például Konstantinápolyban megjelentettek egy katonai témájú cikket, amit az olasz attasé rejtjelezve küldött haza. Az üzenetet elkapták, így máris sokat megtudtak az olasz számkombinációkról – meséli Szabó István, az ELTE Valószínűségelméleti és Statisztika Tanszékének docense.

Ennél lényegesen biztosabb rejtjelezési módszerek már a régmúltból is a rendelkezésre álltak. Az 1585-től Blaise Vigenére francia diplomata által alkalmazott, utóbb róla elnevezett titkosítási módszerről a Scientific American magazin 1917-es cikke nyomán például úgy hírlett, hogy feltörhetetlen. Igaz, az egyik első mechanikus számítógépet megalkotó angol Charles Babbage-nek már 1854-ben sikerült pár változatát feltörnie, még ha mindezt nem is publikálta.

Ha például a Debrecen szót akarták titkosítani, és a kódoláshoz (valamint a dekódoláshoz) a tenisz szót használták kulcsként, az alábbiak szerint jártak el. Az angol ábécé betűit sorban megfeleltették egy-egy számnak. Eszerint a Debrecen számai sorban 3, 4, 1, 17, 4, 2, 4 és 13. A kulcsszót ezek után folytatólagosan annyiszor kellett egymás után felírni, hogy betűinek száma megegyezzen a kódolni kívánt szó (Debrecen) betűinek a számával. Így kapták a „teniszte” szót, melynek számai sorban 19, 4, 13, 8, 18, 25, 19 és 4. Ezután összeadták a két első, a két második és sorban a párba rendezett számokat (ha az eredmény nagyobb, vagy egyenlő volt 26-tal, levontak belőle ennyit), majd az összegeknek megfelelő betűkből megalkották a rejtjeles üzenet szavait, ami a példa esetében a WIOZWBXR.

A németek legendás rejtjelező készüléke, az Arthur Scherbius alkotta 1918-as Enigma utóbbi változó eltolásos módszert bonyolította tovább, úgynevezett permutációk létrehozásával. A szerkezet három tárcsája az eredetileg beütött betűkből eltolással más betűket képez. Mivel a tárcsák egymáshoz képest minden leütés után elfordulnak, az eltolás mértéke minden betűnél változik.

Ráadásul változtatni lehetett a tárcsák sorrendjét, és egymáshoz viszonyított kezdő helyzetét is. Ha valaki csupán a titkos üzeneteket ismerte, lehetetlen volt visszafejteni, az Enigma mégsem lett sikertörténet. A német hadvezetés az 1920-as évek végéig nem repült rá Scherbius találmányára, ráadásul egy kém a katonai verzió dokumentumait is ellopta. Ennek nyomán a lengyelek 1933-ra már rutinos fejtők voltak. Igaz, a német katonák 1938-ban már 5 különböző tárcsából használtak tetszőlegesen hármat, így a lengyel tudomány kevésnek bizonyult.

A mesterséges intelligencia területén is maradandót alkotó angol matematikus, Alan Turing a lengyel, a francia, valamint az angol kódfejtők eredményei alapján, a lengyelek által használt kódfejtő gép átalakításával olyan masinát alkotott, amely 6 óra alatt végzett az összes szóba jövő lehetőséggel, 60 géppel pedig 6 perc is elég volt. 1943-ban 2500 üzenetet törtek fel naponta. Egyes vélekedések szerint e nélkül két évvel tovább tartott volna a háború.

Alan Turing olyan masinát alkotott, amely 6 óra alatt végzett az összes szóba jövő lehetőséggel, 60 géppel pedig 6 perc is elég volt
Alan Turing olyan masinát alkotott, amely 6 óra alatt végzett az összes szóba jövő lehetőséggel, 60 géppel pedig 6 perc is elég volt

Egyedi megoldások is szép számmal születtek: 1945-ben Budapesten egy ártatlannak látszó – a Balatonról, a Dunáról, nyaralásról szóló – baráti levelet fogták el, amelyben egy rögtönzött dalocska kottája is látható volt. A hangjegyek betűiből álló (H, A, A, D, B, F, A) kotta azonban gyanút keltett. Ki is derült, hogy a levélben az első h-val kezdődő szó a hadsereg, az első a-val kezdődő szó pedig az átkelt volt. A szavakat végigböngészve felsejlett az üzenet, miszerint „hadsereg átkelt a Dunán, Balaton felé áramlik”.

Legendás rejtjelezési esetekre a hidegháború alatt is volt példa. Az amerikai elnök és a szovjet pártfőtitkár között létrehozott forró drótot állítólag 1956-ban, az izraeli hadsereg Szíriába nyomulása idején hozták létre. A Londonon és Skandinávián átvezetett, a Pentagont és a moszkvai pártközpontot összekötő telexgép kulcsait természetesen csak a két fél ismerte, az 1970-es években mégis áttértek a műholdas kapcsolatra, hogy biztosan védjék az információt a tranzitországoktól.

A hétköznapokban is használják

„A civil felhasználási területeken a legnagyobb fejlődést a bankszektor generálta, a fiókok közötti adatcsere bonyolult titkosítást igényelt, ráadásul a számítógépekben is komoly potenciál rejlett” – hoz példát Buttyán Levente, a BME Adat- és Rendszerbiztonság Laboratóriumának docense. A szabványosított DES (Data Encryption Standard) rendszert az 1970-es évek elején hozták létre. Noha az algoritmus ismert volt, a kódfejtéshez szükséges kulcsparamétert csak az információt cserélő felek ismerték.

Ez olyan, mintha az eltolásos titkosításnál mindenki ismerné a trükköt, miszerint eltolják az ábécét, de azt csak az illetékesek tudják, hogy mennyivel. A banki információk esetében a titkos paraméter 56 bites volt, vagyis a 0 és az 1 56 karakterből álló kombinációja. Az összesen 256 lehetőség az 1990-es évekre kifinomultabbá vált matematikai módszereknek és az egyre izmosodó számítógépeknek már nem jelentett akadályt, így a helyét az AES foglalta el, ami 128 illetve 256 bites, és 20 évig nemigen kell tartani attól, hogy olyan számítógépek születnek, amik képesek feltörni.

A szimmetrikus kulcsú titkosítások, amikor a kódolónál, és a megfejtőnél is ugyanaz a kulcs van, feltételezik, hogy a kulcsot előzetesen megosztották egymással egy titkos csatornán. Felmerülhet a kérdés – írja Virasztó Tamás Kriptográfia és szteganográfia – rövid bevezetés a rejtjelezés és az adatrejtés világába című könyvében –, hogy ha létezik egy kulcscserére alkalmas titkos csatorna, miért nem ezen keresztül folyik a kommunikáció. A nem biztonságos kulcscsere kiiktatására merült fel a nyilvános kulcsú rejtjelezés ötlete, vagyis az, hogy más-más kulcsot használjanak a kódoláshoz és a megfejtéshez.

A titkosításhoz használt adatokból ilyenkor a módszer ismeretében sem határozhatók meg a megfejtéshez szükséges paraméterek – magyarázza Virasztó. A nyilvános kulcsú kódolás azonban a szimmetrikus titkosító eljárásoknál sokkal több műveletet igényel, vagyis lassabb, ezért előbbit inkább csak a kulcsok egyeztetésére szokták alkalmazni. A kitalálói, Ron Rivest, Adi Shamir és Leonard Adleman informatikusok után RSA-nak nevezett, máig a legelterjedtebb nyílt kulcsú titkosítás 1977-ben látott napvilágot. Azon az elven alapul, hogy noha két nagy prímszámot könnyű összeszorozni (ez a nyílt kulcs egyik része), igen bonyolult a szorzatból kikövetkeztetni a két számot, ami pedig szükséges lenne a megoldáshoz.

Ez inoghat meg, az új matematikai eredmények fényében, vagyis ha gyorsabban kitalálhatóvá válnak a szorzat tényezői. Nagy bajt azonban ez sem okoz – véli Buttyán –, szép számmal akadnak ugyanis a prímtényezős felbontáshoz hasonlóan nehéz matematikai problémák amivel még a kvantumszámítógépek sem feltétlenül tudnak majd megbirkózni.

Geri Ádám
a szerző cikkei

hirdetés
Ha hozzá kíván szólni, jelentkezzen be!
 
Cikk[117924] galéria
hirdetés
hirdetés
hirdetés

Kiadónk társoldalai

hirdetés
hirdetés
hirdetés
hirdetés