Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Preddiplomski studij matematike. Školska kriptografija

Similar documents
ZANIMLJIV NAČIN IZRAČUNAVANJA NEKIH GRANIČNIH VRIJEDNOSTI FUNKCIJA. Šefket Arslanagić, Sarajevo, BiH

SHEME DIGITALNOG POTPISA

Asimetrični kriptografski RSA algoritam

Monoalfabetske supstitucijske šifre

TEORIJA SKUPOVA Zadaci

HIBRIDNI KRIPTOSUSTAVI

Projektovanje paralelnih algoritama II

Algoritam za množenje ulančanih matrica. Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek

Mathcad sa algoritmima

Slika 1. Slika 2. Da ne bismo stalno izbacivali elemente iz skupa, mi ćemo napraviti još jedan niz markirano, gde će

Red veze za benzen. Slika 1.

Uvod u relacione baze podataka

DES I AES. Ivan Nad PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK. Diplomski rad. Voditelj rada: doc.dr.sc.

Maja Antolović Algoritmi u teoriji brojeva

PRIPADNOST RJEŠENJA KVADRATNE JEDNAČINE DANOM INTERVALU

Hornerov algoritam i primjene

Matrice u Maple-u. Upisivanje matrica

DISKRETNI LOGARITAM. 1 Uvod. MAT-KOL (Banja Luka) ISSN (p), ISSN (o) Vol. XVII (2)(2011), 43-52

Quasi-Newtonove metode

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku

KLASIFIKACIJA NAIVNI BAJES. NIKOLA MILIKIĆ URL:

Sveučilište J.J. Strossmayera u Osijeku. Odjel za matematiku. David Komesarović. Mooreovi grafovi. Diplomski rad. Osijek, 2017.

ALGORITAM FAKTORIZACIJE GNFS

Geometrijski smisao rješenja sustava od tri linearne jednadžbe s tri nepoznanice

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku DIOFANTSKE JEDNADŽBE

Fibonaccijev brojevni sustav

Ariana Trstenjak Kvadratne forme

KVADRATNE INTERPOLACIJSKE METODE ZA JEDNODIMENZIONALNU BEZUVJETNU LOKALNU OPTIMIZACIJU 1

Metode izračunavanja determinanti matrica n-tog reda

Šime Šuljić. Funkcije. Zadavanje funkcije i područje definicije. š2004š 1

Mostovi Kaliningrada nekad i sada

Prsten cijelih brojeva

Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku. Sveučilišni preddiplomski studij matematike

SITO POLJA BROJEVA. Dario Maltarski PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK. Diplomski rad. Voditelj rada: Doc. dr. sc.

pretraživanje teksta Knuth-Morris-Pratt algoritam

Vedska matematika. Marija Miloloža

Hamiltonov ciklus i Eulerova tura

Kvaternioni i kvaternionsko rješenje kvadratne jednadžbe

Metode praćenja planova

EXPERIMENTAL ANALYSIS OF THE STRENGTH OF A POLYMER PRODUCED FROM RECYCLED MATERIAL

Sveučilište Josipa Jurja Strossmayera u Osijeku Odjel za matematiku

Funkcijske jednadºbe

Karakteri konačnih Abelovih grupa

Formule za udaljenost točke do pravca u ravnini, u smislu lp - udaljenosti math.e Vol 28.

Mersenneovi i savršeni brojevi

KRITERIJI KOMPLEKSNOSTI ZA K-MEANS ALGORITAM

Mirela Nogolica Norme Završni rad

MATEMATIČKE METODE U KRIPTOGRAFIJI

ZANIMLJIVI ALGEBARSKI ZADACI SA BROJEM 2013 (Interesting algebraic problems with number 2013)

Rešenja zadataka za vežbu na relacionoj algebri i relacionom računu

Pitagorine trojke. Uvod

NIZOVI I REDOVI FUNKCIJA

HRVATSKA MATEMATIČKA OLIMPIJADA

Pellova jednadžba. Pell s equation

Fajl koji je korišćen može se naći na

