210 likes | 368 Views
PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI. profesor : dr Zoran Ognjanović student: Branko Kalanović 213/07. Sadržaj predavanja. Kriptologija Kriptološki sistemi Primer sistema sa tajnim ključevima S igurnost kodiranja J ednosmerne funkcije Primer sistema sa javnim ključevima (RSA).
E N D
PRIMENA TEORIJE SLOŽENOSTIU KRIPTOLOGIJI profesor: drZoranOgnjanović student: BrankoKalanović213/07
Sadržajpredavanja • Kriptologija • Kriptološkisistemi • Primer sistemasatajnimključevima • Sigurnost kodiranja • Jednosmerne funkcije • Primer sistemasajavnimključevima (RSA)
Kriptologija Trakaobmotanaokoštapa • staraGrčka • jedanodnajstarijih tipovakriptološke zaštite
Kriptologija Enigma • Nemačka • elektro-mehanika • od 1920. do krajaDrugogSvetskog Rata
Kriptologija Smart kartice • digitalnodoba • savremenisistemi • čipza izračunavanje kriptološkihalgoritama
Kriptološkisistemi • A i B – učesnici komunikacije • P – prisluškivač • x – poruka • e – ključ kodiranja • d – ključ dekodiranja • E – funkcija kodiranja • D – algoritam dekodiranja • D(d,E(e,x))=x D i E su inverzne u odnosu na ključeve e i d, radi bolje efikasnosti enkripcije bi trebalo da su polinomijalne složenosti.
Kriptološkisistemi Primer sistemasatajnimključevima • Uzmimo za E i D sabiranje po modulu 2 • Neka je e=d=a i |a|=|x|- binarna reč iste dužine kao i poruka koja se prenosi D(a,E(a,x))=(x*a)*a=x E(a,x)*x=(x*a)*x=a • Obezbeđena je inverznost funkcija D i E, kao i da se x može izračunati ako i samo ako se zna a NAPOMENA – simbol * se koristi kao ekskluzivna disjunkcija (ekskluzivno ili)
Kriptološkisistemi Primer sistemasatajnimključevima Problemi: • razmena ključa koji treba da ostane tajan, pre početka komunikacije, i koji je iste dužine kao i poruka • napadi (razbijanje tajnog ključa) • kratak ključ – pretraga kroz sve moguće ključeve • isti ključ se koristi više puta – analize mogućeg ključa
Kriptološkisistemi Sigurnost kodiranja • Teorijski, upotrebom ključa umerene dužine, kodiranje nije apsolutno sigurno • praktična sigurnost se dobija upotrebom ključa dužine 100 bita – ključ se ne može brzo otkriti • teorija složenosti izračunavanja se koristi za utvrđivanje sigurnosti koda • za probleme iz klase NP-kompletnih nema efikasnog načina izračunavanja
Kriptološkisistemi Sigurnost kodiranja • svođenjem NP-kompletnog problema na problem razbijanja ključa utvrđujemo složenost tog problema • nedovoljan dokaz, jer se NP-kompletnost odnosi na analizu najgoreg slučaja • neki NP-kompletni problemi se mogu lako rešiti • primenjiviji su algoritmi koji su složeni u odnosu na prosečan slučaj (faktorizacija prirodnih brojeva)
Kriptološkisistemi Jednosmerne funkcije Funkcija je jednosmerna ako važi: • je 1 – 1 funkcija • je polinomijalne složenosti • za svako x je najviše polinomijalno duže ili kraće od • nije polinomijalne složenosti
Kriptološkisistemi Jednosmerne funkcije • pripada klasi NP – za svaki i izabrani u polinomijalnom vremenu proverava • pretpostavka P=NP – jednosmerne funkcije ne postoje • pretpostavka P NP – dozvoljava ali ne garantuje postojanje jednosmernih funkcija
Kriptološkisistemi Jednosmerne funkcije • kandidat za jednosmernu funkciju je množenje prostih brojeva – zadovoljava prva tri uslova, dok za četvrti nije dokazano ni da zadovoljava ni da ne zadovoljava • upotreba – šifre za pristup računarskim sistemima koje se u u sistemu čuvaju u kodiranom obliku • u sistemima sa javnim ključem jednosmerna funkcija mora biti i tp-funkcija
Kriptološkisistemi Jednosmerne funkcije tp – trapdoor (sporedna vrata, ulazak na sporedna vrata, zaobilaženje standardnog postupka) Jednosmerna funkcija je tp-funkcija ako važi: • efikasno se može odrediti domen funkcije • postoji funkcija polinomijalne složenosti koja primenjena na ulazni podatak pojednostavljuje dekodiranje
Kriptološkisistemi Primer sistemasajavnimključevima (RSA) • zasnovan na rezultatima teorije brojeva – mala Fermaova teorema • biramo proste brojeve p i q • razmatramo njihov proizvod n=pq i (p-1)(q-1) • iz skupa {1,...,(p-1)(q-1)}se bira broj e koji je uzajamno prost sa (p-1)(q-1) • nalazi se broj d tako da važi ed=1(mod (p-1)(q-1))
Kriptološkisistemi Primer sistemasajavnimključevima (RSA) • ovako izabran brojevi e i d čine ključeve za kodiranje i dekodiranje • par (pq,e) je javni ključ za kodiranje • par (pq,d) je tajni ključ za dekodiranje • brojevi p i q treba da ostanu tajna
Kriptološkisistemi Primer sistemasajavnimključevima (RSA) Funkcija kodiranja: Funkcija dekodiranja:
Kriptološkisistemi Primer sistemasajavnimključevima (RSA) • p i q su poznati pa se broj d efikasno izračunava, a nalaženje inverzne funkcije od svodi na problem faktorisanja brojeva • jeste tp-funkcija • Poruka je binarni niz koji se deli na blokove od kojih je svaki predstavlja ceo broj veći ili jednak 0 , a manji od n=pq
Kriptološkisistemi Primer sistemasajavnimključevima (RSA) Primena RSA algoritma kod digitalnih potpisa: • neka su , , , redom javni i tajni ključevi osoba A i B • potpisana poruka sadrži originalnu poruku i nadovezan potpis • ako je potrebno zbog sigurnosti, cela potpisana poruka se može kodirati javnim ključem
Kriptološkisistemi Primer sistemasajavnimključevima (RSA) • funkcije kodiranja i dekodiranja RSA komutativne • osoba B proverava digitalni potpis računajući