Beadják a kulcsot

A digitális aláírás

Figyelem! Kérjük, az értelmezésénél a megjelenés időpontját (2001. július 1.) vegye figyelembe!

Megjelent a Cégvezetés (archív) 39. számában (2001. július 1.)

 

Az internet az elmúlt néhány év során fokozatosan átalakult. Megjelenésekor elsősorban egyetemek, kutatóintézetek hálózata volt, de napjainkban már a kereskedelmi, üzleti és más területek is oly természetességgel használják, mint a tudomány vagy az oktatás. Éppen ezért szükségszerűvé vált, hogy az internet használatával biztonságosan lehessen megrendeléseket feladni, illetve egyértelműen azonosítva hozhassunk döntéseket akkor is, ha nem vagyunk jelen személyesen. A világháló biztonsági kérdései iránt hatalmas az érdeklődés. S az általánosan elfogadott, szabványos megoldások kidolgozását nem könnyíti meg, hogy a biztonságra eredetileg nem ügyeltek kellőképpen.

 

Az internet használatával lehetővé vált, hogy a számítógépekkel előállított vagy tárolt anyagainkat elektronikusan továbbítsuk egy azonosítóval ellátott címzett számára. Eddig problémát okozott, hogy az anyagok nem tartalmaztak aláírást, sem időbélyeget, nem lehetett tartalmukat biztonságosan lezárni, és semmi nem garantálta célba érkezésüket sem. További nehézség volt, hogy az említett okok miatt nem lehetett bizonyosságot szerezni az elektronikus küldemények sérthetetlenségéről és változtathatatlanságáról, így az elektronikus tartalmat nem fogadták el a jogi bizonyítási eljárások során. Csak az elmúlt egy-két év alatt teremtődtek meg azok a technikai feltételek, amelyek az említett problémákat kielégítően megoldják.

A digitális aláírás alkalmazásában rejlő lehetőségek és veszélyek ismertetésében Irányi Csaba, a Netfórum Kft. informatikai igazgatója, a digitális aláírás szakértője volt a segítségünkre.

