dužina kriptografskog ključa

49
0 DRŽAVNI UNIVERZITET U NOVOM PAZARU DEPARTMAN ZA MATEMATIČKE NAUKE STUDIJSKI PROGRAM MATEMATIKA Seminarski rad Dužina ključa i tajnost Mentor: Studenti: Prof. Ivan Đokić Elmedina Bogućanin Aida Mušović Zlatko Mehonjić Novi Pazar, 2013

Upload: mehonjic

Post on 11-Aug-2015

109 views

Category:

Documents


1 download

DESCRIPTION

Dobar seminarski rad iz kriptografije na temu duzine kriptografskog kljuca

TRANSCRIPT

Page 1: Dužina kriptografskog ključa

0

DRŽAVNI UNIVERZITET U NOVOM PAZARU

DEPARTMAN ZA MATEMATIČKE NAUKE

STUDIJSKI PROGRAM MATEMATIKA

Seminarski rad

Dužina ključa i tajnost

Mentor: Studenti:

Prof. Ivan Đokić Elmedina Bogućanin

Aida Mušović

Zlatko Mehonjić

Novi Pazar, 2013

Page 2: Dužina kriptografskog ključa

1

Sadržaj

1. Uvod .................................................................................................................................................. 3

2. Pregled osnovnih kriptografskih pojmova .......................................................................................... 5

2.1 Sigurnosni komunikacijski kanal .................................................................................................. 5

2.2 Kriptografija ................................................................................................................................ 6

2.3 Kriptoanaliza................................................................................................................................ 7

2.4 Kriptologija .................................................................................................................................. 7

2.5 Algoritam ..................................................................................................................................... 7

2.6 Ključ ............................................................................................................................................ 8

3. Vrste napada i zaštita podataka na mreži ............................................................................................ 9

4. Vrste moderne kriptografije ............................................................................................................. 12

4.1 Simetrična kriptografija .............................................................................................................. 12

4.2 Asimetrična kriptografija ........................................................................................................... 15

4.3 Savršena sigurnost...................................................................................................................... 18

4.4 Jaki ključ .................................................................................................................................... 18

4.5 Jednokratni blok ......................................................................................................................... 18

5. Dužina simetričnog ključa ................................................................................................................ 21

5.1 Procene trajanja i cene napada grubom silom ............................................................................. 22

5.2 Softverski alati za razbijanje protokola ....................................................................................... 25

5.3 Neuronske mreže ....................................................................................................................... 26

5.4 Virusi ......................................................................................................................................... 26

5.5 Kineska lutrija ............................................................................................................................ 28

Page 3: Dužina kriptografskog ključa

2

5.6 Biotehnologija ............................................................................................................................ 29

5.7 Termodinamička ograničenja ..................................................................................................... 30

6. Dužina ključeva za algoritme sa javnim ključem .............................................................................. 32

6.1 Neke slabosti algoritma javnog ključa ........................................................................................ 32

6.2 Neka predviđanja vezana za algoritam javnog ključa .................................................................. 33

6.3 DNK izračunavanje .................................................................................................................... 39

6.4 Kvantno izračunavanje ............................................................................................................... 41

7. Upoređivanje dužina ključeva simetričnih algoritama i algoritama s javnim ključem........................ 42

8. Rođendanski napadi na jednosmerne heš funkcije ............................................................................ 43

9. Koliko dugačak treba da bude ključ? ................................................................................................ 44

10. ZAKLJUČAK ................................................................................................................................ 46

Literatura ............................................................................................................................................. 48

Page 4: Dužina kriptografskog ključa

3

1. Uvod

Dobri kriptografski sistemi bazirani su na algoritmima koji su otvorenog tipa, dostupni svima. Ako

poznajemo algoritam možemo sebi da priuštimo testiranje i na taj način odlučimo da li je taj sigurnosni

sistem dostojan naše velike tajne, odnosno da li ćemo ga koristiti ili ne. Ako zaključimo da je algori-

tam jak i da ne postoje sigurnosne rupe u njemu, te ako je algoritam dizajniran tako da se samo

pomoću ključa dolazi do originalne poruke tada smo sigurni da čuvanjem tog tajnog ključa čuvamo i

tajnu od uljeza. Jedina mana takvog sistema postaje mogućnost isprobavanja svih kombinacija ključa, i

na taj način dolaženja do onog pravog.

Temelji takvog načina razmišljanja mogu se pripisati matematičaru i naučniku Claude Elwood

Shannon-u. Uzimajući u obzir šest Kerckhoffs principa Shannon potvrđuje tezu da je ključ suština si-

gurnosti, stoga možemo i mi zaključiti da se u današnje doba, uz sve snažnije računare i Internet, os-

lanjamo samo na dužinu ključa. Da je dužina bitna potvrnuje činjenica da je DES koji je koristio 56-

bitni ključ i imao 72 057 594 037 927 936 mogućnosti probijen 1999. godine za 22 sata (100 000 rač-

unara umreženo Internetom). DES kao standard zamenjen je AES sistemom koji koristi 256 bitova za

pohranjivanje ključa. Koliko će trajati AES?!

Cilj ovog seminarskog rada je upravo da pokuša da odgovori na pitanje koliko treba da bude

dugačak ključ da bi garantovao tajnost podataka koje treba zaštititi, a da opet ne oduzima previše vre-

mena i računarskog prostora, kako bi njegovo korišćenje bilo isplativo.

Biće reči o kriptologiji, njenim dvema granama kriptografiji i kriptoanalizi, različitim načinima

šifrovanja podataka, od vremena starih Spartanaca, pa sve do simetričnih i asimetričnih algoritama

današnjice. Biće potanko razjašnjene prednosti i mane sistema javnog i tajnog ključa, a sve u cilju od-

govora na najvažnije pitanje: kolika je optimalna dužina ključa u modernom informatičkom društvu?

Page 5: Dužina kriptografskog ključa

4

Naravno, to je pitanje ne od milion, već od billion dolara, i bilo bi prepotentno reći i očekivati da će

troje studenata potpuno odgovoriti na njega (što se više ulazi u problematiku, sve se više čini da je na

to pitanje nemoguće dati pouzdan odgovor), ali se može reći da će izneti svoje viđenje vezano za prob-

lematiku dužine ključa.

Od 1948. godine i Shannonove "The Mathematical theory of communication" prošlo je svega 65

godina, a svet je promenio svoju suštinu, i od društva u kome postoji tehnologija i koristi se, ali malo

utiče na život običnog čoveka, postao zaista pravo informatičko društvo u kome ljudi provode u prose-

ku 17 % svog vremena gledajući u ekran, i koji bi se radije odrekli vereničkog prstena nego smatfona

ili laptopa, pa čak i sa svojim ukućanima u kući lakše komuniciraju mobilnim telefonom ili preko

društvenih mreža nego lično [1].

Ko bi tako nešto mogao da zamisli pre samo pola veka? Isto tako bi bilo neozbiljno prognozirati

razvoj informatičkog društva u narednih pola veka, ali zarad samog razvoja tog istog društva potrebno

je vršiti neke predikcije. Ovaj rad je upravo pokušaj jedne takve predikcije, zasnovane na istoriji i

čuvenoj izreci Franklin D. Roosevelt – a „Istorija se ponavlja, ali svaki put sve više košta“, u smislu da

ne treba čekati da se istorija ponovi, već je treba pokušati predvideti.

Page 6: Dužina kriptografskog ključa

5

2. Pregled osnovnih kriptografskih pojmova

2.1 Sigurnosni komunikacijski kanal

Sigurnosni komunikacijski kanal (secrecy system) služi korisnicima kanala za siguran prenos in-

formacije. U osnovnom modelu komunikacijskog kanala uzima se u obzir da uvek postoji uljez,

neželjena osoba, koji prisluškuje kanal. Stoga je potrebno izvornu poruku šifrovati kako bi informacija

bila sakrivena od uljeza.

1949. godine C. Shannon opisuje jedan takav model i postavlja teoriju savršenog sigurnosnog sis-

tema [2]. Shannon ne pridaje veliku pažnju algoritmu za šifrovanje već tvrdi da se sva sigurnost siste-

ma nalazi u tajnom ključu ili njegovoj dužini. U njegovom osnovnom modelu (Slika 1) vidimo da se

izvorna poruka kriptuje pomoću neke funkcije F uz postojanje ključa K. Za dobijanje izvorne poruke

iz šifrovane poruke smatra se da je potrebna ista ta funkcija ali inverznog tipa. Ukoliko neko

prisluškuje komunikacijski kanal, prima samo šifrovanu poruku, jer je jedino ona poslata preko otvo-

renog kanala, tako da je tajnost komunikacije očuvana. Po Shannonu ključ se ne prenosi komunika-

cijskim kanalom, već se smatra da je ključ nešto što treba da bude poznato samo primaocu i pošiljaocu

poruke. Navedeni model smatra se osnovnim modelom sigurnosnog komunikacijskog kanala.

Page 7: Dužina kriptografskog ključa

6

Slika 1 Dijagram sigurnosnog komunikacijskog kanala (C. Shannon model)

Originalna poruka koju će pošiljalac slati u daljem tekstu nazivaće se originalna ili izvorna poru-

ka ili samo poruka (plain text). Zatim, kodiranje poruke tj. postupak pretvaranja originala u nečitljiv

oblik biće nazvan šifrovanje ili enkripcija (encrypt). Poruka koja se šalje kkanalom u šifrovanom ob-

liku biće nazvana šifrovana poruka ili šifrat (cypher). Postupak dekodiranja poruke, tj. vraćanja po-

ruke iz njenog šifriranog oblika u originalni oblik naziva se dešifrovanje (decrypt). Osoba koja na bilo

koji način prisluškuje komunikacijski kanal i dolazi do dela ili cele šifrovane poruke nazivamo uljez ili

napadač (enemy cryptanalyst).

2.2 Kriptografija

Kriptografija (cryptography) je nauka (ili umetnost) šifrovanja informacije ili nauka čuvanja in-

formacija u onoj formi koja će biti čitljiva samo onima kojima je informacija namenjena dok će za os-

tale biti neupotrebljiva. Paralelno sa razvojem kriptografije razvila se i nauka kojoj je cilj analizom

šifrovane poruke odgonetnuti njen sadržaj. Ta nauka se naziva kriptoanaliza (cryptanalysis).

Page 8: Dužina kriptografskog ključa

7

2.3 Kriptoanaliza

Kriptoanaliza upravo je suprotno od kriptografije. To je nauka koja se bavi razbijanjem šifara, de-

kodiranjem, zaobilaženjem sistema autentifikacije, uopšte provaljivanjem kriptografskih protokola.

Dakle, kriptoanaliza je naučna disciplina koja proučava postupke otkrivanja originalnog teksta bez

poznavanja ključa, te postupke otkrivanja ključa uz poznavanje otvorenih i šifrovanih tekstova, ili uz

poznavanje nekih informacija o otvorenim šifrovanim tekstovima [3].

2.4 Kriptologija

Pored gore navedenog, spomenimo jednu bitnu razliku izmenu termina kriptografija i termina krip-

tologija (cryptology). Kriptografija je nauka koja se bavi svim aspektima sigurnosnog prenosa poda-

taka kao što su na primer autentifikacija (web, lokalne mreže), digitalni potpisi, razmena novca elek-

tronskim putem. Kriptologija je disciplina kaj se bavi istraživanjem načina tajnog komuniciranja

među ljudima. Uključuje kriptografiju i kriptoanalizu te kombinuje pragmatične metode s

matematičkim metodama. Dostignuća kriptologije implementiraju se u kriptosistemima (cryptosys-

tem).

2.5 Algoritam

Kriptografski algoritam je matematička funkcija koja se koristi u procesu šifrovanja i dešifrovanja

informacije [4]. Takav algoritam "radi" u kombinaciji sa ključem (sled znakova, reč, broj) kako bi se