Teorem o reziduumima i primjene. Završni rad

Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Diplomski studij matematike. Planarni grafovi. Diplomski rad. Osijek, 2013.

ANALYSIS OF THE RELIABILITY OF THE "ALTERNATOR- ALTERNATOR BELT" SYSTEM

Problem četiri boje. Four colors problem

Nilpotentni operatori i matrice

O aksiomu izbora, cipelama i čarapama

LINEARNI MODELI STATISTIČKI PRAKTIKUM 2 2. VJEŽBE

Asocijativna polja POGLAVLJE Ključevi kao cijeli brojevi

U čemu je snaga suvremene algebre?

A NEW THREE-DIMENSIONAL CHAOTIC SYSTEM WITHOUT EQUILIBRIUM POINTS, ITS DYNAMICAL ANALYSES AND ELECTRONIC CIRCUIT APPLICATION

Ivan Soldo. Sažetak. U članku se analiziraju različiti načini množenja matrica. Svaki od njih ilustriran je primjerom.

Linearni operatori u ravnini

Uvod u numericku matematiku

Zadatci sa ciklusima. Zadatak1: Sastaviti progra koji određuje z ir prvih prirod ih rojeva.

MATEMATIKA LABIRINATA

Položaj nultočaka polinoma

Nelder Meadova metoda: lokalna metoda direktne bezuvjetne optimizacije

BROJEVNE KONGRUENCIJE

Uvod u analizu (M3-02) 05., 07. i 12. XI dr Nenad Teofanov. principle) ili Dirihleov princip (engl. Dirichlet box principle).

Matematika (PITUP) Prof.dr.sc. Blaženka Divjak. Matematika (PITUP) FOI, Varaždin

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni nastavnički studij matematike i informatike. Sortiranje u linearnom vremenu

Sortiranje podataka. Ključne riječi: algoritmi za sortiranje, merge-sort, rekurzivni algoritmi. Data sorting

Vektori u ravnini i prostoru. Rudolf Scitovski, Ivan Vazler. 10. svibnja Uvod 1

PARALELNI ALGORITMI ZA PROBLEM GRUPIRANJA PODATAKA

ODREĐIVANJE DINAMIČKOG ODZIVA MEHANIČKOG SUSTAVA METODOM RUNGE-KUTTA

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Preddiplomski sveučilišni studij matematike. Završni rad. Tema : Vedska matematika

Shear Modulus and Shear Strength Evaluation of Solid Wood by a Modified ISO Square-Plate Twist Method

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni nastavnički studij matematike i informatike. Mirjana Mikec.

Osobine metode rezolucije: zaustavlja se, pouzdanost i kompletnost. Iskazna logika 4

Zlatko Mihalić MOLEKULARNO MODELIRANJE (2+1, 0+0)

Kriptologija. Savršena bezbednost

Linearno programiranje i primjene

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku

Matrične dekompozicije i primjene

Turingovi strojevi Opis Turingovog stroja Odluµcivost logike prvog reda. Lipanj Odluµcivost i izraµcunljivost

Tina Drašinac. Cramerovo pravilo. Završni rad

Matea Ugrica. Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni diplomski studij matematike i računarstva

UPUTE ZA OBLIKOVANJE DIPLOMSKOG RADA

Metrički prostori i Riman-Stiltjesov integral

Metoda parcijalnih najmanjih kvadrata: Regresijski model

Sveučilište u Zagrebu Prirodoslovno matematički fakultet

1. M.S. Shrikhande, S.S. Sane, Quasi-symmetric designs, Cambridge University

Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni preddiplomski studij matematike. Ivana Oreški REKURZIJE.

Neke klase maksimalnih hiperklonova

Pogled u povijest razvoja algoritama

Transcription:

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Preddiplomski studij matematike Antonija Živković Školska kriptografija Završni rad Osijek, 2014.

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Preddiplomski studij matematike Antonija Živković Školska kriptografija Završni rad Voditelj: doc. dr. sc. Ivan Matić Osijek, 2014.

