29
Sveuˇ ciliˇ ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveuˇ ciliˇ sni preddiplomski studij matematike Ljubica Markota RSA i Rabinov kriptosustav Zavrˇ sni rad Osijek, 2011.

Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

  • Upload
    others

  • View
    14

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Sveuciliste J.J. Strossmayera u OsijekuOdjel za matematiku

Sveucilisni preddiplomski studijmatematike

Ljubica Markota

RSA i Rabinov kriptosustav

Zavrsni rad

Osijek, 2011.

Page 2: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Sveuciliste J.J. Strossmayera u OsijekuOdjel za matematiku

Sveucilisni preddiplomski studijmatematike

Ljubica Markota

RSA i Rabinov kriptosustav

Zavrsni rad

MENTOR:

doc.dr.sc. Ivan Matic

Osijek, 2011.

1

Page 3: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Sazetak. Sigurna komunikacija danas je od iznimne vaznosti. Pojavljuje se problemkako sacuvati povjerljivost podataka i osigurati da njihov sadrzaj bude poznat samo osobamakoje sudjeluju u komunikaciji. Taj problem nastoji rijesiti kriptografija (sifriranjem poruka),posebno kriptosustavi s javnim kljucem koji problem javnog prijenosa tajnih podataka pre-vode u problem rjesavanja teskih matematickih problema koje napadac ne moze rijesiti urazumnom vremenu. U radu se opisuju 2 takva kriptosustava: RSA kriptosustav i Rabinovkriptosustav. Oba koriste teskocu faktorizacije prirodnog broja n, Rabinov kriptosustav koristiproblem kvadratnog korijena, a u funkcioniranju koriste dostignuca iz Teorije brojeva. Osimnjihovih prednosti spominju se metode koje kriptoanaliza koristi u desifriranju poruka pove-zane s njihovim mogucim slabostima. Analizom RSA kriptosustava i Rabinova kriptosustavase nastoji odgovoriti na pitanja o njihovoj efikasnosti,sigurnosti i primjeni.

Kljucne rijeci: kriptosustav s javnim kljucem, RSA kriptosustav, Rabinov kriptosustav,problem faktorizacije, jednosmjerne funkcije, verizni razlomci, Diofantske aproksimacije,problem kvadratnog korijena

Abstract. Nowadays secure communication is very important. A problem appears onhow to preserve confidentiality of information and ensure that the content is known only to thepersons involved in the proces of communication. Cryptography is trying to solve this problem(by message encryption), especially public key cryptosystems which transform a problem ofpublic transmission of secret informations into a problem of solving difficult mathematicalproblems that the attacker can’t solve in a reasonable time. The paper describes two suchcryptosystems: RSA cryptosystem and Rabin’s cryptosystem. They both use the integerfactorization problem, Rabin’s cryptosystem uses the square root problem and they are bothbased on many results from the Number Theory. Beside their advantages there are somemethods mentioned which are used in cryptoanalysis in order to decrypt messages which areconnected with their possible weakneses. With the analysis of RSA and Rabin’s cryptosystemsthe paper tries to give answers about their security, efficiency and application.

Key words: public key cryptosystem, RSA cryptosystem, Rabin’s cryptosystem, integerfactorization problem, one-way functions, continued fractions, Diophantine approximations,the square root problem

2

Page 4: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

1 Uvod

Ljudi su oduvijek imali potrebu komunicirati. Komunikacija je najjednostavnije recenorazmjena misli, ideja, stavova ili ukratko poruka. Ona je nuzna u svim sferama zivota,ponajprije u osobnom razvoju pojedinca u kojem je ona glavni alat ucenja, stjecanja no-vih znanja i vjestina, ali je isto tako neophodna u raznim sferama poslovnog svijeta (npr.ekonomija, pravo ...). Dakle, osim sto covjek ne moze bez komunikacije, komunikacija nemoze bez covjeka. Covjek je pokretac i inicijalizator komunikacije. Najcesca komunikacijaje usmena, ali ona cesto nije ostvariva, ponajprije zbog fizicke udaljenosti sugovornika pa jecovjek prisiljen razvijati i druge oblike komunikacije. Jedan oblik kojeg je covjek (oduvijek)ostvarivao je taj u kojem bi podaci koji ce se razmijeniti bili nerazumljivi svima osim onimakoji sudjeluju u razmjeni, dakle taj oblik je utemeljen na zastiti i tajnosti podataka. Drugimrijecima, ljudi zele sigurno komunicirati.

Danas je sigurnost temeljni uvjet opstanka pojedinca, ali i svih drustvenih grupa. Rijeczastita je prisutna u svakom segmentu ljudskog drustva. Danasnjica bi bila nezamisliva bezkreditnih kartica, bankomata, razmjene podataka preko interneta, kupnje preko interneta...Svim nabrojanim pojmovima je zajednicko to sto su to (neki) dijelovi sustava koji se temeljena tajnosti podataka. Prirodno je postaviti pitanje sto je to sto omogucuje covjeku da sacuvatajnost svojih podataka. Odgovor na to daje kriptografija.

Kriptografija je znanstvena disciplina koja proucava metode skrivanja podataka, dolaziod grcke rijeci i prevodi se kao tajnopis. Kriptografija ima veoma zanimljivu povijest.Poceci joj sezu jos u doba Egipcana, a narocito u doba Grcke gdje je poznata prva “naprava”zvana skital. Skital je stap na kojem su se pisale poruke i koje je mogao razumjeti samoonaj tko je imao istu debljinu stapa. Kasnije se javljaju razne metode i nacini transformira-nja poruka, primjerice Cezarova sifra u kojoj se svako slovo pomicalo za 3 mjesta unaprijed(npr. A→ D), transpozicijske sifre gdje se mijenjao polozaj rijeci, Playfairova sifra i Hillovasifra gdje su koristene matrice i njezina svojstva. Razvojem znanosti i industrije izumljenesu razne naprave za sifriranje kao npr. Hebernov elektricni stroj za kodiranje i vjerojatnonajpoznatiji od svih, ENGIMA koja je koristena u vojne svrhe gdje je kriptografija imalanajvecu ulogu. Najveci razvoj kriptografija duguje razvoju racunalnih sustava gdje je ne-izostavan dio sigurnosti, ali svakako i razvoju razlicitih matematickih grana zbog kojeg sekriptografija sirila i nadogradivala. Sezdesetih godina 20. st. se pojavila potreba uvodenjastandarda u kriptografiji i to zbog razvoja financijskih transakcija koji iniciraju nastanakkriptosustava. Kriptografija tada postaje moderna znanost nedostupna pojedincu te njezinrazvoj pripada onima koji imaju moc i novac.

Ipak, unatoc svom razvoju kroz stoljeca ideja kriptografije je jednaka bez obzira na vre-mensko razdoblje. Ideja kriptografije je veoma jednostavna; sastoji se u tome da se pronadesto efikasnija metoda koja bi poruku koja se zeli poslati “zamaskirala”, tj. sifrirala u oblikkoji bi svakom bio vidljiv, ali nerazuman osim osobi kojoj je poruka namijenjena. Cilj jeda poruka sigurno stigne od posiljatelja k primatelju kroz nesiguran komunikacijski kanal.Upravo tu nastupa matematika. Matrice, permutacije, grupa ostataka modulo n, faktoriza-cija, Legendreov teorem, Kineski teorem o ostacima, Euklidov algoritam, Eulerova funkcijate ostale brojne funkcije samo su neki rezultati iz matematike koji se koriste za pretvorbuporuke iz jednog oblika u drugi. Bitno je naglasiti da kriptografija unatoc svojoj vezanostiza racunalne znanosti ima temelje u matematici, baza kriptografije je matematika, a najvecuprimjenu svakako ima teorijska matematika i to ponajprije Teorija brojeva.

3

Page 5: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Paralelno kriptografiji takoder se razvijala i kriptoanaliza, znanstvena disciplina koja nas-toji odgonetnuti, tj. desifrirati sadrzaj sifrirane poruke. Kriptoanaliza je takoder zasnovanana raznim matematickim rezultatima i dostignucima mnogobrojnih matematicara.

Znanost koja objedinjuje kriptografiju i kriptoanalizu se zove kriptologija. Kriptografijaje bila prisiljena pronalaziti te modificirati nove nacine kodiranja upravo zbog razvoja kripto-analize, a istodobno je kriptoanaliza bila prisiljena traziti nove nacine i metode dekodiranjazbog razvoja kriptografije. Najzanimljivije od svega je da gotovo svim danasnjim modernimi raznim kriptografskim funkcijama za sifriranje i desifriranje te algoritmima osnovu pred-stavljaju teoremi stari i vise od 2000 godina iako na prvi pogled djeluju sasvim teoretski iapstraktni, no na njima pociva svaki danasnji moderni kriptosustav. Kriptografija je savrsenprimjer spoja teorije i prakse.