poruka šifrovala i dešifrovala. Svi današnji algoritmi su poznati javnosti jer se smatra da to pridonosi

sigurnosti samog algoritma.

Page 9: Dužina kriptografskog ključa

8

2.6 Ključ

Nekada, pre nego što su računari ušli u široku upotrebu, tj. pre nego su se dovoljno razvila, većina

kriptografskih metoda šifrovanja se bazirala na tajnosti šifre (cypher). No, tako bazirani algoritmi su

se pokazali dosta nepouzdani, jer kad je jednom razbijen algoritam, on se mora menjati, tako da su se

morale pronaći neke druge metode šifrovanja. Današnje metode šifrovanja zasnivaju se na upotrebi

ključa. Ključ je bitna "karika" u šifrovanju poruke jer bez ključa algoritam ne daje rezultat koji se

može pročitati.

Ključ je kao lozinka, tajni podatak koji se koristi za dešifrovanje kodiranih poruka. Kriptograf i

lingvist Dr. Auguste Kerckhoffs (Dr. Auguste Kerckhoffs (1835-1903) – danski lingvista i kriptograf,

autor "šest principa" koji objašnjavaju kako postaviti kriptografski sistem) zadao je 6 principa sigur-

nosti gde spominje da uljez poznaje sistem a Claude Shannon potvrđuje kao Shannon's maxim

(Šenonovu maksimu): "The enemy knows the system".

Page 10: Dužina kriptografskog ključa

9

3. Vrste napada i zaštita podataka na mreži

Kako računarske mreže predstavljaju deo informacionog sistema pomoću koga se prenosi najveći

broj podataka, posebnu pažnju treba obratiti upravo na njihovu zaštitu. Podaci u okviru informacionih

sistema se mogu javiti u sledećim oblicima:

• Javni podaci – podaci koji nisu poverljivi i čiji integritet nije važan, može ih koristiti bilo ko bez

ikakvih posledica. Primeri ovakvih podataka su javni servisi za pružanje informacija.

• Interni podaci – pristup ovim podacima je dozvoljen samo za određene grupe korisnika. Javno ob-

javljivanje internih podataka nije dozvoljeno, ali objavljivanje ove vrste podataka nije od kritične

važnosti. Primer su podaci u razvojnim grupama, firmama, radni dokumenti i projekti, interni telefons-

ki imenici.

• Poverljivi podaci – poverljivi podaci unutar određene grupe (kompanije) koji su zaštićeni od

neovlašćenog pristupa. Neivlašćeni pristup ovim podacima može prouzrokovati značajane posledice

kao što su: finansijski gubitak kompanije ili dobitak konkurentskoj kompaniji, smanjenje poverenja

korisnika usluga ili potrošača proizvoda. Primeri ovih informacija su: podaci o platama, podaci o za-

poslenima, projektna dokumentacija, računovodstveni podaci, poverljivi ugovori.

• Tajni podaci – podaci kod kojih je neautorizovan pristup strogo zabranjen. Integritet podataka je

na najvišem nivou. Broj ljudi koji može da pristupi ovim podacima trebalo bi da bude ograničen.

Prilikom pristupa ovim informacijama moraju se poštovati veoma striktna pravila. Primer ovih po-

dataka su: vojni podaci, podaci o većim finansijskim transakcijama, podaci od državnog značaja i

slično. Ova vrsta podataka se treba čuvati u kriptovanom obliku ili u uređajima sa hardverskom

zaštitom [5].

Kada se govori o zaštiti podataka na mreži, uglavnom se misli na zaštitu poverljivih i tajnih podata-

ka koji se prenose putem računarske mreže. Sve masovnija upotreba računarskih mreža iziskuje

korišćenje mehanizama i mera za zaštitu podataka koji se tim putem prenose. Mere za zaštitu podataka

Page 11: Dužina kriptografskog ključa

10

uopšte, se zasnivaju na tri principa [6]:

• Prevencija – odnosi se na preduzimanje preventivnih aktivnosti za zaštitu podataka i računarskih

sistema od mogućih napada

• Detekcija – otkrivanje kako je narušena zaštita, kada je narušena i ko je narušio

• Reakcija – preduzimanje aktivnosti koje dovode do restauracije podataka ili do restauracije račun-

arskog sistema

Slika 2. Neke vrste napada na računarske mreže

Zaštita podataka koji se prenose putem računarske mreže zasniva se na sva tri principa, ali je ovaj

rad fokusiran na zaštitu u vidu prevencije. Najveća pretnja podacima koji se prenose putem računarske

mreže javlja se usled slabosti komunikacione opreme pomoću koje se vrši prenos podataka.

Ugrožavanje podataka u računarskim mrežama se odnosi na prisluškivanje, analizu, menjanje, uklan-

janje informacija kao i lažno predstavljanje [7]. Na Slici 2 prikazane su neke od mogućnosti napada na

računarske mreže. Treba napomenuti da do ovih napada može doći na bilo kom mestu prenosa infor-

macija od izvora do odredišta.

Page 12: Dužina kriptografskog ključa

11

Svi napadi na podatke koji se prenose mrežom se mogu podeliti u dve grupe [8]:

• Pasivni napadi i

• Aktivni napadi

Pasivni napadi se odnose na sva prisluškivanja i nadgledanja informacija tokom prenosa, bez ikak-

vih izmena. Ovom vrstom napada napadač na relativno jednostavan način dolazi do informacija. Pa-

sivni napadi se teško otkrivaju. Kao najčešće korišćeni mehanizam zaštite od pasivnih napada primen-

juje se kriptovanje podataka koji se prenose putem komunikacionih linija. Kriptovanje podataka se od-

nosi na modifikaciju istih na način da postanu nerazumljivi ili besmisleni za sve one korisnike kojima

nisu namenjeni. Kao takvo, kriptovanje predstavlja najvažniji element zaštite podataka u računarskim

mrežama.

Page 13: Dužina kriptografskog ključa

12

4. Vrste moderne kriptografije

Kriptografska zaštita je jedna od mera zaštite podataka koja, oslanjajući se na matematičke metode i

principe, omogućuje razmenu informacija nesigurnim komunikacijskim kanalima na način da sačuva

njihovu tajnost. S obzirom na kriptografske ključeve, modernu kriptografiju delimo na simetričnu

kriptografiju i asimetričnu kriptografiju (kriptografiju javnog ključa)

4.1 Simetrična kriptografija

Osnovna karakteristika simetrične kriptografije je identičnost kriptografskih ključeva koji se koriste

prilikom šifrovanja i dešifrovanja. Simetrična kriptografija seže daleko u prošlost kada su se pojavili

prvi načini kriptografskog prikrivanja podataka. Jedna od prvih poznatih metoda koju su upotrebljavali

Spartanci u 5. veku pre nove ere je skital. Skital je drveni štap određene debljine na koji se namotava-

la traka od pergamenta. Uzdužno, preko namotane trake, napisala bi se poruka, a odmotavanjem per-

gamenta sa štapa tekst bi postajao nečitljiv. Poruku je mogao ispravno pročitati samo onaj ko je pose-

dovao štap debljine odnosno prečnika identičnog originalnom štapu. Na slici 3. prikazan je postupak

šifrovanja pomoću drvenog štapa – skitale.

Slika 3. Skital

Page 14: Dužina kriptografskog ključa

13

U ovom primeru kriptografski ključ predstavlja jedinstvena debljina drvenog štapa, skitala, odnos-

no drveni štap tačno određene debljine kojeg je morao imati onaj ko sastavlja i šalje poruku, ali i onaj

ko prima prikrivenu poruku.

Osim skitala jedna od poznatijih simetričnih metoda šifrovanja je i Cezarova metoda. Kod te me-

tode tekst se šifruje na način da se svako slovo originalnog teksta zameni nekim drugim slovom ab-

ecede, a zamensko tj. šifrovano slovo određuje se pomakom između originalne i šifrovane abecede [9].

Na slici 4. prikazane su dve abecede, originalnog i šifrovanog teksta, pomaknute za 3 mesta ulevo.

Broj mesta za koji se pomiče abeceda šifrovanog teksta u odnosu na originalni tekst menjao se od po-

ruke do poruke. Ključ kod ovog načina šifrovanja predstavlja upravo broj mesta za koliko su abeceda

originalnog i šifrovanog teksta pomerene.

Slika 4. Cezarova metoda

Kroz istoriju, kriptografija se sve više razvijala, ali uvek se za šifrovanje i dešifrovanje koristio isti

kriptografski ključ. Jedan od u javnosti možda najpoznatijih i najspominjanijih uređaja za šifrovanje je

nemačka Enigma. Kod nje kriptografski ključ određuje položaj triju prstena koji, ukoliko želimo

uspešno pročitati šifrovanu poruku, i kod šifrovanja i kod dešifrovanja moraju biti identično postavlje-

ni. Na slici 5. je prikaz kriptografskog uređaja Enigma koga su koristile nemačke vojne baze u 2.

svetskom ratu.

Page 15: Dužina kriptografskog ključa

14

Slika 5. Enigma

Današnji simetrični kriptografski algoritmi zasnovani su na informatičkoj tehnologiji i koriste krip-

tografske ključeve u digitalnom obliku. Njihova dužina najčešće se kreće od 64 bita (npr. algoritam

DES) do 256 bita (npr. algoritam AES). Na slici 6. je šematski prikaz simetričnog kriptografskog sis-

tema.

Slika 6. Simetrični kriptografski sistem

Kao što je rečeno na početku, a vidljivo je i s prethodne slike, kriptografski ključevi za šifrovanje i

dešifrovanje su identični.

Page 16: Dužina kriptografskog ključa

15

Informacije o kriptografskom ključu za šifrovanje/dešifrovanje nužno je zadržati u tajnosti, odnosno

unutar kruga pošiljalaca i primalaca zaštićene poruke. Simetrični kriptografski sistem se zbog toga na-

ziva i sistem sa tajnim ključem. Komunikacijski kanal za razmenu kriptografskih ključeva u izvornom

obliku mora biti siguran, tj. mora onemogućiti trećoj strani da sazna bilo kakvu informaciju o

ključevima. U suprotnom, šifrovanje kompromitovanim ključevima rezultovalo bi kompromitovan-

jem poruka i ne bi imalo nikakvog smisla. Uobičajeno je da se kod simetričnih kriptografskih sistema

potrebni kriptografski ključevi unapred razmene između korisnika. Možda najsigurniji način distribu-

cije je lična dostava istih korisnicima, no u tom slučaju često se pitamo nismo li na takav način mogli

dostaviti i samu poruku. Postoje i druge metode razmene, a jedna od često korišćenih metoda je i raz-

mena simetričnih kriptografskih ključeva pomoću kriptografskih sistema s javnim ključem. Takva or-

ganizacija ne zahteva siguran komunikacijski kanal, jer se i sami ključevi za šifrovanje poruke distri-

buiraju šifrovani, tj. zaštićeni.

4.2 Asimetrična kriptografija

Ideju kriptografskog sistema s javnim ključem prvi su put javno objavili W. Diffie i M. Hellman

1976. godine. Oni su u svom radu ponudili rešenje razmene simetričnih kriptografskih ključeva preko

nesigurnog kanala. Dve godine kasnije, Rivest, Shamir i Adleman objavili su prvi praktično iskoristiv

asimetrični kriptografski sistem nazvan RSA po prvim slovima njegovih autora. Nakon toga došlo je

do značajnog razvoja asimetričnih kriptografskih sistema i moderna kriptografija od tada kreće u sas-

vim drugom smeru. Možemo slobodno reći da su se pojavom asimetrične kriptografije otvorila vrata i

za upotrebu digitalnog potpisa koji je zasnovan na asimetričnom algoritmu.

Osnovna razlika između simetričnih i asimetričnih kriptografskih sistema je u organizaciji kripto-

