700 likes | 912 Views
UNIVERZITET SINGIDUNUM Fakultet za primenjenu informatiku. VEŽBA 8: PKI SISTEM -Asimetrična kriptografija- Docent dr Gojko Grubor, dipl.inž.el. FUNKCIONALNOSTI KOMPONENTI (MODULA) PKI SISTEMA ARHITEKTURA PKI SISTEMA. FUNKCIONALNOSTI KOMPONENTI (MODULA) PKI SISTEMA.
E N D
UNIVERZITET SINGIDUNUM Fakultet za primenjenu informatiku VEŽBA 8: PKI SISTEM -Asimetrična kriptografija- Docent dr Gojko Grubor, dipl.inž.el.
FUNKCIONALNOSTI KOMPONENTI (MODULA) PKI SISTEMA ARHITEKTURA PKI SISTEMA
FUNKCIONALNOSTI KOMPONENTI (MODULA) PKI SISTEMA
Infrastruktura sa javnim ključem (PKI-Public Key Infrastructure) • Poznata i kao asimetrična kriptografija (Pk, Tk) • Koherentna implementacija T, O i U komponenti zaštite, • Jedna od najbitnijih komponenti zaštite OSI RM: • obuhvataju veći broj korisnika od simetrične Kz • delimično rešava problem distribucije ključa kod simetrične Kz • obezbeđuje okvir za: • protokole zaštite transakcija i • implementaciju funkcionalnih servisa • Glavni problem PKI sistema je uspostavljanjepoverenja korisnika u povezanost Pk i nominalnog vlasnika: • uobičajen način za povezivanje Pk sa njihovim vlasnicima je pomoću digitalnog sertifikata (DS)
Infrastruktura sa javnim ključem- servisi, mehanizmi- • PKI servisi zaštite:tajnosti, integriteta, neporecivosti i jake autentifikacije • PKI funkcionalni servisi:digitalni potpis, bezbednost el. transakcija • Kz mehanizmi: • osnovni za PKI sistem i bezbednost RM OSI sistema • obezbeđuju najveći stepen integracije (GAISP) • Primena: različiti sistemi el. transakcija, zaštićeni e-mail servisi, sistemi el. plaćanja, zaštita softverskih aplikacija i mrežnih komunikacija,digitalni potpis,...
OPŠTI ZAHTEVI ZA PKI SISTEM- Opšte karakteristike- • standardizovan - realizovan u skladu sa važećim svetskim standardima, primenjeni X.509v3 standard za DS i X.509v2 za liste opozvanih sertifikata (CRL) i PKCS standardni format za podnošenje zahteva za DS (CR) • adaptivan - modularna realizacija, skalabilan i fleksibilan (nadogradiv i prilagodljiv potrebama korisnika) • bezbedan - primena najnovijih rezultata iz oblasti generisanja kriptografskih ključeva i primene kriptografskih algoritama
Osnovni funkcionalni zahtevi za PKI 1. Da izdaje DS u skladu sa potrebama i politikom sertifikacije (CP) 2. Da ima kapacitete (ljude, procese, tehnologiju..) za: • izdavanja DS • obnavljanje DS • povlačenje pre roka važnosti DS • bezbednu distribuciju DS • dostupnost svim korisnicima • registraciju svih akcija za generisanje, opoziv i obnovu DS
Optimalna organizacija PKI sistema 1. nivo:Rut server DS čiji je Tk - privatni ključ cele strukture i centralni faktor poverenja: • najosetljivija je tačka sistema i zahteva najveće mere zaštite 2. nivo: 1 ili više posredničkih servera za DS: • ostvaruju veze između j 1. i 3. nivoa OSI sistema, • povećavaju fleksibilnost i robusnost strukture • u manjim PKI sistemima obično se izostavlja 3. nivo: Izdavački serveri (može ih biti više): • izdaju DS klijentima (krajnjim korisnicima)
Osnovni funkcionalni moduli PKI-1 • Sertifikaciono telo - CA (Certification Authority) • Telo za registraciju - RA (Registration Authority) i • Imenik (Directory) - X500, ili LDAP-(Lighweight Directory Access Protocol) za skladištenje i izvlačenje informacija o sertifikatima
Izborni funkcionalni moduli-2 • HSM - hardversko softverski moduli, • Smart kartice i tokeni za bezbedno skladištenje Kz informacija • Kz akceleratori za ubrzavanje performansi • OCSP (On-line Certification Status Protocol) - u realnom vremenu, • Programi za validaciju transakcija i drugi programi za podršku • Server za arhiviranje(AS) • E-mail, VPN, Web gejtvej • WebRAO • WebRAO Server • Menadžer tokena
Odgovornosti CA-1 1. Upravlja i administrira PKI sistemom 2. Komponenta zaštite za izdavanje i upravljanje DS, najznačajnija i najteža za implementaciju: • generiše, distribuira, opoziva i ukida DS • potpisuje DS i daje statusne informacije o DS • sadrži U, O i T procese • uspostavlja poverenje u DS korisnika: mera poverenja zavisi od zrelosti procesa CA za verifikaciju identiteta lica kojim se DS izdaje • dokumentuje procese i praksuu CPS (Certificate Practice Statement) – Izjavi o praksi sertifikacije • dokumentuje pravila i ograničenja korišćenja DS u CP (Certificate Policy) - Politika sertifikacije
Odgovornosti CA-2 • Digitalno potpisuje kvalifikovani sertifikat (KDS) • „Kvalifikovani elektronski potpis“ - u standaradima EU za DP, specifično odražava DS u sistemu e-Uprave, izdat da obezbedi neporecivost u poverljivim transakcijama • Zahtev za poverenje i akreditaciju sertifikata u skladu sa nacionalnom regulativom (Zakon o el. potpisu) • KDS se izdaje zajedno sa uređajem za formiranje bezbednog DS (npr. smart kartica) • Izdat sertifikat može se koristiti samo sa podrškom za kvalifikovani DS
Osnovna organizacija CA • Modul za generisanje i upravljanje sertifikatima (CAO) • RA i RAO modul za procesiranje zahteva preko WEB portala CA... • Modul za generisanje ključeva (GK) • Modul za personalizaciju (PSM) • baza podataka RA • baza podataka CA
Funkcionalni zahtevi za CA-1 • od RA i CAO prihvata potvrđene CR za generisanjem/povlačenjem DS • isporučuje DS i potvrdne poruke • dostavlja korisnicima par ključeva za šifrovanje, označenih da se arhiviraju • digitalno potpisuje (DP) DS podređenih CA • DP DS drugih CA (cross-certification) • DP i publikuje CRL (Certificate Revocation List) i ARL (Authority Revocation List) • DP sve informacije objavljene u formi CRL i ARL • DP sve poruke koje CA šalje
Funkcionalni zahtevi za CA-2 • verifikuje autentičnost i integritet svih poruka • šifruje sve poruke u PKCS#7 formatu • DP i arhivira podatke i log fajlove u b/p potpisuje sve arhivirane informacije • publikuje DS, CRL i druge parametare na LDAP/X.500 direktorijumu • generiše par asimetričnih ključeva za CA (sebe) i CAO • podržava Intel-Windows aplikacije • podržava različite hw elemente: smart k. za krajnje korisnike, HSM i drugi tokene • podržava korišćenje DAP i LDAP mehanizama
Funkcionalni zahtevi za CA-3 • obezbeđuje višestruko gener. parova asim. ključa • podržava promenljivo vreme publikovanja CRL • podržava OCSP servise • podržava čitavu paletu simetričnih i asim. ključeva • podržava asim. algoritme: RSA, DSA i ECDSA • opciono– odgovora za publikaciju CRL na OCSP • opciono - proverava jedinstvenost Dname i Pk DS • opciono- može imati individualni par ključeva za: • digitalno potpisivanje DS, • digitalno potpisivanje CRL, • šifrovanje podataka, • šifrovanje ključa
Funkcionalni zahtevi za CAO-1 • prosleđuje potvrđene zahteve za izdavanjem DS CA • smešta zahteve za povlačenjem sertifikata u b/p CA • kreira/održava politike (CP/CSP) i procedure rada CA i RA • dinamički ažurira (dostavlja do RAO) nove verzija politike CA/PKI • povlači svaki sertifikat • razvija PKI s., dodaje nove module/aplikacije, daje privilegije • generiše (sim. i asim.) Kz ključeve za korisnike • DP sve poruku koje se šalju od strane CAO
Funkcionalni zahtevi za CAO-2 • verifikuje potpisane poruke koje CAO prima • šifruje u PKCS#7 formatu sve podatake od CAO • arhivira i DP sve podatake u bazi podataka CA • podržavaIntel-Windows aplikacije • podržava različite hw elemente: smart, HSM i drugi tokene • poseduje grafički interfejs, jednostavan za korišćenje • procesira DS i CRL • može imati različite nivoe privilegija
Funkcionalni zahtevi za RA • prosleđuje potvrđene zahteve za izdavanjem/povlačenjem DS, dobijene od RAO • dobija DS i potvrdne poruke od CA i dostavlja ih RAO-u • prosleđuje do RAO zahteve za izdavanjem/povlačenjem DS (preko gejtveja) • DP/verifikuje sve poslate/DP primljene poruke • šifruje (PKCS#7) sve poruke koje se razmenjuju preko RA • DP sve podatke i log fajlove i arhivira u b/p RA • podržava različite hw elemente: smart, HSM i druge tokene • automatski potvrđuje (DP) sve udaljene zahteve (gejtveja) bez RAO
Funkcionalni zahtevi za RAO • prima CR za DS od gejtveja preko RA, (ili kreira u ličnom kontaktu) • potvrđuje/odbija CR za izdavanjem DS od korisnika (lično, e-mail..) • šalje do RA potvrđene zahteve za izdavanjem/povlačenjem DS • generiše asim. par ključeva za korisnika u sw ili na HSM • DP/verifikuje sve poslate/DP primljene poruke • šifruje (PKCS#7) sve poruke koje se razmenjuju preko RAO • DP sve podatke i log fajlove i arhivira u b/p RA • podržava Windows aplikacije i različite hw elemente: smart, HSM, tokene • poseduje grafički interfejs jednostavan za korišćenje
Funkcionalnosti GK i PSM 1. Funkcionalnost GK: • prima zahteve od CAO za generisanje ključeva • generiše slučajni asimetrični par javnog (p/k) i tajnog ključa (t/k) (npr., za algoritam RSA - velike slučajne proste brojeve) 2. Funkcionalnost PSM: • prima zahtev od CAO • priprema odgovarajući medijum (token ili smart karticu), inicijalizuje i formatira sa korektnim mapiranjem za upis novog sadržaja DS • programira kartice sa svim podacima datog korisnika (PIN kod, digitalni sertifikat, asimetrični i simetrični ključevi) • očitava serijski broji kartice i pridružuje personalnim korisničkim podacima u registracionoj bazi CA
Funkcionalnosti kriptografskog API • realizuju kriptozaštitu na aplikativnom nivou sa različitim stepenima i nivoima zaštite • vrši autentifikaciju korisnika za pristup aplikaciji (tzv. sign-on funkcija) • odjavljuje korisnika (sign-off) • digitalno potpisuje (digital signature) • verifikuje digitalni potpisi (verify) • šifruje (encrypt) • dešifruje (decrypt)
Funkcionalnost kriptografskog koprocesora • kontrola tastature (tastatura se priključuje direktno na modul) • kontrola čitača smart kartica (čitač smart kartica se priključuje direktno na modul, a ne na odgovarajući port računara) • hardverski generator slučajnih brojeva • pouzdani časovnik tačnog vremana
Digitalni sertifikati (DS)-1 • mehanizam za pouzdano pridruživanje datog para brojeva (Pk, Tk) identitetu nekog subjekta, • ekvivalentan nekoj vrsti “digitalne LK” ili “digitalnog pasoša” • Mogu se primenjivati za: • verifikaciju DP, • kontrolu pristupa subjekata Kz aplikacijama i • proceduru jake autentikacije
Digitalni sertifikat (DS)-2 • Mehanizam za uspostavljanje identiteta, neophodan za autentifikaciju korisnika i poruka • Mora biti lak za lociranje i autentifikaciju i usaglašen- standardizovan (X.509) • Generalno - mali dokument koji sadrži Pk subjekta • Može imati standardni format (npr. X.509), a ne mora: • DS identiteta - za zaštitu identiteta principala • DS atributa - kodira org./grupni kredibilitet, nivo i obim obuke.. • DSovlašćenja - kodira delegiranje i restrikcije ovlašćenja • DSuslovakorišćenja - kodira npr. troškove, atribute uloga, lične karakteristike i sl.
Struktura ITU X.509 v3 DS-3 1. deo: podaci značajni za identifikaciju DS (promenljiva tbsCertificate), 2. deo: predstavlja identifikator algoritma za potpisivanje (promenljiva signatureAlgorithm) 3. deo: sam digitalni potpis (promenljivasignature)
Promenljiva tbsCertificate -3-1 1. Deo • Validnost DS– period važnosti: • početak važnosti sertifikata (Valid From), • Kraj važnosti sertifikata (Valid To). • Vlasnik DS(Subject) –ime vlasnika DS kome se pridružuje Pk: • Ime vlasnika DS, odelenje u org., org., mesto, e-mail, region u državi, oznaka države • Verzija (Version) –1,2 i 3, • Serijski broj (Serial Number) – jedinstven redni broj izdatog DS
Promenljiva tbsCertificate -3-1 • Ime izdavača DS (Issuer) - identifikuje CA: • ime CA (commonName), • ime odelenja u organizaciji (organizationalUnitName), • organizacija (organization), • mesto (localityName), • elekronska adresa (emailAddress), • region ili republika u okviru države (stateOrProvinceName), • oznaka države (countryName)
Promenljiva tbsCertificate -3 • Javni ključ (Public Key) – Pk vlasnika DS i identifikator algoritma za koji je namenjen (RSA, DSA, ECDSA) • Dodatne informacije (Extension) –critical, noncritical: • identifikatorePk za proveru DS, namenu Pk, uslovi kreiranja i korišćenja DS, alternativna imena CA i vlasnika DS • ako aplikacija koja koristi DS pronađe CRITICAL i ne prepozna je, mora odbaciti DS kao neispravan;
PromenljivasignatureAlgorithm 2. Deo: • Identifikator algoritma DP(SignatureAlgorithm) - (RSA, DSA,...) i hash funkcije (MD5, SHA1, SHA2,..) za generisanje DP CA
Promenljiva signature • 3.Deo: • Digitalni potpis (Digital Signature) DS od strane CA
Proces dobijanja DS-1 1. Procedura: • Korisnik dostavlja određenom CA – DP zahtev za izdavanje DS - CR (CertificateRequest) • Korisnik digitalno potpisuje CR za zaštitu integriteta • CA proverava autentičnost dobijenog CR sa Pku njemu • CA digitalno potpisuje CR i arhivira ga sa svim podacima o korisniku za DS i njegovim Pk • CA dodeljuje DS korisniku
Proces dobijanja DS-2 2. Vrsta zahteva za DS (CR): 1. RFC 2511 2. PKCS#10 (jednostavniji) PKCS#10sadrži 4 polja: • broj verzije formata zahteva (od 1 do 3), • naziv vlasnikaDS (DistinguishedName - Dname), (2-slovni niz za državu, region, e-mail, firma, odeljenje, ime vlasnika DS) 3. Pkvlasnika DS, 4. atributi (broj tel., faksa, e-mail, najviša finansijska transakcija i dr.)
Digitalni/kriptografski potpis (DP) • Analogan hologramskom (ručnom) potpisu • Digitalno potpisan (DP) dokument - osigurava autentičnost • Tipičan proces DP: šifrovanje “hash-a” dokumenta/potpisa sa Tk autora • Hash funkcija jednosmerna, otisak dokumenta, garantuje da se dokument ne može promeniti bez promene hasha • Šifrovanjem hasha sa autorovim Tk osigurava da je samo autor mogao kreirati ili izmeniti dokument • Ovaj proces zaštite integriteta - naziva se digitalni potpis (DP) • DPne obezbeđuje: • zaštitu poverljivosti dokumenta, • izmenu sadržaja dokumenata • obično se dodaje čistom tekstu dokumenta
KONCEPTI PKI ARHITEKTURE -Organizacija CA- • Osnovna arhitektura • Hijerarhijska arhitektura • Mrežna arhitektura • Tranziciona arhitektura (BCA-Bridge Certification Authority)
1. OSNOVNA STRUKTURA PKI Struktura • Jedan CA odgovoran za sve PKI servise: • Izdavanje i opoziv DS, informacije o statusu DS i.t.d. Prednosti: • Jedna tačka poverljivosti (javni ključ CA) • Veća operativnost za manje zajednice korisnika • Niski troškovi uspostavljanja Nedostaci: • Niska bezbednost-kompromitacija Tk CA ugrožava sve korisnike • Oporavak arhitekture spor i skup (opozivanje i resertifikacija svih korisnika)
2. HIJERARHIJSKA STRUKTURA PKI-1 • Uspostavljeno rut CA - ne mora nužno biti na vrhu hijerarhijske arhitekture PKI • Hijerarhijska struktura odnosa CA • Svi korisnici veruju u rut CA, koji smanjuje rizik • Rut CA izdaje DS podređenim CA (manji broj) • Podređeni CA izdaju DS 3. nivou CA (veći broj), ili korisnicima (u redukovanoj arhitekturi) • Sertifikacioni put počinje sa javnim ključem (Pk) rut CA • Put poverljivosti je jednosmeran (od rut CA na dole) • Podređeni CA ne izdaje sertifikat rut CA
HIJERARHIJSKA STRUKTURA PKI-2-Prednosti- • Jednostavna struktura, jednosmeran put poverljivosti, centralno upravljanje • Sertifikat je manji i jednostavniji 1. Skalabilna struktura: • rut CA iz PKI 1 može se povezati za rut CA iz PKI 2 ili podređeni CA iz PKI 2 2. Sertifikacioni put je jednostavan i lako se razvija 3. Sertifikacioni put je relativno kratak – najduži put = dubini stabla + 1 4. Korisnici iz sadržaja DS implicitno znaju za koje se aplikacije sertifikat može koristiti
HIJERARHIJSKA STRUKTURA PKI-3-Nedostaci- • Oslanjanje na jednu tačku poverljivosti • Kompromitacija rut CA ugrožava celu PKI • Ne postoji neposredna procedura tehničkog oporavka • Sporazum nekih korisnika samo sa jednim rut CA može biti politički onemogućen • Tranzicija od seta izolovanih CA logistički nepraktična (korisnici moraju modifikovati svoje poverljive puteve) • Manja operativnost u odnosu na osnovnu arhitekturu
3. MREŽNA STRUKTURA PKI-1 • Pojedinačni CA međusobno direktno povezani • Svi CA su poverljive tačke • CA izdaju sertifikate jedni drugima • Poverljivi put je dvosmeran • Svi CA međusobno razmenjuju sertifikate (unakrsna-sertifikacija) • Ove sertifikate izdaje jedan CA koji poseduje privatni ključ (Tk), a Pk se prosleđuje svim CA u mreži • Unakrsnim sertifikatima veruju svi CA u mreži
MREŽNA STRUKTURA PKI-2- Prednosti- • Visoka pouzdanost i bezbednost: • više alternativnih sertifikacionih puteva • više tačaka poverenja • kompromitacija jednog CA ne ugrožava PKI arhitekturu (opoziva se i uklanja iz PKI) • Visoko uzajamno poverenje (kao u osnovnoj arhitekturi) • Lakša skalabilnost sa novom zajednicom korisnika • Skalabilnost je prednost, ali i nedostatak • Oporavak je lak – pogađa manje korisnika • Lakše povezivanje izolovanih CA – korisnici ne menjaju svoje poverljive puteve
MREŽNA STRUKTURA PKI-3- Nedostacii- Visoki troškovi uspostavljanja Poverenje ne mora biti bezuslovno: CA može ograničiti poverenje specifikacijom ovih ograničenja u sertifikatu Maksimalna dužina sertifikacionog puta – broj CA u mreži Sertifikacioni put kompleksniji, izgradnja poverljivog puta neodređena Oporavak teži i kompleksniji (mogućnost stvaranja beskonačne petlje sertifikata) Aplikacija sertifikata određuje se na bazi sadržaja (ne lokacije CA u PKI) Zahteva veće i kompleksnije sertifikate i kompleksnije procesiranje sertifikacionog puta
KONCEPT TRANZICIONOG CA-1(BCA – Bridge Certification Authority) Glavni kriterijumi: • Integrisanje postojećih arhitektura bez bitnih modifikacija istih • Zahtev za uspostavljanje najlakšeg puta za sticanje poverenja u DP poruke korisnika • Zahtev za globalnom interoperabilnosti nacionalnih PKI • Relativna izolovanost i kompleksnost prva tri modela za globalnu konfiguraciju • Teškoće jasnog definisanja rut CA u složenoj hijerarhijskoj arhitekturi • Visoka kompleksnost mrežne arhitekture za složene PKI sisteme • BCA kritičan faktor uspeha interoperabilnosti globalnih PKI
KONCEPT TRANZICIONOG CA-2-Struktura- 1 • Mrežna arhitektura sa habom za druge PKI arhitekture • Hijerarhijska arhitektura sa spoljnom vezom • Ne izdaje sertifikate direktno korisnicima • Nije poverljivi entitet za korisnike PKI • Poverenje se prenosi prema modelu zvezde • BCA fleksibilan mehanizam koji povezuje različite PKI arhitekture • Korisnici koriste svoje vlastite CA (i svoje samopotpisane) kao poverljivu tačku umesto manje poznatog rut CA • Poverenje se gradi sa vlastitim CA kroz BCA • BCA je centar poverenja i može da: • Izdaje sertifikate glavnim CA (principalima) (“a la rut CA”) • Ne izdaje uopšte sertifikate, nego listu poverljivih CA Primer: EU BridgeCA, Nemačka banka, Telekom i TeleTrust
KONCEPT TRANZICIONOG CA-3-Struktura 2- 1.BCA izdaje sertifikate glavnim CA: • Sertifikat glavnih CA potpisan sa javnim ključem BCA • Pk BCA objavljen na sajtu BCA • Korisnici tipično znaju put do BCA i treba da odrede put od BCA do korisnika sertifikata • Dužina sertifikacionog puta duplo je veća od hijerarhijske arhitekture • Decentralizovana struktura BCA mnogo preciznije modeluje realne odnose organizacija 2. BCA ne izdaje sertifikate: • Umesto sertifikataBCA izdaje listu poverljivih CA (TL) • TL je potpisana lista informacija o CA i statusu (Italijanski std. ETSI TS102 231 za harmonizaciju statusnih informacija o CA) • Korisnici mogu sami odlučiti kojem CA da veruju
KONCEPT TRANZICIONOG CA-Prednosti i nedostaci- Prednosti: Oporavak poverljivog puta lakši nego u mrežnoj arhitekturi, a teži nego u hijerarhijskoj • Krajnji korisnici mogu koristiti postojeće sertifikate (do opoziva) i nemaju promena konfiguracija Nedostaci: • Korisnici BCA sertifikata sami moraju uspostaviti hw/sw (win explorer) infrastrukturu za BCA sertifikate • Treba uspostaviti poslovne procese, usvojiti korišćenje DS i obučiti korisnike • BCA ne rešava potrebu za detaljnijim informacijama o statusu CA – rešenje modifikovani BCA sa poverljivom listom CA
PROFIL TIPIČNOG CA (EU) • CA –ovlašćeni autoritet za izdavanje digitalnog sertifikata • (EU): Privredne komore (P/K)– pretpostavljeni autoriteti za akreditaciju CA • P/K potpisuju ugovore sa svim akreditovanim CA • Obavezna kontrola usaglašenosti procesa CA • CA može angažovati: • sertifikacionog proizvođača (Certificate Manufacturer)-CM • registracioni entitet (RA) • Obaveze CM i RA: • Funkcionalne politike za registraciju, identifikaciju, autentifikaciju, sertifikaciju proizvođačkih funkcija, sertifikaciju repozitorija