U ovom radu bit ce navedeni osnovni pojmovi iz kriptografije neophodni za razumije-vanje kriptografije, ukratko ce se opisati pojam kriptosustava s javnim kljucem, tj. razlognastanka, ideja funkcioniranja i prednosti tog kriptosustava, a detaljan opis posvetit ce seRSA-kriptosustavu, jednom od najpoznatijih danasnjih kriptosustava te Rabinovom krip-tosustavu. Opisat ce se glavne karakteristike pojedinog sustava, specificnosti, prednosti,mane, nacin funkcioniranja, te ce se kroz njihovu medusobnu usporedbu istaknuti njihoveosnovne razlike i medusobne slicnosti i kroz razne ce se primjere pokusati ilustrirati kako seu pojedinom kriptosustavu realizira sifriranje i desifriranje poruka, ali i u kojim slucajevimakriptoanaliticar moze otkriti sadrzaj poruke i kako moze “probiti kriptosustav”. Sve nabro-jeno ce se promatrati i analizirati gotovo iskljucivo s matematickog gledista.

Cilj ovog rada je ukratko pribliziti i objasniti bit i zadacu danasnje kriptografije i oprav-dati misljenje kako je kriptografija opcenito veoma zanimljiva, jednostavna, originalna, dioje proslosti, sadasnjosti i buducnosti te zbog svoje primjene ima veliku ulogu u ljudskomdrustvu zbog cega zasluzuje svaciju pozornost.

4

Page 6: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

2 Kriptosustavi s javnim kljucem

Da bi bilo moguce objasniti pojam javnog kljuca potrebno je na pocetku navesti osnovnekriptografske pojmove:

• OTVORENI TEKST (PLAINTEXT) - tekst koji se sifirira, originalni tekst.

• SIFRAT (CHIPER) - tekst dobiven sifratom, rezultat sifrata.

• SIFRA - matematicka funkcija koja u ovisnosti o kljucu elemente otvorenog tekstapreslikava u elemente sifrata (i obratno).

• ALICE I BOB - osobe koje komuniciraju, tj. razmjenjuju poruke.

• EVA I OSKAR - osobe koje prisluskuju komunikaciju i zele doznati sadrzaj poruke.

• POLINOMIJALAN ALGORITAM - algoritam u kojem je broj potrebnih operacija unajlosijem slucaju O(nk), gdje je k konstanta.

Svi navedeni pojmovi su intuitivno jasni. Preostaje jos objasniti ulogu kljuca. Pojamkljuca se najbolje moze objasniti na primjeru Cezarove sifre u kojoj je kljuc broj za kojise svako slovo pomice. U Cezarovoj sifri to je broj 3 no opcenito to moze biti bilo kojibroj. Uloga kljuca je da “sakrije” sadrzaj poruke, dakle kljuc sluzi za enkripciju i dekripcijupodataka i iz njega se generiraju funkcije za sifriranje i desifriranje. Sada mozemo definiratikriptosustav:

Definicija 2.1. Neka je P skup svih elemenata otvorenog teksta, K konacan skup svihmogucih kljuceva, ε skup svih funkcija sifriranja, D skup svih funkcija desifriranja i Ckonacan skup svih mogucih elemenata sifrata. Ukoliko za ∀K ∈ K postoji funkcija sifriranjaeK ∈ ε te odgovarajuca funkcija desifriranja dK ∈ D pri cemu mora vrijediti da su eK idK inverzne, tj. eK : P → C i dK : C → P te je ∀x ∈ P dK(eK(x)) = x. Uredena petorka(P , C,K, ε,D) cini kriptosustav.

Pojam kljuca je najvazniji pojam u modernoj kriptografiji te se s obzirom na njegovu(ne)tajnost razlikuju 2 osnovne vrste kriptosustava :

• simetricni kriptosustavi (kriptosustavi s tajnim kljucem)

• asimetricni kriptosustavi (kriptosustavi s javnim kljucem)

Kod simetricnih kriptosustava obicno se za sifriranje i desifriranje koristi jedan kljuc kojimora biti tajan jer u njemu lezi sva sigurnost sustava. Ukoliko prisluskivac dozna sadrzajkljuca on lako izracunava funkciju sifriranja i desifriranja (obicno su jednake ili identicne).Takvi sustavi funkcioniraju tako sto posiljalac pomocu tajnog kljuca sifrira poruku, saljeju kroz nesiguran komunikacijski kanal i kad sifrat stigne do primatelja on pomocu togkljuca otkriva sadrzaj poruke. Osnovni problem je kako poslati taj kljuc kroz nesigurankomunikacijski kanal tako da stigne samo do primatelja posto osobe u komunikaciji nisuu mogucnosti fizicki razmijeniti kljuc. U praksi je to gotovo neizvedivo posto svatko tkomoze vidjeti sifrat moze takoder vidjeti i kljuc (kvaka 22). Taj problem rijesava asimetricnikriptosustav kod kojeg se kljucevi dijele na tajne i javne. Osnovna ideja je da posiljatelj iprimatelj posjeduju svoj tajni i javni kljuc, tj. Alice ima svoj tajni kljuc poznat samo njoj,Bob ima svoj tajni kljuc poznat samo

5

Page 7: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

njemu, ali obadvoje imaju svoje javne kljuceve koji su poznati svima, pa i Evi (Oskaru).Nacin funkcioniranja asimetricnog kriptosustava moze se objasniti pomocu Slike 2.1 :

Slika 2.1: Kriptosustav s javnim kljucem

Pretpostavimo da Alice zeli poslati poruku Bobu. Dostupan joj je njezin tajni kljuc, nje-zin javni kljuc i Bobov javni kljuc. Lako je vidjeti da je Bobov javni kljuc najbolji izbor zasifriranje poruke. Ako je Alice sifrira svojim tajnim kljucem, posto je njezin javni kljuc dos-tupan svima, pa i Evi, Eva pomocu njega moze desifrirati poruku jer je funkcija desifriranjagenerirana tim kljucem inverzna funkciji sifriranja koja se generira iz Aliceinog tajnog kljuca.Ako Alice upotrijebi svoj javni kljuc tada nitko, pa ni Bob ne moze otkriti sadrzaj porukejer ne posjeduje njezin tajni kljuc. Zato Alice koristi Bobov javni kljuc (smjesten u javnomdirektoriju) kojim sifrira poruku i taj sifrat salje Bobu preko nesigurnog komunikacijskogkanala. Sifrat je dostupan svima, ali jedino ga Bob moze desifrirati jer samo on posjedujesvoj tajni kljuc.

Dakle, kriptosustav s javnim kljucem se sastoji od funkcije sifriranja (eK) i funkcijedesifriranja (dK) pri cemu K prolazi skupom svih korisnika za koje vrijedi sljedece:

- Za svaki K je dK inverz od eK .

- Za svaki K je eK javan, ali samo je osobi K poznat dK .

- Za svaki K eK je osobna jednosmjerna funkcija.

Opcenito, za funkciju f : X → Y kazemo da je osobna jednosmjerna funkcija (trapdoor one-way function) ukoliko je f(x) lako izracunati za ∀x ∈ X i lako je izracunati f−1(x) zbogpoznavanja dodatnog podatka (trapdoor) koji to omogucuje, inace se inverz tesko racuna.Bitno je naglasiti da su algoritmi enkripcije i dekripcije polinomijalni i poznati su Evi, aliona ne moze u polinomijalnom vremenu desifrirati poruku jer je eK jednosmjerna funkcija.

Iako kriptosustav s javnim kljucem rjesava problem prijenosa tajnog kljuca zbog kojega jei nastao, danas se ipak za sifriranje poruka koriste moderni simetricni kriptosustavi. Glavnirazlog tomu je sto su algoritmi kriptiranja kod asimetricnih kriptosustava puno sporiji od

6

Page 8: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

algoritama kod simetricnih (oko 1000 puta) dok se kriptosustavi koriste za razmjenu tajnogkljuca (sifriranje kljuceva) i za digitalni potpis. Kod kriptosustava s javnim kljucem se javljaproblem autenticnosti poruke, tj. kako Bob moze biti siguran da je dobio poruku od Alicejer svatko ima pristup njegovom javnom kljucu i pomocu njega moze kriptirati poruku. Zbogtoga Alice primijeni svoj tajni kljuc na sifrat sto zapravo predstavlja njezin potpis i salje sveBobu koji prvo “otvori” sifrat njezinim javnim kljucem, a potom dekriptira poruku svojimtajnim kljucem. Bob je sad siguran da je Alice posiljalac jer jedino ona posjeduje svoj tajnikljuc, dakle jedino ga je ona mogla poslati i jedino njezin tajni kljuc otvara sifrat. Dakle,digitalni potpis omogucuje vjerodostojnost i autenticnost poruke. Osim toga kriptosustavis javnim kljucem generiraju manji broj kljuceva u odnosu na simetricni za isti broj ljudiunatoc cinjenici da svatko posjeduje svoj tajni i javni kljuc.

Nastanak kriptosustava s javnim kljucem se pripisuje Martinu Hellmanu i WhitfielduDiffieu koji su 1976 iznijeli ideju javnog kljuca. Ubrzo poslije toga nastaje jedan od najpoz-natijih kriptosustava s javnim kljucem: RSA KRIPTOSUSTAV.

7

Page 9: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

3 RSA KRIPTOSUSTAV

