Azonosítón alapuló kriptográfiai rendszerek alkalmazása eLearning környezetben Kristóf Zsolt – kristofzs@de-efk.hu Csajbók Zoltán - csajzo@de-efk.hu Takács Péter - vtp@de-efk.hu Bodnár Károly – bcharles@de-efk.hu dr. Ködmön József - kodmonj@de-efk.hu Debreceni Egyetem Egészségügyi Kar 4400, Nyíregyháza, Sóstói út 2-4. MultiMédia az oktatásban, Zsigmond Király Főiskola, Budapest, 2008. szeptember 25–26.
1, Bevezetés A tanulást segítő rendszerek fejlődése számos új vonással gazdagodott az elmúlt évtizedben. Az új lehetőségek megnövelik az oktatás hatékonyságát, kiszélesítik a tradicionális oktatás formáit. Az alkalmazások széles körű elterjedése sürgető igénnyel vet fel adatvédelmi és adatbiztonsági kérdéseket. Előadásunkban javaslatot teszünk egy új kriptográfiai eszközrendszer, az azonosítón alapuló kriptográfia (Identity Based Cryptography – IBC) alkalmazására. Vázoljuk az IBC lényegét, bemutatjuk alkalmazási lehetőségeit, előnyeit eLearning, konkrétan az ILIAS keretrendszer környezetben.
2, Jogszabályi háttér I. A felsőoktatási intézménybe történő beiratkozáskor, a felvételi jelentkezési lap kitöltésekor a hallgatók adatokat közölnek magukról. A hallgatói jogviszony fennállása alatt is számos adat keletkezik. Ezen adatok az 1992. évi LXIII. a személyes adatok védelméről szóló törvény hatálya alá tartoznak, mely törvény célja annak biztosítása, hogy személyes adatával mindenki maga rendelkezzen. A fenti jogszabály alapján bármely természetes személlyel kapcsolatba hozható adat, az adatból levonható következtetés személyes adatnak minősül, így a teljesítmény- és egyéb hallgatókhoz köthető adatok is. E törvény értelmében az érintett személyektől hozzájárulást kell kérni adataik, teljes körű vagy egyes műveletekre kiterjedő – kezeléséhez, nyilvánosságra hozatalához.
2, Jogszabályi háttér II. Az eLearning keretrendszerek alkalmazása során a személyes adatok kezelésére vonatkozó felhatalmazást a 2005. évi CXXXIX. a felsőoktatásról szóló törvény adja meg. Eszerint „a felsőoktatási intézmény az alkalmazottak és a hallgatók személyes adatait csak a foglalkoztatással, juttatások, kedvezmények, kötelezettségek megállapításával és teljesítésével, a célnak megfelelő mértékben, célhoz kötötten kezelheti.” A tanulmányokhoz kapcsolódóan a különböző keretrendszerek által kezelt adatok is ide értendők, így például a hallgató tanulmányainak értékelése, vizsgaadatok, megkezdett félévek. De ilyen lehet egy hallgató által megoldott feladat ILIAS rendszerben történő beküldése oktatójának, vagy egy szakdolgozat bírálatának hozzáférhetővé tétele kizárólag az érintett hallgató számára.
3, Az ILIAS keretrendszer adatvédelmi jellegzetességei I. Az ILIAS keretrendszer igen sok különböző hitelesítési eljárást támogat. Ilyenek többek között a következők: standard felhasználónév/jelszó típusú azonosítás LDAP CAS Radius SOAP alapú azonosítás. [1] A standard felhasználónév/jelszó típusú azonosítással ezen előadás keretein belül nem foglalkozunk tekintettel arra, hogy általánosan használt, jól ismert módszerről van szó.
3, Az ILIAS keretrendszer adatvédelmi jellegzetességei II. Az LDAP a Lightweight Directory Access Protocol rövidítése. Az LDAP egy olyan protokoll, amely a directory service (directory szolgáltatás) elérését szabályozza. Maga a directory service egy olyan adatbázis, amely keresésre optimalizált – kevés a módosítási művelet, gyakori a nagyszámú, gyors lekérdezés teljesítése. [2] A CAS (Common Authorization Service) megoldás két komponenst (kliens és szerver) definiál, amelyek biztosítják a felhasználók közötti információcserét. Önmagában a CAS nem azt rögzíti, hogy milyen eljárásokat, hitelesítési módokat kérhet a kliens vagy biztosíthat a szerver. A CAS azt definiálja, hogy hogyan kommunikáljon a kliens és a szerver a CAS protokoll felhasználásával. [3] A RADIUS (Remote Authentication Dial-In User Service) módszert ad a telefonos és hálózati kapcsolatok felhasználóinak hitelesítésére és kapcsolatfelvételük engedélyezésére. Elterjedten használják a távelérésű ügyfelek hitelesítésére. [4] A SOAP eredetileg a Simple Object Access Protocol (egyszerű objektumelérési protokoll) rövidítése, amely az 1.1-es verziótól kezdve külön protokollként funkcionál. Olyan protokoll, amely alkalmas a legkülönbözőbb környezetben adatcsere lebonyolítására. [5]
4, Kriptorendszerek I. Titkosítási séma vagy kriptorendszer fogalma alatt egy (P,C,K,E,D) ötöst értünk ahol P a nyíltszövegek tere; C a titkosított szövegek tere; K a kulcstér, elemei a kulcsok. Továbbá minden ekK kulcshoz létezik egy egyértelműen meghatározott Eek:P C bijektív leképezés. Az ek neve rejtő (titkosító) kulcs, Eek a rejtő (titkosító) függvény. Végül minden dkK kulcshoz létezik egy egyértelműen meghatározott Ddk:C P bijektív leképezés. A dk neve fejtő kulcs, Ddk a fejtő függvény. A kriptorendszerek számos szempont szerint csoportosíthatók. A gyakorlati alkalmazások szempontjából nagyon fontos a rejtő-fejtő kulcsok viszonya szerinti megkülönböztetés. Eszerint beszélhetünk szimmetrikus vagy privát kulcsú konvencionális rendszerekről, illetve aszimmetrikus vagy nyilvános kulcsú kriptorendszerekről.
4, Kriptorendszerek II. Szimmetrikus kriptorendszerben a kódoló ek kulcs megegyezik a dekódoló dk kulccsal (ek=dk). Jellemzője, hogy a közös rejtő-fejtő kulcsot legalább két személy ismeri, amelyet egy biztonságos csatornán kell az érintett feleknek egymás között kicserélni. A nyilvános kulcsú kriptorendszerben a kódoló ek kulcs nem egyezik meg a dekódoló dk kulccsal (ekdk). Az ek neve nyilvános kulcs, míg dk neve privát kulcs. A kommunikáció kezdete előtt a fogadó félnek rendelkeznie kell a nyilvános-privát kulcspárral, melyeket egyidejűleg kell generálni. A nyilvános kulcsú kriptorendszerek gyakorlati alkalmazása során azonban számos probléma merült fel. A rejtő kulcs nyilvánossága nem jelenti azt, hogy nem kell védeni. Legfőbb probléma azonban az, hogy a küldőnek biztosnak kell lenni abban, hogy a nyilvános kulcs valóban a fogadóé. Egy lehetséges megoldás az ún. hitelesítő hatóságok (CA – Certification Authority) rendszerének kiépítése. Ezzel egy bonyolult és drága rendszert – ez az ún. nyilvános kulcsú infrastruktúra (PKI) – kell működtetni.
5, Az azonosítón alapuló kriptográfia (IBC) I. 1984-ben Shamir javasolta a digitális személyi azonosítón alapuló titkosítást. Az új paradigma lényege: A nyilvános kulcsú kriptográfiában a felhasználó valamilyen (digitális) személyi azonosító adatát – pl. e-mail cím, IP-cím stb. – használják nyilvános kulcsként titkosításra vagy digitális aláírásra. Remélt eredmény, hogy ez által jelentősen egyszerűsíthető a nyilvános kulcsú kriptográfia infrastruktúrája. A klasszikus nyilvános kulcsú kriptográfiával összevetve az azonosítón alapuló kriptográfia főbb jellemzői: A titkos kommunikációhoz nem kell a fogadó félnek nyilvános-privát kulcspárral rendelkezni. A rejtő-fejtő kulcspár generálása időben egymástól független. Feltételezi legalább egy abszolút megbízható harmadik fél létét (TA – Trusted Authority), aki ismeri a privát kulcsot (kulcs-letét).
5, Az azonosítón alapuló kriptográfia (IBC) II. Shamir eredeti motivációja a titkos elektronikus levelezés infrastruktúrájának egyszerűsítése volt, ezért javasolt nyilvános kulcsként valamilyen digitális személyi azonosítót. A nyilvános kulcs azonban tetszőleges digitalizált karaktersorozat lehet, ami jelentősen kitágítja Shamir ötletének alkalmazási lehetőségeit. A nyilvános rejtő kulcsba bármilyen információ, adat, feltétel „beépíthető”, pl.: időpont, amikortól a fejtés elvégezhető (timed released) a fogadó jogosultsági adatai (access control with IBE) a fogadó tulajdonságai (attribute based encryption) biometriai adatok, jellemzően ujjlenyomat (fuzzy IBE) több abszolút megbízható harmadik fél is lehet, amelyek hierarchikus struktúrába szervezhetők pl. egy szervezet szervezeti egységei mentén (hierarchical IBE)
5, Az azonosítón alapuló kriptográfia (IBC) III. Az azonosítón alapuló nyilvános kulcsú kriptográfiának számos részterülete van, ezek összefoglaló elnevezése az azonosítón alapuló kriptográfia (IBC). Ezen belül két nagyobb részterületről lesz szó röviden, az azonosítón alapuló titkosításról (IBE), illetve az azonosítón alapuló aláírásról (IBS). Az IBC részterületeinek közös jellemzője, hogy egy rendszer valamennyi felhasználója egyetlen közös abszolút megbízható harmadik félhez (TA) „tartozik”, annak paramétereit használják. A rendszer „beüzemelésekor” elsőként a TA teszi közzé a mindenki számára közös alapparamétereket. Induláskor a TA egy ekTA - dkTA nyilvános - privát kulcspárt generál. A dkTA privát kulcs neve mesterkulcs, amit a TA titokban tart. Az ekTA nyilvános kulcs a rendszer valamennyi érdekeltje számára rendelkezésre áll, és hosszú időre a rendszer állandó paramétere.
5, Az azonosítón alapuló kriptográfia (IBC) IV. Azonosítón alapuló titkosítás (Identitiy Based Encryption) Alapséma: Alice titkos üzenetet küld Bobnak, aki megfejti azt. A séma az alábbi főbb lépésekből áll. Rejtés: A küldő Alice a fogadó Bob valamilyen digitális azonosító adata alapján és a nyilvános kulcs segítségével titkosítja az M üzenetet és előállítja a C titkosított üzenetet, amelyet nyilvános csatornán továbbít Bobnak Fogadó privát kulcsának generálása: A fogadó Bob hitelesíti magát a TA felé. Ezután a TA a mesterkulcs és Bob digitális azonosító adata alapján előállít egy privát kulcsot Bob számára. A privát kulcsot a TA biztonságos csatornán továbbítja Bob felé. Fejtés: Bob a C titkosított üzenetből a privát kulcsa segítségével visszaállítja Alice eredeti M üzenetét.
5, Az azonosítón alapuló kriptográfia (IBC) V. Azonosítón alapuló aláírás (Identitiy Based Signature) Alapséma: Alice üzenetet küld Bobnak, melyet digitális aláírással lát el. Bob miután megkapta az üzenetet és az aláírást ellenőrzi az üzenet hitelességét, azaz meggyőződik róla, hogy valóban Alice üzenetét kapta meg, és azt valóban Alice írta alá. A séma az alábbi főbb lépésekből áll. Küldő privát kulcsának generálása: A küldő Alice hitelesíti magát a TA felé. Ezután a TA a mesterkulcs és Alice digitális azonosító adata alapján előállít egy privát kulcsot Alice számára. A privát kulcsot a TA biztonságos csatornán továbbítja Alice felé. Aláírás: A küldő Alice a privát kulcsa segítségével előállítja a digitális aláírást az M üzenet alapján. Az M üzenetet és a digitális aláírást nyilvános csatornán elküldi Bobnak. Aláírás ellenőrzése: Miután megérkezett az M üzenet és a digitális aláírás, Bob a rendszer nyilvános kulcsa és Alice digitális azonosító adata alapján ellenőrzi, hogy a digitális aláírást valóban Alice készítette és az valóban az M üzenethez tartozik.
5, Az azonosítón alapuló kriptográfia (IBC) VI. Időfeloldó titkosítás Az azonosító alapú titkosítás egy nagyon érdekes alkalmazása az időfeloldó titkosítás. Lényege, hogy kriptográfiai eszközökkel érjük el, hogy a küldött üzenet csak adott időpont után legyen fejthető, azaz tartalma csak adott időponttól kezdve hozzáférhető. Az eljárás alapötlete, hogy Alice Bob nyilvános kulcsához hozzáilleszti (konkatenálja) a fejtés szándékolt időpontját. Ez az időpont mindenki számára elérhető, hiszen a nyilvános kulcs része. A fejtés két különböző módon is történhet. A TA ismerve a fejtés szándékolt időpontját, csak az ott megjelölt időpontban bocsátja ki a privát kulcsot Bob számára. A TA megadott gyakorisággal kibocsátja a privát kulcsot Bob számára, aki csak azzal a kulccsal tudja az üzenetet visszafejteni, amely az Alice által megadott időponthoz tartozik.
6, IBE alkalmazások eLearning környezetben Az ILIAS rendszer is bizonyítja, hogy az eLearning rendszerekben sokszor igen széles körű adatbiztonsági eljárásrendszert alkalmaznak. A felhasználók azonosítása általában jelszavakkal történik. Egyes rendszerek lehetővé teszik, hogy az egyéni felhasználókat külön-külön kezelje a rendszer. A legáltalánosabb megoldás azonban a felhasználói csoportok, azonos jogosultságú szerepkörök kialakítása. Az eLearning rendszerek felhasználóinak munkájuk során számos esetben szükséges a védett egyéni kapcsolatok kiépítése, fenntartása. Ennek megoldása sok esetben a rendszer szolgáltatásainak igénybevételével nem lehetséges, kiegészítő elemeket kell integrálni a rendszerbe, vagy annak környezetébe. A biztonságosabb kapcsolat kriptográfiai eszközökkel, algoritmusokkal és protokollokkal alakítható ki. Az IBE egy új megoldást jelent a hagyományos titkos kulcsú és nyilvános kulcsú rendszerek mellett.
7, Alkalmazott IBE alapú protokollok ILIAS környezetben I. A kidolgozott protokolloknak négy szereplője van: O – oktató H – hallgató IS – ILIAS eLearning szerver TAS – TA kulcsszerver Az IBE alkalmazása az ILIAS rendszerhez csatolva kiindulási pontként feltételezi a TAS szerver meglétét, valamint azt, hogy megtörtént a rendszer megfelelő kriptográfiai inicializálása, azaz a szerver generálta a rendszer nyilvános-privát kulcspárját. A nyilvános kulcsot közzéteszi pl. egy mindenki számára elérhető könyvtárban, vagy weboldalon; a mesterkulcsot titokban tartja. A szerver további feladata a biztonságos és védett kulcskezelés.
7, Alkalmazott IBE alapú protokollok ILIAS környezetben II. Az IBE és az ILIAS rendszer kapcsolódása TAS IS H O 1 2 3 4 5 6 7 8
7, Alkalmazott IBE alapú protokollok ILIAS környezetben III. Dolgozat beadása (sok ember üzenetküldése külön-külön egynek) A protokoll lépései a következők: 1. lépés: H ismeri a rendszer nyilvános kulcsát, vagy ha nem, akkor letölti a TAS kulcsszerverről (2. csatorna). 2. lépés: H az O egyedi azonosítójával (e-mail cím) és a rendszer nyilvános kulcsával titkosítja az elküldeni kívánt üzenetet. 3. lépés: H feltölti IS-re a titkosított üzenetet. Az IS nyilvános helyen megjeleníti azt, bárki számára elérhető módon (3. csatorna). 4. lépés: O letölti a titkosított üzenetet (5. csatorna). 5. lépés: Amikor O el kívánja olvasni H üzenetét első lépésként azonosítja magát TAS felé (8. csatorna). 6. lépés: TAS az azonosítás elfogadása után generálja az O egyedi azonosítója (e- mail cím) és a mesterkulcs alapján O számára a fejtő kulcsot. TAS elküldi a fejtő kulcsot védett csatornán O részére (7. csatorna). 7. lépés: O visszafejti és elolvassa az üzenetet.
7, Alkalmazott IBE alapú protokollok ILIAS környezetben IV. Értékelés, eredményhirdetés (egy ember üzenetküldése külön-külön soknak) A protokoll lépései a következők: 1. lépés: O ismeri a rendszer nyilvános kulcsát, vagy ha nem, akkor letölti a TAS kulcsszerverről (7. csatorna). 2. lépés: O a H egyedi azonosítójával (e-mail cím) és a rendszer nyilvános kulcsával titkosítja az elküldeni kívánt üzenetet. 3. lépés: O feltölti IS-re a titkosított üzenetet. Az IS nyilvános helyen megjeleníti azt, bárki számára elérhető módon (6. csatorna). 4. lépés: H letölti a titkosított üzenetet (4. csatorna). 5. lépés: Amikor H el kívánja olvasni O üzenetét első lépésként azonosítja magát TAS felé (1. csatorna). 6. lépés: TAS az azonosítás elfogadása után generálja a H egyedi azonosítója (e- mail cím) és a mesterkulcs alapján H számára a fejtő kulcsot. TAS elküldi a fejtő kulcsot védett csatornán H részére (2. csatorna). 7. lépés: H visszafejti és elolvassa az üzenetet.
8, Összegzés A munkánk során olyan fejlesztésre tettünk javaslatot, amely bővíti az eLearning rendszerek védelmi, biztonsági funkcióit. A bemutatott protokollokban jól látható az IBE azon tulajdonsága, hogy a rejtő-fejtő kulcspár generálása kettéválik, időben egymástól független. A rejtő kulcs elkészítése nem igényli a fejtő kulcs azonnali elkészítését. Elegendő azt egy későbbi időpontban, a felhasználó kérésekor létrehozni, ami védelmi szempontból erősebbé, rugalmasabbá teszi a rendszert. A továbbiakban tervezzük hasonló protokollok kidolgozását, azok formális vizsgálatát és ellenőrzését, valamint gyakorlati megvalósítását Java alapú kliens- szerver alkalmazás fejlesztésével az ILIAS rendszerhez csatolva.
9, Felhasznált irodalom I. A harmadik fejezet kapcsolódó forrásai: [1] http://www.ilias.de/docu/goto.php?target=lm_392&client_id=docu [2] http://padre.web.elte.hu/ldap.html [3] http://libcas.sourceforge.net/?id=casintro [4] http://www.softwareonline.hu/Article/View.aspx?id=3240 [5] http://weblabor.hu/cikkek/soap A negyedik és ötödik fejezet kapcsolódó forrásai: - Boneh, D. – Franklin, M.: Identity-Based Encryption from the Weil Pairing. Proceedings of CRYPTO 2001, LNCS 2139, pages 213-229, Springer-Verlag, 2001. - Cocks, C.: An Identity Based Encryption Scheme Based on Quadratic Residues, Cryptography and Coding – Institute of Mathematics and its Applications International Conference on Cryptography and Coding – Proceedings of IMA 2001, LNCS 2260, pp. 360-363, Springer-Verlag, 2001. - Csajbók Zoltán: Kriptográfia a gazdaságinformatikai képzésben. GIKOF Journal 3. évf., 4. szám, 49-56. o. - Shamir, A.: Identity-based Cryptosystems and Signature Schemes, Proceedings of CRYPTO ’84, LNCS 196, pp. 47-53, Springer-Verlag, 1984.
9, Felhasznált irodalom II. A hatodik és hetedik fejezet kapcsolódó forrásai: - ITB 12. Informatikai rendszerek biztonsági követelményei http://www.itb.hu/ajanlasok/a12/html/a12_1.htm - Ködmön József: Kriptográfia. Computerbooks, Budapest, 1999. - F. Ható Katalin: Adatbiztonság, adatvédelem. Számalk Kiadó, Budapest, 2001. - Török Mátyás: e-Learning oktatásmenedzsment keretrendszerek. Szakdolgozat, BKÁE Gazdálkodási kar Információrendszerek tanszék, 2003.
Köszönöm megtisztelő figyelmüket!