Sažetak. U ovom radu objasniti ćemo razne kriptosustave koji su prilagodeni razrednoj nastavi. Definirati ćemo kriptografiju i pojmove koji su nam potrebni za rad sa ovim kriptosustavima. Takoder, za svaki kriptosustav navesti ćemo primjere kako bismo što bolje objasnili njihov princip. Ključne riječi: kriptografija, kriptografija u školi, kriptosustav, javni ključ, tajni ključ, šifrat, šifriranje, dešifriranje. Abstract. In this work we are going to explain different cryptosystems which are adapted to classroom teaching. We will define cryptography and concepts that we need to work with these cryptosystems. Also, we will give an exemple for every cryptosystem so we could explain better their principle. Keywords: Cryptography, cryptography in school, cryptosystem, public key, secret key, ciphertext, encryption, decryption.

Sadržaj 1. Uvod 1 2. Kriptografija - osnovni pojmovi 2 3. Kriptografija u školi 3 3.1. Cezarova šifra................................ 3 3.2. Vigenéreova šifra.............................. 4 3.3. Tajni protokol................................ 5 3.4. RSA kriptosustav.............................. 6 3.5. Dječji RSA................................. 7 3.6. Savršen kod................................. 9

Kriptografija u školi 1 1. Uvod Cilj ovog završnog rada je proučiti kriptosustave koji se mogu koristiti u osnovnim i srednjim školama, proći kroz tehnike rada tih kriptosustava i navesti primjere. Kako bi uopće došli do kriptosustava prvo moramo definirati osnovne pojmove kriptografije kao znanstvene discipline. Zatim ćemo objasniti svrhu kriptografije u školi, te kroz šest kriptosustava pokazati da su oni uistinu potrebni u radu s djecom i razvijanju njihove inteligencije. Zanimljive metode šifriranja, kao i otkrivanje metoda za razbijanje sustava za šifriranje, omogućavaju učenicima da osjete snagu i ljepotu matematike.

Kriptografija u školi 2 2. Kriptografija - osnovni pojmovi Riječ kriptografija dolazi od grčkog pridjeva kriptós što znači skriven i glagola gráfo što znači pisati. Definicija 2.1 Kriptografija ili šifriranje je znanstvena disciplina koja se bavi pronalaženjem i analiziranjem metoda pomoću kojih je poruku moguće poslati u obliku u kojem ju neće moći pročitati nitko osim onih kojima je namijenjena. Osnovni pojmovi kriptografije su pošiljatelj - primatelj - protivnik (Alice Bob Eve), šifriranje, kodiranje, dešifriranje i ključ. Poruka koju Alice želi poslati Bobu naziva se otvoreni tekst. Otvoreni tekst može biti bilo koja riječ, neki znakovi, numerički podaci ili nešto slično. Prije slanja Alice transformira otvoreni tekst unaprijed dogovorenim ključem šifriranja. Na taj način otvoreni tekst postaje šifrirani tekst, šifrat ili kriptogram. Ako slanje poruke presiječe Eve, ona vidi šifrat, ali ne može doći do otvorenog teksta, odnosno, ne može dešifrirati poruku. Šifra je ureden par dvije funkcije koje ovise o ključu, pošiljatelju i primatelju. Šifra se koristi za šifriranje i dešifriranje. Kriptosustav se sastoji od šifri, skupa svih otvorenih tekstova, ključeva i šifrata. Kriptosustavi se dijele u dvije skupine, kriptosustave s javnim i kriptosustave s tajnim ključem. Još su stari Grci i Rimljani koristili kriptosustav s tajnim ključem. Kod ovih kriptosustava moguće je otkriti ključ za dešifriranje ako je poznat ključ za šifriranje i obrnuto. Sva sigurnost ovih kriptosustava leži u ključu. Za razliku od kriptosustava s tajnim ključem, kod kriptosustava s javnim ključem svatko može šifrirati poruku, ali samo ona osoba koja posjeduje tajni ključ za dešifriranje ju može dešifrirati.

