You are on page 1of 26

Kriptologija

Principi kriptologije
Подела
Zaštita tajnosti komunikacija

Steganografija Kriptologija
Sakrivanje poruke

Kriptografija Kriptonaliza
Sakrivanje značenja poruke Razbijanje šifarskog sistema
Kriptologija
• Kriptologija  Umetnost i nauka pravlјenja i
razbijanja “tajnih kodova”
• Kriptografija  pravlјenje “tajnih kodova”
• Kriptoanaliza  razbijanje “tajnih kodova”
• Steganografija  sakrivanje informacija
• “Tajni kodovi” - kriptosistemi (cryptosystems) ili šifre
(ciphers).
Osnovni pojmovi
• Otvoreni tekst (plaintext) je poruka ili dokument koji treba da se
zaštiti.
• Šifrovanje (encryption) je operacija kojom se otvoreni tekst menja
kako bi postao nerazumlјiv.
• Šifrat (ciphertext) je rezultat šifrovanja.
• Algoritam šifrovanja je skup pravila koji se koristi za šifrovanje
otvorenog teksta.
• Klјuč šifrovanja (key) je vrednost od koje zavise operacije algoritma
šifrovanja.
• Klјuč i otvoreni tekst su ulazni parametri u šifarski sistem.
Osnovni pojmovi nastavak
• Dešifrovanje (decrypt) je proces kojim se iz šifrata dobija
otvoreni tekst

• Algoritam dešifrovanja je skup pravila koji se koristi za


dešifrovanje šifrata

• Klјuč dešifrovanja određuje način rada algoritma


dešifrovanja
Osnovni pojmovi nastavak
• Šifarski sistem sa simetričnim klјučem
(symmetric key cryptosystem) koristi isti klјuč za šifrovanje i
dešifrovanje.
– Preciznije, dovolјno je da se iz jednog klјuča može
jednoznačno izračunati drugi klјuč
• Šifarski sistem sa javnim klјučem (public key cryptosystem) koristi
javni klјuč za šifrovanje i privatni klјuč (private key) za
dešifrovanje.
– Poznavanje javnog klјuča nije dovolјno za izračunavanje klјuča
za dešifrovanje
• Kriptografija je nauka o dizajniranju šifarskih sistema
Polazne tačke
• Osnovne pretpostavke
– Sistem je potpuno poznat napadaču
– Samo je klјuč tajan
• Ovo su tzv. Kerkhofovi principi (1883. Kerckhoff, Holandski
lingvista i kriptolog)
– Algoritam šifrovanja nije tajan
• Zašto uvodimo ove pretpostavke?
– Iskustvo pokazuje da su tajni algoritmi vrlo slabi kada se otvore
za javnost
– Tajni algoritmi teško ostaju tajna duži period vremena
– Reverzni inženjering softvera i hardvera
– Bolјe je unapred pronaći slabosti
Kerkhofovi principi
1. Kriptološki sistem mora biti praktično, ako ne i matematički
indecipherable
2. Ne sme se zahtevati da šifarski sistem bude tajan i mora se
pretpostaviti da je dostupan protivniku pod uobičajenim okolnostima
3. Klјuč mora biti lako prenosiv i retainable bez pisane zabeleške i
promenlјiv po volјi učesnika u komunikaciji
4. Mora biti primenlјiv u saobraćaju
5. Mora biti prenosiv, a njegova upotreba i funkcionisanje ne smeju
zahtevati rad nekoliko lјudi
6. Sistem mora biti lak za korišćenje i ne sme zahtevati posebne
mentalne napore i znanja o dugoj seriji pravila koje treba razmatrati.
Blok šema
Ključ za Ključ za
šifrovanje dešifrovanje

KЕ KD
Kanal
Otovoreni Pi Pi Otovoreni
šifrovanje dešifrovanje
tekst tekst
шифрат Ci

• Pi je i-ta „jedinica” otvorenog teksta


• Ci je pripadajući šifrat
• „jedinica” može da bude bit, slovo, blok (niz) bita i sl.
• C = E(P, KЕ)
• P = D(C, KD)
Osnovni model
Otvoreni Šifrat Otvoreni
Šifrovanje Dešifrovanje
tekst tekst

KE KD

Alisa Bob
C = E(KE, P) = EKE (P)
P = D(KD, C) = DKD (C)
If KE = KD simetrično šifrovanje
If KE ≠ KD asimetrično šifrovanje
Ko šta zna?
Ključ za šifrovanje Ključ za dešifrovanje
Alisa Trudi Bob
Pi Pi
Otvoreni Ci Otvoreni
šifrovanje dešifrovanje
tekst tekst
šifrat

• Trudi zna šifrat


• Trudi zna kako radi algoritam šifrovanja/dešifrovanja
• Trudi možda zna i još nešto...
• Trudu ne zna ključ dešifrovanja.

Kako se distribuira ključ !?


Gde i kako se čuva (virusi, crvi, propusti itd.)?
Simetrična kriptografija

Servis tajnosti
Simetrična kriptografija

Servis integriteta i autentičnosti


Asimetrična kriptografija

Servis tajnosti
Asimetrična kriptografija