RSA kriptosustav je moderan kriptosustav s javnim kljucem i prvi put je objavljen 1977.god. u americkom casopisu “Scientific American”. Njegov nastanak dugujemo Ronu Rivestu,Adi Shamiru i Leonardu Adlemanu po kojima je i dobio ime (pocetna slova prezimena). RSAkriptosustav je danas najkoristeniji kriptosustav s javnim kljucem i ima najvecu primjenu usifriranju tajnog kljuca i kreiranju digitalnog potpisa. Savrsen je primjer na kojem se mozeobjasniti nacin rada kriptosustava s javnim kljucem. Osnovno obiljezje mu je da koristiproblem faktorizacije velikih prirodnih brojeva, tj. RSA koristi cinjenicu da je vrlo lakopomnoziti dva (velika) broja, ali je vrlo tesko faktorizirati veliki prirodan broj.RSA kriptosustav mozemo definirati na sljedeci nacin:

Definicija 3.1 (RSA KRIPTOSUSTAV). Neka je P = C = Zn. Tada vrijedi:

• K = {(n, p, q, d, e) : n = p · g} gdje su p i q prosti te za d i e vrijedi:

de ≡ 1(mod ϕ(n)). (1)

• Za x i y ∈ Zn i K ∈ K definiramo funkcije:

eK(x) = xe mod n (2)

dK(y) = yd mod n. (3)

• Par (n, e) je javni kljuc, a trojka (p, q, d) je tajni kljuc.

Nakon Definicije 3.1 Formulom (2) je dana funkcija sifriranja ciji je argument x elementotvorenog teksta, a formula (3) je funkcija desifriranja s argumentom sifrata te je stogapotrebno pokazati da su eK i dK inverzne, tj. da vrijedi dK(eK(x)) = x,∀x ∈ Zn, a to slijediiz sljedeceg teorema.

Teorem 3.1 (Euler). Neka su a i m ∈ Z takvi da je (a,m) = 1.Tada vrijedi:

aϕ(m) ≡ 1 (mod m)

gdje je ϕ(m) Eulerova funkcija, tj. preslikavanje koje prirodnom broju m pridruzuje brojbrojeva u nizu {1, 2, ...,m−1} koji su relativno prosti s m. Specijalno, ako je m = p, p prost,tada je ϕ(p) = p− 1.

Iz (2) i (3) slijedi da je dK(eK(x)) ≡ xde(mod n).Zbog de ≡ 1 mod ϕ(n) po definiciji kongruencije slijedi da ϕ(n) | de − 1, a to premadefiniciji djeljivosti povlaci da postoji k ∈ Z takav da je

de = k · ϕ(n) + 1.

Razlikujemo sljedeca 4 slucaja :

1. (n, x) = n

To znaci da n | x te je x ≡ 0 (mod n) i xde ≡ 0 (mod n). Zbog svojstva simetricnostikongruencije vrijedi da je

0 ≡ xde (mod n)

te zbog tranzitivnosti i simetricnosti slijedi da je

xde ≡ x (mod n).

8

Page 10: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

2. (n, x) = 1

Tada je xde = xkϕ(n)+1 = xϕ(n)·k · x. Primjenom Eulerovog teorema slijedi da je

xde ≡ 1 · x (mod n) ≡ x (mod n).

3. (n, x) = p

Zbog n = pg slijedi (pg, x) = p. Jer su p i q prosti, a p | x slijedi da (x, q) = 1.Prema Eulerovom teoremu slijedi da je xϕ(q) = xq−1 ≡ 1 (mod q). U sljedecem korakukoristimo se bitnim svojstvom Eulerove funkcije.

Teorem 3.2. Eulerova funkcija ϕ je multiplikativna, tj. za ∀m i n takvi da je(m,n) = 1 vrijedi ϕ(m · n) = ϕ(m) · ϕ(n).

Zbog Teorema 3.2 i 3.1 slijedi da je xde = xk·ϕ(pq)+1 = (xq−1)k(p−1) · x ≡ x (mod q). Podefiniciji kongruencije slijedi da q | xde − x, tj. da postoji l ∈ Z takav da jexde−x = l · q. Mnozenjem s p dobivamo p ·xde− p ·x = l · p · q = l ·n, tj. n | pxde− px.Posto n ne dijeli p jer je n > p slijedi da n | xde − x, a to znaci da je

xde ≡ x (mod n).

4. (n, x) = q

Analogno prethodnom slucaju vrijedi da je

xde ≡ x (mod n).

Time smo pokazali da su eK i dK inverzne, tj. da vrijedi da je

d(eK(x)) = x,∀x ∈ Z.

Svakako treba napomenuti da su za x i y ∈ Zn funkcije eK i dK injekcije sto je nuzanuvjet svake enkripcije i dekripcije jer bi u suprotnom primatelj poruke bio u nedoumiciprilikom dekriptiranja poruke jer ne bi znao koji desifrat je posiljatelj kriptirao. U definicijikriptosustava se navodi uvjet de ≡ 1 (mod ϕ(n)). Broj e se naziva eksponent, a ureden par(e, n) javni kljuc, s tim da mora vrijediti (e, ϕ(n)) = 1.Eksponent e mora biti relativno prost s ϕ(n) zbog egzistencije od d koji ce sigurno postojatizbog Eulerovog terema: aϕ(n) ≡ 1 (mod ϕ(n)).

Opisimo kako funkcionira RSA kriptosustav. Pretpostavimo da Alice Bobu zeli poslatiporuku. To mogu biti neki tekstualni podaci, brojevi . . .Da bi Alice sifrirala poruku potreban joj je Bobov javni kljuc. Zato Bob :

1. Generira dva prosta broja p i q i racuna n = pg.

2. Izracunava ϕ(n) pomocu p i q:

ϕ(n) = ϕ(pq) = ϕ(p) · ϕ(q) = (p− 1) · (q − 1).

3. Slucajno odabire broj e relativno prost s ϕ(n), obicno je e < ϕ(n).

4. Objavljuje svoj javni kljuc (n, e).

9

Page 11: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Nakon sto Alice dobije Bobov javni kljuc ona pomocu njega zapocinje proces enkripcije:

1. Ukoliko je poruka tekstualnog karaktera, najprije ju transformira u odgovarajuci nu-mericki ekvivalent.

2. Alice svoju dobivenu brojcanu poruku rastavlja na k blokova tako da svaki blok sadrzimanje (a ponekad jednako) znamenaka od znamenaka broj n. Svaki blok je zapravobroj ∈ Zn, a originalna poruka je uredena k-torka blokova.

3. Alice na svaki blok primjenjuje funkciju sifriranja eK kojom pomocu e i n sada dobivablokove (komponente) sifrata.

4. Alice salje sifrat Bobu kroz nesiguran komunikacijski kanal kao uredenu k-torkublokova-sifrata.

Kad sifrat stigne do Boba, on zapocinje proces dekripcije:

1. Bob izracunava inverz od e.

2. Svaki blok sifrata uzima kao argument funkcije desifriranja dK i dobivaelemente-blokove originalnog teksta.

3. Spaja sve blokove u jednu cjelinu i saznaje Aliceinu poruku.

Pokazimo na sljedecem primjeru kako funkcionira RSA-kriptosustav.

Primjer 3.1. Alice zeli poslati poruku x = 888 Bobu. Izracunajmo sve potrebne parametreza sifriranje i desifriranje.

Neka je p = 13 i q = 19. Tada je n = pq = 19 · 13 = 247.ϕ(247) = ϕ(13 · 19) = ϕ(13) · ϕ(19) = (13− 1) · (19− 1) = 12 · 18 = 216.Neka je e = 11. Vrijedi da je (ϕ(n), e) = (216, 11) = 1. Bobov javni kljuc je (247, 11).Alice rastavlja poruku x na 2 bloka:

x1 = 88 x2 = 8.

Alice pomocu e racuna sifrate y1 i y2.

y1 = eK(x1) ≡ xe1 (mod n) = 8811 (mod 247).

881 ≡ 88 (mod 247)882 ≡ 87 (mod 247)884 ≡ 159 (mod 247)888 ≡ 87 (mod 247).

Sada je8811 = 881 · 882 · 888 ≡ 88 · 87 · 87 ≡ 160 (mod 247)

te jey1 = 160.

Analogno za y2 vrijedi:

10

Page 12: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

81 ≡ 8 (mod 247)82 ≡ 64 (mod 247)84 ≡ 144 (mod 247)88 ≡ 235 (mod 247).

Sada je811 = 81 · 82 · 88 ≡ 8 · 64 · 235 ≡ 31 (mod 247)

te jey2 = 31.

Dobiveni sifrat je:y = (160, 31).

Kad Bob primi sifrat y, najprije izracunava eksponent d koristeci prosireni Euklidov algori-tam. On se sastoji u tome da se umjesto rjesavanja kongruencije

de ≡ 1 (mod ϕ(n))

odrede a i b za koje vrijedi da jeae+ bϕ(n) = 1.

Brojevi a i b sigurno postoje jer je (e, ϕ(n)) = 1. Tada ϕ(n) | ae− 1te je ae ≡ 1 (mod n) iz cega slijedi a = d. Najprije primijenimo Euklidov algoritam na 216i 11:

216 = 19 · 11 + 711 = 1 · 7 + 47 = 1 · 4 + 34 = 1 · 3 + 1.

Vracajuci se unazad dobivamo sljedece jednakosti:

1 = 4− 1 · 3 = 4− 1 · (7− 1 · 4) = 2 · 4− 7 = 2 · (11− 7)− 7 = 2 · 11− 3 · 7= 2 · 11− 3 · (216− 19 · 11) = 59 · 11− 3 · 216.

Slijedi da je59 · 11 ≡ 1 (mod 216)→ d=59.

Pokazali smo da vrijedi xde ≡ x (mod n). Koristeci se tom cinjenicom dobivamo(xe)d ≡ x (mod n). Poznavajuci vrijednost od d cijeli problem desifriranja baziran narjesavanju sustava kongruencija

yd1 ≡ x1 (mod n) (4)

yd2 ≡ x2 (mod n) (5)

postaje vrlo jednostavan. Zbog simetricnosti kongruencija (4) i (5), da bi dobio Aliceinuporuku, Bob jos samo treba uvrstiti vrijednost od d:

x1 ≡ 16059 (mod 247)x2 ≡ 3159 (mod 247)

1601 ≡ 160 (mod 247)1602 ≡ 159 (mod 247)1604 ≡ 87 (mod 247)1608 ≡ 159 (mod 247)16016 ≡ 87 (mod 247)16032 ≡ 159 (mod 247).

11

Page 13: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

16059 ≡ 1601 · 1602 · 1608 · 16016 · 16032 ≡ 160 · 159 · 159 · 87 · 159 ≡ 88 (mod 247).

Slijedi :x1 = 88.

Analogno vrijedi :

311 ≡ 31(mod 247)312 ≡ 220(mod 247)314 ≡ 235(mod 247)318 ≡ 144(mod 247)3116 ≡ 235(mod 247)3132 ≡ 144(mod 247).

3159 ≡ 311 · 312 · 318 · 3116 · 3132 ≡ 31 · 220 · 144 · 235 · 144 ≡ 8 (mod 247).

Slijedi :x2 = 8.

x = (x1, x2) = (88, 8) = 888

sto je upravo Aliceina poruka.

Primjer 3.2. Pomocu javnog kljuca (m, e) = (1517, 11) desifriraj:

1373 1149 108

Iz uvjeta zadatka vrijedi: m = 1717 = 37 · 41→ p = 37, q = 41.ϕ(m) = ϕ(1517) = ϕ(37 · 41) = ϕ(37) · ϕ(41) = 36 · 40 = 1440. Iz prosirenog Euklidovogalgoritma slijedi:

1440 = 130 · 11 + 1011 = 1 · 10 + 1.

11 · 131 ≡ 1 (mod 1440)→ d = 131.

13731 ≡ 1373 (mod 1440) 11491 ≡ 1149 (mod 1440) 1081 ≡ 108 (mod 1440)

13732 ≡ 1015 (mod 1440) 11492 ≡ 411 (mod 1440) 1082 ≡ 1045 (mod 1440)

13734 ≡ 182 (mod 1440) 11494 ≡ 534 (mod 1440) 1084 ≡ 1302 (mod 1440)

13738 ≡ 1267 (mod 1440) 11498 ≡ 1477 (mod 1440) 1088 ≡ 715 (mod 1440)

137316 ≡ 303 (mod 1440) 114916 ≡ 83 (mod 1440) 10816 ≡ 1513 (mod 1440)

137332 ≡ 789 (mod 1440) 114932 ≡ 821 (mod 1440) 10832 ≡ 16 (mod 1440)

137364 ≡ 551 (mod 1440) 114964 ≡ 493 (mod 1440) 10864 ≡ 256 (mod 1440)

1373128 ≡ 201 (mod 1440) 1149128 ≡ 329 (mod 1440) 108128 ≡ 305 (mod 1440)

1373131 ≡ 13171 · 13732 · 1373128 ≡ 1373 · 1015 · 201 ≡ 62 (mod 1440)1149131 ≡ 11491 · 11492 · 1149128 ≡ 1149 · 411 · 329 ≡ 42 (mod 1440)108131 ≡ 1081 · 1082 · 108128 ≡ 108 · 1045 · 305 ≡ 53 (mod 1440)

12

Page 14: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

E A O H L M N K I1 2 3 4 5 6 7 8 9

Tablica 3.1

Originalna poruka bi u terminima Tablice 3.1 :

izgledala : MA-HA-L-0.

Primjer 3.3. Kriptiraj poruku KO-NA pri cemu je n = 1517 i e = 7.

Iz Tablice 3.1 dobivamo da je numericki ekvivalent rijeci KO-NA:

83− 72.

x = (x1, x2) = (83, 72)

y1 = 837 (mod 1517)

831 ≡ 83 (mod 1517)832 ≡ 821 (mod 1517)834 ≡ 493 (mod 1517)

837 ≡ 831 · 832 · 834 ≡ 83 · 821 · 493 ≡ 534 (mod 1517)

y2 = 727 (mod 1517)

721 ≡ 72 (mod 1517)722 ≡ 633 (mod 1517)724 ≡ 201 (mod 1517)

727 ≡ 721 · 722 · 724 ≡ 72 · 633 · 201 ≡ 1130 (mod 1517)

Dobivena sifra je :y = (y1, y2) = 534− 1130.

Primjer 3.4. Neka je u RSA-sifriranju zadano m = 4189 i e = 11. Pronaci kljucdekripcije d.

Iz m = 4189 = 59 · 71 slijedi p = 59, q = 71 te je ϕ(m) = ϕ(4189) = ϕ(59 · 71) =ϕ(59) · ϕ(71) = 58 · 70 = 4060. Primjenom prosirenog Euklidovog algoritma na ϕ(m) i edobivamo:4060 = 369·11+1→ 4060 | 369·11+1→ 4060 | −369·11−1⇔ −369·11 ≡ 1( mod ϕ(4060)).Posto je Z4060 ciklicka grupa vrijedi da je −369 ≡ −369 + 4060 ≡ 3691 (mod 4060) i

d = 3691.

13

Page 15: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

3.1 Efikasnost i sigurnost RSA kriptosustava

U svim dosadasnjim primjerima su se za ilustraciju funkcioniranja RSA-kriptosustava ko-ristili parametri e, d, p, q, n male velicine. U praksi, dakle u primjeni kriptosustava (racunalnisustavi) potrebno je odabrati te parametre tako da sifriranje i desifriranje bude sto efikas-nije (sto manji broj racunskih operacija), ali i sigurno. Primjerice, dekriptiranje se ne moraprovesti na nacin koristen u dosadasnjim primjerima, vec upotrebom sljedeceg teorema:

Teorem 3.3 (Kineski teorem o ostacima). Neka su m1, m2, ... , mr u parovima relativnoprosti prirodni brojevi te neka su a1, a2, ... , ar cijeli brojevi. Tada sustav kongruencija :

x ≡ a1 (mod m1), x ≡ a2 (mod m2), ..., x ≡ ar (mod mr) (6)

ima rjesenja. Ako je x0 jedno rjesenje onda su sva rjesenja od (6) dana s:

x ≡ x0 (mod m1 ·m2 · · ·mr).

Nakon sto dobije sifrat y Bob odreduje dp i dq za koje vrijedi :

dp ≡ e (mod p− 1) dq ≡ e (mod q − 1)

i racuna :mp = ydp (mod p) (7)

mq = ydq (mod q) (8)

te originalnu poruku m dobiva rjesavajuci sustav (7) i (8) pomocu Teorema 3.3.Ovaj postupak dekriptiranja je oko 3 puta brzi od prethodno opisanog.

Efikasnost funkcije eK ovisi o broju jedinica u binarnom zapisu od e; sto je manje jedinicatzv. “modularno potenciranje” na kojem je zasnovano racunanje eK i dK je efikasnije. Zbogtoga se danas obicno koristi e = 65537 = 216 + 1. Danas postoje razni algoritmi racunanjaeK , no osnovni je “Kvadriraj i mnozi”:

Algoritam 3.1 : Kvadriraj i mnozi1. y = 12. za (t-1≥ i ≥ 0) radi3. y = y2 mod n (kvadriranje)4. ako je ei = 1 tada y = y · x mod n (mnozenje)

pri cemu jet−1∑i=0

ei2i binarni zapis broja e.

Funkcija eK je jednosmjerna funkcija ( inverz se tesko racuna jer je Zn ciklicka grupa). Trap-door (koji omogucava otkrivanje inverza) je upravo faktorizacija od n na kojoj je zasnovanacijela sigurnost RSA-sustava. Ukoliko Eva sazna p i q, vrlo lako saznaje ϕ(n) i d. Zbogtoga je potrebno odabati (generirati) tajne brojeve p i q kako Eva ne bi uspjela faktoriziratin (u razumnom vremenu). Obicno je n 200 znamenkast broj, a p i q sadrze svaki oko 100znamenaka, tj. n moze biti npr. duljine 512, 768 bita pa cak i 1024 bita. Veca duljina bitapovecava sigurnost, ali smanjuje efikasnost. Preporuka je da p i q budu strogi prosti brojevi,tj. da za t ∈ {p, q} vrijedi :