Kriptografija u školi 3 3. Kriptografija u školi Kriptografija u školi znatno doprinosi nastavi matematike. Najprije joj daje kreativnost, dramatičnost i uzbudljivost, što nastavi matematike najviše nedostaje. Kriptografija je nešto sasvim drugačije od rješavanja zadataka gotovom formulom, na što su učenici navikli, te u njima budi osjećaj znatiželje. Daje učenicima da sami pronalaze vlastite tehnike ključeva i šifri, a kada dodu do rješenja zadovoljni su sami sobom što su otkrili nešto novo. Definicija 3.1 Kid Krypto je razvoj kriptografske ideje koja je prihvatljiva i privlačna onima koji nemaju sveučilišnu matematičku obuku. 3.1. Cezarova šifra Cezarova šifra je najjednostavniji i najrasprostranjeniji način šifriranja. Potječe još od Julija Cezara, rimskog vojskovode po kome je dobila ime. On je koristio alfabet s lijevim pomakom od tri mjesta u vojne svrhe što je zabilježeno u Svetonijskom tekstu Dvanaest Cezara. Nigdje nije zapisano koliko je Cezarova šifra bila učinkovita u njegovo vrijeme, ali se pretpostavlja da je bila dovoljno sigurna budući da većina njegovih neprijatelja nije znala latinski, a i primjena kriptoanalize u tom vremenu bila je nemoguća. Cezarova šifra korištena je dugo vremena, čak i u 19. stoljeću koristila ju je ruska vojska zato što je znatno jednostavnija od ostalih. Danas Cezarovu šifru nalazimo u dječjim igrama, a pogodna je i za rad u školama. Često se koristi u izradi složenijih načina šifriranja, a suvremenu upotrebu ima u sustavu ROT13. Cezarova šifra se sastoji od toga da se svako slovo otvorenog teksta zamijeni slovom koje se nalazi n mjesta dalje u alfabetu. Koristiti ćemo se hrvatskim alfabetom od 30 slova (Slika 1). Šifriranje i dešifriranje Cezarovom šifrom možemo opisati pomoću sljedeće dvije funkcije: E n (x) = (x + n) mod 30 D n (x) = (x n) mod 30 pri čemu je 1 n 30, a svako slovo abecede x zamijenili smo pripadnim rednim brojem. Pogledajmo sada kako šifrirati neki tekst. Šifrirajmo primjerice riječ POBJEDNIK s pomakom n = 5. Najprije svakom slovu pridodamo njegov broj. Tada je P = 22, O = 21, B = 2, J = 14, E = 9, D = 6, N = 19, I = 13, K = 15. Zatim, koristeći gore navedenu funkciju E n dobivamo šifrat U T DŽ N J G S M NJ. Razbijanje Cezarove šifre možemo promatrati kroz dva slučaja. U prvom slučaju protivnik sumnja da se radi o šifri zamjene, ali nije siguran da se radi o Cezarovoj šifri. Za razbijanje šifre tada se koristi tehnikama kao što je frekvencijska analiza slova. Za

Kriptografija u školi 4 ovu tehniku dobro je znati kojim je jezikom tekst pisan. Primjerice, najfrekventnija slova u hrvatskom jeziku su A, I, O, i E, a najmanje zastupljena su F, Č i Ć. U engleskom jeziku najfrekventnija su E, T, A, O, I, a u njemačkom E, N, I, R, S. U drugom slučaju protivnik zna da se radi o Cezarovoj šifri, ali ne zna vrijednost pomaka. U ovom slučaju je najjednostavnije doći do rješenja zato što je broj mogućih pomaka mali (u našem slučaju je 30). Na primjer, želimo li dešifrirati tekst D U G R H P Ć P redom isprobavamo pomake i uočavamo da s pomakom n = 4 dobivamo riječ FAKULTET. Cezarova šifra vrlo se lako probija i ne pruža sigurnost u komunikaciji. Slika 1: Hrvatski alfabet 3.2. Vigenéreova šifra Vigenéreova šifra je slična Cezarovoj šifri. Naime, ona se sastoji od niza Cezarovih šifri s različitim pomacima. Ova metoda otkrivana je više puta. U 19. stoljeću pripisana