grafskih ključeva. Dok su kod simetričnih kriptografskih sistema i pošiljalac i primalac zaštićenih po-

ruka čuvali kriptografski ključ u tajnosti, i oba su istim simetričnim ključem mogla i šifrovati i

dešifrovati zaštićene poruke, kod asimetričnih kriptografskih sistema to nije slučaj. Naime, kripto-

grafski ključ za šifrovanje asimetričnim kriptografskim sistemom nije moguće koristiti i za

dešifrovanje prethodno šifrovane poruke te ga stoga nije potrebno štititi [9]. U tom smislu, problem

Page 17: Dužina kriptografskog ključa

16

sigurne dostave kriptografskog ključa za šifrovanje u ovom slučaju ne postoji, jer ga je moguće distri-

buirati i nesigurnim komunikacijskim kanalima.

Naime, kod asimetričnih kriptografskih sistema postoje dve vrste kriptografskih ključeva – tzv. jav-

ni i tajni kriptografski ključ. Javni kriptografski ključ koristimo isključivo za šifrovanje, a tajni za

dešifrovanje. Javni i tajni kriptografski ključ čine jedinstveni par, tj. svakom javnom ključu dodeljen je

jedinstveni tajni ključ. U praksi je vrlo teško, gotovo nemoguće, poznavanjem jednog od njih odrediti

drugi.

Korisnik koji želi zaštićeno komunicirati izrađuje za sebe par asimetričnih kriptografskih ključeva.

Tajni kriptografski ključ zadržava kod sebe te na taj način osigurava da niko drugi nema nikakve in-

formacije o istom. Pripadajući javni kriptografski ključ korisnik javno objavljuje svima, ili ga na neki

drugi način dostavlja osobama kojima želi omogućiti šifrovanje njemu namenjenih poruka. Poruke

šifrovane takvim javnim kriptografskim ključem može dešifrovati samo osoba koja poseduje njegov

komplementarni, odnosno tajni kriptografski ključ. Čak ni osoba koja je šifrovala poruku javnim krip-

tografskim ključem nije u mogućnosti istu da dešifruje. Veličina, odnosno dužina, kriptografskih

ključeva kod asimetričnih kriptografskih sistema najčešće se kreće od 256 bita za asimetrične kripto-

grafske sisteme bazirane na eliptičkim krivim do 2048 bita za asimetrične kriptografske sisteme temel-

jene na RSA algoritmu. S današnjim nivoom razvoja informatičke tehnologije i procesorskim moćima

modernih računara navedene dužine kriptografskih ključeva zadovoljavaju sigurnosne potrebe korisni-

ka, bilo da se radi o privatnim osobama ili državnim institucijama. Povećanjem broja matematičkih

operacija koje procesori mogu izvršiti u jedinici vremena, kao i razvojem kvantnih računara, tražiće se

i povećanje dužine ključa, a kako bi se zadržao dosadašnji nivo sigurnosti asimetričnih kriptografskih

sistema. Na slici 7. nalazi se prikaz jednog asimetričnog kriptografskog sistema.

Slika 7. Asimetrični kriptografski sistem

Page 18: Dužina kriptografskog ključa

17

Kod simetričnih kriptografskih sistema za svaku zaštićenu vezu (par korisnika) treba izraditi i na si-

guran način razmeniti jedan kriptografski ključ, dok je u slučaju asimetričnog kriptografskog sistema

jednim parom kriptografskih ključeva omogućeno šifrovanje poruka prema korisniku (osobi koja po-

seduje tajni ključ) od strane bilo koga ko poseduje javni ključ. Ako je predmetni javni kriptografski

ključ javno objavljen (npr. na internetu), onda je jednosmerna sigurna komunikacija omogućena

neograničenom broju osoba.

Povećanjem broja korisnika simetričnog kriptografskog sistema koji žele da zaštićeno komuniciraju

nezavisno jedni od drugih, potreban broj kriptografskih ključeva relativno brzo raste (za 5 korisnika

koji žele sigurno komunicirati svaki sa svakim, uz uslov da svaku zaštićenu poruku preostali u grupi

nisu u mogućnosti dešifrovati, treba 10 kriptografskih ključeva; za 20 korisnika broj potrebnih kripto-

grafskih ključeva penje se na čak 190) [9]. U slučaju asimetričnog kriptografskog sistema broj parova

ključeva jednak je broju korisnika (za 5 korisnika, potrebno je 5 parova ključeva, a za 20 korisnika 20

parova ključeva).

Iz ovoga je vidljivo da je broj kriptografskih ključeva koje je potrebno razmeniti između korisnika

koji žele zaštićeno komunicirati asimetričnim kriptografskim sistemom bitno smanjen u odnosu na

simetrične kriptografske sisteme.

Lako je uočiti da upravljanje kriptografskim ključevima kod simetričnih kriptografskih sistema

predstavlja veliki problem. S druge strane njihova prednost je brzina šifrovanja koja je u odnosu na

asimetrične kriptografske sisteme od sto do hiljadu puta veća. Povećanjem broja bitova ključa kod

asimetričnih kriptografskih ključeva znatno se usporava vrijeme potrebno za postupak šifrovanja i

dešifrovanja. Iz tog razloga je sa asimetričnim kriptografskim sistemima nemoguće izvesti linijsko ili

„on-line“ šifrovanje, odnosno šifrovanje podataka u realnom vremenu. Za to se još uvek koriste

simetrični kriptografski sistemi koji se s takvim izazovima trenutno mogu vrlo uspešno nositi.

Page 19: Dužina kriptografskog ključa

18

4.3 Savršena sigurnost

Videli smo da napad grubom silom jedini donosi rezultat kod probijanja šifre. C. Shannon uzima u

obzir da je napadač ograničen sa vremenom jer dok on pokušava pronaći ključ tada korisnici sigurnos-

nog sistema mogu promeniti ključ. Skoro svi programi za šifrovanje umesto brojeva kao ključa, koriste

niz slova i brojeva, tj. lozinku. Svi ovi algoritmi većinom su sigurni, bilo da se radi o simetričnim ili

asimetričnim, ali postoji šansa da se lozinka otkrije ako se ne pridržavamo nekih pravila.

4.4 Jaki ključ

Često su korisnici sigurnosnog sistema sami svoji protivnici. Stvaranje jakog ključa (strong key)

krucijalan je postupak postavljanja zaštite. Npr. ako koristimo DES sa 56-bitnim ključem i naš ključ

ima brojčanu vrednost 10 000 000 velika je verovatnoća da će računar koji vrši grubi napad početi bro-

jati od 1 i ubrzo doći do tog broja. Takođe, ako je ključ neka reč koja se može povezati sa korisnikom

sistema tada napadač može u još kraćem vremenu odgonetnuti ključ samo tako što će upotrebiti vaš

porezni broj kao ključ (Social engineering).

Stoga C. Shannon dolazi do zaključka da ključ mora biti što duži i nasumično izabran. On prim-

jenjuje teoriju informacija na izbor ključa i smatra da ključ mora imati što veću entropiju kako uljez

analizom ne bi pronašao logične uzorke (patterns). Štaviše, C. Shannon smatra da ključ mora biti

dugačak koliko i sama poruka. Takvu primenu pronašao je u postojećem algoritmu.

4.5 Jednokratni blok

Jednokratni blok (One-time pad) je postupak šifrovanja gde se originalna poruka šifruje pomoću

ključa koji je nasumično stvoren i dugačak koliko i sama poruka. Bitno je da se ključ koristi samo jed-

Page 20: Dužina kriptografskog ključa

19

nom, čime korisnik osigurava slučajnost. Za šifrovanje, često se koristi logička funkcija "isključivo

ILI" kako bi se omogućilo jednostavno dešifrovanje.

Slika 8. Primer one-time pad algoritma

Na Slici 8. vidimo primer jednokratnog bloka. Poruka koju šaljemo je "HELLO". A ključ koji smo

nasumično odabrali je "XMCKL" pre svega pošaljemo primaocu. Uzmemo brojčanu vrednost za svako

slovo krenuvši od A(0), B(1) .... Z(25) te sumiramo njihove vrednosti. Ako je zbir veći od ukupnog

broja znakova tada krećemo od početka abecede. Dobijeni zbirovi daju nam šifru koju šaljemo pri-

maocu. Primalac će jednostavno dešifrovati poruku tako što će oduzimati vrednosti znakova.

Ovaj algoritam patentiran je još 1917. godine i C. Shannon u njemu pronalazi savršenu sigurnost.

Smatra ako stvarno generišemo slučajni ključ i održimo ga tajnim, napadač će teško kriptoanalizom

pronaći rešenje. Shannon dokazuje: "takav slučajno generisani ključ daće nam šifrovanu poruku koja

Page 21: Dužina kriptografskog ključa

20

će imati istu a priori i a aposteriori entropiju što je nemoguće razbiti kriptoanalizom" [2]. I stvarno,

ako generišemo nasumični ključ tada kao šifru dobijamo nešto što takođe izgleda nasumično generisa-

no. Takav model možemo smatrati savršenim sigurnosnim sistemom. Ovaj algoritam bio je poznat u

špijunskim krugovima. Nezavisno o razmišljanju C. Shannona mana sistema jednokratnog bloka je što

moramo posedovati savršeni generator nasumičnog broja (random generator). Takvi uređaji su skupi

a mnogi naučnici posvećuju čitave živote smišljanju matematičke funkcije za dobijanje nasumičnog

broja. [3]

Ipak, tvorci algoritama koji su nastali sedamdesetih godina prošlog veka i koji se danas koriste imali

su na umu Shannonove zaključke.

Page 22: Dužina kriptografskog ključa

21

5. Dužina simetričnog ključa

Sigurnost simetričnog kriptosistema funkcija je dva faktora: snage algoritma i dužine ključa. Prvi je

važniji, ali je drugi lakše pokazati. [10]

Kada se 1977. godine razvijao DES, smatralo se je da će ključ dužine od 56bita biti dovoljna zaštita.

Računari koja su mogla razbiti tu šifru postojali su u Američkoj vojsci i NSA ali niko nije ni mogao za-

misli pojavu personalnog kompjutera, a kamoli veliku računarsku mrežu u civilnom sektoru, tako da se

nije moglo ni pretpostaviti da će biti razbijen. DES ne poseduje slabosti u algoritmu i prvobitno je zami-

jenjen "tripleDES" standardom i 168bit ključem a zatim AES sistemom kakvog poznajemo danas.[3]

Pretpostavimo da je snaga algoritma savršena. To je izuzetno teško postići u radu, ali je dovoljno lako u

ovom primeru. Pod „savršenom snagom" podrazumevamo da ne postoji bolji način da se provali

kriptosistem od isprobavanja svih mogućih kljućeva u napadu grubom silom.

Da bi kriptoanalitičar pokrenuo napad, potrebna mu je mala količina šifrovanog teksta i odgovarajući

otvoreni tekst. Napad grubom silom je napad tipa „poznat otvoreni tekst". Za blok-šifru,

kriptoanalitičaru treba blok šifrovanog teksta i odgovarajući otvoreni tekst: uglavnom 64 bita. Doći do

otvorenog teksta i šifrata lakše je nego što možete zamisliti. Kriptoanalitičar može da uzme kopiju

poruke u obliku otvorenog teksta i da presretne odgovarajući šifrat. On bi mogao da zna nešto o formatu

tog šifrata, na primer: to je datoteka iz WordPerfecta ili zaglavlje standardne poruke elektronske pošte ili

datoteka iz UNIX-ovog direktorijuma ili slika u formatu TIFF ili standardni zapis iz baze podataka o

kupcima. Svi ovi formati imaju neke unapred definisane bajtove. Kriptoanalitičaru ne treba mnogo

otvorenog teksta da bi započeo napad grubom silom.

Složenost napada grubom silom izračunava se jednostavno. Ako je ključ dužine 8 bitova, tada postoji 28

