
A COVID-19 világjárvány kezdete óta a bizalmi szolgáltatások felhasználói köre még a vártnál is jobban megnövekedett; ez igen nagy haladást jelent az olyan célok elérésének tekintetében, mint a papírmentes ügyintézés, illetve szerződéskötés, ám ezzel egyidejűleg azon felhasználók, akik nemrégiben kezdték meg az ehhez kapcsolódó alkalmazások használatát, sokszor igen tanácstalanok lehetnek. Ez nem is csoda; a nyilvános kulcsú infrastruktúrák világának megértése egyáltalán nem egyszerű feladat. Az egyik fő nehézség az lehet, hogy az ilyen jellegű szolgáltatások tekintetében olyannyira számos entitás van jelen – akár a rendszer részeként, akár annak külső szabályozójaként – hogy néha igen nehezen követhető, ebből kifolyólag pedig annak eldöntése is komplikált, hogy mit vagy kit tekintünk megbízhatónak.
Ez a problémakör egyáltalán nem újkeletű, valójában a kezdetek óta jelen van, így a témával foglalkozó szakemberek ezt különböző szabványok, ajánlások és best practice-ek bevezetésével próbálták orvosolni. Sajnos nem létezik olyan intergalaktikus PKI hatóság, amely egy keretrendszerben szabályozná a bizalmi szolgáltatások minden aspektusát, így legalább egy tucat szervezet munkájára kell támaszkodnunk. Ez a poszt megkísérli tisztázni ezek kapcsolatrendszerét legalábbis a tanúsítványellenőrzési folyamatok tekintetében.
Elsőként, ha valaki nincs tisztában a PKI alapvető működésével, álljon itt egy gyors összefoglaló a nyilvános kulcsú tanúsítványokról: ezek a nyilvános kulcsú kriptográfián alapulnak, ahol egy felhasználó rendelkezik egy nyilvános és egy magánkulcsból álló kulcspárral. A tanúsítványok célja, hogy bizonyítsák, hogy egy adott nyilvános kulcs a bennük megnevezett alanyhoz (magán- vagy jogi személyhez, webszerverhez stb.) tartozik. Ezek kibocsátását bizalmi szolgáltatók (legelterjedtebb rövidítése az angol „certification authority”-ből eredő „CA”, így a továbbiakban mi is ezt használjuk) végzik, melyet egy hosszú ellenőrzési procedúra előz meg, amelynek célja annak megerősítése, hogy az igénylő valóban az, akinek mondja magát. Ez egyelőre nem tűnik annyira bonyolultnak, ám tegyük hozzá, hogy a végfelhasználók nem a kizárólagos tanúsítványbirtokosok, ugyanis azok ugyanúgy szükségesek a CA-k számára is, mivel az ő hitelességük garanciája legalább olyan fontos. Ha ún. köztes CA-król beszélünk, a CA tanúsítvány kiállítója egy másik CA, ám, ha az adott CA fölött nem áll semmi a hierarchiában (ezeket root CA-nak nevezzük), annak tanúsítványa vagy önkibocsátott, vagy egy másik root által kibocsátott kereszttanúsítvány.
Fontos bevezetnünk a megbízható gyökér (trust anchor) fogalmát is. Ez egy olyan entitást jelent, amely esetén a bizalom feltételezett és nem származtatott, így fontos szerepük van az ellenőrzés folyamatában; az érvényesnek tekintett tanúsítványláncok mindig egy trust anchor által hitelesített tanúsítvánnyal kezdődnek. Gyakori félreértés, hogy a root CA-k mindig megbízható gyökérként funkcionálnak, ezért az is lehet rossz gyakorlat (sőt, az EU területén kétség nélkül az), ha egy szabályzat a root tanúsítványig történő ellenőrzést (avagy teljes tanúsítványláncellenőrzést) ajánlja az érintett felek számára. Ez semmilyen jogszabályban vagy szabványban nem követelmény; az, hogy mi fogadható el megbízható gyökérként, gyakran igen szélesen eltérhet (példaként más ellenőrzést javasol egy egyesült államokbeli és egy európai uniós szolgáltató, nemsokára azt is látjuk majd, miért). A többek között a tanúsítványellenőrzési folyamatokat is leíró RFC 5280 így rendelkezik a kérdésben: „"The selection of a trust anchor is a matter of policy: it could be the top CA in a hierarchical PKI, the CA that issued the verifier's own certificate(s), or any other CA in a network PKI." Azaz, az érintett félen múlik, hogyan végzi az ellenőrzést, így ez akár alkalmazásonként is változó lehet.
Szerencsére, európai állampolgárként sokkal egyszerűbb dolgunk van, ugyanis az Európai Unió tagállamainak illetékes hatóságai kötelesek közzétenni az országukban bejegyzett minősített bizalmi szolgáltatókat, illetve azok tanúsítványait; ezen adathalmazokat bizalmi listának nevezzük, ezek az eIDAS rendeletben is meghatározásra kerültek. Ám mi történne, ha egy rosszindulatú támadó közzétenne egy általa hamisított „bizalmi listát”, amely például azon tanúsítványokat tartalmazná, amelyeket ő maga hozott létre a saját adathalász weboldalai számára? Hogyan ellenőrizhető egy bizalmi lista?
Fontos, hogy minden bizalmi lista elektronikusan aláírva kerül közzétételre, ám, ha ez sem győzne meg minket, az Európai Unió további garanciát nyújt számunkra, ugyanis fenntart egy olyan listát, amely a bizalmi listákat összesíti; ezt eredetileg összeállított listának hívták, ám követve az elterjedt szóhasználatot, mára bizalmi listák jegyzékeként (BLJ) emlegetik, habár - akár magyar nyelvű környezetben is - találkozhatunk az angol LOTL elnevezéssel (list of trusted lists) is. Ezen jegyzék egy géppel olvasható XML formátumban elérhető, hitelessége pedig a bizalmi listákénál is erősebben garantált; egyrészt, szintén elektronikus aláírással van ellátva, amelynek tanúsítványa az Európai Unió Hivatalos Lapjában is megtalálható (jelenleg a 2019/C 276/01 számban), továbbá, abban az esetben, ha a LOTL vagy a vonatkozó tanúsítványok elérési helye változik, a LOTL önmaga is tartalmazza az ezen változásokat leíró publikációk helyét géppel olvasható módon; ezen a mechanizmus gyakorlati megvalósulását „pivot LOTL”-nek nevezi az Európai Unió. Ezen publikációk listáját a LOTL „SchemeInformationURI” tagje tartalmazza, fordított kronológiai sorrendben.
Tehát, röviden összegezve, a bizalmi listák alapján történő ellenőrzés igen biztonságos, így nem csoda, hogy a vonatkozó szabványok és jogszabályok megkövetelik a használatukat a megbízható gyökerek kijelöléséhez. Egy bizalmi lista ellenőrzéséhez használható a bizalmi listák jegyzéke (BLJ, LOTL), amely géppel olvasható XML fájl, így alkalmazásokba is foglalható.
Felhasznált irodalom/Ajánlott olvasmány:
A megbízható gyökér kiválasztása szabályzat kérdése: lehet egy legfelsőbb CA egy hierarchikus PKI-n belül, a CA, amely kibocsátotta az ellenőrző tanúsítványát, vagy bármely másik CA egy PKI hálózatban.
© 2023 Microsec zrt. | Cégjegyzékszám: 01-10-047218 | Adószám: 23584497-2-41