ALAPFOGALMAK A titkosítás tudománya, a kriptológia egyik érdekes fejezete a digitális aláírások technikája. Megértéséhez szükség van néhány alapvető definícióra. Aláíró fél: a digitális aláírást létrehozó eszközt birtokló személy, aki saját maga vagy egy általa képviselt természetes, illetve jogi személy nevében jár el. Aláírást létrehozó adat: egyedi adatok, mint például a jelszavak vagy magánkulcsok, amelyeket az aláíró a digitális aláírás létrehozásához használ. Aláírás-készítő eszköz: hardver- vagy szoftverelemek, amelyek az aláírást létrehozó adatot reprezentálják. Aláírás-ellenőrző adat: adatok, mint például kódok vagy nyilvános kulcsok, amelyeket a digitális aláírás hitelesítésére használnak. Aláírás-hitelesítő eszköz: hardver- vagy szoftverelemek, amelyek az aláírás-ellenőrző adatot reprezentálják. Digitális aláírás: olyan titkosított karaktersorozat, melyet csak az aláíró kódolhatott, és ez magából a kódolásból következik. Keltezést (dátumot, pontos időpontot), sorszámot, a küldött üzenetből képezett ellenőrző összeget tartalmazhat. Titkos kulcs: nyilvános kulcsú infrastruktúra (lásd: PKI) esetében, az aláíró által kizárólagosan használt aláírást készítő eszköz. Ez a kulcs szükséges az aláírás elkészítéséhez, csakis az aláíró tulajdonában lehet. Nyilvános kulcs: nyilvános kulcsú infrastruktúra esetében az aláírás-ellenőrző adat szerepét tölti be. Bárki lekérdezheti a nyilvános kulcsot, mert ennek segítségével hitelesíthető az aláírás. Nyilvános kulcsú kriptográfia (PKC): olyan kriptográfiai rendszer, amelynek a résztvevői közös algoritmust használnak rejtjelezésre, és az algoritmusnak két – a használótól függő – kulcsa van. Ezek egyikét (nyilvános kulcs) nevükkel együtt nyilvánosságra hozzák, ezzel történik a kódolás. A másikat titokban tartják (titkos kulcs), ezzel történik a dekódolás. Nyilvános kulcsú infrastruktúra (PKI): a digitális aláírás létrehozására, ellenőrzésére, kezelésére szolgáló infrastruktúra, beleértve a mögöttes intézményrendszert, a különböző szolgáltatókat és eszközöket is. Tanúsítvány (Certificate): egy digitálisan aláíró felhasználó nevét, nyilvános kulcsát és a kulcs érvényességi idejét rögzítő adatsor, amelyet egy CA a saját titkos kulcsával aláírt. Tanúsító hatóság (CA): olyan szakosodott szervezet vagy cég, amely tanúsítványokat adhat ki kliensek és szerverek számára vagy akár megfelelő jogosítvánnyal rendelkező más CA-alközpontok számára. Biterősség: a kulcsok és az aláírások bithosszúsága a titkosítás erősségét fejezik ki, egy azonos PKI-rendszeren belül. Időbélyegző: a dokumentumhoz – a hitelesítésszolgáltató által – hozzárendelt időadat, amely egyértelműen és megbízhatóan jelzi a dokumentum elektronikus aláírásának időpontját. Hashing algoritmus: olyan transzformáció, amely egy meghatározott szövegből egy digitális jelsorozatot (digitális ujjlenyomat) állít elő. Tulajdonsága, hogy gyakorlatilag lehetetlen eltérő szövegből azonos digitális ujjlenyomatot készíteni. A szöveg egyetlen bitjének megváltoztatása a lenyomat nagymérvű megváltoztatását eredményezi. Legismertebb hashing algoritmusok: SHA-1, MD5. RSA: Rivest, Shamir és Adleman urak nevéből létrehozott cég, amely világszerte kínál nyilvános kulcsú megoldásokat. Az általuk kitalált forgalmazott digitális aláírás séma a leginkább elterjedt, annak ellenére, hogy léteznek már magasabb biztonsági szintet képviselő megoldások is. DSA: az amerikai kormányhivatalokban rendszeresített és szabványként elfogadott digitális aláírás technológia. ECDSA: a legújabb fejlesztésű kriptológiai rendszer, amely az elliptikus görbéken alapulva kínál digitális aláírási sémákat.

Alapok

A digitális aláírás megszületése az információs társadalom elkerülhetetlen velejárója. A cél, hogy a digitális kézjegy ugyanazt a funkciót töltse be a köznapi életben, mint a papír alapú dokumentumok aláírása. Vagyis, hitelesen igazolja, hogy az adott dokumentumot az aláírója általa ismertnek elfogadja, illetve a benne foglaltakat magára nézve kötelezőnek tartja.

Ahhoz, hogy a digitális aláírás a neki szánt funkciót betölthesse, négy alapfeltételnek kell megfelelnie: az aláírást az üzenet küldőjének kell generálnia oly módon, hogy a kizárólag rá jellemző elemeket más ne ismételhesse meg. Az aláírás készítése, illetve értelmezése ne bonyolult matematikai képletekből álljon, azaz bárki által könnyen elkészíthető-azonosítható legyen. Egy szignó csak és kizárólag egy alkalommal legyen használható, ne legyen áthelyezhető más dokumentumra; és végül, a hitelességgel kapcsolatosan felmerülő kérdések eldöntésére legyen egy kijelölt hitelesítő személy vagy intézmény.