Kriptografija u školi 5 je Blaiseu de Vigenéreu te dobila naziv Vigenéreova šifra iako ju je prvi opisao Giovan Battista Bellaso. Ključ kod Vigenéreove šifre je sačinjen od bloka slova, odnosno od neke riječi koju smo sami odabrali. Šifriranje se vrši sljedećim postupkom. Ako smo za ključ izabrali riječ PAS gdje slova imaju pripadne brojeve 22, 1 i 24 u hrvatskom alfabetu, onda prvo slovo otvorenog teksta pomičemo za 22 mjesta, drugo za 1 mjesto, treće za 24, četvrto za 22 mjesta, peto za 1 mjesto i tako redom. Dešifriranje poruke se temelji na pogadanju. Prvo treba pogoditi duljinu ključne riječi. Ako je ključna riječ sastavljena od tri slova, napravimo frekvencijsku analizu svakog trećeg slova šifrata. Za šifriranje i dešifriranje može se koristiti i tablica alfabeta zvana Vigenéreova tablica, Vigenéreov kvadrat ili tabula recta. Slika 2: Vigenéreov kvadrat 3.3. Tajni protokol Ovo je jedan od vrlo korisnih kriptosustava u nastavi, ali i u provodenju numeričkih anketa. Pretpostavimo kako učitelj želi saznati koliko vremena učenici kroz tjedan

Kriptografija u školi 6 provode učeći izvan nastave. Ako bi učitelj upitao to pitanje bilo kojeg učenika direktno vrlo vjerojatno ne bi dobio iskrene odgovore. Oni učenici koji puno uče svoju satnicu bi smanjili, a oni koji se jedva dotaknu knjige uvećali bi. Zato, učitelj ovu anketu provodi tajnim protokolom. Započinje tako što odabere jednog od učenika, Ivana, koji izabire tajni cijeli broj n. Ivan broj n uvećava za broj sati koji tjedno provodi učeći te dobiveni zbroj prenosi Mariji. Marija dobiveni broj uvećava za broj sati svoga učenja te proslijedi zbroj Sanji. Sanja broju koji je dobila dodaje svoju satnicu i prosljeduje novi zbroj Filipu. Filip takoder uvećava dobiveni broj za svoje sate utrošene na učenje i on svoj zbroj govori Ivanu koji je započeo krug. Ivan od broja kojeg je dobio od Filipa oduzima svoj tajni broj n koji je zamislio na početku te dobiva ukupan broj sati koji učenici u razredu provode učeći i taj broj prenosi učitelju. U ovom slučaju tajni protokol se može razbiti ako dvoje ili više učenika suraduje. Ako Marija i Filip suraduju, mogu doznati koliko sati uči Sanja. Marija zna svoj broj koji je proslijedila Sanji, a Filipu je poznat broj koji je dobio od Sanje. Oduzimanjem broja koji je Marija proslijedila Sanji od broja koji je Filip dobio od Sanje dobivamo broj sati koje Sanja provede učeći. 3.4. RSA kriptosustav RSA kriptosustav je kriptosustav s javnim ključem. To je prvi i najkorišteniji takav kriptosustav. Izumljen je od strane američkih znanstvenika Ronalda Rivesta, Adija Shamira i Leonarda Adlemana 1977. godine. Od tada do danas RSA (Rivest - Shamir - Adleman) kriptosustav pripada najrasprostranjenijim kriptosustavima s javnim ključem. Ovaj kriptosustav je vrlo siguran, a njegova sigurnost leži u težini faktorizacije velikih prirodnih brojeva. Definicija 3.2 Neka je n = p q, gdje su p i q prosti brojevi. Neka je κ = {(n, p, q, d, e) : n = p q, p, q prosti, de 1 (mod ϕ(n))}. Za K = (n, p, q, d, e) κ definiramo e K (x) = x e (mod n) i d K (y) = y d (mod n), x, y Z n. Vrijednosti n i e su javne,odnosno (n, e) predstavlja javni ključ,a vrijednosti p, q i d su tajne, odnosno tajni ključ je (p, q, d). U navedenoj definiciji ϕ(n) predstavlja Eulerovu funkciju, a u ovom slučaju ϕ(n) = ϕ(p q) = (p 1)(q 1). Funkcije e K i d K su medusobno inverzne. Funkciji e K je jako teško odrediti inverz ako faktorizacija n = p q nije poznata. Odabir parametara za RSA kriptosustav može se opisati sljedećim postupkom: 1. Izaberemo dva tajna prosta broja p i q slične veličine do oko 100 znamenaka.