Servis intergiteta i autentičnosti


Kriptoanaliza
• Kriptoanaliza (Trudi) je proces pronalaženja informacija
o otvorenom tekstu bez poznavanja ključa za
dešifrovanje.
• Cilj kriptoanalize:
– Otvoreni tekst
– Ključ
– Identifikovanje skupa loših ključeva, ...
• Trudi nije ničim ograničena
– Npr., Trudi može da napadne implementaciju, a ne i sam
algoritam
Potpuna pretraga ključeva
• Kako Trudi može da napadne šifarski sistem?
• Može da isproba sve moguće ključeve i da nakon svakog
dešifrovanja proveri da li je dobila željeni rezultat
– Potpuna pretraga ključeva
• Da bi se Trudi obeshrabrila, šifarski sistem treba da ima veoma
veliki broj potencijalnih ključeva – prostor ključeva (keyspace)
– Broj potencijalnih ključeva mora biti toliki da Trudi ne može
da ih isproba u razumnom vremenu
Više od potpune pretrage ključeva
• Veliki prostor ključeva je neophodan za bezbednost
šifarskog sistema
• Ovo je potreban ali ne i dovoljan uslov
– Postoje i drugi (skraćeni) tipovi napada
• U kriptografiji skoro nikad ne moženo dokazati da
skraćeni napadi ne postoje
• Problem: Teško (gotovo nemoguće) je za konkretan
sistem dokazati da je imun na ove vrste napada
– To čini kriptografiju izazovnom ...
Ostali napadi
• Napad na osnovu poznavanja šifrata (S)
– Trudi zna šifrat
– Realna pretpostavka => zato se i vrši šifrovanje
• Napad na osnovu poznatog (dela) otovrenog teksta (С+Р)
– Zaglavlja, potpisi, očekivane poruke, ...
• Napad na osnovu izabranog otvorenog teksta
– Lunchtime attack
• Napad na osnovu adaptivno izabranog otvorenog teksta
– Trudi bira otv. tekst, na osnovu postignutih rezultata bira
novi,...
• Povezani ključevi
– Analiza slabosti sistema na „slične″ ključeve
• Pretrage unapred (samo za sisteme sa javnim ključem)
• ...
Ostali napadi nastavak
• Primer: Napad na osnovu izabranog otv. teksta:
PIN se šifruje i
šalje u banku

šifrat(ključ,PIN)

Trudi (#2) prisluškuje


i zapisuje šifrat koji
Trudi (#1) unosi željenu odgovara izabranoj
vrednost na zahtev za vrednosti PIN-a
unos PIN-a
… ponavlja za bilo koju vrednost PIN-a
Bezbednost šifarskog sistema
• Šifarski sistem je bezbedan ako je najbolji poznati napad –
potpuna pretraga ključeva
• Šifarski sistem je nebezbedan ako nije otporan na bilo koji
oblik skraćenog napada
• Sledi:
– nesiguran sistem može biti otporniji na „razbijanje″ od
bezbednog sistema sa malim prostorom ključeva!
– bezbedan sistem mora imati dovoljno veliki prostor
ključeva!
Bezbednost šifarskog sistema nastavak
• Zašto se bezbednost definiše na ovakav način?
• Veličina prostora ključa je polazna osnova za pretpostavku o
stepenu bezbednosti.
• Ukoliko napad zahteva manje posla od potpune pretrage ključeva
onda je pretpostavka loša!
• Bezbednost šifarskog sistema nije egzaktna
– Zasniva se na pretpostavkama.
• Da li je sistem dovoljno bezbedan za određenu primenu?
– Koliko dugo informacija treba da ostane poverljiva (uporediti
sa vremenom potpune pretrage )
– Cena,....
Teorijska kriptoanaliza
• Pretpostavimo da šifarski sistem ima ključ dužine 100
bita
– Onda je prostor ključa (broj mogućih ključeva) 2100
• U proseku, za potpunu pretragu Trudi treba da testira
2100/2 = 299 ključeva
• Ako Trudi može da testira 230 ključeva u sekundi
– Tada će pronaći pravi ključ za približno
19 х 1012 godina (oko 37.4 triliona godina)
Teorijska kriptoanaliza nastavak
• Pretpostavimo da šifarski sistem ima ključ dižine 100
bita
– Prostor ključa je 2100
• Pretpostavimo da postoji skraćeni napad koji posao
pretrage svodi na pretragu 260 ključeva
• Ako Trudi testira 230 ključeva/sekundi
– Pronaći će pravi ključ za 3.4 godine
– Dostižno, u nekim slučajevima čak i prihvatljivo!
Teorijska kriptoanaliza nastavak
• Pretpostavimo da kriptosistem ima ključ dužine 100
bita
– Tada je prostor ključeva veličine 2100
• Pretpostavimo da postoji skraćeni napad koji zahteva
“posao” ekvivalentan testiranju oko 280 ključeva
• Ako Trudi može da testira 230 ključeva u sekundi
– Tada će pronaći ključ za 36 miliona godina
– Ovo je znatno bolje od 37 triliona, ali je i dalje praktično
teško izvodljivo
Hvala na pažnji

Pitanja

You might also like