X.509

X.509 egy szabványos megjelölve formátumok nyilvános kulcsú tanúsítványok, tanúsítvány visszavonási listák, bizonyítvány jellemzőket, és a tanúsítási útvonal érvényesítési algoritmus által meghatározott Nemzetközi Távközlési Unió (ITU). Az X.509 többek között létrehoz egy szabványos elektronikus tanúsítványformátumot és egy algoritmust a tanúsítási útvonal érvényesítéséhez. Az X.509 az IETF számos RFC- je is volt .

Az X.509-et 1988- ban hozták létre az X.500 szabvány részeként . A tanúsító hatóságok hierarchikus rendszerén alapszik , ellentétben a bizalmi hálózatokkal (például az OpenPGP megbízhatósági webével ), ahol bárki aláírhatja mások tanúsítványait.

Tanúsítványok

Az X.509 rendszerben egy tanúsító hatóság egy nyilvános kulcsot kötelező tanúsítványt rendel egy megkülönböztetett névhez, amelynek formátumát az X.500 ajánlása határozza meg , vagy egy alternatív névhez ( alternatív név ), például egy e-mail címhez vagy DNS-hez. lemez .

Ez a tanúsítvány az utolsó mezőbe helyezi a tanúsító hatóság aláírását. Konkrétan ezt az aláírást a tanúsítvány összes előző mezőjének kondenzátumával hajtják végre, és ezt a kondenzátumot a tanúsító hatóság titkos kulcsa titkosítja. Bárki, aki rendelkezik az adott hitelesítésszolgáltató nyilvános kulcsával, visszafejtheti a kivonatot, és összehasonlíthatja saját tanúsítványának kivonatával. Ha a két kondenzátum azonos, ez garantálja, hogy a tanúsítvány sértetlen, azt nem módosították. A nyilvános kulcsát tartalmazó CA tanúsítványt viszont egy másik magasabb szintű tanúsítvány is aláírhatja, ezáltal láncot alkotva. A lánc tetején találhatók a legfontosabb tanúsítványok : gyökértanúsítványok .

A gyökértanúsítványok aláíratlan vagy önaláírt nyilvános kulcsok , amelyekben megbízol. A szoftverek, például a böngészők vagy az e-mail kliensek, számos kereskedelmi vagy állami tanúsító hatóság gyökértanúsítványaival rendelkeznek. Amikor egy böngésző biztonságos kapcsolatot ( TLS / SSL ) nyit meg egy olyan webhelyhez, amely rendelkezik ismert hatóság által kiadott tanúsítvánnyal, akkor a webhelyet biztonságosnak tekinti mindaddig, amíg a tanúsítási útvonal érvényesül. A biztonságos üzemmódra váltás akkor átlátható.

Ha a szoftver (böngésző vagy más) nem ismeri a tanúsító hatóságot (egy személy vagy tanúsító hatóság által létrehozott és önaláírt tanúsítvány még nem ismert, vagy önként nem került eltávolításra az elfogadott hatóságok listájáról), a böngésző javasolja a tanúsítvány vizsgálatát, majd elfogadni vagy elutasítani a benne rejlő bizalomnak megfelelően.

Az X.509 S / MIME , TLS / SSL , SET és IPsec esetén használható .

A tanúsítvány felépítése

Az eredeti meghatározás az RFC  2459 (4. szakasz) vagy a legújabb ( RFC  5280) verzióban érhető el , amely az X.509 specializációját tartalmazza az internetes alkalmazások számára . A hitelesített rész a következő mezőket tartalmazza:

A feladó (szintén aláíró) és a tulajdonos neve X.501 név, amelyek megtalálhatók az ISO és az LDAP könyvtárakban is . A fenti tartalmat követi az aláírás algoritmus és maga az aláírás megismétlése.

A kötelező mezők között semmi sem teszi lehetővé a tanúsító hatóság (tanúsítványokat kibocsátó szervezet) megkülönböztetését az egyszerű tulajdonosoktól. Az X.509 3. verziójában definiált basicConstraints kiterjesztés foglalkozik ezzel a korlátozással. Egy másik ugyanilyen típusú hiányosság az, hogy csak a név engedélyezi a tanúsítvány összekapcsolását a kibocsátóéval, míg a nevek egyedisége nem garantálható.

A tanúsítvány szokásos és egyedi felhasználásának kiterjesztése

Az RFC  5280 meghatározza a kiterjesztések összegét, jelezve a tanúsítvány rendeltetésszerű használatát. Íme a leggyakoribb kiterjesztések:

Általánosságban elmondható, hogy ha egy tanúsítványnak több kiterjesztése van, amely korlátozza használatát, akkor a használatnak minden feltételnek meg kell felelnie. Az RFC  5280 konkrét példát mutat be egy olyan tanúsítványra, amely mindkét keyUsage ExtendedKeyUsage elemet tartalmazza, és ebben az esetben a két feltételnek teljesülnie kell, hogy a tanúsítvány a rendeltetésszerű használatnak megfelelően használható legyen.