Kriptografija u školi 7 2. Izračunamo n = p q i ϕ(n) = (p 1)(q 1). 3. Odaberemo broj e takav da je (ϕ(n), e) = 1. 4. Ključ za šifriranje (n, e) stavimo u javni direktorij. 3.5. Dječji RSA Dječji RSA je pojednostavljeni RSA kriptosustav koji se primjenjuje u srednjoškolskoj nastavi. Medutim, kako bi nastavnici mogli obradivati ovaj kriptosustav, učenici moraju biti upoznati s osnovama teorije kongruencija i prikazivanjem brojeva u različitim bazama. Postupak dječjeg RSA promotrimo pomou Alice i Boba. Alice izabire brojeve a, b, a, b i definira sljedeće : M = ab 1, e = a M + a, d = b M + b, (ed 1) n = M = a b M + ab + a b + 1. Sada ona ima svoj javni ključ (n, e) i tajni ključ d. Definiramo sljedeće funkcije: e ALICE (x) = ex (mod n) d ALICE (y) = dy (mod n) gdje otvoreni tekst predstavlja prirodan broj x. Funkcije e ALICE i d ALICE su medusobno inverzne. Neka je 0 x n, tada je d ALICE (e ALICE (x)) dex (b M + b)(a M + a)x (a b M 2 + ab M + a bm + ab)x (Mn + 1)(x) x (mod n) = x. Zatim, Bob bira cijele brojeve a 1, b 1, a 1, b 1 te kao i Alice definira: M 1 = a 1 b 1 1, e 1 = a 1M 1 + a 1, d 1 = b 1M 1 + b 1, n 1 = (e 1d 1 1) M 1 = a 1b 1M 1 + a 1 b 1 + a 1b 1 + 1. Takoder, analogno definira i funkcije e BOB (x) = e 1 x (mod n 1 ) d BOB (y) = d 1 y (mod n 1 ).

Kriptografija u školi 8 Bob dobiva svoj javni ključ (n 1, e 1 ) i tajni d 1. Pretpostavimo da Alice želi Bobu poslati poruku x. Šifriranje vrši redom računajući : y = d ALICE (x) z = e BOB (y) i Bobu šalje poruku y. Bob primljenu poruku dešifrira ovako: e ALICE (d BOB (z)) = e ALICE (d BOB (e BOB (y))) = e ALICE (y) = x. Primjerice, pretpostavimo da Alice želi Bobu poslati poruku ALICE. Prvo poruku pretvorimo u numeričku vrijednost. Kako ne bismo imali prevelike brojeve pretvaranje obavljamo po blokovima od tri slova. Ako poruka nije višekratnik broja 3, nadopunimo ju s praznim mjestima. Pretvaranje vršimo u bazi 27 pri čemu slovu A pridodajemo broj 1, slovu B broj 2, slovu C broj 3,..., slovu Z broj 26, a praznom mjestu pridodajemo vrijednost 0. Najprije šifrirajmo poruku ALI, a zatim CE. x = (ALI) 27 = (1 27 2 + 12 27 + 9) 10 = (1062) 10 Pretpostavimo da je Alice izabrala sljedeće brojeve: a = 15, b = 12, a = 10, b = 11. Dobila je brojeve: M = 179, e = 1805, d = 1981, n = 19976. Njezin javni ključ je (n, e) = (19976, 1805). Jednako kao i Alice, Bob je proizvoljno odabrao brojeve a 1 = 10, b 1 = 8, a 1 = 15, b 1 = 13 i dobio svoj javni ključ (n 1, e 1 ) = (15656, 1195) i tajni ključ d 1 = 1035. Alice pri šifriranju prvo koristi svoj tajni ključ d = 1981 i računa te pomoću Bobovog javnog ključa dobiva y = 1981x (mod 19976) = 6342 z = 1195y (mod 15656) = 1186. Kada Bob primi šifrirani tekst, kako bi ga dešifrirao prvo koristi svoj tajni ključ d 1, a zatim Alicein javni ključ (n, e) 1035 1186 (mod 15656) = 6342 = y 1085 6342 (mod 19976) = 1062 = x. Dječji RSA kriptosustav može se probiti pronalaženjem broja d takvog da je de 1 (mod n) pri čemu taj broj d ne mora biti Alicein tajni ključ. Takav broj moguće je pronaći pomoću Euklidovog algoritma. Medutim, Euklidov algoritam se ne koristi u srednjim školama, tako da učenici nisu u mogućnosti razbiti ovaj kriptosustav. Upravo ovakva situacija, kao i mnoge druge slične potiču nastavnike da u svoju nastavu uvedu pojam Euklidovog algoritma.