„A hagyományos és a digitálisan aláírt dokumentum között alapvető különbségek vannak. Gondoljunk csak bele, hogy aláírásunk mindig a papírtól (hordozótól) függ, hiszen nem lehetséges egy nevet kétszer hajszálra egyformán leírni. Emiatt nehéz pontosan megítélni, hogy két azonosnak tűnő, papíron lévő aláírás vajon ugyanattól a személytől származik-e, vagy esetleg hamisítással van dolgunk? Ezzel szemben a digitális aláírások olyan biztonsági többletet kínálnak, amelyek kiküszöbölik a pontatlanság miatt esetleg felmerülő problémákat" – fejtette ki Irányi Csaba. Ugyanis az a digitális számjegysor, amely reprezentálja a digitális aláírást, mindig magában foglalja az aláíró személyét és a dokumentumot, amelyre vonatkozik. Ránézésre nem lehet megállapítani, hogy ez a hosszú számjegy például Szabó János digitális kézjegye-e, azt viszont igen, hogy a Szabó János által aláírt „meghatározott" dokumentumra vonatkozik.

Egy apró trükk segítségével minden digitális kézjegy tartalmazza a teljes aláírt dokumentumot, illetve technikailag annak „digitális ujjlenyomatát". Ebből fakadóan a digitális aláírásnak nincs egyértelműen meghatározott formája vagy külalakja, és nem cserélhetők ki két irat alatt az aláírások.

Lássuk, melyek is a digitális aláírás használatából adódó előnyök!

Hitelesség: A digitális aláírás meggyőz arról, hogy az aláíró a saját akaratából írta alá a dokumentumot, kizárva mindenféle kényszerítő eszközt.

Hamisíthatatlanság: Egyértelműen ellenőrizhető, hogy az aláírás az aláírótól származik és nem mástól. Ezzel kizárható a megszemélyesítésen alapuló hamisítás lehetősége.

Nem használható fel újra: A hagyományos aláíráshoz hasonlóan az aláírás nem tehető át egyik dokumentumról a másikra. A digitális szignó mindig magában hordozza az aláírt dokumentum ujjlenyomatát.

Integritásvédelem: Az aláírt dokumentum bármilyen legkisebb változása (akár 1 karakter) már észrevehető a hitelesítés folyamán.

Letagadhatatlan: A digitális aláírások egyik kellemes tulajdonsága, hogy az aláírás tényét nem lehet vitatni.

M-KERESKEDELEM Az m-kereskedelem manapság igen divatos fogalom: a mobilkommunikáció nyújtotta kereskedési lehetőségekre utal. A mobilhálózatok gyorsasága és olcsó elérhetősége szinte tálcán kínálja ezeknek az esélyeknek a kiaknázását. Érdemes belegondolni, hogy milyen egyszerű lenne telefonon keresztül pénzügyi tranzakciókat és átutalásokat intézni, csupán néhány gombnyomással. Erre eddig nem igazán volt módunk, mert az elküldött tranzakciós utasítást nem lehetett ellenőrizni. Íme egy nagyszerű lehetőség az elektronikus aláírások használatára. Ráadásul a legmodernebb elliptikus görbéken alapuló aláírások szinte tizedakkora méretben kínálják ugyanazt a védelmi erősséget, mint társaik. És ugyebár a parányi mobileszközökben minden hely számít. Tehát néhány éven belül már biztosan számíthatunk arra, hogy telefonunkon keresztül ugyanolyan könnyedén és biztonságosan intézhetjük bankügyeinket, mintha internetes házibankprogramunkkal tennénk ugyanezt.

Aláírási sémák

Elektronikus aláírás használatakor a kiválasztott PKI titkosítási rendszer sémákat kínál a felhasználóknak. Rendszeren szabványosított eljárásgyűjteményt és protokollt értünk. Minden egyes séma gyakorlatilag egy meghatározott művelet, amely az aláírásokhoz kapcsolódik. A rendszerben részt vevőknek pontosan ismerniük kell e sémák alkalmazásának menetét ahhoz, hogy hatékonyan és biztonságosan használhassák őket.