A tanúsítványok fájlnevei

Itt vannak az X.509 formátumú tanúsítványok általános kiterjesztései:

Lánc tanúsítás

A tanúsítványlánc a tanúsítványok listája (kezdve egy tanúsítandó entitással, például szerverrel), amely egy vagy több tanúsító hatóságot tartalmaz (utoljára saját maga írta alá), és amelyek a következő tulajdonságokkal rendelkeznek:

  1. Minden tanúsítvány aláírója (az utolsó kivételével) a lánc jogutódja
  2. Minden tanúsítványt (az utolsó kivételével) a lánc következő hatóságának magánkulcsa írta alá (a tanúsítvány aláírását a hatóság nyilvános kulcsával ellenőrizhetjük)
  3. A lista utolsó tanúsítványa a bizalmi lánc belépési pontja, amelyet jogszerűen bocsátanak ki

Certificate láncokat használnak annak érdekében, hogy a nyilvános kulcs és tanúsítvány adatait (az 1 st a lánc) megfelel a tulajdonos is. Ennek biztosítása érdekében a digitális aláírást a lánc következő entitásának nyilvános kulcsával ellenőrizzük, amelyet a következő entitás nyilvános kulcsa írja alá, egészen addig, amíg el nem éri a lánc utolsó entitását. Ahogy az utolsó igazolás tekinthető megbízható, megy vissza, hogy végül eléri a hitelesítő 1 st tanúsítványt.

Visszavonási lista

A tanúsítvány érvénytelen lehet számos okból, például természetes lejárat (az érvényességi idő túllépése), a tanúsítvánnyal társított magánkulcs elvesztése vagy veszélyeztetése, a tanúsítvány tulajdonosának / tulajdonosának nevében szereplő legalább egy mező megváltoztatása és extrém esetek a kérdéses tanúsítványt aláíró tanúsító hatóság magánkulcsának elvesztése vagy megsértése .

Ezért határozza meg a szabvány a lista formátumát, amely jelzi az adott tanúsító hatóság számára érvénytelenné vált tanúsítványokat. Ezt a listát a tanúsító hatóság írja alá, hogy megakadályozza illetéktelen személy általi bármilyen módosítást.

Tartalmazza a kiadás dátumát, a frissítés dátumát (mindkettő opcionális) és magát a listát párok formájában (a visszavont tanúsítvány sorszáma; a visszavonás lehetséges oka) . A minta csak CRL-ekben lehet jelen a 2. verzió formátumában.

A CRL-ek olykor bosszantó korlátozása a visszavonási információk terjesztésének késedelme. Ennek csökkentése érdekében kifejlesztették az OCSP tanúsítvány érvényesítési protokollt . Eleinte az RFC  2560-ban, majd ismét az RFC  6960-ban definiálva ez a protokoll nagyjából ugyanazt az információt adja meg, mint a CRL, de valószínűleg naprakészebb.

Biztonság

Az MD5 elleni teljes ütközéses keresési támadás 2004-es közzététele után Arjen Lenstra , Wang Xiaoyun és Benne de Weger érdeklődött az X.509 iránt, az MD5 használatával a tanúsítvány hitelesítéséhez. Támadásuk eredményeként két azonos aláírással ellátott igazolást hamisítottak. Az SHA-1 kriptográfiai hash függvény használata csak részben oldja meg a problémát, mivel hasonló támadás elméletileg lehetséges, bár az SHA-1-nél sokkal nagyobb az ütközések megtalálásának bonyolultsága, mint az MD5-nél.

Megjegyzések és hivatkozások

  1. (in) "ITU-T X.509 ajánlás" , az ITU honlapján, 2012 (hozzáférés: 2016. április 30.)
  2. [PDF] „The Directory - Authentication Framework” , az ITU webhelyén, 2008 (hozzáférés: 2016. április 30.)
  3. (in) "  Internet X.509 Nyilvános kulcsú infrastruktúra tanúsítvány és CRL Profil  " Request for Comments n o  24591999. január.
  4. (in) "  Internet X.509 Nyilvános kulcsú infrastruktúra tanúsítvány és tanúsítvány-visszavonási lista (CRL) profil  " Request for Comments n o  5280,2008. május.
  5. (in) "  Internet X.509 Nyilvános kulcsú Infrastruktúr Online Certificate Status Protocol - OCSP  " Request for Comments n o  25601999. június.
  6. (in) "  Internet X.509 Nyilvános kulcsú Infrastruktúr Online Certificate Status Protocol - OCSP  " Request for Comments n o  69602013 Június.
  7. (in) Arjen Lenstra , Wang Xiaoyun és Benne de Weger , "összeütköző X.509 tanúsítványok" , az oldalon a Műszaki Egyetem Eindhoven , 1 st március 2005 (lapot 21, 2005. július)

Lásd is

Kapcsolódó cikkek

Külső linkek

Megoldások:

Tanúsító hatóságok:

Eszközök (ingyenes):