Kriptografija u školi 9 Primjer 3.1 Pomoću dječjeg RSA kriptosustava šifrirajmo poruku CVIJET. Šifrirajmo najprije prvi dio poruke CV I: x = (CV I) 27 = 3 27 2 + 22 27 + 9) 10 = (2790) 10 Izaberemo cijele brojeve: a = 12, b = 8, a = 10, b = 13, a zatim izračunamo M = 95, e = 962, d = 1243, n = 12587. Sada imamo svoj javni ključ (n, e) = (12587, 962) i tajni d = 1243. Primatelj takoder izabire svoje brojeve a 1 = 10, b 1 = 11, a 1 = 12, b 1 = 13 i dobiva M 1 = 109, e 1 = 1318, d 1 = 992, n 1 = 11995. Njegov javni ključ je (n 1, e 1 ) = (11995, 1318), a tajni d 1. Šifriramo tekst koristeći svoj tajni i primateljev javni ključ: i primatelju šaljemo šifrat 1905. Šifrirajmo sada ostatak poruke. y = 1243 2790 (mod 12587) = 6545 z = 1318 6545 (mod 11995) = 1905 x 1 = (JET ) 27 = (10 27 2 + 5 27 + 20) 10 = (7445) 10 y 1 = 1243 7445 (mod 12587) = 2690 z 1 = 1318 2690 (mod 11995) = 6895 Šifrat ovog dijela je 6895. Primatelj dešifrira poruku koristeći svoj tajni i pošiljateljev javni ključ: 3.6. Savršen kod 992 1905 (mod 11995) = 6545 = y 6545 962 (mod 12587) = 2790 = x = (CV I) 992 6895 (mod 11995) = 2690 = y 1 962 2690 (mod 12587) = 7445 = x 1 = (JET ). Ovaj kriptosustav spada u kriptosustave s javnim ključem. Pogodan je za korištenje u srednjim školama, a za njegovu primjenu potrebni su neki pojmovi iz teorije grafova koje ćemo navesti. Definicija 3.3 Graf je skup točaka koje nazivamo vrhovi, od kojih su neki povezani crtama koje zovemo bridovi. Susjedstvo danog vrha sastoji se od samog tog vrha, te svih vrhova koji su njime povezani bridom. Definicija 3.4 Savršen kod u grafu je podskup skupa vrhova sa svojstvom da je svaki vrh grafa u susjedstvu jednog i samo jednog vrha iz tog podskupa. Graf ne mora posjedovati savršen kod, ali grafovi o kojima će ovdje biti riječ imati će i više, a ne samo jedan savršen kod. Opišimo sada kako konstruirati graf sa savršenim kodom:

Kriptografija u školi 10 1. Nacrtati proizvoljan skup vrhova i numerirati ih. Kod savršenog koda je najbolje nacrtati od 15 do 25 vrhova. 2. Odabrati savršen kod A, odnosno neke od vrhova te ih zapisati. Ovi vrhovi su nam tajni ključ. (Slika 3) Slika 3: Savršen kod A = {2, 6, 11, 14} 3. Povući bridove od vrhova iz A prema ostalim vrhovima, ali tako da svaki vrh bude povezan s točno jednim vrhom iz A. Ovime smo dobili zvijezde čija su središta točke iz A, a ostali vrhovi su vanjske točke. Slika 4 prikazuje kako ovo napraviti na jedan od načina. Slika 4: Zvijezda 4. Prekriti formu zvijezda povlačenjem po volji mnogo bridova izmedu vanjskih vrhova. Bridovi se ne smiju vući iz središta zvijezda zato što bi time pokvarili