Mielőtt bárki is belevágna a digitális aláírás használatába, alaposan meg kell gondolnia, hogy melyik rendszert választja alapul. Számos technológia létezik, amely egymással egyáltalán nem kompatibilis. Tehát például egy RSA digitális aláírási rendszert nem lehet összekeverni egy DSA rendszerrel. A kiválasztás történhet számos szempont alapján: biterősség, aláíráshossz, gyorsaság, elterjedtség – figyelmeztet Irányi Csaba.

Miután kiválasztottuk a céloknak megfelelő rendszert, az első feladat a kulcspárgenerálás. A séma megadott személyes paraméterek alapján generál egy megadott biterősségű kulcspárt: egy nyilvános és egy titkos kulcsot. E két számsor matematikailag teljesen összetartozik; a kapcsolat hitelesíthető közöttük, de csak mindkét kulcs birtokában. A titkos kulcs szerepe az aláírás-készítésben merül ki, így ennek védelme elsődleges fontosságú. Gondoljunk csak bele, ha valaki megszerzi titkos kulcsunkat, akkor a nevünkben készíthet aláírásokat. Emiatt általában egy személyes kóddal vagy jelszóval szokták védeni a titkos kulcsot.

A nyilvános kulcsot, mint a nevéből is adódik, mindenki számára elérhetővé kell tenni.

Az aláíró kiválasztja az aláírásra váró dokumentumot, amiből egy hashing algoritmus segítségével elkészül a digitális ujjlenyomat. Majd ezt követően a titkos kulcs segítségével létrejön az adott dokumentumra vonatkozó digitális aláírás. Az aláíró publikálja a nyilvános kulcsát, és a dokumentumhoz mellékeli a digitális aláírást is.

Az aláírás-hitelesítési séma hivatott ellenőrizni a dokumentum-aláíró-aláírás egységét. Az aláírót a nyilvános kulcsa képviseli, és a titkos kulccsal szoros matematikai összefüggésben áll. A dokumentum vagy a kapott digitális aláírás legkisebb megváltozása esetén az aláírás már nem hiteles. Ez több dolgot is jelenthet:

  • megváltozott az aláírt dokumentum (integritásvédelem),
  • nem a nyilvános kulcs tulajdonosa volt az aláíró (hamisíthatatlanság),
  • megsérült az aláírás.

Általában a digitális aláírás mellé időpecsétet és ellenőrző kódot is mellékel az aláíró. Ez utóbbi segítségével könnyedén ellenőrizhető az aláírás sértetlensége.

Hitelesnek minősül az aláírás, ha a digitális aláírás a dokumentum és a kapott nyilvános kulcs alapján készült.

DIGITÁLIS UJJLENYOMAT Egy aláírás-készítésnél valahogy figyelembe kell venni a teljes dokumentumot: az aláírt dokumentum akár 1 betűnyi megváltozását az aláírásnak azonnal detektálnia kell. Adott a probléma: hogyan lehet egy tetszőleges nagyságú dokumentumot rövid formában reprezentálni? Természetesen erre nyújt megoldást a digitális ujjlenyomat, amelyet az emberi ujjlenyomat analógiájára találtak ki. Egy ujjlenyomat egyértelműen azonosít egy teljes dokumentumot, és persze csak ez alapján nem lehet az egész irományt visszanyerni. Nyilvánvalóan lehetetlen találni két szöveget, amelynek azonos a digitális ujjlenyomata. Így meglehetősen biztonságos és könnyed módon elő lehet állítani egy fix hosszúságú számot, amely egy egész iratot jelképez. Ezt a műveletet hashingnek hívják. Ezt már fel lehet használni az aláírás-készítésnél és -hitelesítésnél. Leggyakrabban az SHA-1 hashing algoritmust használják e célra, amelyet az amerikai kormányhivatalokban is rendszeresítettek.

Tanúsító hatóságok