ili 256 mogućih ključeva. Samim tim će biti potrebno 256 pokušaja da se pronađe pravi ključ, uz 50

procenata verovatnoće da se pronađe ključ posle polovine pokušaja. Ako je ključ dugačak 56 bitova,

postoji 256 mogućih ključeva. Pod pretpostavkom da superračunar može da isproba milion ključeva u

sekundi, biće potrebno 2285 godina da se pronađe pravi ključ. Ukoliko je ključ dugačak 64 bita, tada će

istom superračunaru biti potrebno oko 585 000 godina da pronadc pravi ključ tnedu 264 mogućih

ključeva. Ako je dužina ključa 128 bitova, biće potrebno 1025 godina. Vasiona je stara samo 1010 godina,

Page 23: Dužina kriptografskog ključa

22

tako da je 1025 godina dug period. Za 2048-bitni ključ, milion računara koji rade paralelno brzinom od

miilion pokušaja u sekundi tražilo bi ključ 10597 godina. Do tada će kosmos već uveliko biti pretvoren ni

u šta.

Setimo se da kriptosistem mora da bude toliko siguran da ne postoji bolji način da se razbije od na-

pada grubom silom. To nije tako jednostavno kako možda deluje. Kriptografija je fina veština. Kripto-

sistemi koji savršeno izgledaju, često su izuzetno slabi. Jaki kriptosistemi mogu da postanu slabi uz par

sitnih izmena.

Sigurnost kriptosistema treba da se oslanja na ključ, a ne na detalje algoritma. Pretpostavimo da su

svakom kriptoanalitičaru dostupni svi detalji našeg algoritma. Pretpostavimo da on može da pribavi

koliko god hoće šifrovanog teksta i može da započne intenzivan napad „samo šifrat". Pretpostavimo da

on može pokrenuti napad na otvoreni tekst sa onoliko podataka koliko mu je potrebno. Pretpostavimo

čak i to da on može da izvrši napad „odabran otvoreni tekst". Ako naš sistem može da ostane bezbedan

i pored svega toga što kriptoanalitičar zna, tada imamo dobar sistem. [10]

5.1 Procene trajanja i cene napada grubom silom

Napad grubom silom (brute-force attack) je metoda probijanja šifre gde se pogađaju sve moguće kombi-

nacije nekog ključa. Znači, računar doslovno broji i za svaki broj proverava rezultat nad poznatim algo-

ritmom. Smišljena je parcijalna metoda sirove sile gde se polje svih ključeva deli na male delove i

prosleđuje mreži računara.

Napad grubom silom je uglavnom tipa „poznat otvoreni tekst" za njega je potrebna mala količina

šifrovanog teksta i odgovarajući otvoreni tekst. Ako pretpostavimo da je napad grubom silom

najefikasniji mogući napad na neki aigoritam, što je velika pretpostavka, tada ključ mora da bude

dovoljno dugačak da bi taj napad učinio nepodobnim. Koliko dugačak treba da bude ključ?

Dva parametra odreduju brzinu napada grubom silom: broj ključeva koje treba testirati i brzina svakog

testa. Većina simetričnih algoritama prihvata kao ključ svaki šablon bitova fiksne dužine. DES ima 56-

Page 24: Dužina kriptografskog ključa

23

bitni ključ i 256 mogućih ključeva. Neki algoritmi imaju 64-bitni ključ i 264 mogućih ključeva, a neki

imaju 128-bitni ključ.

Brzina kojom svaki mogući ključ može da se testira takode je činilac brzine napada, ali je manje

značajan. U svrhu ove analize, pretpostavimo da se svi različiti algoritmi mogu testirati za isto vreme. U

stvarnosti, jedan algoritam može da se testira dva, tri, pa čak i deset puta brže od drugog. Međutim,

pošto tražimo dužine ključeva koje je više miliona puta teže razbiti nego što bi bilo pogodno, male

razlike u brzinama testiranja nisu značajne.

Većina rasprava medu kriptografima o efikasnosti napada grubom silom tiče se algoritma DES. Vitfild

Difi (Whitfield Diffie) i Martin Helman (Martin Hellman) zamislili su 1977. Godine mašinu specijalne

namene za razbijanje algoritma DES. Mašina bi se sastojala od milion čipova, a svaki je mogao da

testira milion ključeva u sekundi. Takva mašina bi mogla da testira 256 ključeva za 20 sati. Ako bi bila

napravljena da napadne algoritam sa 64-bitnim ključem, mogla bi da ispita svih 264 ključeva za 214

dana.

Napad grubom silom je kao stvoren za paralelne procesore. Svaki procesor može da testira jedan

podskup prostora ključa. Procesori ne moraju međusobno da komuniciraju; jedina neophodna

komunikacija je poruka koja izveštava o uspehu. Ne postoje zahtevi za deljenom memorijom. Treba

projektovati mašinu s milion paralelnih procesora, gde svaki radi nezavisno od ostalih.

U novije vreme, Majkl Viner (Michael Wiener) odlučio je da osmisli mašinu za razbijanje algorita-

ma pomoću napada grubom silom. (Konstruisao je mašinu za DES, ali ta analiza važi za većinu agori-

tama.) Projektovao je specijalizovane čipove, ploče i mehaničke delove. Procenio je troškove. Tako je

otkrio da bi za milion dolara neko mogao da napravi mašinu koja bi razbila 56-bitni ključ algoritma

DES u proseku za 3,5 sata (rezultat se sigurno dobija za 7 sati). Otkrio je i da je odnos cena/brzina li-

nearan. U Tabeli 1. [10] date su uopštene vrednosti za različite dužine ključeva. Treba imati na umu

Murov zakon koji kaže da se računarska snaga udvostručava približno svakih 18 meseci. To znači da

se troškovi smanjuju za faktor 10 svakih pet godina: ako je pravljenje nečega 1995. godine koštalo mi-

lion dolara, onda je 2000. godine koštalo svega 100 000 dolara. Računari sa obradom u više faza poka-

zali bi se još bolje.

Page 25: Dužina kriptografskog ključa

24

Naravno, neozbiljno je procenjivati računarsku snagu 35 godina unapred. Iznenadni proboji u nekoj

tehnologiji iz domena naučne fantastike mogli bi ove brojeve učiniti smešnim. Nasuprot tome, trenutno

nepoznata fizička ograničenja mogla bi iste brojeve učiniti nerealno optimističnim.

Tabela 1. Procene prosečnog vremena za hardverski napad grubom silom 1995. godine [10]

Za 56-bitne ključeve, navedeni brojevi su u okvirima budžeta većine velikih kompanija i mnogih

kriminalnih organizacija. Vojni budžeti većine industrijalizovanih država mogu da podmire provalji-

vanje 64-bitnih ključeva. Provaljivanje 80-bitnog ključa i dalje premašuje mogućnosti ali, ako se nas-

tave sadašnji trendovi, to će se promeniti za svega 30 godina. [10]

Puštanje u opticaj algoritma sa 80-bitnim ključem deluje izuzetno kratkovido. Treba insistirati na

ključevima dužine najmanje 112 bitova. Naravno, neozbiljno je procenjivati računarsku snagu 35

godina unapred. Iznenadni proboji u nekoj tehnologiji iz domena naučne fantastike mogli bi ove

brojeve učiniti smešnim. Nasuprot tome, trenutno nepoznata fizička ograničenja mogla bi iste brojeve

DUŽINA KLJUČA U BITOVIMA

Cena 40 56 64 80 112 128

100 K$ 2 sek. 35 sati 1 god. 70,000 god. 1014 god. 1019 god.

1 M $ 0,2 sek. 3,5 sata 37 dana 7000 god. 1013 god. 1018 god.

10 M $ 0,02 sek. 21 min. 4 dana 700 god. 1012 god. 1017 god.

100 M $ 2 milisek. 2 min. 9 sati 70 god. 1011 god. 1016 god.

1 G $ 0,2 milisek. 13 sek. 1 sat 7 god. 1010 god. 1015 god.

10 G $ 0,02 milisek. 1 sek. 5,4 min. 245 dana 109 god. 1014 god.

100 G$ 2 mikrosek. 0,1 sek. 32 sek. 24 dana 108 god. 1013 god.

1 T$ 0,2 mikrosek. 0,01 sek. 3 sek. 2,4 dana 107 god. 1012 god.

10 T $ 0,02 mikrosek. 1 milisek. 0,3 sek. 6 sati 106 GOD. 1011 god.

Page 26: Dužina kriptografskog ključa

25

učiniti nerealno optimističnim. Puštanje u opticaj algoritma sa 80-bitnim ključem deluje izuzetno

kratkovido. Treba insistirati na ključevima dužine najmanje 112 bitova.

Ako je napadač dovoljno čvrsto rešio da provali ključ, treba samo da uloži novac. Zbog toga deluje

razborito pokušati proceniti minimalnu „vrednost" ključa: koliko vredi jedan ključ da bi pokušaj pro-

valjivanja bio ekonomski opravdan? Evo ekstremnog primera: ako šifrovana poruka vredi 1,39 dolara,

nema mnogo smisla uložiti milione dolara u alat za razbijanje protokola da bi se otkrio taj ključ. S

druge strane, ukoliko otvoreni tekst poruke vredi 100 miliona dolara, dešifrovanje te poruke opravdaće

troškove pravljenja alata za razbijanje protokola. Osim toga, vrednost nekih poruka brzo opada s vre-

menom.

5.2 Softverski alati za razbijanje protokola

Napade grubom silom znatno je teže izvesti hez hardvera posebne namene i jakih paralelnih mašina.

Softverski napad je oko hiljadu puta sporiji od hardverskog. Prava opasnost od softverskog napada

(engl. Software based brute force attack) nije to što je siguran, nego što je „besplatan". Ne košta ništa

da se mikroračunar podesi tako da ispituje sve moguće ključeve kad god je besposlen. Ukoliko

pronađe pravi ključ - sjajno. Ako ne pronađe pravi ključ, ništa nije izgubljeno. Ne košta ništa da se ce-

la mreža mikroračunara podesi tako da traži ključ. U nedavnom eksperimentu sa algoritmom DES

iskorišćeno je ukupno vreme besposlenosti 40 radnih stanica za ispitivanja 234 ključeva u jednom da-

nu. Pri toj brzini, bilo bi potrebno četiri miliona dana za ispitivanje svih ključeva, ali ako dovoljno lju-

di pokušava napad na ovaj način, nekada će neko imati sreće. Prepreka softverskom napadu je samo

loša sreća. Zamislite univerzitetsku računarsku mrežu od 512 umreženih radnih stanica. To bi bila

mreža srednje veličine na nekim fakultetima. Računari bi mogli da budu raspoređeni po celom svetu, a

da se njihovom aktivnošću koordinira preko elektronske pošte. “Pretpostavimo da svaka radna stanica

može da radi algoritam brzinom od 15 000 šifrovanja u sekundi... Uključujući i dodatno vreme za ispi-

tivanje i zamenu ključeva, dobija se... 8192 testa u sekundi, po mašini. Da bi se ovim sredstvima

Page 27: Dužina kriptografskog ključa

26

iscrpeo [56-bitni] prostor ključeva, bilo bi potrebno 545 godina (pod pretpostavkom da je ta mreža

posvećena tom zadatku 24 sata dnevno).” [10]

Međutim, treba zapaziti da isti proračuni daju našim hipotetičkim studentima-hakerima jednu

mogućnost u 200 000 razbijanja ključa u jednom danu. Tokom dugog vikenda, verovatnoća poraste na

jednu mogućnost u 66 000. Verovatnoća raste ukoliko je hardver brži ili ako se koristi više mašina. To

nije povoljna verovatnoća da bi se zarađivalo za život od konjičkih trka, ali nije ni dobar materijal za

novine. Na primer, ova verovatnoća je mnogo povoljnija od one koju Vlada daje na svojoj lutriji. „Je-

