Titkosítás és digitális aláírás az Interneten

A DAT 95 konferencián elhangzott előadás rövidített változata

Pásztor Miklós
MTA SZTAKI/ASZI

pasztor@sztaki.hu

Bevezetés

Az Internet elsősorban egyetemek, kutatóintézetek hálózata volt, de mára a kereskedelmi, üzleti és más területek éppen olyan természetesen használják mint a tudomány, kultúra és oktatás. Nem csoda, hogy a biztonsági kérdések iránti érdeklődés igen nagy, különösen ha figyelembe veszzük, hogy eredetileg az Interneten nem helyeztek súlyt ezekre a kérdésekre: a helyzet ahhoz hasonlított, és hasonlít legtöbb esetben még ma is, mintha postai leveleinket nyílt borítékban, sőt boríték nélkük adnánk fel, és a levelek aláírása helyett csak írógéppel aláírt üzeneteket küldenénk.

Szerencsére azonban van mód a borítékolásra (titkosítás) és a digitális aláírásra (hitelesítés) is. Sőt, e két dolog szorosan összefügg, ugyanaz az eszköz alkalmas. Ez az eszköz a nyilvános kulcsú titkosítás. Ennek elvét írja le a következő fejezet. Tehát a digitális aláírás és a titkosítás lényegében ugyan az a kérdéskör.

A titkosítással kapcsolatban éppen úgy, mint minden más területen az Interneten két jól elkülönülő irányzat figyelhető meg: a kereskerelmi és az akadémiai-kutatói szemlélet. A vállalkozások, kisebb és nagyobb cégek sok hasznos termékkel jelentkeznek, de az ő információs forrásaik rendszerint a reklámnak vannak alárendelve. Az akadémiai/kutatói és lelkes magánemberekre jellemző a pártatlanabb látásmód, az ingyen rendelkezésre bocsátott termékek, írásos anyagok, szellemi tőke stb. Az Internet hagyományos értékei a demokratizmus, segítőkészség, önzetlenség és nyílt kommunikíció - ha élünk ezekkel - sokat segítenek abban, hogy egy-egy konkrét esetben megfelelő megoldást találjunk. A biztonsági kérdések esetén különösen fontos például, hogy tudomást szerezzünk arról, ha a kívánt titkosítási eljárást feltörték. Az Interneten sok kereskedelmi termék titkosításának gyengeségéről szerezhetünk tudomást. Például a Word, az Excel, a Wordperfect, az Unix crypt, a PKZIP, a Microsoft Money, a Lotus 1-2-3 és még egy sor más termék titkosítása feltörhető. Az ehhez szükséges eszközök az Internet segítségével könnyen hozzáférhetőek.

Hogyan kapcsolódik a digitális aláírás és a titkosítás ?

Nem lehet beszélni digitális aláírásról anélkül, hogy a titkosítást ne érintenénk. Miért ? Azért, mert a digitális aláírásra manapság legtöbbet használt eszközök a nyilvános kulcsú titkosítás elvén működnek. A továbbiakban csak az ilyen digitális aláírásról és titkosításról lesz szó.

A nyilvános kulcsú titkosítás elve

Hagyományos titkosítási eljárásnál egyetlen kulcsot kell ismernünk az üzenet kódolásához és dekódolásához. Nyilvános kulcsú titkosításnál minden egyes felhasználóhoz két kulcs tartozik: egy titkos, és egy nyilvános. A titkos és a nyilvános kulcs szerepe szimmetrikus. Ha N jelöli a nyilvános kulcs alkalmazását, T a titkos kulcsét, és x egy kódolandó információ, akkor

N(T(x))=x

és

T(N(x))=x

Minden felhasználónak generálnia kell a maga részére egy nyilvános/titkos kulcs párt. Ezután a nyilvános kulcsot minél szélesebb körben ismertté kell tenni, a titkos kulcsra értelemszerűen vigyázni kell.

Bárki, aki titkosított üzenetet akar küldeni nem kell mást tegyen, mint a fogadó nyilvános kulcsával kódolnia kell az üzenetet. A nyilvános kulcs ismerete nem segít abban, hogy a titkos kulcsot megfejtsük, ezért ha egy üzenetet valaki nyilvános kulcsával kódoltunk, akkor már magunk sem tudjuk azt visszafejteni, csakis a fogadó.