A PKC-rendszerek egyik legtámadhatóbb pontja a szabadon terjeszthető nyilvános kulcs. Ugyanis semmi sem garantálja, hogy a nyilvános kulcs valóban azé a szereplőé, aki azt magáénak vallja. Ebből fakadóan a leggyakoribb támadási mód az úgynevezett „megszemélyesítéses" támadás, amelyben másnak adja ki magát a támadó. Hasonlóan veszélyes a helyzet az olyan digitális aláírások esetében, ahol az aláírás tulajdonosát a kapott kulcs hivatott képviselni. A nyilvános kulcsnak hitelesnek kell lennie a biztonságos használathoz!

Ennek tudatában született az igény egy olyan rendszerre, amely ellenőrzi, hogy a kapott nyilvános kulcs hiteles-e, s valóban annak a tulajdona-e, akitől kaptuk.

A nyilvános kulcsok hitelessége az úgynevezett tanúsítványok (Certificate) segítségével garantálható, amelyeket a tanúsító hatóság (Certificate Authority, CA) ad ki. A tanúsító hatóságok tehát olyan független és megbízható intézmények, amelyek a részt vevő felek nyilvános kulcsainak hitelességéért tanúsítványok kiállításával szavatolnak.

Gyakorlati szempontból egy tanúsítvány nem más, mint a CA saját titkos kulcsával digitálisan aláírt dokumentum, amely tartalmazza a CA adatait, a tanúsítvány sorszámát, a kérelmező adatait, a tanúsítvány érvényességi idejét és a kérelmező hitelesített nyilvános kulcsát. Attól függően, hogy milyen célt szolgál az adott cég, vagy személy hitelesítése, a CA igényelhet további igazolásokat, például közjegyzői igazolást vagy személyes aláírást. A tanúsító hatóság lehet független cég (például VeriSign), egy adott ország hivatalos szervezete, vagy egy cég saját kibocsátóközpontja.

A digitális aláírást igénylő személy az adott ország CA-szerverétől igényel egy tanúsítványt a nyilvános kulcs beküldésével. A CA-központ ellenőrzi a kapott kulcsot, és legyártja a tanúsítványt. Majd elküldi e-mailben az igénylőnek. Mindkét vezető internetböngésző támogatja a nemzetközi és hazai CA-központokat. Így elég betölteni a kapott tanúsítványt a böngészőbe, ahol a lejárat napjáig tárolódik, a titkos kulccsal egyetemben. A nyilvános kulcs természetesen a CA-központból lekérdezhető.

Mielőtt egy nyilvános kulcsot felhasználnánk, elkérjük a CA saját nyilvános kulcsát és az aláíró nyilvános kulcsának tanúsítványát. Ellenőrizve a tanúsítványt megállapíthatjuk, hogy a kapott PKC nyilvános kulcs tulajdonosa valóban az-e, akinek állítja magát. Ezzel a módszerrel hatékonyan védekezhetünk a megszemélyesítésen alapuló visszaélések ellen.

A tanúsító hatóságok hitelesítésére kétféle hálózati modellt állíthatunk fel:

  1. Hierarchikus tanúsítási modell. A CA-hatóságok egy hierarchikus rendszert alkotnak, amelyben az egyik CA hitelességét a szintben felette álló CA garantálja. Általában 3-4 szintig elég elmenni, és a legmagasabb szintű CA hitelességét kormányok vagy nemzetközi szervezetek garantálják. A jól felépített struktúra által könnyen meg lehet állapítani, hogy a partner esetében melyik CA illetékes.
  2. Szabadon felépített CA-hálózat. A hatóságok szabadon kapcsolódnak egymáshoz, laza hálózatot alkotva. A hitelességet a szomszédok szavatolják, így elég megvizsgálni azok tanúsítványait a CA-ra vonatkozóan. Problémát jelent az útkeresés, azaz a megfelelő CA megtalálása. Ennek feloldására gyakran egy közösen használt névjegyzékben (Directory) tárolják a hatóságok névlistáit és azok elhelyezkedését.

