220 likes | 338 Views
U potreba kriptografije sa javnim ključem. U potreba kriptografije sa javnim ključem. Tajnost Prenošenje podataka po nebezbednim kanalima Bezbedno memorisanje podataka na nebezbednim medijima dia Aut entifikacija ( biće reči kasnije )
E N D
Upotreba kriptografije sa javnim ključem • Tajnost • Prenošenje podataka po nebezbednim kanalima • Bezbedno memorisanje podataka na nebezbednim medijimadia • Autentifikacija (biće reči kasnije) • Digitalni potpis koji omogućava integritet i neporecivost (non-repudiation) • Nema servisa neporecivosti sa simetričnim ključem
Neporecivost • Alisaizdaje nalog za kupovinu 100 akcija od Boba • Alisa izračunavaMACkorišćenjem simetričnog ključa • Akcije padaju, Alisatvrdi da ih nije naručila • Da li Bob moće da dokaže da je Alisa izdala zahtev za kupovinu akcija? • Ne!Pošto Bob takodje zna simetričan ključ, mogao je da falsifikuje poruku • Problem: Bob zna da je Alisa izdala zahtev za kupovinu akcija,ali to ne moće da dokaže
Neporecivost • Alisa izdaje nalog za kupovinu 100 akcija od Boba • Alisapotpisuje nalogsvojim privatnim ključem • Akcije padaju, Alisa tvrdi da nije dala nalog za kupovinu • Da li Bob može da dokaže da je Alisaizdala nalog? • Da!Samo neko ko poseduje Alisin privatni ključ je mogao digitalno da potpiše nalog • Podrazumeva se da Alisin privatni ključ nije ukraden (problem povlačenja - revocation problem)
Notacija sistema javnog ključa • Potpisatiporuku M sa Alisinimprivatnim ključem: [M]Alisa • Šifrovatiporuku M sa Alisinimjavnim ključem: {M}Alisa • Tada važi: {[M]Alice}Alice = M [{M}Alice]Alice = M
Tajnost i neporecivost • Pretostavimo da su nam potrebni i tajnost i neporecivost • Da li sistemi sa javnim ključem obezbedjuju obea zahteva? • Alisa šalje poruku Bobu • Potpisati i šifrovti {[M]Alice}Bob • Šifrovati pa potpisati [{M}Bob]Alice • Da li redosled igra ulogu?
Digitalno potpisati i poslati • M = “I love you” {[M]Alice}Bob {[M]Alice}Charlie Bob Charlie Alice • Q: What is the problem? • A: Charlie misunderstands crypto!
Šifrovati i potpisati • M = “Moja teorija, koju sam ja smislio….” [{M}Bob]Alice [{M}Bob]Charlie Bob Alice Charlie • Primetimoda Charlie ne može da dešifruje M • Q:Šta je problem? • A: Bob pogrešno razume kriptogram!
Sertifikati javnih ključeva • Sadrži ime korisnika i njegov javni ključ (i po potrebi i druge informacije) • Sertifikat je digitalnopotpisan od strane izdavača, koji istovremeno garantuje validnost • Potpis na sertifikatu se verifikuje pomoću javnog ključa izdavača sertifikata
Sertifikacioni autoritet • Sertifikacioni autoritet (Certificate authority - CA) je treća strana od poverenja (TTP) koja izdaje i potpisuje sertifikate • Verifikacijom potpisa na sertifikatu se istovremeno verifikuje identitet vlasnika odgovarajužeg privatnog ključa • Verifikacijom potpisa se ne verifikuje identitet izvora sertifikata! • Sertifikati su javni! • Veliki problem nastaje kada Sertifikaciono telo napravi grešku (CA izda nekom drugom već izdati Microsoftov sertifikat!) • Zajednički format za sertifikate je standard X.509
PKI • Infrastruktura javnog ključa (Public Key Infrastructure - PKI) se sastoji od svih podsistema naophodnih za bezbedno korišćenje kriptografije sa javnim ključevima • Generisanje i upravljanje ključevima • Sertifikaciono telo (CA) • Povlačenje sertifikata (CRLs), i td. • Ne postoji opšti standard za PKI • Razmotrićemo nekoliko “modela poverenja”
PKI modeli poverenja • Monopolski model • Jedinstvena organizacija od poverenja je CA za sve korisnike • Favorisan je od strane VeriSign (iz razumljivih razloga) • Veliki problem je ako se takav CA ikad kompromituje • Veliki problem je ako se takvom CA ne veruje!
PKI modeli poverenja • Oligarhijski model • Višestruka sertifikaciona tela • Ovaj model se danas koristi u brauzerima • Brauzer može imati i do 80 ili više sertifikata, samo da bi se verifikovao jedan digitalni potpis! • Korisnik sam odlučuje kojim Ca će verovati
PKI Trust Models • Anarhijski model • Svako pojedinačno je CA! • Korisnik sam odlučuje kojim “CA” će verovati • Ovaj pristup se koristi u PGP (Web od poverenja) • Zašto se ovaj model naziba “anarhijski model”? Pretpostavimo da je sertifikat potpisan od strane Franka i da ja ne poznajem Franka, ali ja verujem Bobu i Bob kaže da je Alisa od poverenja i da ona garantuje za Franka. Da li ja treba da verujem Franku? • Postoje mnogi drugo modeli poverenja za PKI
Simetrični ili Javni ključevi • Prednosti simetričnih ključeva • Brzina • Nije potrebna PKI • Prednosti javnih ključeva • Digitalni potpisi (servis neporecivosti) • Nema potrebe za deljenjem tajni
Podsetnik za oznake • Oznake u vezi sa javnim ključevima • Poruka M potpisana Alisinimprivatnim ključem • [M]Alice • Poruka M šifrovana Alisinimjavnim ključem • {M}Alice • Oznake u vezi sa simetričnim ključevima • Otvoreni tekst P šifrovan simetričnim ključem K • C = E(P,K) • Dešifrovanje šifrata C simetričnim ključem K • P = D(C,K)
Poverljivost u praksi • Hibridni kriptosistem • Ustanovljavanje simetričnog ključa pomoću sistema javnih ključeva • Šifrovanje podataka simetričnim ključem • Razmotrimo sledeću šemu {K}Bob E(Bob’s data, K) E(Alice’s data, K) Alice Bob • Da li je Bob siguran da komunicira sa Alisom?