14

Page 16: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

(a) t− 1 sadrzi velik prost faktor(b) t+ 1 sadrzi velik prost faktor(c) t− 2 sadrzi velik prost faktor

kako bi se izbjegli razni polinomijalni algoritmi faktorizacije (primjerice Pollardova metoda,vidi [4]). Osim toga razlika p− q ne bi smjela biti mala jer je tada p ≈ q ≈

√n i dovoljno je

podijeliti n sa svim neparnim brojevima ≤√n i broj koji je djeljiv s n je njegov prost faktor.

Prosti brojevi p i q ne moraju biti strogo odredeni brojevi, to su slucajno generirani brojevii mogu se dobiti raznim metodama koje ukljucuju provjeru njihove prostosti upotrebomraznih testova o kojima se vise moze naci u [2, str. 211]. U definiciji RSA-kriptosustava iprimjerima koristen prirodan broj n je umnozak tocno 2 prosta broja. Opcenito to ne morabiti tako, vec se za n moze koristiti i umnozak vise prostih brojeva. Iz tog razloga postojivise varijanti RSA-kriptosustava od kojih je nabrza Takagi-RSA metoda u kojoj je n = pr ·q.Detaljniji opis vidjeti u [3].

4 Kriptoanaliza RSA kriptosustava

Osnovno nacelo na kojem pociva svaka kriptoanaliza se zove Kerckhoffsovo nacelo kojepretpostavlja da kriptoanaliticar zna koji se kriptosustav koristi. Kod kriptosustava s javnimkljucem cilj je iz sifrata i javnog kljuca otkriti tajni kljuc d i pomocu njega desifrirati sifrati sve poruke koje ce biti poslane. Spomenuto je da se d direktno moze otkriti poznavajucifaktorizaciju n = pq. Tada, ukoliko napadac zna sifrat doslovno dobiva ulogu primateljaporuke. Zbog teskoce faktorizacije taj slucaj nije cest u praksi. Ipak, kriptoanaliticar mozeu nekim slucajevima pomocu matematickih metoda otkriti tajni kljuc ili otvoreni tekst (ilioboje). Navedimo najcesce slucajeve:

(i) Mali eksponent e

Broj 3 je prije bio cest izbor za javni eksponent e zbog efikasnosti modularnog poten-ciranja. Problem nastaje kad korisnik salje identicnu poruku drugim korisnicima kojikoriste isti eksponent e. Pretpostavimo da Alice sifrira poruku m javnim kljucem 3korisnika s istim e = 3 i salje sifrate

c1 ≡ m3 (mod n1) prvom korisnikuc2 ≡ m3 (mod n2) drugom korisnikuc3 ≡ m3 (mod n3) trecem korisniku

putem komunikacijskog kanala.

Kad napadac sazna c1, c2 i c3 primjenom Kineskog teorema o ostacima rjesava sustavlinearnih kongruencija:

y ≡ c1 (mod n1)y ≡ c2 (mod n2)y ≡ c3 (mod n3)

kojim izracunava y takav da vrijedi:

y ≡ m3 (mod n1 · n2 · n3).

Posto mozemo uzeti da je m < n1, m < n2 te m < n3 vrijedi da je m3 < n1 · n2 · n3

i y = m3. Da bi desifrirao poruku napadac samo treba izracunati treci korijen iz y.

15

Page 17: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Primjer 4.1. Neka su c1 = 26, c2 = 20 i c3 = 125 sifrati dobiveni kriptiranjem isteporuke m eksponentom e = 3 te redom m1 = 33,m2 = 35,m3 = 221. Odredimo m.

Posto je (m1,m2,m3) = 1 mozemo Kineski teorem o ostacima direktno primijeniti nasustav linearnih kongruencija:

y ≡ 26 (mod 33) y ≡ 20 (mod 35) y ≡ 125 (mod 221).

Racunamo :n1 = m2 ·m3 = 35 · 221 = 7735 ≡ 13 (mod 33)

n2 = m1 ·m3 = 33 · 221 = 7293 ≡ 13 (mod 35)

n3 = m1 ·m2 = 33 · 35 = 1155 ≡ 50 (mod 221)

i dobivamo sustav : 13y ≡ 26 (mod 33)13y ≡ 20 (mod 35)50y ≡ 125 (mod 221)

koji se lako rjesava Euklidovim prosirenim algoritmom. Rjesenja svake od kongruencijasu redom:

y1 = 2 y2 = 15 y3 = 113

te konacno rjesenje :

y ≡ n1 · y1 + n2 · y2 + n3 · y3 (mod m1 ·m2 ·m3)

7735 · 2 + 7293 · 15 + 1155 · 113 = 255380 ≡ 125 (mod 255255)

y = 125→ m =3√

125 = 5.

(ii) Tajni eksponent d

Ukoliko napadac ne zna d, ali zna da je malen u odnosu na n, moze ga otkriti. O tomegovori Wienerov teorem iz 1990:

Teorem 4.1 (Wiener). Neka je n = pq i p < q < 2p i d < 13n0.25. Tada postoji

polinomijalan algoritam koji iz poznavanja n i e racuna d.

Prije dokaza prisjetimo se osnovnih stvari iz diofantskih aproksimacija.

Definicija 4.1. Neka je α racionalan broj. Ako je a0 ∈ Z, a1, ..., an ∈ N te ako jeα = [a0; a1, ..., an] onda ovaj izraz zovemo razvoj broja α u konacni jednostavni verizni(neprekidni) razlomak gdje je pi

qi= [a0, ..., ai] i-ta konvergenta od α = [a0; a1, ..., an].

Dakle, razvoj od α = bc

u verizni razlomak izgleda ovako:

b

c= a0 +

1

a1 +1

a2 + 1

...an−1+1an

gdje su a0, ..., an dobiveni primjenom Euklidovog algoritma na b i c koji zavrsava ukonacno mnogo koraka jer je α racionalan broj. Nazivnici konvergenti rastu eksponen-cijalno jer je qk ≥ Fk gdje je Fk k-ti Fibonaccijev broj.

16

Page 18: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Teorem 4.2 (Legendre). Neka su p i q cijeli brojevi takvi da je q ≥ 1 i∣∣∣∣α− p

q

∣∣∣∣ ≤ 1

2q2.

Tada je pq

neka konvergenta od α.

Dokazimo Teorem 4.1.Dokaz : Zbog ed ≡ 1 (mod ϕ(n)) slijedi da postoji k ∈ N takav da je ed− kϕ(n) = 1.Slijedi : ∣∣∣∣ e

ϕ(n)− k

d

∣∣∣∣ =ed− kϕ(n)

dϕ(n)=

1

dϕ(n). (9)

Zbog 2 < p < q < 2p vrijedi :p+ q < 3

√n (10)

i p+ q − 1 < 3√n. ϕ(n) = (p− 1) · (q − 1) = pq − p− q + 1 = n− p− q + 1. Sada je

|n− ϕ(n)| < 3√n. Zamjenom ϕ(n) s n u (9) imamo:∣∣∣∣ en − k

d

∣∣∣∣ =

∣∣∣∣ed− kϕ(n) + kϕ(n)− knnd

∣∣∣∣ =

∣∣∣∣1− k(n− ϕ(n))

nd

∣∣∣∣ ≤ 3k√n

nd=

3k

d√n·

Zbog kϕ(n) < ed i e < ϕ(n) slijedi da je kϕ(n) < dϕ(n), tj. k < d < 13n0.25 iz cega

slijedi : ∣∣∣∣ en − k

d

∣∣∣∣ ≤ 1

d 4√n<

1

3d2<

1

2d2.

Iz Teorema 4.2 slijedi da je kd

neka konvergenta od en

kojih ima O(log n) (zbog qk ≥ Fk).U najgorem slucaju napadac moze izracunati sve konvergente, slucajno odabrati nekiz i nazivnik d

′konvergente koji zadovoljava:

zed′

≡ z (mod n)

je tajni kljuc d. Osim tajnog kljuca napadac saznaje i k te pomocu k i d racuna ϕ(n):

ϕ(n) =ed− 1

k(11)

i potomp+ q = n− ϕ(n) + 1. (12)

Napadac moze faktorizirati n ili koristeci jednakost:(q − p

2

)2

=

(p+ q

2

)2

− pq (13)

iz koje dobiva p − q, a posto zna p + q vrlo lako dobiva p i q, ili umjesto toga prostfaktor t ∈ {p, q} od n dobiva rjesavanjem kvadratne jednadzbe −t2 + t · (p+ q)−n = 0.Sljedeci primjer ilustrira Wienerov napad.

Primjer 4.2. Neka je u RSA kriptosustavu (n, e) = (336689, 607687) javni kljuc i pritome vrijedi d < 1

3n0,25 < 10. Pomocu Wienerovog napada odredimo tajni kljuc d i

faktorizaciju od n.

17

Page 19: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Najprije odredimo razvoj od en

u verizni razlomak:

336689

607687=[0; 1, 1, 4, 7, 1, 30, 2, 1, 8, 10

].