Jogi háttér

A májusban elfogadott magyar törvény nagy lépés a hazai elektronikus kereskedelem biztonságossá tételében – az elektronikus okiratok teljes körű elismerését célozta meg. (A digitális aláírásról és iratokról szóló törvényt részletesen ismerteti lapunk Mozgástér rovata.)

Tapasztalatok

Az Amerikai Egyesült Államokban tavaly június végén fogadta el a Kongresszus az elektronikus aláírásról szóló törvényt, melyet aztán később Bill Clinton a philadelphiai Congress Hallban egy hagyományos és egy digitális kézjeggyel is szentesített. A törvény tavaly októberben hivatalosan is hatályba lépett, aminek következményeként az idén márciustól már a kereskedelmi vállalatok is köthetnek elektronikus szerződéseket.

„A törvény megszületésével az elektronikus kereskedelem új korszakához érkeztünk, továbbiakban nem lesz mérvadó az az íratlan szabály, mely szerint minden, ami csak elektronikus formában létezik, érvénytelennek tekinthető" – mondta Spencer Abraham, Michigan republikánus szenátora, aki az elektronikus aláírás bevezetésének egyik lelkes támogatója volt.

Az óriásvállalatok vezetői egyelőre vonakodnak a digitális aláírás használatától, ám ez nem a technológiában meglévő vitatott kérdések számlájára írható, sokkal inkább köszönhető a vezetők „újtól" való természetes tartózkodásának, amely az elemzők szerint azonban már nem sokáig szabhat gátat az elektronikus kereskedelem biztonságos formáinak.

Irányi Csaba, a Netfórum Kft. digitálisaláírás-szakértőjének véleménye szerint az elektronikus szignó törvénybe iktatása, illetve köznapi használata a kereskedelmi életben legalább akkora horderővel bír, mint az e-commerce kialakulása, s hisz a prognózisban, miszerint: „2005-ben a világban a kereskedelmi szerződések 60 százalékát digitális formában írják majd alá."

BIZTONSÁGOS? Mit sem ér az egész, ha könnyűszerrel megfejthető az aláírás, és visszaélésre adhat okot. Már az is bajt okozhat, ha csak egy halvány gyanú merül fel, vagy netán kiskapuk rejlenek a rendszerben. Gondoljunk csak bele, mekkora katasztrófát tudna okozni, ha ez egy elterjedt módszer esetében jelentkezne! Egy egész cég vagy pénzintézet működését lenne képes befolyásolni vagy tönkretenni az, aki feltörhetné a digitális aláírások védelmét. Sajnos azonban nem tökéletes a védelem, a felhasznált kriptológiai algoritmusok nem feltörhetetlenek. De le kell szögezni, hogy a feltöréshez szükséges időhöz képest egy emberöltő elhanyagolhatóan kicsi. A manapság elfogadott álláspont szerint biztonságos egy módszer, ha egy számítógép, amely 1 millió műveletet tud elvégezni másodpercenként, csak 1000 milliárd (1012) év alatt tudja megoldani a problémát (feltörni a kódot). Ez olyan hatalmas idő, amely garantálja ugyan számunkra a biztonságot, de statisztikailag előfordulhat, hogy értékelhető időn belül sikerül valakinek feltörnie az aláírást. Ahhoz, hogy képet kapjunk az idő nagyságáról, jó tudni, hogy az univerzum, amiben élünk, „csupán" 10 milliárd éves, és Napunk 3-4 milliárd év múlva szupernóvává változik. Ettől függetlenül a világ számítókapacitása elég hatalmas ahhoz, hogy problémát okozzon. Biztonságos kulcskezeléssel minimálisra (nullát túlzott merészség lenne mondani) csökkenthetők a visszaélések és a biztonsági veszélyek.

Figyelem! Kérjük, az értelmezésénél a megjelenés időpontját (2001. július 1.) vegye figyelembe!