Digitalni sertifikati Potvrda autorizacije Poverljivi posrednici Problem javnog
Digitalni sertifikati, Potvrda autorizacije
Poverljivi posrednici Problem javnog ključa: Problem simetričnog ključa: n Kada Alice dobije Bobov javni n Kako dva entiteta određuju tajni ključ koji se deli kroz mrežu? ključ (putem web site, e-mail, diska), kako da zna Rešenje: da je to Bobov javni ključ, n Javna kriptografija ne. Tedov? Rešenje: n Dakle, treba nam veza između A i javnog ključa od A n Potvrda autoriteta kojoj se veruje (certification authority (CA)) Digital Signature and Digital Certificates Ladislav Huraj
Sertifikati kod javnog ključa Kako da budemo sigurni da imamo pravi javni ključ za pojedinačne učesnike u komunikaciji n Servis treba da obezbedi vezu između imena učesnika i javnog ključa (sertifikati). n U cilju poverenja da je ova veza u redu, servis (sertifikat autorizacije – CA) se potpisuje kao predstavnik veze. n – Javni ključ za CA je dobro poznat, i prema tome, zainteresovani učesnici mogu biti sigurni da je digitalni potpis validan. Bobov javni ključ + KB Bobova identifikovana informacija Digitalni potpis (šifrovanje) + KB - KCA CA privatni ključ Digital Signature and Digital Certificates Certifikat za Bobov javni ključ, potpisan od CA Ladislav Huraj
Digitalni sertifikati Digitalni sertifikat (eng. Digital Certificate) predstavlja element kojim se utvrđuje veza između identiteta subjekta i njegovog javnog ključa primenom asimetričnog algoritma. Možemo ga nazvati i digitalnom ličnom kartom, jer on to zaista i jeste - digitalna lična karta u „cyber prostoru”, odnosno sredstvo kojim dokazujemo identitet na internetu. Elementi koji čine strukturu digitalnog sertifikata su: n Verzija formata sertifikata - sadrži oznaku strukture digitalnog sertifikata. Jedan od najzastupljenijih formata digitalnih sertifikata definisan je X. 509 standardom. n Serijski broj sertifikata - sadrži vrednost koju dodeljuje sertifikacioni autoritet u trenutku kreiranja digitalnog sertifikata. n Identifikator algoritma - sadrži podatke o algoritmu koji je pirmenjen za digitalno potpisivanje. n Naziv sertifikacionog tela - identifikuje izdavača digitalnog sertfikata. n Rok važnosti sertifikata - sadrži vremenski period u kome je izdati digitalni sertifikat validan. Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikati n Vlasnik sertifikata - predstavljen je složenom strukturom koja obuhvata nekoliko ličnih podataka: o Dvoslovni niz koji označava državu o Region u okviru države o Elektronska adresa (e-mail) Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikati o Naziv mesta u kome vlasnik stanuje o Naziv organizacije u kojoj je zaposlen o Ime vlasnika o Naziv odeljenja (niže organizacione celine) u organizaciji o Ime vlasnika sertifikata n Polje dodatnih atributa - sadrži vrednosti koje identifikuju vlasnika sertifikata, a nisu sadržane u polju vlasnik sertifikata (broj telefona, broj faxa itd. ) n Informacija o javnom ključu vlasnika - sadrži javni ključ i identifikator asimetričnog algoritma sa kojim se dati ključ primenjuje n Digitalni potpis sertifikata - od strane ustanove koja je izdala sertifikat (CA) Uloga digitalnog sertifikata je da dovede u jednoznačnu vezu fizički identitet subjekta sa njegovim javnim ključem. Kreiranje i digitalno potpisivanje sertifikata vrši „treća strana od poverenja” (eng. Trusted Tthird Party, TTP). Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikati Ukoliko prijemna strana uspešno verifikuje dobijeni sertifikat, onda je ona sigurna u autentičnost pošiljaoca poruke - vlasnika odgovarajućeg tajnog ključa. Kako je par ključeva matematicki povezan, ako je asimetrični sistem dobro oblikovan i implementiran, nemoguće je iz javnog ključa izdvojiti tajni (privatni) ključ. Bez obzira na to što je javni ključ poznat mnogima, u svrhu potvrde identiteta potpisnika, nemoguće je otkriti njegov tajni ključ i iskoristiti ga za lažiranje digitalnog potpisa. Ova činjenica se naziva načelo ireverzibilnosti. Digitalni sertifikati mogu biti: n Samopotpisani n Kvalifikovani Samopotpisane digitalne sertifikate može da izda „bilo ko”, pa čak i sam korisnik. Uglavnom se koriste interno, a „pravna snaga” dobija se potpisivanjem posebnog ugovora sa korisnikom (e-banking sistemi). Kvalifikovane digitalne sertifikate može da izda samo sertifikaciono telo koje ispunjava određene zakonske uslove i ima dozvolu za rad, što je definisano zakonom o digitalnom potpisu i zakonskim aktima. Digital Signature and Digital Certificates Ladislav Huraj
Sertifikaciona tela Kvalifikovani digitalni sertifikat sa odgovarajućim parom ključeva može se upotrebiti za kreiranje „kvalifikovanog digitalnog potpisa” elektronskog dokumenta, koji je po pravnoj snazi ekvivalentan papirnom dokumentu potpisanom i overenom na klasičan način - olovkom i pečatom. Sertifikaciono telo (ili kratko CA, engl. Certification Authority) je entitet koji digitalno potpisuje primljene zahteve za digitalne sertifikate. Ono je neophodno u procesu izdavanja digitalnih sertifikata, jer predstavlja instituciju kojoj se veruje. Napravimo paralelu sa ličnim kartama - mi u stvari ne verujemo samoj ličnoj karti, kao komadu specijalnog papira, već telu (država/MUP) koje ju je izdalo i na osnovu tog poverenja smatramo da su podaci o nosiocu u njoj tačni. Zahvaljujući podatku u samom digitalnom sertifikatu o telu koje ga je izdalo, kreira se „lanac sertifikata” koji (ako krenete u proveru) vodi do „glavnog” tela kome se veruje. Kako obezbediti poverenje u neko CA telo? Digital Signature and Digital Certificates Ladislav Huraj
Sertifikaciona tela Tako što se realizuje njihova „piramida”, na čijem je vrhu vrhovno državno sertifikaciono telo (Root CA - kao da je u korenu stabla). Ono je dobro čuvano, kako fizički tako i elektronski, i ima skup strogih pravila po kojima radi. Za razliku od ostalih, Root CA telo samo sebi potpisuje digitalni sertifikat. U našoj zemlji ono je pod upravom Ministarstva za nauku. Međutim, od ovog tela se ne može kupiti digitalni sertifikat. Root CA ih izdaje samo tzv. među-CA telima (Intermediate CA, kratko ICA), koja komercijalno izdaju sertifikate. Dakle, korisnici mogu kupiti kvalifikovani digitalni sertifikat samo od ICA tela, kojih će u Srbiji biti nekoliko. Za normalan rad javnog CA tela neophodan je i skup aplikacija koje omogućavaju upravljanje životnim vekom samog sertifikata. Pored uslova koje treba da zadovolje sertifikati mora da obezbede i različite evidencije i publikovanje informacija, zatim funkcije opoziva i pauziranja sertifikata, kao i obnavljanja - sertifikati obično važe samo jednu godinu (iz sigurnosnih i ekonomskih razloga). Kada već nešto digitalno potpišemo, potrebno je da se omogući provera ispravnosti originalne datoteke i njenog digitalnog potpisa. Zato CA tela mogu objavljivati podatke o izdatim digitalnim sertifikatima, mada to nije obavezno. Obavezno je objavljivanje informacija svih CA tela o svim njihovim izdatim sertifikatima koji su pauzirani ili opozvani, što se radi kroz liste opozvanih sertifikata - Certificate Revocation List, tj. CRL. Digital Signature and Digital Certificates Ladislav Huraj
CA hijararhija Root CA CA CA Digital Signature and Digital Certificates CA CA Ladislav Huraj
Poverljiv lanac Kool CA #0 koren CA Kool CA gazda CA #1 korisnik CA# Kool CA pristup #1 Gazda CA 2 Antje #1 korisnik CA Bodo Srednji CA #2 korisnik CA Digital Signature and Digital Certificates Kraj sertifikata Ladislav Huraj
Sertifikaciona tela U normalnim okolnostima, pri svakoj upotrebi digitalnog sertifikata vrši se provera njegove ispravnosti - prvo se proverava rok važnosti koji je upisan u sam sertifikat, zatim se provere podaci o CA koje je izdalo digitalni sertifikat potpisnika, a na kraju i da li se sertifikat nalazi na CRL-u. CRL je izuzetno važan sigurnosni mehanizam, koji omogućava da se neki sertifikat maltene trenutno opozove i time spreči njegov korisnik u vršenju nedozvoljenih operacija, bez obzira na to gde se u svetu nalazi. Preporučeno je da se kriptografija s javnim ključem koristi u radnom okviru za proveru identiteta organizacije ISO (International Organization for Standardization authentication framework), koji je poznat kao X. 509 protokol. Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikati Digitalni Sertifikat je jednostavno X. 509 definisana structura sa digitalnim potpisom. Podaci ukazuju na to ko je vlasnik sertifikata, ko je potpisao sertifikat, i daju ostale relevantne informacije. Ako se CA dovede u pitanje, može se napraviti problem. Privatni ključ za CA trebalo bi, u tom slučaju, sačuvati na sigurnom mestu. CA ne zahteva da sve vreme budete online CA ima dve funkcije: § Overavanje veze (tj. sertifikati) i § čuvanje sertifikata. X. 509 format sertifikata n n n Verzije: Indikator verzije 1, 2, 3 ili 4. Serijski broj: Jedinstven identifikacioni broj sertifikata. Potpis: Algoritam se identifikuje algoritmom digitalnog potpisa. Izdavač: X. 500 je ime izdavanja CA. Validnost: Vreme i datum izdavanja i isteka sertifikata. Digital Signature and Digital Certificates Ladislav Huraj
X. 509 format sertifikata n n n Subjekat: X. 500 ime nosioca privatnog ključa (potpisnika). Nosioc informacije javnog ključa: Vrednost javnog ključa subjekta kao i algoritam za korišćenje javnog ključa. Ekstenzije: Koristi za inkorporiranje proizvoljnog broja dodatnih polja u sertifikat. Ovaj radni okvir obezbedjuje proveru identiteta u mrežama. Iako nisu definisani određeni algoritmi za bezbednost ili proveru identiteta, u specifikaciji je preporučen algoritam RSA. Međutim, moguće je koristiti više algoritama i heš funkcija. Protokol X. 509 prvi put je objavljen 1988. godine. Posle javnog ispitivanja i komentara, izmenjen je 1993. godine, kako bi se otklonili neki problemi sa bezbednošću. Najvažniji deo protokola X. 509 jeste njegova struktura za sertifikate s javnim ključem. Sertifikacioni centar (CA) od poverenja dodeljuje jedinstveno ime svakom korisniku i izdaje potpisani sertifikat koji sadrži to ime i javni ključ korisnika. Digital Signature and Digital Certificates Ladislav Huraj
CA stablo Ako Alisa hoće da komunicira s Bobom, ona najpre uzima njegov sertifikat iz baze podataka, a zatim proverava njegovu autentičnost. To je jednostavno ako oboje koriste isti CA. Alisa proverava potpis sertifikacionog centra na Bobovom sertifikatu. Ukoliko Alisa i Bob koriste različit sertifikacione centre, to je komplikovanije. Imajmo na umu strukturu stabla, s različitim sertifikacionim centrima koji sertifikuju druge centre i korisnike. Svaki CA ima sertifikat koji je potpisao CA iznad njega i CA ispod njega. Alisa koristi ove sertifikate da bi verifikovala Bobov sertifikat. Alisin sertifikat je sertifikovao CAA, a Bobov je sertifikovao CAB. Alisa zna javni ključ od CAA. CAC ima sertifikat koji je potpisao CAA, pa Alisa to može da proveri. CAD ima sertifikat koji je potpisao CAC. CAB ima sertifikat koji je potpisao CAD. Bobov sertifikat je potpisao CAB. Kretanjem uz stablo sertifikata do zajedničke tačke, u ovom slučaju CAD, a zatim niz stablo do Boba, Alisa može da verifikuje Bobov sertifikat. Sertifikati mogu da budu uskladišteni u bazama podataka na mreži. Korisnici mogu da ih šalju jedni drugima. Kada istekne rok važenja nekog sertifikata, on treba da se ukloni iz svih javnih otvorenih imenika. Međutim, CA koji je izdao sertifikat treba da zadrži primerak tog sertifikata. On će biti neophodan ako kasnije bude nesuglasica. Digital Signature and Digital Certificates Ladislav Huraj
CA stablo Sertifikati mogu biti opozvani zato što je kompromitovan korisnikov ključ ili ključ sertifikacionog centra ili zato što centar više neće da potpisuje sertifikate određenog korisnika. Svaki CA mora da održava listu svih opozvanih sertifikata kojima nije istekao rok važenja. Kada Alisa primi nov sertifikat, treba da proveri da li je opozvan. Ona može da proveri bazu podataka opozvanih ključeva na mreži, ali je verovatnije da će proveriti listu opozvanih sertifikata u lokalnoj heš memoriji. Svakako su moguće zloupotrebe ovog sistema, a opoziv ključeva je verovatno njegov najslabiji deo. Protokoli za proveru identiteta Ako Alisa hoće da komunicira s Bobom, ona prvo iz baze podataka dobija sertifikacioni put (engl. certification path) od Alise do Boba i Bobov javni ključ. U tom trenutku Alisa može da započne jednoprolazni, dvoprolazni ili troprolazni protokol za proveru identiteta. Jednoprolazni protokol je namenjen za jedno obraćanje Alise Bobu. Utvrđuje se Alisin i Bobov identitet i integritet svih informacija koje Alisa prenosi Bobu. Ovaj protokol sprečava sve napade ponavljanjem tokom komunikacije. Digital Signature and Digital Certificates Ladislav Huraj
Protokoli za proveru identiteta U dvoprolazni protokol dodaje se i Bobov odgovor. Ovaj protokol osigurava da odgovor šalje Bob, a ne neki uljez. On takođe obezbeđuje tajnost obe komunikacije i sprečava napade ponavljanjem. I jednoprolazni i dvoprolazni protokoli koriste vremenske odrednice . U troprolazni protokol dodaje se još jedna poruka od Alise Bobu pa nisu potrebne vremenske odrednice (samim tim, registrovano vreme). Jednoprolazni protokol se odvija na sledeći način: n Alisa generiše slučajan broj, RA. n Alisa sastavlja poruku, M = (TA, RA, IB, d), gde je TA Alisina vremenska oznaka, IB je Bobov identitet, a d je proizvoljan podatak. Radi bezbednosti, podaci mogu da budu šifrovani Bobovim javnim ključem, EB. n Alisa šalje Bobu (CA, DA(M)). (CA je Alisin sertifikat, a DA je Alisin privatni ključ). n Bob verifikuje CA i dobija EA. On se uverava da ovim ključevima nije istekao rok važenja. (EA je Alisin javni ključ). n Bob koristi EA da bi dešifrovao DA(M). Na taj način, on verifikuje i Alisin potpis i integritet potpisanih informacija. n Bob proverava ispravnost IB u poruci M. n Bob proverava TA u poruci M i potvrđuje da je poruka aktuelna. n Postoji mogućnost i da Bob potraži RA iz poruke M u bazi starih slučajnih brojeva, kako bi se uverio da se ne radi o staroj poruci koja je ponovljena. brojeva, kako bi se uverio da se ne radi o staroj poruci koja je ponovljena. Digital Signature and Digital Certificates Ladislav Huraj
Protokoli za proveru identiteta Dvoprolazni protokol se sastoji od jednoprolaznog protokola, a zatim još jednog sličnog jednoprolaznog protokola od Boba ka Alisi. Posle izvršavanja prethodnih osam koraka, dvoprolazni protokol se nastavlja: n Bob generiše drugi slučajan broj, RB. n Bob pravi poruku M' = (TB, RB, IA, RA, d), gde je TB Bobova vremenska odrednica, IA je Alisin identitet, a d su proizvoljni podaci. Podaci mogu da budu šifrovani Alisinim javnim ključem, EA, radi bezbednosti. RA je slučajan broj koji je Alisa generisala u prvom koraku. n Bob šalje DB(M') Alisi. n Alisa koristi EB da bi dešifrovala DB(M'). Na taj način se verifikuje i Bobov potpis i integritet potpisanih informacija. n Alisa proverava ispravnost IA u poruci M'. n Alisa proverava TB u poruci M' i potvrđuje da je poruika aktuelna. n Postoji mogućnost i da Alisa proveri RB iz poruke M', kako bi se uverila da se ne radi o staroj poruci koja je ponovljena. Digital Signature and Digital Certificates Ladislav Huraj
Protokoli za proveru identiteta Troprolazni protokol radi istu stvar kao i dvoprolazni protokol, ali bez vremenskih odrednica. Koraci su identični kao u dvoprolaznom protokolu, ali je TA = TB = 0. n Alisa poredi dobijenu verziju RA s brojem RA koji je poslala Bobu. n Alisa šalje DA(RB) Bobu. n Bob koristi EA da bi dešifrovao DA(RB). Na taj način, on verifikuje i Alisin potpis i integritet potpisanih informacija. n Bob poredi dobijenu verziju RB s brojem RB koji je poslao Alisi. Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikat web stranice Za stranice na kojima korisnici unose korisničko ime, lozinku, broj kreditne kartice, i slično, potrebno je osigurati siguran transfer tih informacija sa računara korisnika do servera koji je tražio te podatke. Da bi se kreirala ta zaštita, podaci se šifruju. Na taj način, samo onaj kome su podaci namenjeni može dobiti korisnu informaciju, tj. može ih dešifrovati. Stranice koje osiguravaju transfer podatke imaju oznake: n Stranice koje počinju sa https: //; (stranice koje koriste sertifikate za zaštitu saobraćaja). n Simbol katanca – označava da je stranica zaštićena sertifikatom. Na internetu postoji mnogo stranica koje će zahtevati unos ličnih podataka (ime, prezime, adresa, telefon. . . ), da bi se pristupilo toj stranici, za kupovinu preko online prodavnica, otvaranja naloga za elektronsku poštu (google mail, yahoo mail, hotmail. . . ) itd. Vrlo je važno da u svakom trenutku znamo kome dajemo svoje podatke, odnosno da li možemo verovati toj stranici, da lične informacije ne budu zloupotrebljene. Iz tog razloga se koriste digitalni sertifikati. Digitalni sertifikat, omogućava jednoj strani u komunikaciji, da se uveri u stvarni identitet druge strane i obrnuto. Što se tiče interneta, one stranice koje zahtevaju lične podatke, u većini slučajeva koriste digitalne sertifikate koje su nam date na uvid da se uverimo u pravi identitet te stranice. Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikat web stranice Takođe, takve stranice koriste sertifikate i za enkripciju saobraćaja između nas i te osobe ili ustanove ili preduzeća, što znači da naše podatke ni jedan zlonamernik ne može „presresti” i pogledati. Ako kliknemo na simbol katanca koji označava zaštićenu stranicu digitalnim sertifikatom, dobićemo dodatne informacije o sertifikatu: ko potvrđuje identitet stranice (ime stranice), informaciju o tome da je konekcija sa serverom zaštićena. Ako kliknemo na opciju View Certificates dobićemo još detaljniji pregled sertifikata: Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikat web stranice Šta znači informacija „Koje je sertifikaciono telo izdalo sertifikat” (engl. Issued by)? Na slici stoji da se sertifikaciono telo koje je izdalo sertifikat zove „Web. Money Transfer Root Authority”. Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikat web stranice Internet explorer koji je instaliran kao deo operativnog sistema, ima na sebi već definisanu listu izdavača sertifikata kojima veruje (Trusted Publishers), a jedan od njih je i ovaj navedeni. To znači da će naš Internet Explorer prihvatiti prikazani sertifikat kao validan, tj. sa datom stranicom možemo komunicirali bez bojazni da će nam neko ukrasti podatke koje upisujemo na stranicu. Ako otvaramo neku stranicu sa sertifikatom, a Internet Explorer u svojoj listi nema informaciju o izdavaču tog sertifikata, on će nas automatski obavestiti da mu izdavač sertifikata nije poznat i da je pristup takvoj stranici rizičan. Naravno, može se i nastaviti sa pristupom, ali se ne preporučuje ukoliko nismo apsolutno sigurni o kojoj je stranici reč, te da prihvatimo sertifikat koji nije ugrađen u Internet Explorer. Digital Signature and Digital Certificates Ladislav Huraj
Digitalni sertifikat web stranice Poruka sa slike govori o tome da sertifikat ove stranice nije izdat od sertifikacionog tela kome Internet Explorer veruje, odnosno ne nalazi se u listi „Trusted Publishers”. Ako se radi o stranici za koju sigurno znamo kome pripada (npr. preduzeću u kom radimo), obavezno kontaktiramo administratora web stranice ili kliknimo na opciju Continue to this website (not recommended). Digital Signature and Digital Certificates Ladislav Huraj
Unakrsni-sertifikati n n n Posedovanje jednog CA je nerealno – Ne postoji ni jedan entitet koji svakome sve veruje Rešenje je posedovanje višestrukih CAova. Unakrsni sertifikati – sertifikati se koriste da se uspostavi poverljiva veza između dva sertifikata autorizacije. Unakrsni sertifikat je sertifikat koji je izdao jedan CA drugom CA koji sadrži CA ključ kome se pridružuje CA potpis. Obično se unakrsni sertifikati koriste da dozvole krajnjem entitetu u jednom CA da komunicira sigurno sa krajnjim entitetom u drugom CA. CA EE Cross Certificate model CA EE CA CA EE EE EE Cross Recognition model Digital Signature and Digital Certificates BCA CA Bridge CA model Ladislav Huraj
Sigurni sloj u protokolu Secure Sockets Layer (SSL) Prenosi sigurni nivo do TCP zasnovanog protokola korišćenjem SSL servisa. n Koristi se između Web brousera, servera za etrgovinu. n Sigurnosni servisi: – Autentifikacija servera – Šifrovanje podataka – Autentifikacija klijenta n HTTP FTP n Autentičnost servera: – SSL-omogućava brouseru da sadrži javne ključeve poverljivih CAova. – Brousert zahteva sertifikat za server iydat od strane poverljivog CA. – Brouser koristi Caov javni ključ da izvuče javni ključ servera iz sertifikata. NNTP and so on …. . Secure Socket Layer Application Network Layer TCP/IP Layer Digital Signature and Digital Certificates Ladislav Huraj
SSL se koristi za kreiranje sigurnih veza između korisnika i web strane na internetu. n Koristi digitalne sertifikate za autentifikaciju identiteta učesnika uključenih u transakciju. Šifrovane SSL sesije: n Brouser generiše symetrični ključ sesije, šifruje ga javnim ključem servera i šalje šifrovani ključ serveru. n Korišćenjem privatnog ključa, server dešifruje ključ sesije. n Brouser, server znaju ključ sesije – Svi podaci se šalju TCP protokolu (od strane klienta ili servera) šifrovani ključem sesije. n Digital Signature and Digital Certificates Ladislav Huraj
- Slides: 27