Odredimo prvih nekoliko konvergenti :

p0q0

=0

1,

p1q1

=1

1,

p2q2

=1

2,

p3q3

=5

9,

p4q4

=36

65. . .

Uvrstavajuci redom nazivnike konvergenti u

2336689qi ≡ 2 mod 607687 (14)

dobivamo da q3 = 9 zadovoljava jednakost (14). Slijedi da je d = 9 i k = 5.

ϕ(607687) =3366899− 1

5= 606040,

p+ q = 607687− 606040 + 1 = 1648,

q − p = 2

√1648

2

2

− 607687 = 534.

Lako slijedi da jep = 557, q = 1091.

Postoje slucajevi kad napadac ne mora racunati sve konvergente.Ukoliko je n > 108

moze se pokazati da trazena konvergenta zadovoljava nejednakost

2e

n√n<k

d− e

n<

2.122e

n√n.

Vise o tome moze se vidjeti u [2, str. 110]. Napadac moze otkriti “pravu” konvergentuuvrstavajuci redom brojnike konvergenti u (11) i racunajuci (12) i (13). Ako dobije dasu u (12) i (13) cijeli brojevi tada je otkrio i tajni kljuc i faktorizaciju.

Faktorizacija od n se moze brze i jednostavnije provesti ako je napadac saznao d ivrijedi ed < n

32 (koja je cesto ispunjena) i vrijedi 2 < p < q < 2p. Tada vrijedi (10) i

ϕ(n) >n

2. (15)

Neka je

k′=ed− 1

n.

Tada je :

k − k′ =ed− 1

ϕ(n)− ed− 1

n=

(n− ϕ(n)) · (ed− 1)

n · ϕ(n)=

(p+ q − 1) · (ed− 1)

n · ϕ(n).

Zbog (10) i (15) vrijedi :

0 < k − k′ < 2 · 3 · n 12 · n 3

2

n2< 6

18

Page 20: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

k′< k < k

′+ 6

sto znaci da k moze poprimiti 5 vrijednosti. Napadac redom provjerava sve kandidatei onaj koji u (11) daje cijeli broj uvrstava u (12) i zatim lako dobiva faktore p i q.

Ovaj slucaj je specifican po tome sto je tajni eksponent d u odnosu na n manji. Po-gledajmo sto se dogada u opcenitijem slucaju kada je poznat d bez dodatnih uvjeta.Tada za svaki b takav da je (b, n) = 1 vrijedi bed ≡ b (mod n), tj. bed−1 ≡ 1 (mod n).

Zam = ed− 1

vrijedi :bm ≡ 1 (mod n) ∀b, (b, n) = 1.

Iz Eulerovog terema slijedi :bϕ(n) ≡ 1 (mod n)

sto povlaci da ϕ(n) | m, tj. m je visekratnik od ϕ(n), a jer je ϕ(n) = (p− 1) · (q − 1)slijedi da je m zajednicki visekratnik od p− 1 i q − 1 te vrijedi :

bm ≡ 1 (mod p) (16)

bm ≡ 1 (mod q) (17)

bm2 · b

m2 = bm ≡ 1 (mod n).

Broj m2