Ha hitelesíteni akarunk egy üzenetet, akkor pedig a saját titkos kulcsunkat használjuk. Az üzenetből képezünk, egy az üzenetnél jóval rövidebb számot, amit az üzenet ellenőrző összegének, „ujjlenyomatának” is nevezhetünk. Ezt a számot kódoljuk azután a saját titkos kulcsunkkal. A fogadó ezt csakis a mi nyilvános kulcsunkkal tudja „kinyitni” és így biztos lehet abban, hogy az üzenetet valóban mi küldtük. Az üzenet ilyen esetben nincs feltétlenül kódolva, de mivel az egész üzenet ujjlenyomatát tartalmazza az aláírásunk, az üzeneten végrehajtott minden változtatás, egyetlen vesszőcske beszúrása vagy elhagyása is kiderül a fogadó oldalon. Ilyen módon - hasonlóan ahhoz mint amikor aláírunk valamit - a hitelesítéssel nem csak azt garantálhatjuk, hogy kitől származik az üzenet, hanem azt is, hogy az pontosan ugyan az. Ez alkalomadtán - akár csak az aláírás - arra is alkalmas, hogy valamit a fejünkre olvassanak, mint általunk elismert, vállalt dolgot. Következésképpen a titkos kulcsunkra nem csak azért kell vigyáznunk, hogy a nekünk küldött üzeneteket ne fejtsék meg illetéktelenek, hanem azért is, hogy mások ne tudjanak „okirathamisítást” végrahajtani a kárunkra.

Hogyan győződhetünk meg arról, hogy egy nyilvános kulcs érvényes e ?

Igen fontos, hogy ha valakinek a nyilvános kulcsát használjuk, akkor biztosak legyünk abban, hogy nem hamis, lejárt, vagy érvénytelen a kulcs. Ha rossz kulcsot használunk, akkor

A legegyszerűbb, és legbiztonságosabb, ha személyesen cserélünk kulcsot. Megfelelő megoldás, ha valaki a névjegyén közli, na nem a nyilvános kulcsát, de annak egy ujjlenyomatát. Szokás elektronikus levélben, vagy a Finger szolgáltatás segítségével közölni nyilvános kulcsot.

Mint bármi más információt, nyilvános kulcsokat is alá lehet digitálisan írni, akár több embernek is. Ez az ötletet kétféleképpen is ki szokták használni.

Bizalmi háló

Ha olyan aláírással kapunk egy nyilvános kulcsot, amit hitelesnek tekintünk, akkor magát ezt a nyilvános kulcsot is elfogadhatjuk. Az ilyen bemutatott kulcs aztán újabb kulcsokat hitelesíthet. Ez a „bizalmi háló” a PGP nevű népszerű, szabadon terjeszthető titkosítási programcsomagra jellemző. Ennél azt is szabályozhatjuk, hogy milyen mélységben fogadunk el „bemutatott által bemutatottakat”, és hogy hány hitelesnek ismert bemutató bemutatása kell ahhoz, hogy egy nyilvános kulcsot hitelesnek ismerjünk el.

Kulcs szerverek, kulcs hitelesítő autoritás

Ha egy közjegyző, vagy valamilyen hivatal hitelesíti digitális aláírásával valakinek a nyilvános kulcsát, akkor ezt nem csak a polgári életben, hanem az államigazgatásban és a jogban is használhatjuk. Több ilyen szervezet, cég van már amelyik nyilvános kulcsok hitelesítésével foglalkozik. Ilyenek a Verisgn, a Four11 vagy Európában a Deutsche Telekomm egy leányvállalata.

Titkosítás és digitális aláírás különböző hálózati szinteken

Ha azt akarjuk, hogy az Interneten ne csak az átvitt adatok maradjanak rejtve, hanem az is, hogy pl. telnet vagy gopher az amit használunk, és a többi felső rétegekre vonatkozó információ, akkor az IP csomagok szintjén kell a rejtjelzést végezni.

Ilyen esetben nem személy, még csak nem is program, hanem egy hardver csatolóegység az, aminek nyilvános/titkos kulcspárja van, amint azt az IPv6 szabvány előírja.

Az alkalmazások szintjén elsősorban az elektronikus levelezés és a WEB az, ahol nagy szerepe van a digitális aláírásnak és a titkosításnak. Gyártók és szabványosítási szervezetek, társadalmi mozgalmak és lelkes önkéntesek kapcsolódnak ebbe a munkába. Sokat olvashatunk a kérdésről az Internet elektronikus fórumain.

A szélesebb körű felhasználáshoz szükséges szabványok használata, de nem várható, talán nem is kívánatos, hogy teljesen egységes legyen a világ ebben a tekinteteben.