dan od milion?", ,,Ne bi moglo da se ponovi u narednih hiljadu godina?" - više nije moguće pošteno

reći tako nešto. Da li ie ovaj neprekidni rizik prihvatljiv? [10]

Primena algoritma sa 64-bitnim ključem umesto 56-bitnog ključa otežava ovaj napad 256 puta. Uz

40-bitni ključ, slika je mnogo tmurnija. Mreža od 400 računara, od kojih svaki može da izvrši 32.000

šifrovanja u sekundi, može u jednom danu da obavi napad grubom silom na 40-bitni ključ. (Vremena

su danas dosta kraća, zbog ubrzanog razvoja računara).

5.3 Neuronske mreže

Neuronske mreže nisu naročito korisne za kriptoanalizu, uglavnom zbog oblika prostora rešenja.

Neuronske mreže najbolje rade s problemima koji imaju povezana rešenja, od kojih su neka bolja nego

ostala. To omogućava neuronskoj mreži da uči i da tokom učenja predlaže sve bolja rešenja. Provalji-

vanje algoritma vrlo malo doprinosi učenju: ili pronalazite ključ ili ne. (Ovo važi za iole dobre algo-

ritme.) Neuronske mreže dobro funkcionišu u strukturiranim okruženjima, u kojima mogu da uče, ali

ne i u svetu kriptografije, koji ima visoku entropiju i naizgled je slučajan.

5.4 Virusi

Najveća teškoća u pribavljanju miliona računara koji bi radili na napadu grubom silom jeste ubedi-

vanje miliona vlasnika računara da u tome učestvuju. Mogli biste ih ljubazno zamoliti, ali je za to po-

Page 28: Dužina kriptografskog ključa

27

trebno vreme i možda će vas odbiti. Mogli biste da provalite u njihove rnašine, ali je za to potrebno još

više vremena i možete da budete uhapšeni. Mogli biste takođe upotrebiti računarski virus da biste

raširili program za razbijanje algoritma na što veći broj računara.

Napadač piše i oslobađa računarski virus. Ovaj virus ne formatira disk, niti briše datoteke, već radi

na kriptoanalitičkom probiemu napada grubom silom kad god je računar besposlen. Različita

istraživanja su pokazala da su mikroračunari besposleni tokom 70-90 procenata vremena, pa virus

nerna problema da nađe vremena za rad na svom zadatku. Ako inače ne nanosi štetu, virus može da

ostane nezapažen tokom rada.

Može se dogoditi da jedna mašina naide na pravi ključ. U tom trenutku postoje dva moguća načina

da se nastavi rad. Prvo, taj virus može da stvori drugi virus. On bi se samo reprodukovao i brisao sve

kopije virusa za razbijanje na koje naide, ali bi sadržao podatak o pravom ključu. Novi virus bi se

jednostavno prenosio kroz svet računara, dok ne bi stigao do računara osobe lcoja je napravila izvorni

virus. Drugi, domišljatiji pristup bio bi da virus na ekranu prikaže sledeću poruku:

There is a serious bug in this com-

puter. Please call 1-800-123-4567 and

read the following 64-bit number to the

operator:

xxxx xxxx xxxx xxxx

There is a $100 reward for the first

person to report this bug. [10]

Koliko je ovaj napad efikasan? Pretpostavimo da zaraženi računar obično isprobava hiljade ključeva

u sekundi. To je mnogo sporije od maksimalnih mogućnosti računara, pošto pretpostavljamo da će

povremeno raditi druge stvari. Pretpostavimo takođe da virus obično zarazi 10 miliona računara. Ovaj

virus može da provali 56-bitni ključ za 83 dana, a 64-bitni ključ za 58 godina. Možda ćete morati da

potkupljujete proizvodače antivirusnih programa, ali to je vaš problem. Svako povećanje brzina

računara ili širenja virusa povećaće efikasnost ovog napada.

Page 29: Dužina kriptografskog ključa

28

5.5 Kineska lutrija

Kineska lutrija [10] (engl. Chinese Lottery) eklektična je, ali ostvariva, preporuka za paralelnu

kriptoanalitičku mašinu velikih razmera. Zamislite da je u svaki prodati radio i televizor ugrađen čip za

razbijanje algoritma grubom silom, brzinom od milion testova u sekundi. Svaki čip je programiran ta-

ko da automatski ispita neki drugi skup ključeva čim par otvoreni tekst/šifrat stigne kroz etar. Kad god

kineska vlada hoće da provali neki ključ, ona emituje te podatke. Svi radio i televizijski aparati u zeml-

ji počinju da bruje. Može se dogoditi da se ispravan ključ pojavi na nečijem ekranu, negde u zemlji.

Kineska vlada daje nagradu toj osobi. Na taj način se vlada osigurava da će rezultat biti dostavljen brzo

i tačno i podstiče prodaju radio i televizijskih aparata s čipovima za razbijanje algoritma.

Ako svaki čovek, žena i dete u Kini poseduje radio ili televizor, tada će se ispravan ključ za 56-bitni

algoritam pojaviti za 61 sekundu. Ukoliko samo 1 od 10 Kineza poseduje radio ili televizor, tada će se

pravi ključ pojaviti za 10 minuta. Pravi ključ za 64-bitni algoritam pojaviće se za 4.3 sata, odnosno za

43 sata ako samo 1 od 10 Kineza ima radio ili televizor.

Potrebne su neke izmene da bi ovaj napad bio primenjiv u praksi. Prvo, bilo bi jednostavnije da

svaki čip isprobava slučajne ključeve umesto jedinstvenog skupa ključeva. To bi usporilo napad za oko

39 procenata, što nije mnogo, u svetlu brojeva s kojima radimo. Osim toga, kineska Komunistička par-

tija morala bi naložiti da svi slušaju ili gledaju određenu emisiju u određeno vreme, kako bi se uverila

da su svi radio i televizijski aparati uključeni kada se emituje par otvoreni tekst/šifrat. Najzad, sva-

kome bi moralo biti naređeno da pozove Partijsku Centralu ako se ključ ikada pojavi na ekranu, a za-

tim da pročita niz brojeva koji su se pojavili.

U Tabeli 2 prikazana je delotvornost Kineske lutrije za različite zemlje i različite dužine ključeva.

Kina bi svakako bila u najboljem položaju da izvrši ovakav napad, ako bi snabdela svakog čoveka,

ženu i dete televizorom ili radijom. SAD imaju manje ljudi, ali mnogo više opreme po glavi stanovni-

ka. Država Vajoming bi samostalno mogla da provali 56-bitni ključ za manje od jednog dana.

Page 30: Dužina kriptografskog ključa

29

Tabela 2. Procene napada grubom silom za mašinu Kineska lutrije

5.6 Biotehnologija

Da su biočipovi mogući, bilo bi neozbiljno da se ne iskoriste kao kriptoanalitički alat za distribuira-

ni napad grubom silom. Razmotrimo zamišljenu životinju, nazovimo je DESosaurus. Ona se sastoji od

bioloških ćelija, sposobnih da ispituju moguće ključeve. Par otvoreni tekst/šifrat emituje se ka ćelijama

preko nekog optičkog kanala (kao što vidite, ove ćelije su providne). Rešenja se prenose do DESosau-

rusovog organa za govor preko posebnih ćelija koje se kreću sistemom za cirkulaciju ove životinje.

Dinosaurus je uglavnom imao oko 1014 ćelija (ne računajući bakterije). Ako svaka od njih može da