je cijeli broj jer su e i d neparni pa je m = ed− 1 paran broj .Imamo 2 mogucnosti :{

bm2 ≡ 1 (mod n) u barem 50 posto slucajeva

bm2 ≡ −1 (mod n) u barem 50 posto slucajeva

Nastavljajuci dijeljenje s 2 dobivamo :

1. m2

je visekratnik od p−1 te uvijek vrijedi (16), ali nije od q i ne vrijedi uvijek (17).Tada p | bm

2 − 1 i p | n te napadac izracunava p primjenom Euklidova algoritmana n i b

m2 − 1.

2. m2

je visekratnik od q−1 te uvijek vrijedi (17), ali nije od p i ne vrijedi uvijek (16).Tada q | bm

2 − 1 i q | n te napadac izracunava q primjenom Euklidova algoritmana n i bm/2 − 1.

3. m/2 nije visekratnik niti od p− 1 niti od q − 1. Slijedi da je bm/2 6≡ ±1 (mod p)i bm/2 6≡ ± (mod q) te je vjerojatnost pojavljivanja svake mogucnosti 25 posto.

Dakle, iz poznavanja d vjerojatnost da se n faktorizira je minimalno 25 posto sto povlacicinjenicu da je faktorizacija od n ekvivalentna poznavanju tajnog eksponenta d. Zbogtoga nije dobra ideja da vise korisnika koristi isti n jer ukoliko napadac faktorizira nlako dolazi do tajnog eksponenta bilo kojeg korisnika.

(iii) Ciklicki napadi

Neka je c = me (mod n) sifrat u RSA-kriptosustavu. Posto je grupa ostataka mod nciklicka slijedi da postoji k ∈ N takav da je ce

k ≡ c (mod n). Da bi napadac otkriooriginalnu poruku m on redom racuna ce mod n, ce

2mod n, ce

3mod n ... sve

19

Page 21: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

dok prvi put ne dobije c, tj. nakon sto dobije cek ≡ c (mod n) zna da je prethodno

izracunati brojce

k−1 ≡ m (mod n).

Generalizirani kruzni napad se sastoji u tome da se pronade najmanji l ∈ N takav davrijedi

(cel − c, n) > 1.

Moguca su 3 slucaja :

1. cel ≡ c (mod n)

Tada je l = k i (cel− c, n) = n. Poruka m se desifrira na prethodno opisani nacin.

2. cel ≡ c (mod p), ce

l 6≡ c (mod q)

Vrijedi da je (cel − c, n) = p i n je faktoriziran. Napadac racuna ϕ(n) i d iz

Euklidova prosirenog algoritma kojim desifrira poruku m.

3. cel ≡ c (mod q), ce

l 6≡ c (mod p)

Vrijedi da je (cel − c, n) = q i napadac postupa kao u prethodnom slucaju.

Dakle, u generaliziranom napadu nalazenje najmanjeg l ∈ N ekvivalentno je problemufaktorizacije od n.

(iv) Neskrivene poruke

Neka je m ∈ {0, 1, ...., n − 1} originalna poruka koja se sifrira javnim kljucem (n, e).Poruka m je neskrivena ako se sifrira u samu sebe, tj.

me ≡ m (mod n). (18)

Neovisno o izboru od e i n ukoliko je m ∈ {0, 1, n − 1} uvijek vrijedi (18). Ovisno oizboru od n i e moguce je da i neke druge vrijednosti od m ∈ Zn\{0, 1, n − 1} buduneskrivene. Npr. za e = 3, n = 21 i m = 8 vrijedi 83 = 512 ≡ 8 (mod 21).Opcenito, broj neskrivenih poruka jednak je :

(1 + t) · (1 + s)

gdje je t = (e− 1, p− 1), a s = (e− 1, q − 1). Posto su e− 1, p− 1, q − 1 parni vrijedida 2 | t i 2 | s. Dakle, broj neskrivenih poruka je minimalno 9.Za (n, e) = (21, 3) lako se dobiva da je t = 2 i s = 2 i broj neskrivenih porukaje tocno 9.Neskriveni brojevi su :

0, 1, 6, 7, 8, 13, 14, 15, 20.

(v) Multiplikativna svojstva

Neka je x otvoreni tekst ∈ Zn te neka su x1 i x2 takvi da je

x = x1 · x2. (19)

Tada za sifrat c vrijedi xe ≡ c (mod n) i zbog (19) vrijedi :

xe ≡ (x1 · x2)e = xe1 · xe2 ≡ c1 · c2 (mod n) (20)

20

Page 22: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

gdje jec1 ≡ x1 (mod n) c2 ≡ x2 (mod n)

iz cega slijedi da su c1 i c2 sifrati od x1 i x2. Iz (20) slijedi da je

c = c1 · c2. (21)

Zbog svojstva (19) i (21) napadac moze otkriti x. Napadac odabere neki z ∈ Zn i

racuna c′

= c · ze. Potom “zamoli” Alice da mu desifrira x′

= c′d

(mod n). Za x′

vrijedi :

x′ ≡ c

′d ≡ cd · zed ≡ x · z (mod n).

Sada jex = x

′ · z−1.

Uocimo da se u nekim slucajevima sifrat moze desifrirati i bez poznavanja tajnog kljuca d(na nacin opisan u (i), (iii), (iv), (v)). U nekim slucajevima faktorizacija ostaje tajna ((i),(iv), (v)), a u nekim se n moze faktorizirati ((iii) ili npr. u Wienerovom napadu). Dakle,vecina opisanih napada na RSA kriptosustav je vezana uz faktorizaciju od n, no dosad nijepoznat niti jedan polinomijalan algoritam za faktorizaciju. Najbrzi algoritmi za faktorizacijutrebaju eO((logn)1/3(loglogn)2/3) operacija.

21

Page 23: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

5 Rabinov kriptosustav

Definicija 5.1. Neka je (a,m) = 1. Ako kongruencija x2 ≡ a (mod n) ima rjesenjaonda kazemo da je a kvadratni ostatak modulo m, inace je a kvadratni neostatak modulo m.

Definicija 5.2. Neka je m neparan prost broj p. Tada definiramo Legendreov simbol(ap

)s :

(ap

)= 1 a je kvadratni ostatak modulo p(

ap

)= −1 a je kvadratni neostatak modulo p(

ap

)= 0 ako p | a

Upravo problem racunanja kvadratnog korijena u Zn je osnova funkcioniranja jos jednogpoznatog kriptosustava s javnim kljucem, Rabinovog kriptosustava koji je dobio ime poMichaelu 0.Rabinu, poznatom americkom racunalnom strucnjaku (Slika 5.2).

Slika 5.2: Michael O. Rabin

Definicija 5.3 (Rabinov kriptosustav). Neka je P = C = Zn, pri cemu su p i q prostibrojevi. Tada je :

K = {(n, p, q) : n = pq}.

Za K ∈ K definiramo funkciju sifriranja eK(x) i desifriranja dK(x) :

eK(x) = x2 mod n dK(y) =√y mod n.

Kao i RSA kriptosustavu svaki korisnik kreira svoj javni kljuc, koji je u ovom slucaju ni e = 2 te tajni kljuc koji je ureden par (p, q). Najcesce za p i q vrijedi p ≡ q ≡ 3 (mod 4)radi efikasnijeg dekriptiranja. Iz same definicije jasno je da eK i dK nisu inverzne jer eK nijeinjekcija pa rezultat dekriptiranja daje 4 rezultata od kojih samo jedan pripada originalnojporuci.Dakle, Rabinov kriptosustav ne zadovoljava osnovno pravilo kriptiranja i dekriptiranja i tomu je glavni nedostatak, ali to nije presudno u njegovom funkcioniranju. Ono sto dajeopstanak ovom kriptosustavu je tajnost faktorizacije prirodnog broja n kao i kod RSA krip-tosustava.

22

Page 24: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Opisimo sada kako funkcionira Rabinov kriptosustav.Pretpostavimo da Alice zeli poslati poruku Bobu.

Proces enkripcije je sljedeci :

(a) Alice uzima Bobov javni kljuc n.

(b) Odgovarajucu poruku prevodi u broj x ∈ Zn.

(c) Racuna y = x2 (mod n).

(d) Salje Bobu sifrat y.

Nakon sto Bob primi sifrat, zaposinje proces dekripcije:

1. Posto je (p, q) = 1 Bob pomocu prosirenog Euklidovog algoritma racuna a i b za kojeje a · p+ b · q = 1. Jednom izracunati, a i b se koriste za desifriranje svakog dobivenogsifrata.

2. Racuna r = y(p+1)/4 mod p, p ≡ 3 mod 4.

3. Racuna s = y(q+1)/4 mod q, q ≡ 3 mod 4.

4. Racuna u = (aps+ bqr) mod n.

5. Racuna v = (aps− bqr) mod n.

6. Dobiveni desifrati (kvadratni korijeni mod n ) su : x1 = u, x2 = −u, x3 = v, x4 = −v.

7. Bob odreduje i za koji je xi = x, i = 1, 2, 3, 4.

Korake 2. i 3. u procesu dekripcije omogucava Eulerov kriterij za kvadratne ostatke :

Teorem 5.1 (Eulerov kriterij). Neka je p neparan prost broj i x2 ≡ a (mod p).Tada vrijedi : (

a

p

)≡ a(p−1)/2 (mod p).

Zbog definicije od eK u nasim oznakama vrijedi :

1 ≡ y(p−1)/2 (mod p)

pa prema Eulerovom kriteriju slijedi :

r2 = y(p+1)/2 = y(p−1)/2 · y ≡ y (mod p)→ r je kvadratni korijen modulo p

s2 = y(p+1)/2 = y(p−1)/2 · y ≡ y(modp)→ s je kvadratni korijen modulo q

iz cega proizlazi da postoji efikasan algoritam za izracunavanje kvadratnog korijena modulop i q ako je p ≡ q ≡ 3 (mod 4). Koraci 4. i 5. predstavljaju izracunavanje 4 kvadratnakorijena modulo n koristeci Kineski teorem o ostacima za svaku od 4 kombinacije (±r,±s).Problem odredivanja “pravog” kvadratnog korijena se obicno nastoji rijesiti ubacivanjemneke pravilnosti u originalnu poruku poput dupliciranja zadnijih bitova (npr. zadnja 64bita).

Pogledajmo na primjeru kako funkcionira Rabinov kriptosustav.

23

Page 25: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Primjer 5.1. Neka je Bobov javni kljuc n = 43361 i tajni kljuc (131, 331). Alice zeli poslatiporuku Bobu x = 78. Pogledajmo kako ce Bob desifrirati poruku i otkriti “pravi” kvadratnikorijen.

Alice zna da ce Bob biti u nedoumici kad dobije 4 kvadratna korijena modulo n stogasvoju poruku prebacuje u binarni zapis (1001110) te duplicira zadnja 3 bita.Dobiva 10 - bitnu poruku , x = 001110110, tj. u decimalnom zapisu x = 630.Alice racuna:

y = x2 (mod n) = 6302 (mod 43361) = 6651

i salje y Bobu. Bob primjenom prosirenog Euklidovog algoritma odreduje a i b takve da je

a · 131 + b · 331 = 1.

Dobivaa = −48 b = 19.

Sada racuna :

r = y(p+1)/4 (mod p) = 6651(131+1)/4 (mod 131) = 665133 (mod 131)

s = y(q+1)/4 (mod q) = 6651(331+1)/4 (mod 331) = 665183 (mod 331)

i dobivar = 25 (mod 131) q = 299 (mod 331).

Sada je

u = −48 · 131 · 299 + 19 · 331 · 25 (mod 43361) = 11553 (mod 43361)

iv = −48 · 131 · 299− 19 · 331 · 25 (mod 43361) = 630 (mod 43361).

Kvadratni korijeni modulo 43361 su :

x1 = 11553 (mod 43361)x2 = 31808 (mod 43361)x3 = 630 (mod 43361)x4 = 42731 (mod 43361).

Odgovarajuci binarni zapisi su:

x1 = 10110100100001 x2 = 111110001000000 x3 = 1001110110 x4 = 1010011011101011.

Bob uocava pravilnost u slucaju x3 = 630 ( mod 43361) te odlucuje da je to dekriptat sifrata,odbacuje zadnja 3 bita i prevodenjem u decimalnu notaciju otkriva originalnu poruku

x = 78.

Iz opisa eK i dK jasno je da je eK jednostavna i efikasna zbog malog eksponenta (e = 2),zahtijeva samo jedno kvadriranje i puno je brza od funkcije sifriranja u RSA kriptosustavu(cak i za e = 3). Desifriranje je slozenije, zahtjevnije i sporije od sifriranja, ali usporedivo sRSA-kriptosustavom.

24

Page 26: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

5.1 Sigurnost Rabinovog kriptosustava

Spomenuto je da je sigurnost zasnovana na teskoci faktorizacije prirodnog broja n i pro-blemu kvadratnog korijena mod n. Iz Primjera 5.1 je jasno da svatko tko poznaje fak-torizaciju od n moze rijesiti problem kvadratnog korijena, no vrijedi i obrat: poznavanjepolinomijalnog algoritma za problem kvadratnog korijena s velikom vjerojatnoscu rezultirafaktorizacijom od n. Pretpostavimo da Eva zna polinomijalni algoritam za problem kvadrat-nog korijena. Da bi faktorizirala n treba uciniti sljedece :

1. Odabrati x ∈ Zn takav da je (x, n) = 1. Ukoliko je (x, n) > 1 tada je vec faktoriziralan.

2. Izracunati c = x2 (mod n).

3. Upotrebom algoritma za problem kvadratnog korijena naci y koji je kvadratni korijenmod n.

4. Ako je y 6≡ ±x (mod n), izracunati t = (x− y, n), inace odabrati novi x.

Posto je t ∈ {p, q} Eva je faktorizirala n. Broj t postoji jer iz Definicije 5.1 slijedi :

n | x2 − y2 = (x− y) · (x+ y).

Vjerojatnost da se korak 3. ostvari je 12

jer postoje 4 kvadratna korijena.

Dakle, poznavanje faktorizacije od n ekvivalentno je rjesavanju problema kvadratnog ko-rijena sto je teoretska prednost ovog kriptosustava pred RSA-kriptosustavom, ali istodobnomoze biti i nedostatak jer je na obratu ove tvrdnje zasnovan napad na Rabinov kriptosus-tav, tzv. “napad na odabrani sifrat” koji se provodi prema gore opisanom postupku s timda Eva “zamoli” Boba da joj desifrira c. Tada Eva otkriva i poruku i Bobov tajni kljuc svjerojatnoscu 1

2. Opcenito, vjerojatnost da ce Eva otkriti m originalnih poruka iznosi 1− 1

2m.

Ovaj napad identican je napadu na RSA kriptosustav opisanog u Poglavlju 4. (v.) s tim daje Eva osim otkrica poruke uspjela faktorizirati n.Od ostalih napada moguc je onaj opisan u Poglavlju 4 (i) ili u slucaju kad poruka moze po-primiti konacno mnogo vrijednosti (sto je opcenito slabost kriptosustava s javnim kljucem).

Napomena 5.1. Duljina prirodnog broja n i nacini odabira p i q za sto bolju faktorizacijuod n su jednaki kao i kod RSA kriptosustava opisanog u poglavlju 3.1 s tim da se u praksikoriste p ≡ q ≡ 3(modn) zbog efikasnosti dekripcije. Takoder se trebaju izbjegavati slucajeviu kojima se n moze faktorizirati u polinomijalnom vremenu.

25

Page 27: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

6 Zakljucak

Na temelju svih opisanih svojstava, karakteristika, prednosti i mana RSA kriptosustavai Rabinovog kriptosustava i njihove usporedbe moze se zakljuciti kako su RSA i Rabinovkriptosustav, unatoc opisanim napadima, sigurni kriptosustavi. Sigurnost im omogucujeproblem faktorizacije velikog prirodnog broja. Nemogucnost faktoriziranja broja n (ukolikosu p, q i e dobro odabrani) je najmocnije svojstvo ova dva kriptosustava, tj. odolijeva svimopisanim napadima.

Primjerice, redundancija u Rabinovom kriptosustavu uglavnom stiti taj sustav od “na-pada na odabrani sifrat” kao i odbijanje dekripcije. Problem malog eksponenta se mozerijesiti oprimalnim izborom parametra e. Npr. popularan je e = 256535 jer je nerealnoocekivati da ce identicna poruka biti poslana 216 + 1 korisniku. Moguce je ubaciti neki do-datak (eng. random pad), ali postoje algoritmi rezistentni na tu metodu obrane. Ciklickinapadi se ne smatraju prijetnjom jer su povezani s problemom faktorizacije i izbjegavaju seukoliko su p i q strogo prosti brojevi (navedeno u Poglavlju 3.1), kao ni neskrivene poruke jerje njihov broj zanemariv. Najveca prijetnja je poznavanje tajnog eksponenta d ili poznavanjenjegove velicine (u kriptoanalizi je korisno da je d sto manji) jer se tada mogu iskoristiti poli-nomijalni algoritmi. Dakle, polinomijani algoritmi za razbijanje RSA-kriptosustava kao npr.Wienerov napad (O(log n)) se mogu upotrebljavati u slucaju kad je poznat neki dodatanpodatak, primjerice mali eksponent d ili u slucaju loseg odabira parametara.

Opcenito, sama ideja RSA i Rabinovog kriptosustava je vrlo jednostava. Svatko tko imaelementarno znanje iz teorije brojeva lako moze shvatiti nacin funkcioniranja ta 2 kripto-sustava koji je nekompliciran i originalan. Najvazniju ulogu u funkcioniranju igra stvaranjejavnih i tajnih kljuceva u kojima lezi sigurnost od napada i iz kojih se generiraju funkcijesifriranja i desifriranja. Posebno je jednostavno sifriranje (narocito u Rabinovom kripto-sustavu), dok je desifriranje ipak slozenije, posebno ukoliko se radi o kriptoanalizi jer onazahtijeva sire i bolje poznavanje matematickih metoda i raznih teoretskih dostignuca koja bise mogla iskoristiti za dani cilj. Ponekad su neki teoremi korisni za kriptografiju, a ponekadza kriptoanalizu poput Kineskog teorema o ostacima i Eulerovog teorema dok se neka saz-nanja koriste u kriptoanalizi poput veriznih razlomaka, racunanje konvergenti... koja se nekoriste u kriptografiji.

Postoje i neki drugi, u ovom radu neopisani polinomijalni algoritmi koji se u kriptoanalizimogu primijeniti, primjerice Coppersmithova metoda koja se moze koristiti umjesto veriznihrazlomaka, a tice se povezanosti kongruencija i konstrukcija cjelobrojnih polinoma u jednojvarijabli pomocu kojih bi se odredila faktorizacija od n. Kriptoanalizom RSA se bave (ili suse bavili) brojni matematicari,primjerice Lenstra, Lovasz po kojima je LLL-algoritam dobioime, a koji koristi elemente linearne algebre i znanja iz vektorskih prostora (pojam resetke)i ima veliku primjenu u kriptografiji.

Osim RSA i Rabinovog kriptosustava postoje i neki drugi kriptosustavi s javnim kljucemkoji funkcioniraju na specifican nacin. U matematici postoje i neki drugi problemi osimteskoce faktorizacije. Jedan od poznatih problema je problem diskretnog logaritma na ko-jem su takoder zasnovani neki kriptosustavi. U Rabinovu i RSA kriptosustavu napadac jeznao kojim eksponentom se potencira otvoreni tekst, ali problem je taj sto iz sifrata nije mo-gao odrediti koji je to tocno broj (otvoreni tekst) jer beskonacno mnogo brojeva zadovoljavakongruenciju funkcije sifriranja. U problemu diskretnog algoritma broj kojim se otvorenitekst, odnosno element neke grupe G potencira je tajan, a napadac ga iz sifrata ne moze

26

Page 28: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

otkriti jer je G ciklicka, dakle i ovdje se koristi jednosmjerna funkcija, tj. tesko je odreditiinverz (logaritam) od potenciranja koje je jednostavno. Jedan poznati kriptosustav zasnovanna problemu diskretnog logaritma je ElGamalov kriptosustav gdje je grupa G ustvari Z∗

p.

RSA kriptosustav i Rabinov kriptosustav su popularni i cesto se koriste u praksi (po-sebno RSA), no postoje i oni koji se rjede koriste, primjerice McElieceov kriptosustav gdjeskup kljuceva predstavljaju posebno konstruirane matrice, Merkle-Hellmanov kriptosustavzasnovan na problemu ruksaka i specijalnom slucaju superrastuceg problema.U kriptografiji zanimljivu primjenu imaju elipticke krivulje nad poljem K, narocito ako jeK = Zp, tocnije, grupa generirana tim skupom uz dobro definirane operacije jer takve grupeproblem diskretnog logaritma cine jos tezim i otporne su na neke algoritme koji se koristeu primjerice EiGamalovom kriptosustavu (index calculus). U usporedbi s RSA algoritmomovdje je duljina kljuca manja, a jamci bolju sigurnost.

RSA kriptosustav i Rabinov kriptosustav i svi ostali navedeni kritosustavi spadaju uklasicne kriptografske sustave jer im je u primjeni svima zajednicko to sto se ostvaruju naracunalima koja koriste bit kao osnovnu jedinicu pohrane. Kvantna kriprografija ne ko-risti bitove vec qubit kao jedinicu informacije i funkcionira na spoznajama kvantnog svijeta, primjerice o neodredenostima kvantnih cestica, nemogucnosti da se izmjere sva svojstvacestice... Kvantna kriptografija koristi neke zakone fizike koji primijenjeni na kriptiranjeomogucuju otkrivanje prisluskivaca i sigurnu distribuciju kljuca. Ona bi u buducnosti moglapredstavljati opasnost za RSA i ostale klasicne kriptografske sustave jer kvantni algoritmimogu u polinomijalnom vremenu faktorizirati n (Shonov algoritam).Ipak, i ona ima svoje mane poput visoke cijene takvog kriptografskog sustava, a takoderpostoje razni algoritmi koji mogu ugroziti sigurnost kvantnog kriptosustava.

Navedeni kriptosustavi s javnim kljucem su nastali oko 70− ih ili 80− ih godina, a isama ideja kvantne kriptografije je nastala u tom periodu sto daje zakljucak da je modernakriptografija mlada znanost, veoma popularna i s matematickog i racunalnog gledista i imapuno prostora za napredak i daljnja istrazivanja te ce vrlo vjerojatno u buducnosti biti josvaznija zbog pitanja sigurnosti koji je vazan pojam na svjetskoj razini.RSA kriptosustav i Rabinov kriptosustav svakako danas nisu ugrozeni zbog cinjenice da odnjihova nastanka pa do danas nije otkriven nacin njihova razbijanja te su zbog toga diosadasnosti. Pitanje hoce li to tako ostati u buducnosti ce se tek vidjeti.

27

Page 29: Ljubica Markota RSA i Rabinov kriptosustav Zavr sni …mdjumic/uploads/diplomski/MAR116.pdfSveu cili ste J.J. Strossmayera u Osijeku Odjel za matematiku Sveu cili sni preddiplomski

Literatura

[1] A. DUJELLA, Uvod u teoriju brojeva, skripta, PMF-Matematicki odjel, Zagreb

[2] A. DUJELLA, M. MARETIC, Kriptografija, Element, Zagreb, 2007.

[3] S. GALBRAIGHT, Mathematics of Public Key Cryptographyhttp://www. math. auckland. ac. nz/ sgal018/crypto-book/ch25. pdf

[4] A. MENEZES, P. VAN OORSCHOT, S. VANSTONE, Handbook of Applied Crypto-graphy, CRC Press, 1996.http: //www. cacr. math. uwaterloo. ca/hac/about/chap8. pdf

[5] G. SAVIN, Numbers, Groups and Cryptographyhttp: //www. math. utah. edu/ savin/book08−jun. pdf

28