Professional Documents
Culture Documents
KSS - Predavanje 3 - Jednostavni Kriptografski Algoritmi
KSS - Predavanje 3 - Jednostavni Kriptografski Algoritmi
UNIVERZITET U SARAJEVU
Odsjek za telekomunikacije
MSc studij, I godina
akademska godina 2012/2013
PREDAVANJE 3
Jednostavni kriptografski algoritmi
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
Tabela broj 1.
Izvorni A
ifrat
Cezarova ifra je primjenjivana i sa pomakom udesno veim od tri. Na ovaj nain je mogue napraviti 26
razliitih verzija kljua (26 naina pomaka simbola ifrata u odnosu na simbole izvornog teksta).
Prije uoptene definicije familije algoritama, koji ishodite imaju u Cezarovoj ifri, uspostavlja se
korespondencija izmeu 26 slova engleskog alfabeta i skupa brojeva Z26 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, ...23,
24, 25}. Zatim se pretpostavlja da su na skupu Z26 definisane operacije sabiranja, oduzimanja i mnozenja,
na isti nain kao i u skupu cijelih brojeva, uz obavezu da ako je rezultat provedene operacije imao za
posljedicu da se dobije broj koji nije element skupa Z26 , tada se taj rezultat zamjenjuje s njegovim
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
ostatkom koji nastaje nakon djeljenja tog rezultata s brojem 26. Nametnute operacije se formalno
iskazuju u obliku:
(c +26 d) ili (c+d) mod26
(2.10)
S obzirom da skup Z26 , zajedno sa operacijama (+26) i (26), zadovoljava sve one matematike aksiome,
koji su potrebni da bi ureena trojka
(Z26, +26, 26 ) imala status algebarska struktura tipa prsten:
( 0 (+26) b) = ( b (+26) 0) = b ;
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
Za razmatranja koja tek predstoje, korisno je uvesti i pojam kongruentnih elemenata po modulu 26.
Elementi: (a Z26 ) i (b Z26) su kongruentni po modulu 26, ukoliko i a i b nakon djeljenja po modulu 26
imaju isti ostatak, to se simboliki oznaava sa:
a b (mod 26)
U skladu sa prethodno izlozenim Cezarova ifra se moze definisati i
na slijedei nain:
Neka je: M = C = K = Z26 .
Za 0 K 25, eK (x) = ( x + K ) mod 26 , a dK (y) = ( y - K ) mod 26 , gdje
klju K odreuje za koliko mjesta udesno e se pomicati slova pri ifriranju.
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
ROT 13 je jedan od jednostavnih programa za ifrovanje, to se koristi u UNIX sistemima, a pripada klasi
obinih supstitucionih ifara (svako slovo se pomjera za 13 mjesta udesno A prelazi u N, D u Q....).
Originalni element se dobije ifrovanjem dva puta sa ROT13, dakle
M = ROT13(ROT13(M))
Sutinski ROT13 nije izvorno namjenjen sigurnosti nego da se potencijalno uvredljiv tekst sakrije od ireg
kruga.
Dobar raunarski algoritam za razbijanje ifara ovog tipa je dat u radu G.W. Hart To Decode Short
Cryptograms, Communications of the ACM, v.37, n.9, Sep 1994, pp. 102-108.
Nije teko primjetiti da koncept obine supstitucionalne ifre, kada se primjeni na engleski alfabet,
omoguava kriptologu da razotkrije izvorni tekst u relativno kratkom vremenu.
Neto vie sigurnosti nudi ifriranje pomou linarne (afine) funkcije, kada su postupci ifriranja i
deifriranja odreeni relacijama:
eK (x) = (a x + b )mod 26; dK (y) =a-1 ( y - b ) mod 26
(2.11)
koje se mogu uspostaviti samo za one vrijednosti parametra a, za koje postoji multiplikativni inverz na
skupu Z26 (dakle parametar a mora biti relativno prost s modulom 26).
Afina ifra se stoga definie na slijedei nain:
Neka je: M = C = Z26 , te neka je = {(a, ) Z26 x Z26 : (a,26)=1}
Za K = (a,b) definie se da je:
eK (x) = (a x + b ) mod 26 , odnosno dK (y) = a-1 ( y - b ) mod 26
Nije teko provjeriti da je:
dK ( eK (x) ) = dK ( ax +b )= a-1 ( ax +b - b ) = x
pri emu se brojne vrijednosti za a, biraju tako da je najvei zajedniki djelitelj za takvo a Z26 i broja 26,
jednak broju 1 (formalno se to oznaava s ( a, 26 ) = 1). Ti brojevi a, zajedno s njihovim multiplikativnim
inverzima a-1 na skupu Z26 , sadrani su u tabeli broj 2, koja slijedi:
Tabela broj 2
a
11
15
17
19
21
23
25
a-1
21
15
13
19
23
11
17
25
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
tekst S A R A J E V O,
zasnovan na linearnoj
Y J U L A H. Provjera
najlake se ostvaruje
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
Odnosno da je za eK (x) = Y
dK ( (Y) ) = 15( 24 - 9 ) = 15(15) mod 26 = 225 mod 26;
225 17 (mod 26)
17 (mod 26) x = R;
Nadalje je i za eK (x) = U
dK ( (U) ) = 15( 20 - 9 ) = 15(12) mod 26 = 165 mod 26;
180 9 (mod 26)
9 (mod 26) x = J;
Kao i za eK (x) = L
dK ( (L) ) = 15( 11 - 9 ) = 15(2) mod 26 = 30 mod 26;
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
30 4 (mod 26)
4 (mod 26) x = E;
Konano za eK (x) = H
dK ( (H) ) = 15( 7 - 9 ) = 15(-2) mod 26 = 15( 26 - 2 ) mod 26 =
dK ( (H) ) = 360 mod 26;
340 14 (mod 26)
14 (mod 26) x = O;
Cezarova i afina ifra, specijalni su sluajevi - primjeri - supstitucijske ifre, koja je generalno definisana
na slijedei nain:
Neka je: M = C = Z26 i neka se prostor kljueva sastoji od svih permutacija skupa: Z26 = {0, 1, 2, 3, 4, 5, 6,
7, 8, 9, ...23, 24, 25}. Za svaku permutaciju p definie se:
ep (x) =p ( x ) , odnosno dp (y) = p-1( y )
pri emu je p-1, inverzna permutacija od permutacije p.
S obzirom da je na skupu Zp = Z26 , prema prethodnoj definiciji, mogue generisati p! = 26! = 4 1026
= 2 62 razliitih kljueva, u tom sluaju napad na ifrirani tekst, postupkom potpune provale (Brute-Force
Attack - postupak grube sile potpuna provala), ak i uz upotrebu raunara je teko ostvarljiv.
Supstitucijske ifre se meutim mogu razotkrivati i znatno jednostavnije, a to znai i mnogo bre,
nego u sluaju kada se koristi postupak grube sile dakle pretraivanje cijelog prostora kljueva (2 62
razliitih kljueva). Naime dovoljno je odgonetnuti na kojem jeziku se komunicira, a potom saznati i
vlastitu frekventnu raspodjelu simbola u tom jeziku. Korisno je poznavati i najee bigrame i trigrame
tog jezika, pa je veina posla u deifrovanju uinjena. U engleskom jeziku najee je slovo e, zatim slijedi
slovo t, pa slovo a , kao to je to prikazano u tabeli broj 4. Tabela broj 4 daje frekvenciju simbola
8
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
engleskog jezika u procentima prema radu H. Beker i F. Pajper Cipher Systems:The Protection of
Communication
Tabela broj 4
A
8.2
1.5
2.8
4.3
13
2.2
2.0
6.1
7.0
0.2
0.8
4.0
2.4
6.7
7.5
1.9
0.1
6.0
6.3
9.1
2.8
1.0
2.4
0.2
2.0
0.1
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
Homofobina ifra je znaajno pouzdanija od obine supstitucijske ifre, ali i ona nije nesavladiva
za sposobne kriptoanalitiare. To se spoznalo jo u Srednjem vijeku, pa je nakon vie dobrih rjeenja
(poput velike ifre kralja Luja XIV, koja je generisana u XVII stoljeu, a ipak ostala neprovaljena gotovo
dva vijeka, zatim sistema Crne komore na bekom dvoru u XVIII stoljeu....), ostvareni uspjeh
kriptoanalitiara i tehnoloki napredak u XIX vijeku (iskazan i praktinom pojavom telegrafa 1839 godine
(Vinston-Kukov sistem, Charles Wheatstone (1802-1875) i potrebom da se komunikacija putem istog
bolje zatiti) natjerao kriptografe da u praksi masovnije ponu koristiti polialfabetsku Vinerovu ifru
(francuski diplomata Blaise de Vigenere (1523-1596)).
Idejni zaetnik Vinerove ifre bio je talijanski matematiar Alberti ( Leon Battista Alberti, 1404 1472 ) jo u XV vijeku, kada je predloio da se umjesto uobiajne monoalfabetske supstitucije, koristi dva
ili vie razliitih alfabeta, koje koristimo naizmjenino, ime se postie da se isto slovo izvornog teksta ne
pojavljuje uvijek i kao isto slovo kriptograma. Sa idejama Albertija i onih koji su ih pokuavali dalje
razraivati (Johan Tritemius, Giovani Porta...) Viner se susreo oko 1550 godine, tokom diplomatskog
rada u Rimu.
Opsjednut kriptografskim tajnama, a materijalno obezbjeen, napustio je diplomatsku slubu i
posvetio se samo kriptografiji. Tvorac je Vinerovog kvadrata prikazanog u tabeli broj 5, koji se sastoji od
poetnog alfabeta i 26 ifrovanih alfabeta, koji su nastali tako da je svaki naredni alfabet u stvari rezultat
jednog ciklikog pomjeraja u lijevo nad prethodnim alfabetom (prvi red ispod izvornog alfabeta,
predstavlja praktino alfabet ifrovan Cezarovim konceptom , ali uz pomjeraj za jedno mjesto u lijevo u
odnosu na izvorni alfabet, drugi red predstavlja alfabet ifrovan Cezarovim konceptom , ali uz pomjeraj
za dva mjesta u lijevo u odnosu na izvorni alfabet,...... i dvadeset esti red predstavlja alfabet ifrovan
Cezarovim konceptom, ali uz pomjeraj od dvadesetest mjesta u odnosu na izvorni alfabet - to dovodo
do njegove podudarnosti s izvornim alfabetom. U tom kontekstu, ako slovo n ifrujemo treim redom
ono se preslikava u slovoq, ali ako ga ifrujemo trinaestim redom ono se preslikava u slovo a.
Saglasno Vinerovom algoritmu, pored koritenja Vinerovog kvadrata, treba uvesti i kljunu rije
(ona je ustvari neki vid fiksnog kljua) recimo Sarajevo, koja odreuje redosljed upotrebe alfabeta
zapisanih u pojedine vrste Vinerovog kvadrata (18, 26, 17, 26, 9, 5, 21, 14). Nije teko uoiti da dui
klju ini Vinerov algoritam otpornijim na napade. Rad pod naslovom Tracite des Chiffres rasprava o
iframa, objavljen 1586 godine, predstavlja ustvari rezime rezultata njegovog rada.Vinerov algoritam se
moe definisati na slijedei nain:
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
eK (x1, x2, x3, x4,...... xm ) = ( x1 +26 k1, x2 +26 k2, x3 +26 k3, ....., xm +26 km)
odnosno
dK (y1, y2,y3, y4,...... ym ) = (y1 -26 k1 , y2 -26 k2 , y3 -26 k1 , ym -26 km )
Nije lako pronai prave razloge, zato su impresivni rezultati opisanog Vinerovog rada, bili
zanemarivani od strane kriptografa gotovo dva vijeka. Aktuelizacija Vinerovog algoritma za potrebe
telegrafskih komunikacija, dodatno je motivirala mnoge kriptoanalitiare XIX vijeka da joj pokuaju
umanjiti znaaj. U tom smislu prvi globalno vrijedni rezultati vezuju se za arlsa Bebida (Charles
Babbage 1791-1871 , koji je zapamen i kao projektant, prvo diferencijalnog motora br.1 - fantastinog
kalkulatora od 25 000 dijelova, a zatim i diferencijalnog motora br.2 - koji iako nisu nikada zavreni do
kraja, ipak predstavljaju ishodite dananjih digitalnih raunara) koji je uspjeo da razbije Vinerovu ifru.
Rezultate svog rada on sam nije objavio, tako da su oni postali dostupni naunoj javnosti tek u prvoj
polovini XX vijeka, kada je bilo pojaano zanimanje za ideje arlsa Bebida, prevashodno u domenu
kalkulatora - odnosno pretaa raunskih maina.
11
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
arls Bebid nije se zanimao samo za kriptoanalizu, nego je i sam pokuavao razvijati nove kriptografske
algoritme. Radei timski sa arlsom Vitstonom (smatra se da je njegov doprinos poligramskim
supstiucionim iframa, koje su kasnije uobliene i publikovane kao Plejferove ifre, bio najznaajniji, a on
je i jedan od kreatora prvog telegrafa u Evropi, patentiranog jo 1837. godine) i baronom Lajonom
Plejferom osmislili su Plajferovu ifru (Lyon Playfair (1818-1898)). ifra je objelodanjena 1854. godine, a
baron Plejfer ju je popularizirao u vojnim i dravnim strukturama britanskog kraljevstva, tokom druge
polovine XIX vijeka (bio je zamjenik predsjednika donjeg doma Parlameta, upravnik nacionalne
pote, ...).
Plajferova ifra pripada klasi poligramskih supstitucionih ifri. Ovom ifrom se parovi simbola
izvornog teksta, supstituu parovima nekih slova, pri emu je procedura zamjene strogo ureena. Prije
koritenja ovakvog postupka ifriranja, poiljalac i primalac se moraju dogovoriti oko kljua - odnosno
kljune rijei.
Neka je kljuna rije M E S U D. Nakon izbora kljune rijei, njeni simboli se upiu u kvadrat formata
5x5 i to onako, kao to je uraeno u tabeli broj 6.
Tabela broj 6.
M
I/J
12
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
1.
Izvorni tekst se podijeli u blokove od po dva simbola: OD, SJ, EK, ZA,
TE, LE, KO, MU, NI, KA, CI, JE. Pri tome nijedan blok ne smije biti
sastavljen od dva ista slova. Ako se to pak desi zbog prirode izvornog
teksta, izmeu istih slova treba ubaciti simbol X. Isti simbol se
ubacuje i ako je broj slova izvornog teksta neparan.
2.
Kada se slova odabranog bigrama nalaze u istom redu MU, tada slovo
M zamjenjujemo slovom E (slovo istog reda pomjereno u tabeli za
jednu poziciju u desno), a slovo U slovom D. tabeli broj 6. Na taj nain
se izvorni bigram MU supstituie bigramom ED.
Kada se slova predmetnog bigrama nalaze u istom stupcu JE, tada se
J zamjenjuje sa P, a E sa slovom B. u tabeli broj 6. Saglasno tome
izvorni bigram JE, supstituie se bigramom PB.
3.
4.
Deifrovanje se vri tako to se i ifrovani tekst izdjeli na bigrame, pa na osnovu ranije dogovorenog
kljua, slovo iz bigrama ifrata na osnovu tabele broj 5 (nju identinu imaju i poiljaoc i primaoc) se
zamjenjuje slovom koje lijevo od njega, ako su slova bigrama iz istog reda (ED se prevodi kao MU),
odnosno PB se prevodi kao JE, ili pak u sluaju TM, prevod je bigram OD.
13
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
Primjer broj 4
14
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
0 0
K = 5 25 0
0 25
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
e (x1, x2, x3, x4,... xm) = (x (1), x (2),, x (3),, x (4),,... x (m) )
d(y1, y2,y3, y4,...... ym) = (y -1(1), y -1(2),, y -1(3),,...... y -1(m))
U skladu sa upotrebljenim simbolima, za odabranu permutaciju (), (-)1
predstavlja inverznu permutaciju koja omoguava vraanje u poetno
stanje.
Primjer broj 5
Izvorni tekst E L E K T R O T E H N I C K I F A K U L T E T
ifrirati kolonskim transpozicijskim algoritmom, ukoliko je dogovoreni
klju
( 4 3 1 2 5 6 ).
S obzirom da klju ima 6 brojeva, kolone e sadravati po 4 slova, a
nedostajue slovo e se nadopuniti slovom x.
4 3 1 2 5 6
ELEKTR
OTEHNI
CKI FAK
ULTETX
ifrat je EEIT KHFE LTKL EOCU TNAT RIKX.
Prepoznavanje transpozicijske ifre je olakano, jer je frekvencija
pojavljivanja simbola u koritenom jeziku zadrana. Kriptoanaliza
kolonske transpozicije zapoinje traganjem za podatkom o dimenzijama
pravougaonika, koje nam daju prvu informaciju o kljuu. U tom smislu
mogue dimenzije ifrata: EEITKHFELTKLEOCUTNATRIKX su:
12 x 2; 6 x 4; 4 x 6; 2 x 12.
Mali broj kolona nije vjerovatan, jer se onda te kolone izreu u
trake i samo prostorno pomjeraju, dok ne dobijemo smislen sadraj.
Potom se u moguim varijantama pravougaonika utvruje odnos
samoglasnika i suglasnika i favorizuje pravougaonik u kojem je odnos
samoglasnika i suglasnika blizak odnosu koji je karakteristian za taj
jezik.
17
Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije
18