obavi milion šifrovanja u sekundi (ovo je sigurno veliko „ako"), provaljivanje 56-bitnog ključa trajalo

bi sedam desetohiljaditih delova sekunde. Provaljivanje 64-bitnog ključa trajalo bi manje od dve dese-

tine sekunde. Provaljivanje 128-bitnog ključa ipak bi trajalo 1011 godina. [10]

Vreme za provaljivanje

ključa

Država Broj stanovnika Broj TV/radio apa-

rata 56-bitni 64-bitni

Kina 1190.431.000 257.000.000 280 sek. 20 sati

SAD 260.714.000 739.000.000 97 sek. 6,9 sati

Irak 19.890.000 4.730.000 4,2 sata 44 dana

Izrael 5.051.000 3,640.000 5,5 sati 58 dana

Vajoming 470.000 1.330.000 15 sati 160 dana

Vinemuka, Nevada 6.100 1.7.300 48 dana 34 god.

(Svi podaci su iz Wond Almanac and Book of Facts 1995. godine)

Page 31: Dužina kriptografskog ključa

30

Drugi biološki pristup je upotreba kriptoanalitičkih algi, dobijenih genetskim inženjeringom, koje bi

bile sposobne da izvrše napade grubom silom na kriptografske algoritme. Ovi organizmi bi omogućili

da se napravi distribuirana mašina s više procesora, pošto bi alge mogle da pokriju veću oblast. Par ot-

voreni tekst/šifrat emitovao bi se preko satelita. Ako bi jedan organizam došao do rezultata, on bi mo-

gao da izazove promenu boja susednih ćelija i da tako prenese rezultat satelitu.

Pretpostavimo da je tipična ćelija alge oblika kocke stranice 10 mikrona (ovo je verovatno sasvim

netačna procena), što znači da 1015 ćelija može da stane u kubni metar. Recimo da ih ubacimo ih u

okean tako da pokriju 200 kvadratnih milja (518 kvadratnih kilometara) vode, do dubine od jednog

metra i imaćemo 1023 algi koje plove u okeanu. Ako svaka od njih može da isproba milion ključeva u

sekundi, one će otkriti pravi ključ 128-bitnog algoritma za nešto više od 100 godina. Iznenadni porast

brzine obrade, prečnika algi, pa čak i zamućenje okeana koje alge mogu da izazovu značajno bi uman-

jilo ove brojeve.

5.7 Termodinamička ograničenja

Jedna od posledica drugog zakona termodinamike jeste da je određena količina energije neophodna za

predstavljanje informacija. Da bi se jedan bit zapisao promenom stanja sistema, potrebna energija nije

manja od kT, gde je T apsolutna temperatura tog sistema, a k je Bolcmanova konstanta.

Pošto je k = 1,38* 10-16 erg/°Kelvin a temperatura univerzuma je 3.2°K, idealan računar koji radi na

3.2°K trošio bi 4,4* 10 -16 erga svaki put kada postavlja ili briše bit. Da bi računar radio na temeperaturi

nižoj od one koju stvara kosmička radijacija, bila bi potrebna dodatna energija za rad toplotne pumpe.

Sunce tokom godine emituje oko 1,21 *1041 erga. To je dovoljno za oko 2,7* 1056 promena jednog bita

na našem idealnom računaru, dovoljno promena stanja da se 187-bitni brojač postavi u svaku od svojih

vrednosti. Da smo napravili Dajsonovu (Dyson) sferu oko Sunca i prikupljali svu njegovu energiju

tokom 32 godine, bez gubitaka, mogli bismo da napajamo računar da broji do 2192. Naravno, uz ovaj

brojač ne bi preostalo energije za bilo kakva korisna izračunavanja.

Međutim, to je samo jedna zvezda, i to mala. Supernova oslobađa oko 1051 erga. (Oko sto puta više

energije bilo bi oslobođeno u obliku neutrina, ali njih ne uzimamo u proračun). Ako bi se sva ta energija

Page 32: Dužina kriptografskog ključa

31

mogla usmeriti na jedno raskošno izračunavanje, tada bi se 219-bitni brojač mogao provesti kroz sva

svoja stanja.

Ovi proračuni nemaju ništa s tehnologijom uređaja; oni predstavljaju najviše što termodinamika

omogućava. Oni jasno nagoveštavaju da će napadi grubom silom na 256-bitne ključeve biti neizvodljivi

sve dok računari ne budu napravljeni od nečeg što nije materija, u nečemu što nije prostor. Dakle, po

ovim proračunima, fizički nije moguće koristiti grubu silu za napade na 256-bitne ključeve (makar po

važećim fizičkim zakonima, onakvim kakvi vladaju u mainstream naučnim krugovima).

Page 33: Dužina kriptografskog ključa

32

6. Dužina ključeva za algoritme sa javnim ključem

6.1 Neke slabosti algoritma javnog ključa

Sigurnost algoritma javnog ključa zavisi od matematičke funkciji koju primenjujemo nad njim. Ta-

ko poznajemo neke slabosti asimetričnog algoritma:

1. napadač, uz poznavanje javnog ključa, može slati primaocu svoju verziju poruke,

rešenje se pronalazi u digitalnom potpisu;

2. napadač može pokušavati pogoditi ključ u nekom razumnom vremenskom razdoblju.

Smatra se da nam RSA sa 2048bit ključem pruža sigurnost do 2030. godine. [3]

.Množenje dva velika prosta broja je jednosmerna funkcija; lako je pomnožiti brojeve i dobiti

proizvod, ali je teško faktorisati proizvod i doći do ta dva velika prosta broja. Kriptografija s javnim

ključem koristi ovu ideju da bi se napravila jednosmerna funkcija sa zamkom. Tačnije, skoro svi pret-

postavljaju da je faktorisanje teško, ali to nikada nije matematički dokazano na bilo koji način.

Faktorisanjem se vredi baviti. Lako se može zamisliti kako ćemo za 50 godina sedeti i prisećati se

dobrih, starih vremena, kada su ljudi mislili da je faktorisanje teško, kriptografija se zasnivala na fakto-

risanju, a kompanije su na tome zarađivale. Lako je zamisliti da će budući razvoj teorije brojeva

olakšati faktorisanje ili da će dostignuća u teoriji kompleksnosti učiniti faktorisanje trivijalnim. Nema

razloga da se veruje kako će se to dogoditi, a većina ljudi koji dovoljno znaju da bi imali svoje

mišljenje o tome kažu da je to malo verovatno, ali nema razloga ni da se veruje kako se to neće dogo-

diti. [10]

U svakom slučaju, današnji preovlađujući algoritmi za šifrovanje s javnim ključem zasnovani su na

tome što je teško faktorisati velike brojeve koji su proizvod dva velika prosta broja. (Ostali algoritmi

su zasnovani na diskretnom logaritamskom problemu, ali se na ova dva problema može primeniti

manje-više ista diskusija.) Ovi algoritmi su takođe osetljivi na napad grubom silom, ali drugog tipa.

Provaljivanje ovih algoritama ne uključuje isprobavanje svakog mogućeg ključa, nego pokušaje fakto-

Page 34: Dužina kriptografskog ključa

33

risanja velikog broja (ili računanje diskretnih logaritama u veoma velikom konačnom polju, što je

sličan problem). Ukoliko je broj previše mali, nemate nikakvu sigurnost. Ako je broj dovoljno velik,

sigurni ste od celokupne računarske snage na svetu, od ovog trenutka, pa dok Sunce ne postane nova

(ili crveni patuljak) (uz sadašnje razumevanje matematike). Diskusiju ćemo ograničiti na to koliko je

vremena potrebno da se faktorišu brojevi različitih dužina.

6.2 Neka predviđanja vezana za algoritam javnog ključa

Faktorisanje velikih brojeva jeste teško. Na žalost projektanata algoritama, ono postaje jednostav-

nije, što je još “gore”, ono postaje lakše brže nego sto su matematičari to očekivali. Ričard Gaj (Ri-

chard Guy) napisao je 1976. godine: “ Biću iznenađen ako neko u ovom veku bude faktorisao brojeve

reda veličine 1080 koji nisu u nekorn posebnom obliku, Ron Rivest je 1977. godine rekao da će faktori-

sanje 125-cifrenog broja trajati 40 biiijardi godina. Godine 1994. faktorisan je 129-cifreni broj.. Iz sve-

ga ovoga može se naučiti da je neozbiljno davati prognoze.

U tabeli 3 prikazani su podaci o faktorisanju u prethodnim decenijama. Najbrži algoritam za fakto-

risanje u tom periodu bilo je kvadratno sito (engl. quadratic sieve).

Ovi brojevi su prilično zastrašujući. Danas nije neobično videti da se 512-bitni brojevi koriste u sis-

temima koji funkcionišu. Faktorisanje takvih brojeva i, samim tim, potpuno narušavanje njihove sigur-

nosti, u domenu je mogućeg: to bi mogao da uradi crv na lnternetu tokom vikenda.

Računarska snaga se obično izražava u mips-godinama: milion instrukcija u sekundi (engl. million-

instruction-per-second, mips), tokom jedne godine, iznosi 3*1013 instrukcija. Po dogovoru, računar od

1 mipsa ekvivalentan je računaru DEC VAX 11/780. Stoga je mips-godina jedan računar VAX 11/780

koji radi godinu dana, ili ekvivalentna mašina. (Pentium brzine 100 MHz je računar od oko 50 mipsa, a

Intel Paragon od 1800 čvorova - oko 50.000.)

Za faktorizaciju 71-cifrenog broja bilo je 1983. godine potrebno 0,1 mips-godina. Za faktorizaciju

129-cifrenog broja bilo je 1994. godine potrebno 5000 mips-godina. Ovaj nagli porast računarske

snage proistekao je, u velikoj meri, iz uvođenja distribuirane obrade, pri čemu se koristilo vreme bes-

Page 35: Dužina kriptografskog ključa

34

poslenosti umreženih radnih stanica. Taj način rada započeo je Bob Silverman, a potpuno su ga razvili

Arjen Lenstra i Mark Manase (Mark Manasse).

Za faktorizaciju se 1983. godine koristilo 9,5 CPU sati na jednom računaru Cray X-MP, a 1994. -

5000 mips-godina i koristilo se vreme besposlenosti na 1600 računara širom sveta, oko osam meseci.

Savremene metode faktorisanja pogodne su za ovaj način distribuirane realizacije.

Slika postaje čak i gora, Nov algoritam za faktorisanje zauzeo je mesto kvadratnog sita: sito polja

opštih brojeva (engl. general number field sieve). Matematičari bi vam 1989. godine rekli da sito polja

opštih brojeva nikada neće biti upotrebljivo u praksi. Godine 1992. rekli bi vam da je upotrebljivo, ali

da je brže od kvadratnog sita samo za brojeve s više od 130 ili 150 cifara.

Danas je poznato da je brže od kvadratnog sita za brojeve s manje od 116 cifara. Sito polja opštih

brojeva može da faktoriše 512-bitni broj preko 10 puta brže nego kvadratno sito. Za izvršavanje ovog

algoritma bilo bi potrebno manje od godinu dana na mašini Intel Paragon od 1800 čvorova.

Godina

Broj faktorisanih dekadnih cifara Koliko puta je teže faktorisati

512-bitni broj

1983. 71 >20 miliona

1985. 80 >2 miliona

1988. 90 250.000

1989. 100 30.000

1993. 120 500

1994. 129 100

Tabela 3. Faktorisanje primenom kvadratnog sita

U tabeli 4 prikazane su vrednosti mips-godina neophodnih za faktorisanje brojeva različitih veličina

pomoću današnjih realizacija sita polja opštih brojeva.

Page 36: Dužina kriptografskog ključa

35

Osim toga, sito polja opštih brojeva postaje sve brže. Matematičari i dalje pristižu s novim metoda-

ma, novim optimizacijama, novim tehnikama. Nema razloga da se ovakav trend ne nastavi. Srodan al-

goritam, sito polja posebnih brojeva (engl. special number field sieve), već može da faktoriše brojeve

određenog oblika (uglavnom se takvi ne koriste u kriptografiji) mnogo brže nego što sito polja opštih

brojeva faktoriše brojeve iste veličine. Nije bezrazložna pretpostavka da se sito polja opštih brojeva

može optimizovati da radi istom brzinom, a moguće je da NSA (National Security Agency) već zna

kako to da uradi.

Tabela 4. Faktorisanje primenom sita polja opštih brojeva

U tabeli 5. prikazane su vrednosti mips-godina potrebnih za faktorisanje brojeva razlićitih veličina

pomoću sita polja posebnih brojeva.

Na radionici Evropskog instituta za sigurnost sistema (European Institute for System Security),

1991. godine, učesnici su se složili da 1024-bitni modul treba da bude dovoljan za dugoročne tajne do

2002. godine. Međutim, upozorili su: „iako se učesnici ovog skupa osećaju najkvalifikovanijima za

svoje oblasti, ova izjava, s obzirom na dugotrajnu sigurnost treba da bude prihvaćena sa oprezom". To

je dobar savet.

Mudar kriptograf je ultrakonzervativan kada bira dužinu ključa za algoritam s javnim ključem. Da

biste odredili koliko treba da bude dugačak ključ, neophodno je da razmotrite planiranu sigurnost i rok

važenja ključa, kao i trenutne domete u oblasti faktorisanja. Krajem devedesetih vam je trebao 1024-

Broj bitova Za faktorisanje potrebno mips-godina

512 30.000

768 2*108

1024 3* 1011

1280 1*1014

1536 3*1016

2048 3*1020

Page 37: Dužina kriptografskog ključa

36

bitni broj da biste ostvarili onaj nivo bezbednosti koji ste postizali 512-bitnim brojem u ranim osamde-

setim. Ako hoćete da vaši ključevi ostanu sigurni u narednih 20 godina, 1024 bita nije dovoljno.

Tabela 5. Faktorisanje primenom sita polja posebnih brojeva

Čak i ukoliko vaše tajne nisu vredne napora neophodnog za faktorisanje vaših modula, možete biti u

opasnosti. Zamislite automatski bankarski sistem koji koristi RSA radi bezbednosti. Melori može na

sudu da kaže: Da li ste čitali u novinama iz 1994. da je RSA-29 razbijen i da 512-bitne brojeve može

da faktoriše svaka organizacija koja je spremna da plati par miliona dolara i sačeka nekoliko meseci?

Moja banka koristi 512-bitne brojeve i, uzgred, ja nisam podizao novac ovih sedam puta." Čak i da

Melori laže, sudija će verovatno zahtevati dokaze od banke.

Zašto ne koristiti 10.000-bitne ključeve? Možete to da uradite, ali, imajte na umu da je vreme

izračunavanja duže što su ključevi duži. Vama treba ključ koji je dovoljno dugačak da bi bio siguran, a

dovoljno kratak da bi bio pogodan za računanje.

U Tabeli 6. prikazane su neke preporuke za dužine javnih ključeva (preporuke date 1995.godine),

prema tome koliko dugo ključ treba da bude siguran. Za svaku godinu navedene su tri dužine ključeva:

ključ bezbedan od napada pojedinca, od velike korporacije i od vrhovne vlasti.

Broj bitova Za faktorisanje potrebno mips-godina

512 <200

768 100,000

1024 3*107

1280 3*109

1536 2*1011

2048 4*1014

Page 38: Dužina kriptografskog ključa

37

Godina Pojedinac Korporacija Vlada

1995. 768 1280 1536

2000. 1024 1280 1536

2005. 1280 1536 2048

2010. 1280 1536 2048

2015. 1536 2048 2048

Tabela 6. Preporučene dužine ključa za algoritme sa javnim ključevima (u bitovima)

Projekat faktorisanja 129-cifrenog broja zauzeo je procenjena 0.03% ukupne računarske snage

interneta, i to bez naročitog truda. Nije nerazumno pretpostaviti da projekat sa dobrim publicitetom

može da osvoji 2% ukupne računarske snage u svetu na godinu dana.

Pretpostavimo da posvećeni kriptoanalitičar može da dobije 10 000 mips-godina, da velika

korporacija može da dobije 10 mips-godina i da vlada velike zemlje može da dobije 10 mips-

godina. Pretpostavimo takođe da će se računarska moć povećavati za 10 puta svakih 5 godina. I

najzad, pretpostavinio da nam napredak u teoriji faktorisanja omogućava da faktorišemo opšte brojeve

brzinama sita polja posebnih brojeva.

Ne treba zaboraviti da se uzme u obzir vrednost ključa. Javni ključevi se često koriste za osigura-

vanje veoma vrednih stvari na duže vreme: glavni ključ banke za sistem digitalnog novca, ključ koji

vlada koristi za sertifikaciju pasoša ili kijuč za digitalne potpise javnog beležnika. Verovatno nije

vredno truda da se potroše meseci računarskog vremena radi provaljivanja privatnog ključa nekog po-

jedinca, ali ako s provaljenim ključem možete da štampate sopstveni novac, ta ideja postaje zanimljivi-

ja. Ključ od 1024 bita dovoljno je dugačak za potpisivanje nečega što će biti verifikovano u roku od

jedne nedelje, meseca, pa čak i nekoliko godina. Ali, ne želimo da se za 20 godina pojavimo na sudu s

digitalno potpisanim dokumentom i da nam protivnička strana prikaže kako falsifikuje dokument sa

istim tim potpisom.

Page 39: Dužina kriptografskog ključa

38

Godina Dužina ključa (u bitovima)

1995. 1024

2005. 2048

2015. 4096

2025. 8192

2035. 16.384

2045. 32.768

Tabela 7. Dugoročna predviđanja mogućnosti faktorisanja

Predviđanja za period dalji od bliske budućnosti još su ne ozbiljnija. Ko zna kakva će se dostignuća

pojaviti u računarstvu, računarskim mrežama i matematici do 2040. godine? Međutim, ako sagledate

celu siiku, u svakoj deceniji možemo da faktorišemo dvostruko duže brojeve nego u prethodnoj. To

vodi do Tabele 7.

S druge strane, tehnike faktorisanja mogu da dostignu svoju tačku omega mnogo pre 2045. godine.

Za petnaest godina možda ćemo biti u stanju da faktorišemo bilo šta. Ipak, to je malo verovatno.

Neće se svi složiti sa ovim preporukama. Agencija NSA je zahtevala ključeve dužine od 512 do

1024 bita za svoj Digital Signature Standard, to je mnogo manje nego što preporučuje Tabela 7 za

dugoročnu sigurnost. Paket Pretty Good Privacy ima maksimalnu dužinu RSA ključa od 2047 bitova.

Arjen Lenstra, najuspešniji stručnjak za faktorisanje, odbija da daje predviđanja. U Tabeli 8. prikazane

su dužine ključeva koje preporučuje Ron Rivest. Preporuka je iz 1990. Godine. Dok ove analize izgle-

daju dobro na papiru, skorija istorija pokazuje da se iznenađenja redovno dešavaju. Ima smisla izabrati

ključeve tako da budu otporni u slučaju budućih iznenađenja.

Page 40: Dužina kriptografskog ključa

39

Tabela 8. Rivestove optimistične preporuke za dužinu ključa (u bitovima)

Niske procene pretpostavljaju da se koristi budžet od 25 000 dolara, algoritam kvadratnog sita i

tehnološki napredak od 20 procenata godišnje. Srednje procene pretpostavljaju budžet od 25 miliona

dolara, algoritam sita polja opštih brojeva i tehnološki napredak od 33 procenta godišnje. Visoke pro-

cene pretpostavljaju budžet od 25 milijardi dolara, algoritam sita polja opštih brojeva koji radi brzinom

algoritma sita polja posebnih brojeva i tehnološki napredak od 45 procenata godišnje.

6.3 DNK izračunavanje

Sada dolazi ono neobično. Leonard M. Edlman (Adleman) zaista je 1994. godine prikazao metodu

rešavanja jednog NP-potpunog problema u biohemijskoj laboratoriji, koristeći molekule DNK da bi

izneo pretpostavke u revšenjima tog problema. Problem koji je Edleman rešio bio je primer usmerene

Hamiltonove staze (engl. Directed Hamiltonian Path): za datu mapu gradova koji su povezani jednos-

mernim putevima, treba pronaći stazu od Grada A do Grada Z, koja tačno jednom prolazi kroza sve

druge gradove na mapi. Svaki grad je predstavljen drugačijim slučajnim 20-baznim nizom DNK;

pomoću konvencionalnih tehnika molekularne biologije, Edlman je sintetizovao 50 pikomola (30 mi-

liona miliona molekula DNK niza koji predstavlja svaki grad. Svaki put je takode predstavljen 20-

Godina Niska Srednja Visoka

1990. 398 515 1289

1995. 405 542 1399

2000. 422 572 1512

2005. 439 602 1628

2010. 455 631 1754

2015. 472 661 1884

2020. 489 677 2017

Page 41: Dužina kriptografskog ključa

40

baznin DNK nizom, ali ovi nizovi nisu izabrani slučajno: oni su pametno izabrani tako da se „početni"

kraj DNK niza koji predstavlja put od Grada P do Grada K („Put PK") lepi za DNK niz koji predstavl-

ja Grad P, a kraj Puta PK lepi se za Grad K. [10]

Edlman je sintetizovao 50 pikomola DNK da bi predstavio svaki put, izmešao ih sa DNK koji

predstavlja sve gradove i dodao ferment ligazu, koji povezuje krajeve DNK molekula. Pametno pove-

zivanje DNK nizova puteva i DNK nizova gradova postiže se ligazom koja pravilno vezuje DNK ni-

zove puteva. To znači da će „izlazni” kraj puta od P do K uvek biti povezan sa „ulaznim" krajem ne-

kog puta koji počinje u Gradu K, a nikad sa „izlaznim" krajem biio kog puta ili sa „ulaznim" krajem

puta koji polazi od nekog drugog grada, a ne od K. Posle pažljivo ograničenog vremena reakcije, liga-

za pravi veliki broj DNK nizova koji predstavijaju ispravne, ali slučajne staze na mapi.

Tako Edlman pomoću slučajnih staza može da pronađe i najmanji trag, možda čak i jedan molekul

DNK, koji predstavlja rešenje datog problema, Primenom uobičajenih tehnika molekularne biologije,

on odstranjuje sve DNK nizove koji predstavljaju predugaćke ili prekratke staze. (Broj puteva u

traženoj stazi mora da bude jednak broiu gradova umanjenom za jedan.) Zatim se odstranjuju svi DNK

nizovi koji ne prolaze kroz Grad A, pa oni na kojima nije Grad B i tako daije. Ako neki DNK preživi

ovu trijažu, ispituje se; kako bi se pronašla sekvenca puteva koje predstavlja, a to je rešenje usmerene

Hamiltonove staze.

Po definiciji, jedan primer nekog NP-potpunog problema može se transformisati, u poiinomijalnom

vremenu, u primer bilo kog drugog NP-potpunog problema, a samim tim i u primer usmerene Hamil-

tonove staze. Od sedamdesetih godina, kriptolozi pokušavaju da koriste NP-potpune probleme u krip-

tografiji s javnim ključem.

Dok je primer koji je Edlman rešio bio veoma skroman (sedam gradova na njegovoj mapi problem

je koji može da se reši tokom nekoliko minuta ispitivanja), ova tehnika je u začetku i nema nikakvih

prepreka da se proširi na veće probleme. Prema tome, argumenti o sigurnosti kriptografskih protokola

koji su zasnovani na NP-potpunim problemima, a ranije su počinjali rečima: „Pretpostavimo da nepri-

jatelj ima milion procesora, od kojih svaki može da obavi milion testova svake sekunde" mogli bi

uskoro biti zamenjeni argumentima koji počinju ovako: „Pretpostavimo da neprijateij ima hiljadu su-

dova za fermentaciju, a svaki je kapaciteta 20 000 litara”.

Page 42: Dužina kriptografskog ključa

41

6.4 Kvantno izračunavanje

Sada stvari postaju još čudnije. U osnovi kvantnog izračunavanja nalazi se Ajnštajnov princip dual-

nosti talas-čestica. Foton može istovremeno da postoji u velikom broju stanja. Klasičan primer je da se

foton ponaša kao talas kada naiđe na delimično posrebreno ogledalo; on se i reflektuje i prenosi, kao

što bi se talas u okeanu koji udara u greben s malim otvorom i odbijao od grebena i prolazio kroz nje-

ga. Međutim; kada se foton meri, on se ponaša kao čestica i može da se otkrije samo jedno stanje.

Piter Šor (Peter Shor) daje skicu mašine za faktorisanje, zasnovane na principima kvantne meha-

nike. Za razliku od klasičnog računara koji se može posmatrati kao da ima jedno fiksno stanje u jed-

nom trenutku, kvantni računar ima intemu talasnu funkciju, koja je superpozicija kombinacije mogućih

osnovnih stanja. Izračunavanja transformišu tu talasnu funkciju, menjajući ceo skup stanja u jednoj

operaciji. Na taj način, kvantni računar je poboljšan klasični automat s konačnim brojem stanja: on ko-

risti kvantna svojstva koja mu omogućavaju da faktoriše u polinomijalnom vremenu, što teoretski

omogućava provaljivanje kriptosistema zasnovano na faktorisanju ili diskretnom logaritamskom prob-

lemu.

Postoji opšta saglasnost da su kvantni računari kompatibilni sa osnovnim zakonima kvantne meha-

nike. Medutim, malo je verovatno da će kvantni računar za faktorisanje biti napravljen u doglednoj

budućnosti... ako ikada i bude napravljen. Velika prepreka je dekoherencija, koji prouzrokuje gubljenje

različitosti među složenim talasnim oblicima i otkazivanja računara. Dekoherencija će izazvati otkazi-

vanje računara koji radi na 1° Kelvina, posle samo jedne nanosekunde. Osim toga, bio bi potreban

veoma veliki broj logičkih kola (engl. Gates) da bi se napravio kvantni uređaj za faktorisanje, pa izgle-

da kako ovu mašinu nije moguće napraviti. Šorov projekat zahteva kompletno stepenovanje po mod-

ulu. Ne može se koristiti interni generator radnog takta, tako da bi bilo potrebno više miliona ili mili-

jardi logičkih kola za faktorisanje kripiografski značajnih brojeva. Ako n kvantnih iogičkih kola ima

minimalnu verovatnoću otkaza p tada je prosečan broj pokušaja za jedno uspešno izvršavanje jednak

(1/(1 - p))n. Broj potrebnih logičkih kola verovatno raste polinomijalno s dužinom broja (u bitovirna),

pa bi broj neophodnih pokušaja bio supereksponencijalan s dužinom upotrebljenih hiojeva, što je lošije

od faktorisanja probnim deljenjem! Iako je kvantno faktorisanje oblast koja izaziva uzbuđenje u aka-

demskirn krugovima, veoma je mala verovatnoća da će imati praktičan značaj u doglednoj budućnosti.

Page 43: Dužina kriptografskog ključa

42

7. Upoređivanje dužina ključeva simetričnih

algoritama i algoritama s javnim ključem

Sistem će biti napadnut u najslabijoj tački. Ako projektujemo sistem koji koristi i simetričnu kripto-

grafiju i kriptografiju s javnim ključem, dužine ključeva treba da budu takve da bude podjednako teško

napasti sistem preko bilo kog mehanizma. Nema smisla da se koristi simetrični algoritam sa 128-

bitnim ključem uz algoritam s javnim ključem dužine 386 bitova; kao što nema smisla ni koristiti

simetrični algoritam sa 56-bitnim ključem i algoritam s javnim ključem dužine 1024 bita.

U Tabeli 9. prikazane su dužine modula javnih ključeva čije je faktorisanje približno teško kao na-

pad grubom silom na simetrične ključeve popularnih dužina. Ova tabela kaže sledeće: ako se dovoljno

brinemo o bezbednosti i izaberemo simetrični algoritam s ključem dužine 112 bitova, tada za algoritam

s javnim ključem treba da izaberemo modul dužine oko 1792 bita. Uopšteno govoreći, za algoritam s

javnim ključem treba da izaberemo dužinu koja je bezbednija od dužine ključa simetričnog algoritma.

Javni ključevi se obično duže koriste i treba da štite veću količinu informacija.

Simetrični algoritam Algoritam s javnim ključem

56 bitova 384 bita

64 bita 512 bitova

80 bitova 768 bitova

112 bitova 1792 bita

128 bitova 2304 bita

Tabela 9. Dužine ključeva simetričnih algoritama i algoritama s javnim ključem sa sličnom

otpornošću na napade grubom silom

Page 44: Dužina kriptografskog ključa

43

8. Rođendanski napadi na jednosmerne heš funkcije

Postoje dve vrste napada grubom silom na jednosmerne heš funkcije. Prvi napad je očigledniji: za

datu heš vrednost poruke, H(M), napadač bi hteo da napravi drugi dokument, M', tako da bude H(M) =

H(M'). Drugi napad je prikriveniji: napadač bi hteo da pronađe dve slučajne poruke, M i M', tako da

važi H(M) = H(M'). Ovaj napad se zove kolizija (engl. collision) i mnogo je jednostavniji od prvog.

Rođendanski paradoks je standardni statistički problem. Koliko osoba treba da bude u prostoriji da

bi bilo verovatnije da je neko rođen istog dana i meseca kad i vi nego da nije. Odgovor je 253. Dalje,

koliko osoba treba da bude u prostoriji da bi bilo verovatnije da su dve rođene istog dana i meseca ne-

go da nisu? Odgovor je iznenađujuće mali: 23. Ako su 23 osobe u prostoriji, postoji 253 različitih pa-

rova ljudi u toj prostoriji.

Pronalaženje nekoga sa određenim rođendanom analogno je prvom napadu, a pronalaženje dvoje

ljudi sa istim slučajnim rođendanom analogno je drugom napadu. Drugi napad je poznat kao

rođendanski napad (engl. birthdav aitack).

Pretpostavimo da je jednosmerna heš funkcija bezbedna i da je napad grubom silom najbolji izbor.

Njena izlazna vrednost ie dužine m bitova. Za pronalaženje poruke čija je heš vrednost jednaka zadatoj

heš vrednosti bilo bi potrebno hešovati 2m slučajnih poruka. Pronalaženje dve poruke s jednakim heš

vrednostima zahtevalo bi hešovanje svega ퟐ풎 ퟐ⁄ slučajnih poruka. Mašini koja hešuje milion poruka u

sekundi trebalo bi 600 000 godina da pronađe drugu poruku koja ima isti 64-bitni heš. Ista mašina bi

mogla da pronađe par poruka sa istom heš vrednošću za oko sat vremena.

To znači sledeće: ako smo zabrinuti zbog rođendanskog napada, treba da izaberemo dvostruko dužu

heš vrednost od one za koju inače mislimo da nam treba. Na primer, ako hoćemo da oborimo

verovatnoću da nam neko provali sistem na manje od 1 u 280, upotrebićemo 160-bitnu jednosmernu

heš funkciju.

Page 45: Dužina kriptografskog ključa

44

9. Koliko dugačak treba da bude ključ?

Ne postoji jedinstven odgovor na ovo pitanje: sve zavisi od situacije. Da bismo odredili koliki nam

stepen sigurnosti treba, moramo sebi da postavimo neka pitanja. Koliko su vredni naši podaci? Koliko

dugo treba da budu sigurni? Kakve resurse imaju naši neprijatelji?

Lista kupaca može da vredi 1000 dolara. Finansijski podaci o slučaju teškog razvoda mogu vredeti

10 000 dolara. Reklamni i marketinški podaci velike kompanije mogu biti vredni milion dolara. Glavni

ključ sistema za rad s digitalnim novcern može vredeti milijarde.

U svetu trgovine, vreme tokom koga se čuvaju tajne izražava se u minutima. U svetu novinarstva,

današnje tajne su sutrašnji naslovi. Informacije o razvoju proizvoda možda treba držati u tajnosti godi-

nu ili dve. Podaci o popisu u SAD-u po zakonu treba da ostanu tajna čitavih 100 godina.

Lista gostiju za rođendansku žurku iznenađenja zanimljiva je samo radoznalim rođacima.

Korporacijski podaci o prodaji interesantni su konkurentskim kornpanijama. Vojne tajne su zaniml-

jive vojskama drugih zainteresovanih zemalja.

I bezbednosne zahteve možemo definisati pomoću takvih pojmova. Na primer:

Dužina ključa mora biti tolika da verovatnoća da će napadač koji uloži 100 miliona dolara uspeti da

provali sistem za godinu dana ne bude veća od 1 prema 232 , čak i pod pretpostavkom tehnološkog

napretka od 30 procenata godišnje u tom periodu.

U Tabeli 10. procenjeni su zahtevi za tajnošću nekoliko vrsta informacija.

Page 46: Dužina kriptografskog ključa

45

Tip saobraćaja Rok važenja Minimalna dužina ključa

Vojne taktičke informacije minuta, sati 56-64 bita

Najava proizvoda, spajanje kompanija, kamate dani, sedmice 64 bita

Dugoročni poslovni planovi godine 64 bita

Industrijske tajne (npr.recept za koka-kolu) decenije 112 bitova

Tajna H bombe >40 godina 128 bitova

Identiteti špijuna >50 godina 128 bitova

Lične tajne >50 godina 128 bitova

Diplomatski promašaji >65 godina najmanje 128 bitova

Podaci s popisa u SAD 100 godina najmanje 128 bitova

Tabela 10. Bezbednosni zahtevi za različite vrste informacija

Buduću računarsku snagu je teže proceniti, ali postoji logično pravilo palca: količnik efikasnosti

računarske opreme i cene udvostručava se svakih 18 meseci, a povečava 10 puta svakih pet godina. To

znači da će za 50 godina najbrži računari biti 10 milijardi puta brži od današnjih! Imajmo na umu i to

da se ovi brojevi odnose samo na računare opšte namene; ko zna kakva će se specijalizovana oprema

za provaljivanje kriptosistema pojaviti u sledećih 50 godina?

Pod pretpostavkom da će se jedan kriptografski algoritam koristiti 30 godina, možemo da steknemo

uvid u to koliko mora da bude bezbedan. Algoritam koji se napravi danas, verovatno neće biti u opštoj

upotrebi do 2017. godine, a i dalje će se koristiti 2038. godine za šifrovanje poruka koje treba da osta-

nu tajne bar do 2088. godine.

Page 47: Dužina kriptografskog ključa

46

10. ZAKLJUČAK

O sigurnosti podataka, komunikacija, informacija i svega ostalog mora se razmišljati kao o jednom

lancu. Sigurnost celog sistema je čvrsta koliko i njegova najslabija karika. Sve mora da bude sigurno:

kriptografski algoritmi, protokoli, upravljanje ključevima, i više od toga. Ako su algoritmi odlični, ali

je generator slučajnih brojeva slab, svaki mudar kriptoanalitičar napašće vaš sistem tako što će generi-

sati slučajne brojeve. Ukoliko popunite tu prazninu, ali zaboravite da bezbedno izbrišete memorijsku

lokaciju koja sadrži ključ, kriptoanalitičar će provaliti vaš sistem na taj način. Ako sve uradite ispravno

i slučajno pošaljete elektronskom poštom primerak svojih tajnih datoteka časopisu Wall Street fournal,

tada niste morali ni da se trudite oko zaštite. [10]

To nije pošteno prema kriptografima. Projektant sigurnog sistema, mora da razmišlja o svim

mogućim načinima napada i da se zaštiti od njih, a kriptoanalitičar mora samo da pronađe jednu puko-

tinu u vašem sigurnosnom sistemu i da je iskoristi.

Kriptografija je samo deo sigurnosti, i to često veoma mali deo. To je matematička osnova da se sis-

tem učini sigurnim, što se razlikuje od stvarnog obezbeđivanja sistema. Kriptografija ima svoje „kral-

jice veličine" - ljude koji toliko vremena provode raspravljajući o tome koliko dugačak ključ treba da

bude, da zaboravljaju na sve ostalo. Ako tajna policija hoće da zna šta je u vašem računaru, mnogo je

lakše da vam provali u kuću i instalira kameru koja snima šta je na vašem ekranu, nego da kriptoanali-

zira vaš disk.

Ipak, to ne znači da se treba predate. Naprotiv, svaki razbijen ključ mora kriptografu poslužiti kao

novo iskustvo, jer pametan uči na svojim greškama. Još više je važno učiti na tuđim greškama, odnos-

no biti u toku u svetu kriptografije i kriptoanalize.

Ono što sa sigurnošću znamo je da tehnologija, a naročito računarska tehnika napreduje eksponenci-

janim progresijama, i kao što pre 25 godina nismo mogli da zamislimo mobilne telefona, a sada je

život nezamisliv bez smartphone-a, tako ne možemo ni da pretpostavimo kako će se tehnologija razvi-

jati u sledećih pola veka. Da li ćemo morati da kriptujemo implante u sopstvenoj glavi da nam neko ne

Page 48: Dužina kriptografskog ključa

47

bi čitao misli? Ili ćemo svakodnevno morati da menjamo ključeve za svoj virtuelni finansijski status da

ne bismo bankrotirali odjednom zaslugom nepoštenog eksperta za kriptoanalizu?

Ono što sa sigurnošću znamo je da trenutno stvari stoje ovako: ako uzmemo u obzir milione

umreženih računara, zombie viruse pa i Moore-ov zakon da se svakih 13 meseci snaga računara

udvostručuje, tada i kriptografi moraju linearno povećavati dužinu ključa kako bi se zaštitili od napada

sirove sile. No simetrični i asimetrični algoritmi su dizajnirani tako da ne mogu priuštiti velike

ključeve jer povećanjem dužine ključa vreme šifrovanja ili dešifrovanja raste (mada se povećava i

brzina računara, tako da realna brzina ostaje ista). Ovaj problem rešiv je jedino hibridnim algoritmom

ili algoritmom jednokratnog bloka kako je objasnio C. Shannon.

Jedna stvar stoji, Cloude Shannon jednostavnom algebrom dokazuje 1949. godine da je veličina

ipak bitna.

Page 49: Dužina kriptografskog ključa

48

Literatura

[1] http://www.b92.net/tehnopolis/vesti.php?yyyy=2013&mm=02&nav_id=687817

[2] C. Shannon - "Communication Theory of Secrecy Systems", 1949. Godina

[3] http://www.scribd.com/doc/79832109/Problem-Duzine-Kljuca

[4] Željko Panian – informatički enciklopedijski rječnik

[5] Dejan Simić, “Tehnike zaštite u računarskim mrežama“, Fakultet Organizacionih Nauka Beograd, PPT Prezentacija, Beograd, Jun 2002.

[6] Zoran Bobar, “Zaštita računarskih mreža Ministarstva odbrane i vojske srbije primenom virtuelnog honeyneta“, Vojnotehnički glasnik 3/09, UDC: 004.7.056.53, Beograd, 2009

[7] Zaštita podataka u računarskim mrežama, MTVU lekcije, (http://www.knowledgebank1.

org/poslovna_informatika_fpsvs_1_svi_06/lekcije/lekcija7.pdf), 2009.

[8] Univerzitet u Nišu, Elektronski fakultet “Zaštita podataka primenom kriptografskih metoda”, Kovačević Vladimir http://www.scribd.com/doc/56264884/Zastita-podataka

[9] http://biblio.irb.hr/datoteka/544503.RadniOkvirZaSigurnuKomunikaciju.pdf

[10] D. B. Drajić: "Uvod u teoriju informacija i kodovanje”, Akademska misao, Beograd, 2000.