300 likes | 443 Vues
INFRASTRUKTURA JAVNIH KLJUČEVA I CERTIFIKACIJASKI CENTAR. Krešimir Nesek. Uvod. Alica šalje poruku Bobu Kriptira je koristeći Bobov javni ključ Potpisuje je svojim privatnim ključem Bob prima poruku Dekriptira je koristeći svoj privatni ključ Provjerava potpis pomoću Aličinog javnog ključa.
E N D
INFRASTRUKTURA JAVNIH KLJUČEVA I CERTIFIKACIJASKI CENTAR Krešimir Nesek
Uvod • Alica šalje poruku Bobu • Kriptira je koristeći Bobov javni ključ • Potpisuje je svojim privatnim ključem • Bob prima poruku • Dekriptira je koristeći svoj privatni ključ • Provjerava potpis pomoću Aličinog javnog ključa
Raspodjela javnih ključeva… • Alica mora poznavati Bobov javni ključ • Kako garantirati da je Bobov javni ključ uistinu Bobov?
Infrastruktura javnih ključeva • Engl. Public key infrastructure – PKI • Namjena: • Raspodjela javnih ključeva • Autentifikacija korisnika • Povezivanje identiteta korisnika i njegovog javnog ključa
Certifikat • Povezuje… • Javni ključ • Identitet • Vezu jamči potpis certifikacijskog centra
Certifikat • Koncept predložio L. Khonfelder 1978. • Certifikat sadrži: • Podatke o nosiocu (subjektu) • Javni ključ subjekta • Digitalni potpis entiteta koji garantira vezu između subjekta i njegovog javnog ključa • U PKI sustavima vezu garantira certifikacijski centar
Certifikacijski centar • Engl. Certificate Authority (CA) • Povjerljiva treća strana • Izdaje certifikate • Nakon identifikacije • Objavljuje certifikate • Opoziva certifikate
Komponente PKI sustava • Korisnik (krajnji entitet) • Osoba, računalo u mreži … • Zahtjev za certifikacijom javnog ključa • Certifikacijski centar • Obrađuje zahtjeve za certifikacijom • Registracijski centar • Izdaje, objavljuje i opoziva certifikate • Protokoli…
Organizacija PKI sustava Repozitorij Certifikata / CRL Provjera cert. Korisnik Registracija RA CA Objavljivanje Zahtjev prihvaćen
Certifikacijski centar • Tehničke zadaće: • Registracija • Inicijalizacija • Certifikacija • Pohrana ključeva • Ažuriranje ključeva • Međusobno certificiranje • Opozivanje certifikata • Distribucija obavijesti o opozvanim certifikatima
Certifikacijski centar • Registracija • Obrada zahtjeva za certifikacijom • Identifikacija subjekta / verifikacija zaprimljenih podataka • Odrediti svrhe u koje se certifikat smije koristiti • Odrediti period valjanosti • … • Može biti delegirana na jedan ili više RA
Certifikacijski centar • Inicijalizacija • Generiranje para ključeva • CA certifikat • Samopotpisan – vršni CA • Potpisan od nadređenog CA
Certifikacijski centar • Certifikacija • Potpisivanje zahtjeva za certifikacijom • Pohranjivanje ključeva • Dohvat izgubljenih privatnih ključeva (ukoliko nisu kompromitirani) • Ažuriranje ključeva • Izdavanje obnovljenog certifikata s novim ključem nakon isteka valjanosti starog
CA1 CA2 Certifikacijski Centar • Međusobno certificiranje • Engl. Cross-certification • Omogućuje autentifikaciju kad dva korisnika PKI-a nisu certificirani od istog CA • CA1 certificira javni ključ od CA2 • CA2 certificira javni ključ od CA1 Međusobna certifikacija
Certifikacijski Centar • Opozivanje certifikata • Podatak u certifikatu više nije valjan • Promjena područja primjene certifikata • Greška pri izdavanju • Kompromitiran privatni ključ • … • Opozvani certifikati objavljuju se u obliku CRL-a – liste opozvanih certifikata
Certifikacijski centar • Dostavljanje obavijesti o opozvanim certifikatima • CRL raspodjelne točke • Referentni i delta-CRL • Protokoli: ldap, http, ftp
X.509 Standard • ITU-T standard za PKI sustave • Izgrađen na temeljima X.500 standarda o imeničkim servisima (engl. Directory services) • Jedinstveni identifikator u X.500 imeniku je prepoznatljivo ime - DN (engl. distinguished name) • Država, područje, mjesto, organizacija, organizacijska jedinica, ime
X.509 Standard • X.500 hijerarhija: C C = Država (country) P P P = Područje (province) … L L L = Mjesto (locality) … O O O = Organizacija (organisation) … OU OU OU = Org. jed. (org. unit) CN … … CN = ime (common name)
X.509 topologija • X.509 predviđa CA u čvorovima X.500 hijerarhije • Hijerarhijski ustroj certifikacijskih centara Vršni CA CA CA CA … CA CA
X.509 topologija • CA certifikat potpisan je od nadređenog CA • Vršni CA sam potpisuje svoj CA certifikat • Certifikacijska staza • Niz certifikata koji vode do vršnog CA • Međusobna certifikacija omogućuje i drukčije topologije
X.509 Certifikat • Certifikat • Inačica • Serijski broj • ID algoritma • Izdavač • Valjanost • Subjekt – X.500 DN • Informacije o javnom ključu subjekta • Jedinstveni identifikator izdavača (opcionalno) • Jedinstveni identifikator subjekta (opcionalno) • Proširenja (opcionalno) • ... • Algoritam potpisivanja, • Digitalni potpis certifikata.
X.509 Certifikat • Formati datoteka • Propisana ASN.1 sintaksa • DER kodiranje • Base64 kodiranje • .CER – DER kodirani certifikat (ili niz certifikata) • .PEM dodatno Base64 kodiran • PKCS#12 (.PFX) • Javni i privatni ključ (zaštićen lozinkom)
PKI u Hrvatskoj • Zakon o elektroničkom potpisu • Digitalni potpis ima jednaku pravu snagu kao i vlastoručni ako je izrađen u skladu sa zakonom • Ministarstvo gospodarstva je vršni CA • FINA – CA certificiran od ministarstva • RDC Certifikati
Nedostaci PKI-a • X.500 tradicija • Identifikacija putem DN • Informacije koje nisu trajne • X.509 vrlo općenit standard • PKI implementacije nisu kompatibilne • Problem opozivanja • Veliki CRL • Nema offline provjere
Rizici PKI-a • Carl Ellison and Bruce Schneier, “10 risks of PKI”, Computer Security Journal • Volume XVI, Number 1, 2000 • Kome vjerujemo i zašto? • Tko koristi moj ključ? • Koliko je sigurno računalo koje provjerava potpis? • O kojem Ivanu Horvatu je riječ?
Rizici PKI-a • Da li je certifikacijski centar autoritet? • Da li je korisnik dio sigurnosnog sustava? • CA ili CA + RA? • Kako CA identificira nosioce certifikata? • Kako se koriste certifikati? • Zašto se uopće koriste CA?
CertCentar • Izdaje (generira) certifikate • X.509 • Generira ključeve • Spremanje certifikata u standardiziranim formatima datoteka • X.509, PKCS#12 • Certifikati spremni za korištenje u PKI podržanim aplikacijama
Zaključak • Implementaciji PKI sustava treba pristupiti oprezno • Precizno definirati sigurnosni problem koji PKI treba i realno može riješiti • Ne koristit PKI gdje nije potrebno • Ne koristiti PKI ako se ne nema namjeru paziti na svaku “kariku” u sustavu • Ukoliko se pravilno koristi, PKI sustav omogućuje sigurnu autentifikaciju i raspodjelu javnih ključeva