primena teorije sloŽenosti u kriptologiji

21
PRIMENA TEORIJE SLOŽENOSTI PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI U KRIPTOLOGIJI profesor: dr Zoran Ognjanović student: Branko Kalanović 213/07

Upload: kato

Post on 10-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

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). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

PRIMENA TEORIJE SLOŽENOSTIPRIMENA TEORIJE SLOŽENOSTIU KRIPTOLOGIJIU KRIPTOLOGIJI

profesor:dr Zoran Ognjanovićstudent:Branko Kalanović 213/07

Page 2: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Sadržaj predavanjaSadržaj predavanja

• Kriptologija • Kriptološki sistemi

• Primer sistema sa tajnim ključevima• Sigurnost kodiranja• Jednosmerne funkcije• Primer sistema sa javnim ključevima (RSA)

Page 3: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

KriptologijaKriptologija

Traka obmotana oko štapaTraka obmotana oko štapa

• stara Grčka• jedan od najstarijih tipova kriptološkezaštite

Page 4: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

KriptologijaKriptologija

EnigmaEnigma

• Nemačka• elektro-mehanika• od 1920. do kraja

Drugog Svetskog Rata

Page 5: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

KriptologijaKriptologija

Smart karticeSmart kartice

• digitalno doba• savremeni sistemi• čip zaizračunavanje kriptoloških algoritama

Page 6: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemi•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 supolinomijalne složenosti.

Page 7: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

• 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=xE(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

Kriptološki sistemiKriptološki sistemiPrimer sistema sa tajnim ključevima

NAPOMENA – simbol * se koristi kao ekskluzivna disjunkcija (ekskluzivno ili)

Page 8: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiPrimer sistema sa tajnim ključ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

Page 9: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiSigurnost 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

Page 10: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiSigurnost 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)

Page 11: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiJednosmerne 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

Page 12: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiJednosmerne 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

Page 13: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiJednosmerne 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

Page 14: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiJednosmerne 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

Page 15: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiPrimer sistema sa javnim ključ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))

Page 16: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiPrimer sistema sa javnim ključ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

Page 17: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiPrimer sistema sa javnim ključevima (RSA)

Funkcija kodiranja:

Funkcija dekodiranja:

Page 18: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiPrimer sistema sa javnim ključ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

Page 19: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiPrimer sistema sa javnim ključ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

Page 20: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Kriptološki sistemiKriptološki sistemiPrimer sistema sa javnim ključevima (RSA)

• funkcije kodiranja i dekodiranja RSA komutativne

• osoba B proverava digitalni potpis računajući

Page 21: PRIMENA TEORIJE SLOŽENOSTI U KRIPTOLOGIJI

Hvala na pažnji!