Kriptografija u školi 11 savršen kod. S konstrukcijom smo završili kada središta zvijezda nisu uočljiva. Graf koji smo dobili prikazan je na Slici 5 i predstavlja javni ključ. Slika 5: Javni ključ Pretpostavimo da nam je otvoreni tekst cijeli broj m izmedu 0 i 100. šifriramo kroz dva koraka, korak A i korak B. Poruku korak A: Uz svaki vrh grafa napišemo cijeli broj x i tako da je x i = m. Ove cijele brojeve napisati ćemo u drugoj boji (u ovom slučaju plavoj) kako bi se razlikovali od onih kojima su označeni vrhovi. (Slika 6) Slika 6: Cijeli brojevi u boji; otvoreni tekst m = 65 korak B: Zbrojimo sve plave brojeve u susjedstvu svakog vrha uključujući i sam taj vrh. Dobivene vrijednosti upišemo drugom bojom (crvenom) kao što se vidi na

Kriptografija u školi 12 Slici 7. Sada smo šifrirali poruku. Šifriranu poruku, odnosno graf na kome se nalaze crveni brojevi i numeracija vrhova, šaljemo otvorenim kanalom. U praksi se najčešće graf šalje bez numeriranih vrhova. Slika 7: Šifrirana poruka Poruka se dešifrira tako što se zbroje svi crveni brojevi uz vrhove iz savršenog koda. Svaki crveni broj je zbroj plavih brojeva iz njegovog susjedstva. U zbroju crvenih brojeva svi plavi brojevi pojaviti će se točno jednom. Sigurnost ovog kriptosustava je u dobrom prekrivanju savršenog koda, ali i u protivnikovom nedovoljnom poznavanju linearne algebre. Izvornu poruku jednostavno je odrediti ako znamo plave brojeve koje možemo izračunati pomoću linearnog sustava: α 1i x 1 + α 2i x 2 + α 3i x 3 +... + α ni x n = z i, i = 1,..., n. gdje su x 1, x 2, x 3,..., x n nepoznanice (plavi brojvi), z i je crveni broj pri i-tom vrhu, a koeficijenti α 1i, α 2i, α 3i,..., α ni jednaki su 0 ili 1. U slučaju da je j-ti vrh u susjedstvu i-tog vrha, onda je α ji = 1, a u suprotnom je α ji = 0. Linearni sustav se sastoji od onoliko jednadžbi koliko ima vrhova. Navesti ćemo neke jednadžbe vezane za graf koji se nalazi na Slici 7: x 1 + x 2 + x 4 + x 5 = 17 (iz vrha 1), x 1 + x 2 + x 3 + x 4 = 26 (iz vrha 2), x 7 + x 8 + x 11 = 18 (iz vrha 8), x 9 + x 11 + x 12 + x 15 = 5 (iz vrha 15)...

Kriptografija u školi 13 Rješavanjem ovog sustava možemo odrediti izvornu poruku iako nam pripadni savršeni kod nije poznat. Medutim, ovakav sustav je težak za rješavanje učenicima u srednjim školama.

Kriptografija u školi 14 Literatura [1] M. Barun, A. Dujella, Z. Franušić, Kriptografija u školi, Poučak 33 (2008), 40-52. [2] A. Dujella, M. Maretić, Kriptografija, Element, Zagreb, 2007. [3] N. Koblitz, Cryptograpy as a teaching tool, Cryptologia 21 (1997) 317 326 [4] Cryptography as a teaching tool, dostupno na: http://faculty.gvsu.edu/aboufade/web/enigma/school/380term.html [5] http://hr.wikipedia.org/wiki/kriptografija