You are on page 1of 45

ELEKTROTEHNIKI FAKULTET

UNIVERZITET U SARAJEVU

Odsjek za telekomunikacije
MSc studij, I godina
akademska godina 2011/2012

Predmet: Kriptografija i sigurnost sistema


Predava: R. prof. dr Narcis Behlilovi, dipl. ing. el.

PREDAVANJE 2
Osnove kriptografije. Kriptografski algoritmi.

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

1 Osnove kriptografije
Postoje brojne definicije kriptografije, koje su u osnovi ipak vie, ili manje sline. Prema jednoj od njih,
kriptografija (eng. Cryptography) je umjetnost i nauka uvanja bezbjednosti poruka. Osobe koje se
dominantno bave izuavanjem i unapreivanjem kriptografije, nazivaju se kriptografi (eng.
Cryptographers).
U davnim antikim vremenima tajnost komuniciranja se pokuavala ostvariti skrivanjem poruke (pisanje
po tablici, pa zalijevanje voskom teksta, pisanje po obrijanoj glavi glasnika, kinesko pisanje po svili,
pisanje nevidljivim mastilom,....). Ovakav pristup tajnosti komuniciranja, zasnovan prevashodno na
tajnosti lokaliteta za smjetanje poruke, naziva se steganografija (od grkih rjei: steganos - prikriven i
grafein - pisati).
Steganografija ima znaajnu slabost u injenici, da ako se poruka presretne i uhvati, ona praktino
odmah biva i otkrivena. Stoga se paralelno sa razvojem steganografije razvijala i kriptografija. Naziv
kriptografija, takoer potie od grkih rijei kriptos - skriveno i grafein - pisati, ali kod kriptografije nije
teite na skrivanju lokaliteta poruke, nego na skrivanju njenog znaenja. Da bi se ostvarili vei efekti u
ouvanju tajnosti, esto su se steganografija i kriptografija kombinovale. Tokom Drugog svjetskog rata, u
Latinskoj Americi njemaki agenti su fotografisanjem uspjevali itavu stranicu teksta kondenzovati u
taku prenika manjeg od milimetra, da bi potom takvu taku stavili u neki bezbjedonosno bezvrijedni
tekst. Ipak, ve 1941. godine, FBI je pronaao prve takve mikro take, tako da su efekti zasnovani na
steganografiji postali beskorisni. Njemaki agenti su brzo reagovali i nastavili s takvom praksom, ali su
izvorni tekst prije saimanja u taku, prethodno i kriptovali. Amerikanci su tada i nakon to lociraju takvu
taku ostajali bespomoni, jer je u nastavku aktivnosti trebalo jo i deifrovati pronaeni tekst.
Od pomenute dvije opcije za tajnost komunikacija, kriptografija je sigurnosno mnogo monija, to se
dokazuje vrlo lako, ne samo njenom irokom implementacijom, nego i njenim stalnim razvojem i
unapreivanjem. Steganografija se u novije vrijeme provodi tako da se poruke skrivaju u slikama.
Najmanje znaajan bit svakog bajta slike, zamjeni se bitom poruke. Zbog ovoga zahvata izvorna slika se
nee bitnije promjeniti, jer se u veini grafikih formata prikazuje vie boja, nego to ljudsko oko moe
da detektuje. U crno-bijelu fotografiju rezolucije 1024x1024 opisanim pristupom mogue je ubaciti tekst
od 64 kilobajta.
Sposobnosti razbijanja postojeih kriptografskih zatita, objedinjuju se u naunoj disciplini kriptoanalizi
(eng. Cryptoanalysis), a specijalisti za tu naunu oblast nazivaju se kriptoanalitiarima (eng.
Cryptoanalysts).
Matematika grana koja objedinjava i kriptografiju i kriptoanalizu naziva se kriptologija (eng.
Cryptology).
Izvorna poruka, odnosno otvoreni tekst skraeno se oznaava sa
(eng. Message), ili sa
(eng.
Plaintext). Iskazuje se putem odabranih simbola, koji s aspekta raunara imaju samo, vlastitu, binarnu

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

interpretaciju. Izvorni tekst je najee namjenjen, ili za skladitenje, ili pak za slanje na odreenu
lokaciju.
Kriptovani oblik otvorenog teksta ili ifrat (eng. Ciphertext), obino se skraeno oznaava sa . Iskazan je
u binarnom obliku, pri emu broj njegovih bita, moe biti ne samo isti kao i u , nego i vei, pa ak i
manji, od broja bita u , a to se pak postie kombinovanje ifrovanja i kompresije.
Postupak kriptovanja, matematiki se izrazava relacijom (2.1), u kojoj je sa
kriptovanja (ifrovanja).
( )

oznaena funkcija

(2.1)

Da bi se iz kriptovanog oblik otvorenog teksta, C, ponovo dobio otvoreni tekst M, potrebno je nad
formom C, funkcijom dekriptovanja D, praktino ponititi efekte kriptovanja.
Postupak dekriptovanja, matematiki se izrazava relacijom (2.2), u kojoj je sa D oznaena funkcija
dekriptovanja.
( )

(2.2)

Od sutinske vaznosti je ouvanje obostrane jednoznanosti preslikavanja, iz skupa izvornih poruka,


kojem pripada i poruka M, u skup ifrata, kojem pripada i ifrat C (samim tim je obezbjeeno i
jednoznano preslikavanja iz skupa ifrata, u skup izvornih poruka). S tim u vezi mora vaiti i sljedea
relacija:
( ( ))

(2.3)

Kriptografski algoritam, (eng. Cryptographic Algorithm) ili ifra, je matematika funkcija koja se koristi za
ifriranje i deifriranje.
Bazira li se sigurnost algoritma na tajnosti procedure, prema kojoj se on realizuje, tada je raspoloivi
algoritam ogranien (eng. Restricted). Ogranieni algoritmi su karakteristini za kriptografske zahvate
niskog bezbjedonosnog nivoa. Ovakvi algoritami, primjenjuju se samo unutar ograniene (zatvorene)
grupe. im jedna osoba iz grupe napusti grupu (jasno, iva i zdrava ), upotrbljavani algoritam se mora
mijenjati. Teko je procijeniti i stvarnu sigurnost upotrebljavanog algoritma, ukoliko u samoj zatvorenoj
grupi ljudi nema dobar kriptograf, a upitno je i subjektivna ocjena dobrog kriptografa.
Moniji kriptografski algoritmi, pridruenu im sigurnost ne zasnivaju na tajnosti algoritma. Njihova
sigurnost, po pravilu je bazirana na tajnosti upotrbljenog kljua. Dakle takav algoritam moe biti javno
objavljen i analiziran.
Proizvodi koji koriste ovakve algoritme, mogu biti masovno distribuirani u javnosti.
3

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Klju (eng. Key), je kao i izvorna poruka, skup simbola, koji u optem sluaju (ako odreenim algoritmom
nisu propisana konkretna ogranienja na njegovu kompoziciju), moe imati proizvoljnu strukturu. Skup
moguih vrijednosti kljua naziva se prostor kljueva (eng. Keyspace). Kod kriptografskih algoritama koji
raspolau i vlastitim kljuem, isti se ugrauje i u funkciju kriptovanja i u funkciju dekriptovanja , tako
da se relacije (2.1), (2.2) i (2.3), transformiu u relacije (2.4), (2.5) i (2.6):
( )

(2.4)

( )

(2.5)

( ))

(2.6)

Ukoliko algoritam koristi posebne kljueve i za fazu kriptovanja


posljednje relacije transformiu u relacije (2.7), (2.8), (2.9).

i za fazu dekriptovanja

( )

(2.7)

( )

(2.8)

( ))

, tada se

(2.9)

Kriptosistem (eng. Cryptosystem) je pojam koji obuhvata kriptografski algoritam, sve mogue otvorene
tekstove, sve njihove verzije - kriptovane predmetnim algoritmom i sve mogue kljueve, usklaene s
tim algoritmom.

Formalno se kriptosistem moe definisati na sljedei nain:


Kriptosistem je ureena petorka (M, C, K, E, D), u kojoj je M konaan skup svih osnovnih elemenata
otvorenog teksta, C konaan skup svih osnovnih elemenata kriptovanog teksta, K konaan skup svih
kljueva, E(M,K) C skup svih funkcija ifriranja, a D(C,K) M skup svih funkcija deifriranja.

Za svaki

, postoji funkcija ifriranja

i funkcija deifriranja

i to takve da vae relacije:


4

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

( ( ))

Posebno vazan detalj u prethodnoj definiciji je zahtjev da funkcija

mora biti injektivno preslikavanje.

U protivnom, ukoliko bi se dozvolila i mogunost da je:


(

primalac poruke ne bi mogao dovoljno pouzdano odrediti da li da


Dakle, funkcija

deifruje kao

ili pak kao

ne bi bila dovoljno precizno definisana, sa stanovita kriptografskih zahtjeva.

Kriptosistemi se klasificiraju uglavnom na osnovu slijedea tri kriterija:


tipu operacije, koja se koristi tokom ifriranja (uglavnom su to substitucija, ili pak transpozicija,
mada postoje i hibridna rjeenja koja kombinuju obje te operacije);
nainu na koji se obrauje izvorni tekst, on moe biti zasnovan na blokovskoj obradi dijelova blokova izvornog teksta, uz koritenje stalno istog kljua, ali i na protonoj obradi izvornog
teksta (eng. Stream Cipher) kod kojeg se elementi izvornog teksta obrauju jedan po jedan, uz
koritenje paralelno generiranog niza kljueva (eng. Key Stream);
medijskom statusu koritenog kljua, koji moe biti tajni, ili pak javni.

Kod simetrinih, ili konvencionalnih kriptosistema, klju za deifrovanje se moe lako izraunati iz kljua
za ifrovanje, ukoliko oni nisu identini. Meutim kljuevi za ifrovanje i kljuevi za deifrovanje, kod
ovakvih sistema po pravilu su identini, to im i pribavlja atribut simetrian. Sigurnost ovih kriptosistema
lei u tajnosti kljua. Ovakvi sistemi nazivaju se i kriptosistemi s tajnim kljuem.
Kod kriptosistema s javnim kljuem (asimetrini kriptosistemi), klju za deifrovanje se praktino ne
moe izraunati na osnovu poznatog kljua za ifrovanje, koji je javno publikovan podatak. Deifrovanje
praktino moe ostvariti samo onaj koji, za obznanjeni javni klju, poznaje odgovarajui tajni klju, a to je
njegov vlasnik. Ideju javnog kljua predoili su Whitfield Diffie i Martin Hellman 1976, tokom rasprava na
temu kako prenositi kljueve za sismetrine kriptosisteme, putem nesigurnih komunikacijskih kanala.
Osnovni zadatak kriptografije, moe se iskazati i kao zahtjev za uvanjem izvornog teksta od
neovlatenih osoba, koje pokuavaju da ga se domognu. Kao to je ve konstatovano, kriptoanaliza je
nauka koja, bez kljua, a na osnovu pribavljenog ifrata, pokuava odrediti izvorni tekst. Kriptoanaliza
omoguava i da se lociraju slabosti analiziranog kriptosistema, ali da se eventualno doe i do osnovnog
5

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

cilja ove nauke - spoznaja izvornog teksta, ili pak kljua koji se koristi. Svaki kriptoanalitiki pokuaj
naziva se napad (Attack).
Prvi radovi iz podruja kriptoanalize vezuju se za filozofa arapskog porijekla Al Kindija koji je ivio u IX
vijeku. Njegovo najvanije dijelo Manuskript o deifrovanju kriptografskih poruka, ponovo je otkriveno
tek 1987. u Istanbulu (u Otomanskoj arhivi Sulejmaniji). To djelo obuhvata detaljne rasprave i analize o
statistici, arapskoj fonetici i sintaksi. Al Kindi se i danas smatra ocem Teorije uestanosti. U periodu od
800. do 1200. godine nove ere, arapski svijet je ve bio u golemoj naunoj prednosti spram Evrope. Dok
su arapski uenjaci uivali u razdoblju velikih vlastitih naunih dostignua, u Evropi se tek u XV vijeku,
tokom Renesanse, omoguilo da i kriptografija doivi vlastiti procvat. Venecijanski ifrant ovani Soro,
postavljen 1506. godine za sekretara ifranta u Veneciji, smatrao se jednim od najobrazovanijih
evropskih ifranata i prvim velikim evropskim kriptoanalitiarem.
Holananin August Kerkof ( August Kerckhoffs (1835-1903)) je utemeljio vanu tezu da tajnost mora biti
zasnovana na kljuu, odnosno da je normalno da kriptoanalitiar zna sve pojedinosti o primjenjenom
kriptografskom algoritmu.
Konceptualno se kriptoanalitiki napadi mogu grupisati u nekoliko osnovnih tipova:
napad tipa samo ifrat (eng. Ciphertext Only Attack). Kriptoanalitiar u ovakvim situacijama
ima samo nekoliko poruka ifrovanih istim algoritmom za ifrovanje. Zadatak kriptoanalitiara je
da rekonstruie izvorni tekst za to vie poruka, ili jo bolje da otkrije klju (odnosno kljueve),
koji su koriteni, kako bi mogao otkrivati i naredne poruke ifrovane istim algoritmom. Pobrojani
ciljevi se analitiki mogu iskazati relacijama, za poznato:
( ),
( ),
( ), ....,
( )
a cilj je izraunati:
na osnovu

,
(

,..., ili napraviti algoritam koji omoguava da se u optem sluaju


) odredi
.

napad tipa poznat otvoreni tekst (eng. Known Plaintext Attack). Kriptoanalitiar ima pristup
odreenom broju ifrata i njima odgovarajuih izvornih poruka, pa nastoji da odredi klju
(kljueve), kako bi mogao da deifruje svaku narednu poruku dato je:
( ),

( ),

( ), ....,

( )

a cilj je izraunati klju , ili pak algoritam, koji e omoguiti da se na osnovu


odredi
.

napad odabran otvoreni tekst (eng. Chosen Plaintext Attack). Kriptoanalitiar ne samo da
ima pristup odreenom broju ifrata i njima odgovarajuih izvornih poruka, nego moe i birati
izvorni tekst koji e biti ifrovan. Ovo je moniji napad od napada tipa poznat otvoreni tekst,
jer je kriptoanalitiar u prilici da bira specifine blokove izvornog teksta, koji mu pomau da
6

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

lake doe do informacija o kljuu, kako bi ga odredio i time stvorio preduslove da deifruje
svaki naredni ifrovani tekst. Poznato je dakle:
( ),

( ),

( ), ....,

pri emu sam kriptoanalitiar odreuje-bira: , ,


ili pak algoritam, koji e omoguiti da se na osnovu

,...,

( )

. Postavljeni je cilj izraunati klju ,


(
), odredi
.

napad tipa prilagodljiv odabrani otvoreni tekst (eng. Adaptive Chosen Plaintext Attack)
Ovo je poseban sluaj napada tipa odabran otvoreni tekst. Kriptoanalitiar ne samo da moe
da odabere ifrovan otvoreni tekst, ve moze i da modifikuje ono to je odabrao na osnovu
rezultata prethodnih ifrovanja. Dok kod napada odabran otvoreni tekst, kriptoanalitiar bira
blok izvornog teksta za ifrovanje, napad prilagodljiv odabrani otvoreni tekst omoguava da se
odabere i manji dio odabranog bloka, nad kojim se izvri planirani napad, pa zatim koristei i
tako dobijene rezultate ponovi jo jedan napad na drugi dio bloka, odnosno da iterativno rjeava
problem dostizanja postavljenog cilja.

Pored ova etiri tipska kriptoanalitika napada, u literaturi se spominju i kriptoanalitiki napadi poput:
napad tipa odabrani ifrat (eng. Chosen Ciphertext Attack). Napada moze da odabere ifrat
za deifrovanje, a ima i pristup deifrovanom tekstu tog ifrata. Cilj mu je da odredi klju.
Poznato je:
( ),

( ),

( ),

( ),

a izraunava se klju . Ovakav napad se esto primjenjuje na kriptografske algoritme s javnim


kljuem.
napad tipa odabrani klju (eng. Chosen Key Attack). Ovaj napad se zasniva na odreenom
obimu informacija o kljuu, na osnovu ega se on pokuava rekonstruisati.
kriptoanaliza, prijetnjom, kraom ili ucjenom (eng. Rubber Hose Cryptoanalysis). Napada
prijeti, ucjenjuje ili mui odabranu osobu kako bi saznao klju. Ovakvi napadi su vrlo opasni i vrlo
efikasni, ukoliko se moze doi do odgovarajue osobe.

Oni koji tvrde da raspolau sa neprovaljivom ifrom, samo na osnovu spoznaje da oni nisu u stanju da je
provale, ili su geniji, ili su budale. Iskustva su pokazala da u dosadanjem istorijatu razvoja
kriptoanalitike, da realno nema mjesta pretjeranom optimizmu po pitanju sigurnosti tajnih informacija,
te da se preventivno djelovanje, stalna testiranja i odreena doza paranoinog pesimistinog stava u
vidu stalne sumnje da li su podaci sigurni, zaista moe uzeti kao jedini ispravan prilaz analizi trenutne i
iskljuivo trenutne mjere sigurnosti informacija i podataka od interesa.
7

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Razvoj kriptografije stalno prati i razvoj kriptoanalize, te je time i zagarantovana vremenska ogranienost
uspjeha svakog kripto-algoritma. Kao relativna mjera sigurnosti i uspjenosti nekog aktuelnog kriptoalgoritma smatra se da ste u osnovi bezbjedni, ukoliko je cijena provaljivanja tajnih podataka, vea od
njihove materijalne vrijednosti (takoer su prihvatljive i opcije: vrijeme za provaljivanje tajnih podataka
due je od vremenskog intervala, tokom kojeg treba da su podaci tajni; koliina podataka ifrovanih
jednim kljuem, manja je od koliine podataka neophodnih za provaljivanje algoritma....).
Lars Knudsen (1962- ) je utvrdio da se postupci za provaljivanje kriptografskih algoritama mogu
sistematizirati po nivou ozbiljnosti prijetnji:
potpuna provala (eng. Total Break), kada kriptoanalitiar dolazi do kljua , dakle ( )
opti zakljuak (eng. Global Deduction), kriptoanalitiar nalazi alternativni algoritam putem
kojeg saznaje , a da pri tome nije saznao klju .
trenutni (lokalni) zakljuak (eng. Instance Deduction, Local Deduction), kriptoanalitiar pronalazi
izvorni tekst presretnutog ifrata.
zakljuak na osnovu pribavljene informacije (eng. Information Deduction), kada kriptoanalitiar
dolazi do neke informacije, o kljuu ili pak izvornom tekstu koje e mu samo olakati daljnja
istraivanja (recimo informacija o vrsti izvornog teksta).
U kriptologiji smatra se da je samo algoritam jednokratna biljenica (eng. One Time Pad), neprovaljiv i uz
raspolaganje bilo kakvih resursa. Ovaj algoritam su osmislili major Dozef Moborn (Joseph Moborgne) i
Dilbert Vernam (Gilbert Vernam). Jednokratna biljenica je u sutini veliki neponovljivi skup istinski
nasuminih kljueva i zaljepljenih zajedno u biljenicu. Poiljalac koristi jedno slovo kljua iz biljenice, da
bi ifrovao jedno slovo izvorne poruke i to tako to se uzeti simbol iz kljua sabere sa uzetim simbolom iz
izvorne poruke, pri emu se sabiranje provodi u skladu sa sabiranjem po modulu 26 (broj slova engleske
abacede). Svako slovo kljua koristi se samo jednom, za samo jednu poruku. Poiljalac ifruje poruku, a
onda unitava iskoritene stranice biljenice na kojim se nalazi upotrebljeni dio kljua. Primalac ima
identinu biljenicu sa kljuem i on svakom primljenom simbolu dodaje pripadni simbol kljua. Nakon
deifrovanja simbola, primalac takoe unitava upotrebljeni dio kljua.

Zadatak 1:
Ako je izvorni tekst 'ONE', a prema biljenici raspored simbola u kljuu 'TBF', tada je ifrat 'IPK':
(O+T) mod 26 = I; (N+B) mod 26 = P; (E+F) mod 26 = K

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Svi drugi algoritmi su provaljivi postupkom grube sile (eng. Brute Force Attack), pri emu raspoloivi
kadrovski i raunarski resursi, diktiraju koliko e to dugo trajati (provjerava se jedan po jedan klju iz
prostora kljueva, te da li dobijeni izvorni tekst ima smisla).
Sa praktinog stanovita, kriptografija se danas uglavnom sagledava kroz prizmu mogunosti
provaljivanja analiziranog algoritma jasno uz pomo odgovarajuih raunarskih resursa.
U tom smislu, predmetni algoritam smatra se raunarski sigurnim (eng. Computationally Secure) ako ga
nije mogue provaliti raspoloivim sredstvima. Ovakva procjena se bazira na osnovu raspoloivih
teoretski znanja i hardverskih i softverskih resura. Meutim kako je budui razvoj nauke samo donekle,
globalno predvidiv, ocjena raunarske sigurnosti nema tano odreeni, garantovani interval vanosti.

Sloenost napada moe se kvantificirati na vie naina, poput:


sloenosti ulaznih podataka za napad (eng. Data Complexity), odnosno koliko treba ulaznih
podataka za napad;
sloenost obrade podataka za napad (eng. Processing Complexity), odnosno koliko treba
vremena utroiti da se realizuje napad; ovaj podatak se ponekad oznaava i kao radni faktor
(eng. Work Factor);
prostorne kompleksnosti (eng. Storage Requirements), odnosno opsega potrebnih memorijskih
resursa za realizaciju napada.

esto se pravi kompromis izmeu ova tri pokazatelja (napad moe biti bri, ukoliko se angauje vie
memorije. Nivo sloenosti napada na odreeni kriptografski algoritam, po pravilu se iskazuje putem
eksponenta broja 2. Sloenost nivoa 264 naglaava da je potrebno 264 operacija za njegovo provaljivanje
(radi relativnog osjeaja i kompleksnosti napada uzima se da je starost planete je 10 9 godina odnosno,
230godina, ili 255sekundi, prema tome ako bi se od nastanka planete svake sekunde obavile po 512
operacija, tada bi se moglo provesti potrebnih 264 operacija. S obzirom da ozbiljniji raunarski resursi
postoje tek zadnjih 16 godina, odnosno 229sekundi, u sekundi bi se od 1993 godine trebalo obavljati
paralelno istovremeno 236 operacija, odnosno 1011operacija, stotinu milijardi operacija u sekundi
tokom 15 godina).
injenica, da ostvareni tehnoloki napredak tokom zadnjih nekoliko decenija , nakon to je konvertovan i
u raunarske nauke, omoguava razbijanje kriptoanalitikih algoritama na milijarde segmenata, to uz
paralelnu povezanost raunara i neobaveznost meusobnog komuniciranja njihovih procesora, stalno
pomjera granicu izmeu praktino mogueg i teoretskog, upravo ka tom teoretskom.
Potvrda prethodne ocjene su i komercijalna rjeenja kriptografskih algoritama zasnovana na 128-bitnim
kljuevima (IDEA) i AES (128 bitni, 196 bitni, 256 bitni kljuevi).

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Po nepisanom pravilu, savremena kriptografska literatura svrstava, sve ono to je uraeno u domenu
kriptografije do 1980.godine (do prvih primjena raunarskih tehlogoija u kriptografiji), u podruje
klasine konvencionalne (u bazi izraziti matematizirane) kriptografije, a radove i algoritme objavljene
nakon tog vremena, tretira kao Savremena kriptografska rjeenja.
Sloenost savremene kriptografije nalae da se, pri svakom ozbiljnijem upoznavanju s istom, odreena
panja prvo usmjeri ka klasinoj kriptografiji.

1.1 Osnovne karakteristike klasine kriptografije


U skladu sa klasinim kriptografskim pristupom, kriptografski algoritmi se dijele na:
algoritme, koji su bazirani na supstitucijskim iframa;
algoritme, koji su bazirani na transpozicijskim iframa.

Treba naglasiti da i mnogi savremeni kriptografski algoritmi, u svojoj strukturi posjeduju i elemente
supstitucijskih transformacija i elemente transpozicijskih transformacija.

1.1.1 Algoritmi bazirani na supstitucijskim iframa


Algoritmi bazirani na supstitucijskim iframa (eng. Substitution Cipher) zahtjevaju da poiljalac svaki
simbol (slovo) izvornog teksta, zamjeni odgovarajuim simbolom ifrata, dok primalac zamjenjuje svaki
simbol ifrata odgovarajuim simbolom izvornog teksta.
Sa stanovita klasine kriptografije postoje bar etiri vrste supstitucijskih ifri:
obina supstitucijska ifra (eng. Simple Substitution), ili monoalfabetska ifra (eng.
Monoalphabetic Cipher) su ifre u kojim je svako slovo izvornog teksta zamjenjeno
odgovarajuim slovom ifrata. Kriptogrami u enigmatskim asopisima su primjeri
monoalfabetskih ifara;
homofonina supstituciona ifra (eng. Homophonic Substitution Cipher), je slina obinoj
supstitucijskoj ifri, s tim to jednom simbolu izvornog teksta moe odgovarati bilo jedno, bilo
dva, ili pak ak nekoliko simbola u ifratu (A moe u ifratu biti ili 3, ili 35, ili 356..);
poligramska supstituciona ifra (eng. Polygram Substitution Cipher), blokove simbola izvornog
teksta, preslikava u odreene blokove ifrata (abc u xyz, aca u klm,.....);
polialfabetska substituciona ifra (eng. Polyalphabetic Substitution Cipher), objedinjava vie
obinih supstitucijskih ifri iz razliitih abeceda.

10

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Primjer obine supstitucijske ifre je Cezarova ifra (eng. Caeser Cipher) kod kojeg se unutar alfabeta od
26 slova, svaki simbol izvornog teksta zamjenjuje simbolom istog alfabeta, koji je u odnosu na simbol
izvornog teksta, pomaknut za tri mjesta udesno.

Izvor

...

ifra

...

Cezarova ifra je primjenjivana i sa pomakom udesno veim od tri.


Prije uoptene definicije familije algoritama, koji ishodite imaju u Cezarovoj ifri, uspostavlja se
{
}. Zatim se
korespondencija izmeu 26 slova engleskog alfabeta i skupa brojeva
pretpostavlja da su na skupu
definisane operacije sabiranja, oduzimanja i mnoenja, 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
, tada se taj rezultat zamjenjuje s njegovim ostatkom koji
nastaje nakon djeljenja tog rezultata s brojem 26. Nametnute operacije se formalno iskazuju u obliku:
ili (

Prema prethodno izloenom proizilazi da je:


ili (

Oigledno slino operaciji sabiranja, provode se i operacije oduzimanja, odnosno mnoenja, ime se
formira zatvorena algebrarska struktura, nad kojom se provode opreacije i vri procedura ifriranja.
S obzirom da skup
, zajedno sa operacijama (+26) i (26), zadovoljava sve one matematike aksiome,
koji su potrebni da bi ureena trojka ( , +26, 26 ) imala status algebarska struktura tipa prsten:
Operacije (+26) i (26), nad elementima skupa
, su zatvorene (njihovom primjenom nad
elementima skupa Z26, dobija se ponovo element istog tog skupa,
Operacije (+26) i (26), nad elementima skupa
, su komutativne i asocijativne, jer su u vaznosti
relacije:
( a (+26) b) = ( b (+26) a) ;
(a(26)b) = (b(26)a);
(( a (+26) b) (+26) c)= (a (+26) ( b (+26) c));
((a(26)b) (26) c)= (a(26) (b(26)c));

11

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Uz to u vaznosti je i distributivnost operacije mnozenja u odnosu na operaciju sabiranje, dakle vrijedi


relacija:
(( a (+26) b) (26) c)= (a (26) c) +26 (b (26) c));
Broj 0 je neutralni element u odnosu na operaciju sabiranja, jer je:
( 0 (+26) b) = ( b (+26) 0) = b ;
Svaki element skupa
, a, ima sebi inverzan element u odnosu na operaciju sabiranja, iz tog istog
skupa, a to je element (-a), dakle vrijedi:
(( a (+26) (-a) = 0
pri emu je za a0, inverzni element definisan sa (26-a), jer je (( a (+26) (26-a) = (( 26-a) (+26) (a)) = 26mod
26 = 0
Broj 1 je neutralni element u odnosu na operaciju mnozenje, jer je:
( 1(26) b) = ( b (26) 1) = b ;
Samo neki elementi skupa
, b, imaju sebi inverzan element u odnosu na operaciju mnozenje, iz tog
-1
istog skupa i to je element (b ), kada vrijedi da je:
((b-1), (26) b) = ( b (26) (b-1), ) = 1 ;

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.
Zadatak 2
Ako je ifrat LFPZQYJY, formiran primjenom Cezarove ifre, odrediti prvo upotrebljeni klju K, a potom i
sam izvorni tekst.

12

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

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.

1.1.2 Algoritmi bazirani na supstitucijskim iframa

Algoritmi bazirani na supstitucijskim iframa (Substitution Cipher) zahtjevaju da poiljalac svaki


simbol (slovo) izvornog teksta, zamjeni odgovarajuim simbolom ifrata, dok primalac zamjenjuje svaki
simbol ifrata odgovarajuim simbolom izvornog teksta. Sa stanovita klasine kriptografije postoje bar
etiri vrste supstitucijskih ifri:
Obina supstitucijska ifra (Simple Substitution) ili monoalfabetska ifra (Monoalphabetic Cipher) su ifre
u kojim je svako slovo izvornog teksta zamjenjeno odgovarajuim slovom ifrata. Kriptogrami u
enigmatskim asopisima su primjeri monoalfabetskih ifara.
Homofonina supstituciona ifra (Homophonic Substitution Cipher), je slina obinoj supstitucijskoj ifri,
s tim to jednom simbolu izvornog teksta moze odgovarati bilo jedno, bilo dva, ili pak ak nekoliko
simbola u ifratu (A moze u ifratu biti ili 3, ili 35, ili 356..)
Poligramska supstituciona ifra (Polygram Substitution Cipher), blokove simbola izvornog teksta,
preslikava u odreene blokove ifrata (abc u xyz, aca u klm,.....)
Polialfabetska substituciona ifra (Polyalphabetic Substitution Cipher), objedinjava vie obinih
supstitucijskih ifri iz razliitih abeceda.
Primjer obina supstitucijske ifre je Cezarova ifra (Caeser Cipher) kod kojeg se unutar alfabeta od 26
slova, svaki simbol izvornog teksta zamjenjuje simbolom istog alfabeta, koji je u odnosu na simbol
izvornog teksta, pomaknut za tri mjesta udesno - tabela broj 1.
Tabela broj 1.
Izvorni

13

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

ifrat

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

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
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)

Prema prethodno izlozenom proizilazi da je: (10 +26 22) = 32-26 = 6 , a

(10 --26 22) = -12+26 = 14 .

Oigledno je da se slino provode i operacije, i oduzimanja i mnozenja.

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:
Operacije (+26) i (26), nad elementima skupa Z26, su zatvorene (njihovom primjenom nad elementima
skupa Z26, dobija se ponovo element istog tog skupa,
Operacije (+26) i (26), nad elementima skupa Z26, su komutativne i asocijativne, jer su u vaznosti relacije:
( a (+26) b) = ( b (+26) a) ;
(a(26)b) = (b(26)a);
(( a (+26) b) (+26) c)= (a (+26) ( b (+26) c));

((a(26)b) (26) c)= (a(26) (b(26)c));

Uz to u vaznosti je i distributivnost operacije mnoenja u odnosu na


relacija:

operaciju sabiranje, dakle vrijedi

14

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

(( a (+26) b) (26) c)= (a (26) c) +26 (b (26) c));

Broj 0 je neutralni element u odnosu na operaciju sabiranja, jer je:

( 0 (+26) b) = ( b (+26) 0) = b ;
Svaki element skupa Z26, a, ima sebi inverzan element u odnosu na operaciju sabiranja, iz tog istog
skupa, a to je element (-a), dakle vrijedi:
(( a (+26) (-a) = 0, pri emu je za a0, inverzni element definisan sa (26-a), jer je (( a (+26) (26-a) = (( 26-a)
(+26) (a)) = 26mod 26 = 0
Broj 1 je neutralni element u odnosu na operaciju mnoenje, jer je:
( 1(26) b) = ( b (26) 1) = b ;
Samo neki elementi skupa Z26, b, imaju sebi inverzan element u odnosu na operaciju mnoenje, iz tog
istog skupa i to je element (b-1), kada vrijedi da je:
((b-1), (26) b) = ( b (26) (b-1), ) = 1 ;

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.

Primjer broj 2: Ako je ifrat K F P Z Q Y J Y, formiran primjenom jedne varijante Cezarove ifre, odrediti
prvo upotrebljeni klju K, a potom i sam izvorni tekst.
K F P Z Q Y J Y
J E O Y P X I X
15

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

I D N XOWHW
H CMWNVG V
G B LV M UF U
FA K U L T E T
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.
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

16

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

11

15

17

19

21

23

25

a-1

21

15

13

19

23

11

17

25

S obzirom na ovih dvanest parova, koji su osnova za odreivanje kljueva u afinoj ifre, omoguava
1226 = 312 moguih kljueva (dvanest parova (a) i (a-1) iz tabele broj 2, te 26 vrijednosti parametra b,
definisanih elementima skupa Z26).
Primjer broj 3: ifrirati afinom ifrom, izvorni tekst S A R A J E V O,

uz upotrebu kljua K = ( 7, 9 ).

U tabeli broj 3, dat je jedan odnos izmeu slova engleskog alfabeta i brojeva iz prethodno definisanog
skupa Z26.
Tabela broj 3
A

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

Na osnovu zadatog kljua proizilazi da su vrijednosti karakteristinih parametara a i b u linearnoj


transformaciji:
eK (x) = (a x + b ) mod 26
odreene sa relacijama: a = 7 i b = 9, Prema tablici broj 3, slovu S odgovara numeriki ekvivalent 18,
unutar skupa Z26. Stoga je mogue pisati da je:
y = eK (S) = (a18 + b ) mod 26 = (718 + 9 ) mod 26 = 135 mod26
S obzirom da je 135 5 (mod 26), osnovano je pisati da je: y = eK (S) = F. Na slian nain se pokaze da je:
y = eK (A) = J; y = eK (R) = Y; y = eK (J) = U; y = eK (E) = L;

y = eK (V) = A; y = eK (O) = H,

odnosno da je ifrat, dobijen kada se na izvorni tekst S A R A J E V O, primjeni postupak kriptografske


supstitucije, zasnovan na linearnoj transformaciji i kljuu K = ( 7, 9 ), jednak F J Y J U L A H. Provjera
ispravnosti provedenog postupka ifriranja, najlake se ostvaruje deifriranjem putem relacije:
dK ( eK (x) ) = dK ( ax +b )= a-1 ( ax +b - b ) mod 26 = x
dK ( eK (x) ) = 15 ( 7x +9 - 9 ) mod 26 = x;
17

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

za eK (S) = F dK ( (F) ) = 15( 5 - 9 ) = 15(- 4 ) mod 26


(15(- 4 )) mod 26 = (15 (26 4 )) mod 26 = ( 15(22 )) mod 26
(15(- 4 )) mod 26 = 330 mod 26 = 18 mod 26
18 (mod 26) x = S;

Na slian nain se pokazuje i da je za eK (x) = J


dK ( (J) ) = 15( 9 - 9 ) = 15(0) mod 26 = 0;
0 (mod 26) x = A;

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;
30 4 (mod 26)
4 (mod 26) x = E;

18

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Slino tome i za eK (x) = A


dK ( (A) ) = 15( 0 - 9 ) = 15(17) mod 26 = 30 mod 26;
255 21 (mod 26)
21 (mod 26) x = V;

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
engleskog jezika u procentima prema radu H. Beker i F. Pajper Cipher Systems:The Protection of
Communication
Tabela broj 4
A

19

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

8.2

1.5

2.8

4.3

13

2.2

2.0

6.1

7.0

6.0

6.3

9.1

2.8

1.0

2.4

0.2

2.0

0.1

0.2

0.8

4.0

2.4

6.7

7.5

1.9

0.1

U engleskom jeziku najei bigrami su: th (3,2%), he (2,5%), an, in,..


Najei trigrami istog jeziku su: the i and. Na osnovu ove spoznaje, u nekom ifrovanom
tekstu, kojeg se uspjelo samo djelomino deifrirati, na osnovu Lhe i aPV, ispituje se imali li smisla
nastavak deifrovanja ostvariti uz relacije: LT, Pn, te Vd.
Najei bigram hrvatskoj jezika je je iako j nije meu najfrekventnijim slovima. Najfrekventniji
trigram hrvatskog jezika je ije (0,6%).
Postoje dokazi, da se je za poboljanje otpornosti na neeljeno deifrovanje, jo 1401 godine,
umjesto obinog supsticijskog ifriranja, koristilla homofobina supstituciona ifra (homos-isti; fonoszvuk). Kod homofobine supstitucione ifre, simbol izvornog teksta se zamjenjuje sa jednim ili vie
simbola ifrata ( mogu biti i preslikavanja slova u brojeve) da bi se bolje sakrile statistike osobine
upotrebljenog jezika. Poto ni ovaj pristup ne sakriva dovoljno statistike osobine koritenog jezika, onda
se i ovakav pristup relativno lako provaljuje napadom tipa poznat otvoreni tekst ili pak napadom tipa
poznat samo ifrat. Koliko se pojedinom slovu upotrebljenog alfabeta izvornog teksta, u smislu
njegovog ekvivalenta, treba upravo pridruiti simbola ifrata, zavisi od primjenjenog algoritma.
Algoritam moe biti zasnovan na statistici frekvencije pojavljivanja odreenog simbola izvornog teksta,
unutar tekstova zasnovanih na matinom alfabetu.
U tom smislu, ako je (prema raspozivoj tabeli broj 4) u engleskom jeziku slovo a zastupljeno sa
udjelom od oko 8%, tada se moe odabrati opcija da se to slovo u ifratu zamjeni sa jednim slovom, iz
odabrane povorke od 8 simbola, (dakle prvi put u izvornom tekstu slovo a se zamjenjuje sa prvim
simbolom tog oktograma, drugi put sa slovo a zamjenjuje sa drugim slovom iz istog oktograma i nakon
osmog pojavljivanja i supstitucije slova a osmim slovom predmetnog oktograma, procedura se
ponavlja). Slovo b je zastupljeno sa udjelom od oko 2%, pa se moe odabrati opcija da se u ifratu
b zamjeni sa jednim slovom, iz odabrane povorke od 2 simbola, pri emu se pri prvom pojavljivanju
slova b koristi za supstituciju prvo slovo bigrama, a pri drugom pojavljivanju slovob se zamjenjuje sa
drugim slovom bigrama. Odabrani pristup ima za posljedicu da se u ifratu razbija statistika frekventna
zakonomjernost pojavljivanja simbola, usaglaena sa izvornim alfabetom.
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
20

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

(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:

Neka je m fiksan prirodni broj i naka je: M = C = =( Z26)m.


Za klju K = (k1, k2, k3, k4,........ km) definiu se: funkcija enkripcije
eK (x1, x2, x3, x4,...... xm ) i funkcija dekripcije dK (y1, y2,y3, y4,...... ym ), tako
da vai:
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 )
21

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

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.
Tabela broj 5 : Prikaz strukture Viznerovog kvadrata

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
22

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

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.

I/J

Neka je izvorni tekst: O d s j e k z a t e l e k o m u n i k a c i j e , uz pomo Plajferove ifre i


odabranog kljua M E S U D, pretvara se u ifrat u skladu sa sljedeom procedurom:

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.

23

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 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.

Ukoliko se slova predmetnog bigrama nalaze i u razliitim redovima i u razliitim kolonama, kao to je to
sluaj sa OD, tada se slovo O zamjenjuje sa slovom T, a slovo D sa slovom M, odnosno OD se preslikava u
TM. Slovo T je u istom redu kao i slovo O, ali i u istoj koloni kao i slovo D. Analogno se nalazi i supstitucija
za slovo D (isti red kao i slovo D, ali i ista kolona kao i slovo O).

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.

Prednosti Plejferove ifre su:

U ifratu se gube jednosimbolski ekvivalenti poput A - to oteava upotrebu


prisutnih simbola;

frekventne analize

Bigramsko ifriranje poveava broj bigrama u odnosu na broj slova, pa je frekvencija bigrama mnogo
ujednaenija od frekvencije slova (broj bigrama na skupu od 26 slova je 676, njihov broj se odreuje kao
broj varijacija druge klase sa ponavljanjem). U otvorenom tekstu na engleskom jeziku, najfrekventnije
slovo E pojavljuje se frekvencijom 12,7%, a ako se primjeni Plejferova ifra, ta frekvencija se snizava na
oko 7%.

Plejferove ifre su koritene i u Prvom svjetskom ratu (britanska vojska) i u Drugom svjetskom ratu
(amerika vojska), u cilju podravanja povjerljivosti vojnih i diplomatskih komunikacija.
Kriptoanalizu Plejferove ifre, mogue je nai u djelu: A. Sinkov, Elementary Cryptanalysis,
Mathematical Association of America, 1966. Napad na ovu ifru naee se izvodi tako da se trae
24

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

najfrekventniji bigrami ifrata, uz pretpostavku da je to supstitucija za najee bigrame engleskog


jezika: TH; HE; AN; IN; ER; RE; ES;....
Unutar klase poligramskih ifara, Lester Sanders Hill (1890-1861) je 1929. godine predstavio
kriptosistem, kod kojeg se m uzastopnih slova izvornog teksta, supstituie s m slova ifrata. Stvorivi
mogunost da se blokovi od tri ili vie simbola, poligramskom supstitucijom ifriraju, Hill je prvi sutinski
povezao kriptografiju s linearnom algebrom (L.S.Hill je doktorirao 1926 godine na Yale University u
oblasti primjenjena matematika). Hillov kriptografski algoritam definie se na slijedei nain:
Neka je m fiksan prirodni broj i naka je: M = C = ( Z26)m, a prostor kljueva definisan relacijom:
= { (mxm) invertibilne matrice nad Z26}.
Za klju K definiu se funkcija enkripcije
eK (x ) = x K
i funkcija dekripcije
dK (y ) = y K-1,
pri emu su sve operacije u prstenu ( Z26).
Za klju K definisan gornjom relacijom, blokovi x i y oigledno su rasporedi od po m elemenata
skupa ( Z26 ). Ukoliko broj simbola izvornog teksta, nije djeljiv s brojem m bez ostatka, tada treba izvorni
tekst nadopuniti (proiriti) sa onoliko simbola x koliko je potrebno da se ostvari djeljene proirenog
izvornog teksta s brojem m bez ostatka. Pri izboru kljua K, Hill je preporuio da se koriste involutivne
matrice ( kod involutivnih matrica vazi relacija: K-1= K, odnosno
K2 = I ). Takvim izborom se doista
olakava postupak ifriranja i deifriranja, ali se skrauje i vrijeme potrebno kriptoanalitiarima za
provoenje efikasnog napada.

Primjer broj 4
Neka je klju za ifriranje Hillovom ifrom, definisan relacijom:
1 0 0

i neka je izvorni tekst B O S N A.

K = 5 25 0

Odrediti ifrat, a potom provjeriti

0 0 25

dobijani rezultat, deifriranjem ifrata.

25

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Prvo se provjerava je li zadati klju K, doista definisan involutivnom matricom. Nakon to se


pokae da je K 2 = I, izvorni tekst se dijeli u blokove od po tri simbola, dakle na BOS NAX. Potom se
trae numeriki ekvivalenti za upotrebljene simbole, prema tabeli broj 3, pa je u skladu s tim:
B, O, S 1, 14, 18 odnosno N, A, X 13, 0, 23
Za blok izvornog teksta BOS, rauna se homologni blok ifrata, raunajui da je:
( 1, 14, 18 )K = (71, 70, 450) mod 26 = (19, 18, 8) =
eK (B, O, S ) = x K = ( T, S, I )
Analogno tome, za blok izvornog teksta NAX, rauna se homologni blok ifrata tako da je:
( 13, 0, 23 )K = (13, 0, 575) mod 26 = (13, 0, 3) =
eK (N, A, X ) = x K = ( N, A, D )
Dakle ifrat je ( T, S, I, N, A, D )
Provjera se sastoji iz dvije etape, pri emu se u

prvoj etapi rauna

( 19, 18, 8 )K-1 = (109, 450, 200) mod 26 =


(5, 8, 18) = ( F, I , S )???
a u drugoj etapi:
( 13, 0, 3 )K-1 = ( 13, 0, 75) mod 26 =
(13, 0, 23) = ( N, A, X ).
Hillov algoritam ifriranja, za m 3, predstavlja jo bolju prepreku za frekventnu analizu kriptologa.
S obzirom da za blokove duine m simbola, na skupu ( Z26 ) , postoji tano (26)m razliitih blokova. Ve
pri m = 3 postoji 17 576 razliitih trigrama, pa je prethodna konstatacija u vezi kriptolokog napada,
kada kriptolog posjeduje samo ifrat, sasvim jasna.
Razmatrani algoritam se relativno lako kompromituje napadom tipa poznat izvorni tekst, a
pogotovu pomou napada odabrani izvorni tekst. Naime ti napadi su povezani sa rjeavanjem
matrine:
Y=XK
u kojoj je nepoznata veliina kvadratna matrica K odnosno klju algoritma. Ukoliko je poznati izvorni
tekst struktuiran tako da postoji X-1, tada je:
K = X-1 Y
26

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Ako to nije sluaj, treba traziti izvorni tekst kod kojeg uz X postoji i X-1 .
Tokom napada odabrani izvorni tekst, kriptoanalitiar upravo tako bira izvorni tekst, da je uslov, uz
X postoji i X-1 , ispunjen.
Algoritmi bazirani na transpozicijskim iframa
Algoritmi bazirani na transpozicijskim iframa (Transposition Cipher), ifriranje provode tako to
stvaraju pomjeraj simbola izvornog teksta. Ako je taj pomjeraj stohastian, onda je kriptolog na velikim
problemima, to znai da je poiljaoc vrlo pouzdano poslao poruku. Ali iskazana stohastinost nije samo
problem za kriptologa, nego i za primaoca.
Dakle primjenjeni postupak poiljaoca je pouzdan, ali i neefikasan. U tom kontekstu, prirodno je
zakljuiti da se pomjeranje simbola izvornog teksta mora obavljati na nain koji je poznat i poiljaocu i
primaocu.
Spartanski skital je jedan od prvih primjera transpozicijske ifre. Kriptografski algoritam
transpozicije moe se definisati na slijedei nain:
Neka je m fiksan prirodni broj i naka je:
M = C = ( Z 26)m,
a prostor kljueva sastoji se od svih permutacija skupa {1, 2, 3, 4, ...,m}. Za neku permutaciju ( )
definie se funkcija enkripcije i dekripcije na slijedei nain:
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 (),
permutaciju koja omoguava vraanje u poetno stanje.

(-)-1predstavlja inverznu

Primjer broj 5
Izvorni tekst E L E K T R O T E H N I C K I
algoritmom, ukoliko je dogovoreni klju

F A K U L T E T ifrirati kolonskim transpozicijskim

( 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

27

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

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.
Njemaka ifra ADFGVX, koritena za vrijeme Prvog svjetskog rata, je kombinovala transpozicione i
supstitucione metode u jedinstven sistem. Ipak francuski kriptoanalitiar or Penvan (Georges Painvin)
je uspjeo da vrlo brzo provali ovu ifru i obezbjedi Francuzoma znaajnu pobjedu nad Nijemcima na kraju
Prvog svjetskog rata.

1.2 Rezime simetrinog kriptografskog algoritma DES

DES (Data Encryption Standard) je 23.11.1976. godine prihvaen kao savezni standard za
sigurnosnu zatitu podataka u USA. Njegov idejni tvorac je Horst Fejstel (Horst Feistel njemaki
emigrant, doao u USA 1934. godine, (1915-1990)), koji je dugo radio na problematici ifriranja i
deifriranja u Vazduhoplovstvu USA.
Nezadovoljan zbog blokiranja njegovih samostalnih istrazivanja u ovoj oblasti, u Vazduhoplovstvu
USA, prelazi raditi u laboratorije Tomas Dz. Watson IBM, gdje dizajnira algoritam Lucifer. Taj algoritam
e uskoro postati i baza algoritma DES.
NBS (National Bureau of Standards) je na javnom konkursu, raspisanom 1973. godine, trazio da
ponuena rjeenja za novi kriptosistem moraju ispunjavati i slijedee uslove:
Visok nivo sigurnosti, koji proizilazi iz kljua, a ne iz tajnosti algoritma.
Efikasnost
28

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Punu javnost i definisanost algoritma, koji treba biti i lako razumljiv.


Racionalnost algoritma pri njegovoj implementaciji na raunarsku infrastrukturu.
Dostupnost svim potencijalnim korisnicama.
Algoritam mora biti provjerljiv
Mogunost izvoza i u podruja van USA.

U prvoj iteraciji konkursa nijedan prijedlog nije ispunio sve pobrojane uslove. Tek na ponovljenom
konkursu 1974. godine algoritam razvijen unutar IBM, zasnovan na algoritmu Luciferu.
Nakon korekcija (izmjena) u prvobitnoj verziji IBM - ovog algoritma, (ona se je u poetku bazirala na
112 bitnom kljuu), na kojim je insistirala NSA (National Security Agancy), ovaj algoritam je 1976. godine
promoviran kao nacinalni standard za zatitu podataka. DES je prema svojoj strukturi:

Simetrian algoritam (isti klju se koristi i za ifriranje i za deifriranje).


Blokovski orjentisan algoritam (izvorni tekst se transformie u binarnu formu, a potom dijeli u blokove,
koji se zatim ifriraju blok po blok, uz upotrebu kljua).
Algoritam koji je zasnovan na Feistelovoj mrezi (Feistel Network), koja je sadrzana i u izvornom
konceptu algoritma Lucifer.
NSA se zalagala da se broj moguih kljueva ogranii na 1017 odnosno na 256, smatrajui da je takav
nivo sigurnosti primjeren civlnim potrebama (u civilnom sektoru tog doba, niko nije imao tako monu
raunarsku infrastrukturu, koja bi mogla pretraziti tako ureen prostor kljueva. NSA je s druge strane
ve tada imala raunare sposobne da pretraze i prostor kljueva reda 256).

29

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Slika broj 2.2.1 Blok ema algoritma DES

30

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Slika broj 2.2.2 Jedna runda unutar algoritma DES


U skladu sa slikama: broj 2.2.1 i broj 2.2.2, nakon to se izvorni tekst prevede u binarnu formu,
slijedi njegova podjela na 64 bitne blokove.
Svaki 64 bitni blok, prvo se podvrgne poetnoj permutaciji IP (Initial Permutation). Poetna
permutacija i odgovarajua zavrna permutacija, prema provedenim analizama, ne doprinose znaajnije
poveanju bezbjednosti algoritma. One mnogo vie imaju za cilj da olakaju proceduru unoenja
izvornog teksta i ifrata u DES ipove, i to u djelovima veliine byta (treba imati na umu da je DES
nastajao u doba 8-bitnih mikroprocesorskih magistrala, te da softverski nije lako izvriti permutovanje
bit po bit).
U slijedeem koraku, tako izmjeani biti, upravo obraivanog 64 bitnog bloka, djele se u dva
polubloka od po 32 bita lijevi polublok L0 i desni polublok R0. Biti sadrzani u desnom polubloku, prolaze
kroz dodatnu funkcionalnu obradu, zajedno s kljuem algoritma. Taj proces se esto u literaturi
terminoloki naziva centrifuga. U centrifugi se dakle uvodi u dejstvo odnosno aktivira i zadati klju
algoritma.
Nakon to se provede njegova kompresija na 56 bita (izostavljanje po jednog bita unutar byta, stvara
prostor za uvoenje bitova provjere parnosti, koji treba da stvore mogunost provjere je li u kljuu
napravljena mozda nezeljena greka) slijedi i permutacija PC-1, tih 56 bita po ranije propisanom pravilu.
Poslije toga se obavlja i translacija tih 56 bita i to tako da se vri cikliki pomjeraj u lijevo, za jedno ili dva
mjesta, ovisno u kojoj rundi se taj postpak provodi.

31

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Dobijenih 56 bita se zatim ponovo reducira komprimira, pomou permutacije PC-2, na 48 bita, po
sistemu PC-2, definisanom u algoritmu. Tada praktino nastaje podklju prve (jedne) runde. Ovim
potezom se mijenja i redosljed bita, a i bira podskup bita, zbog ega se spomenuti postupak esto u
kriptografiji oznaava kao permutacija kompresije (Compression Permutation). S obzirom da se u svakoj
rundi provodi i translacija unutar kljua za jedno ili dva mjesta, to se unutar 16 subkljueva, to se
pridruzuju svakoj od provedenih rundi, pojedini biti iz polazne verzije 56 bitnog kljua pojavljuju bar 14
puta (od 16 teoretski moguih pojavljivanja).
Prema slici broj 2.2.2 subklju tekue runde, treba XOR operacijom povezati s polublokom R0 . Ovaj
polublok se stoga prvo proiruje sa 32 bita na 48 bita, pomou permutacije proirenja (Expansion
Permutation). Nakon ovog poteza postoje i biti koji utiu na dvije supstitucije - ime se zavisnost izlaznih
bita od ulaznih bita brze iri (u kriptografiji je to poznato kao efekat lavine - Avalanche Effect, a treba
imati u vidu i da je DES projektovan s namjeraom da se to prije postigne stanje u kojem svaki bit ifrata
zavisi od svakog bita izvornog teksta i svakog bita kljua).
Nakon provoenja XOR operacije, nad dva 48 bitna bloka, formira se 8 estobitnih grupa, koje se
potom filtriraju kroz 8 S-kutija. S kutije se smatraju najvrijednijim dijelom DES algoritma. One imaju
formalni zadatak da transformiu 8 estobitnih rasporeda u 8 etverobitnih rasporeda, Tih 8
etverobitnih rasporeda predstavljaju novi 32 blok, koji se ponovo permutuje permutacijom P
(permutacija P se naziva prava permutacija - Straight Permutation), Tako se dobija funkcija f (R0, K1), koja
se potom putem XOR operacije, obrauje sa polublokom L0. Rezultat te operacije je opet 32 bitni blok,
ali koji se sada proglaava i za novu verziju desnog polubloka R1. Nova verzija lijevog bloka L1 izvodi se na
osnovu relacije R0 = L1.
S obzirom da se oko dizajna S kutija mnogo pekuliralo, nakon to je postupak diferencijalne
kriptoanalize 1990. godine javnosti otkrio dio tajni ovog dizajna, IBM je objavio osnovne kriterijume za
prijektovanje S kutija.
Svaka S- kutija ima 6 ulaznih bitova i i 4 izlazna bita (to je najvie to se moglo postii na jednom ipu s
tehnologijom 1974. godine).
Nijedan izlazni bit S-kutije ne treba da bude previe blizu linearnoj funkciji ulaznih bitova.
Ako fiksirate krajnji lijevi bit i krajnji desni bit S kutije i mijenjate preostala etiri unutranja bita, svaki
mogui 4-bitni izlaz dobije se tano jednom.
Ako se dva ulaza S-kutije razlikuju u tano jednom bitu, izlazi se moraju razlikovati u najmanje dva bita.
Ako se dva ulaza S-kutije razlikuju u tano dva srednja bita, izlazi se moraju razlikovati u najmanje dva
bita.
Ako se dva ulaza S-kutije razlikuju u prva dva bita, a posljednja dva bita su identini, izlazi ne smiju biti
isti.

32

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Za bilo koju 6-bitnu razliku izmeu ulaza, koja nije jednaka nuli, najvie 8 od 32 para ulaza s tom
razlikom mogu da prpizvedu istu razliku ulaza.
Kriterijum slian prethodnom, ali za sluaj tri aktivne S-kutije.
Izlazi iz osam S kutija, dakle onih 8 etverobitnih rasporeda, kao to je ve ranije konstatovano,
ponovo se permutuje putem prave permutacije, ili zavrne permutacije P (Straight Permutation), za koju
je karakteristino da se nijedan bit ne koristi dvaputa i nijedan bit se ne zanemaruje.
Slino kriterijumima za dizajn S kutija,
provoenja zavrne permutacije P.

objavljeni su i ogranienja, koja su potovana tokom

etiri izlazna bita iz svake S kutije, utjeu, odnosno ine ulazne podatke na est razliitih S kutija u
iduoj rundi, a nikoja dva ne utiu na istu kutiju.
etiri izlazna bita iz svake kutije u i-toj rundi, su tako distribuirni da dva od njih utiu na sredinje
bitove u (i+1)-voj rundi, a dva na krajnje bitove (dva najljevija i dva najdesnija, od est bitova u ulaznom
podatku).
Za dvije S-kutije Sj i Sk vrijedi slijedea zakonitost: ako neki izlazni bit od Sj utie na neki sredinji bit od
Sk u narednoj rundi, onda niti jedan izlazni bit od Sk ne utie na sredinje bitove od Sj . Za Sj = Sk proizilazi
da izlazni bitovi od Sj ne utiu na sredinje bitove od Sj.
U literaturi je dosta analizirana i problematika slabih kljueva u algoritmu DES.
Izrazito slabi kljuevi su u prvom redu kljuevi kod kojih se ispostavlja da su subkljuevi rundi
meusobno jednaki, dakle vazi relacija: K1 = K2 = K3 = K4 = K5 = =K16 . Postupak ifriranja i deifriranja
su onda identini, odnosno vazi da je:
eK (eK(x)) = x
Zbog ovakve osobine 232 izvornih tekstova nakon ifriranja se ne mijenja. Postoje tano 4 slaba
kljua algoritma DES. To su oni kljuevi, kod kojih se u rasporedu C0D0 lijeva i desna polovica, dakle C0,
odnosno D0, formiraju, ili od samih nula, ili od samih jedinica. UU heksadecimalnoj notaciji ti kljuevi su:
0101010101010101
1F1F1F1F1F1F1F1F
E0E0 E0E0 E0E0 E0E0
FEFE FEFE FEFE FEFE
Djelimino slabi kljuevi su oni kljuevi koji tokom 16 rundi generiu praktino samo dva razliita
subkljua, pri emu se svaki od njih koristi tokom 8 rundi. Kaze se da par kljueva (Kj, Kl) predstavlja par
djelimino slabih DES kljueva, ako je rezultat kompozicije dva DES algoritma provedena s kljuevima Kj i
33

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Kl nita drugo nego izvorni tekst. ifrovanje sjednim od njih je isto kao i deifrovanje s drugim od njih.
Postoji est parova djelimino slabih kljueva, a jedan od njih je par:
01FE01FE01FE01FE i FE01 FE01 FE01 FE01 FE01
Potencijalno slabi kljuevi su oni kljuevi koji imaju takvu simbolsku strukturu da generiu samo 4
razliita subkljua tokom 16 rundi. Ovakvih kljueva ima tano 48.
Iz prethodno navedenog pregleda, proizilazi da treba izbjegavati 64 kljua (4+6+6+48=64) koji su
specificirani u takama od a) do c).
Zato algoritam DES ima ba 16 rundi? Istrazivanja motivisana ovim pitanjem, pokazala su da nakon
pet rundi svaki bit ifrata postaje funkcija svakog bita izvornog teksta i svakog bita kljua (C. H. Meyer,
Cyphertext/Plaintext and Cyphertext/Key Dependencies vs Number of Rounds for Data Encyption
Standard, AFIS Conference Proceedings, 47, 1978. pp. 1119-1126). Poslije osam rundi ifrat je sluajna
funkcija svakog bita izvornog teksta i svakog bita kljua (A. G. Konheim, Cryptography: A Primer, New
York:John Wiley & Sons., 1981.). Bihamova i Shamirova diferencijalna kriptoanaliza (1990. godine) je
objasnila da DES sa manje od 16 rundi, moze biti kompromitovan napadom tipa Poznat izvorni tekst,
efikasnije nego metodom Napad grubom silom. Da li su tvorci DES-a znali i za elemente diferencijalne
kriptoanalize?
Usvajanjem DES-a rijeen je problem standardizacije, to je ohrabrilo poslovni svijet da svoje
sluzbene komunikacije zatiti ifriranjem pomou DES-a. Ali tada se pojavio problem sigurne distribucije
kljua, to dobro odslikava recimo komunikacija klijent-banka. Banke su u poetku to rjeavale slanjem
kljua po povjerljivom glasniku, ali takav pristup ima niz slabosti posebno iskazan sa porastom broja
klijenata (usporenost transporta, trokovi distribucije rastu....).
Za fiksni klju K pomou DES-a definisana je jedna permutacija skupa {0,1}64, odnosno 256
permutacija dobijenih pomou DES-a je podskup grupe svih permutacija skupa {0,1}64, iji je red (264)!.
Postavlja se pitanje je li DES (odnosno skup svih ovih permutacija) podgrupa ove grupe. Odgovor je nije,
jer skup svih DES permutacija nije zatvoren, jer je pokazano da je red ove pogrupe generirane svim DES
permutacijama vei od 22499. Na osnovu ove injenice zakljueno je da se viestrukom upotrebom DES-a
moze poveati nivo njegove sigurnosti. Posebno je popularan trostruki DES, koji ima tri koraka obinog
DES-a, ali svaki put sa razliitim kljuevima.
y = eM(dL(eK(x))),

x = dK(eL(dM(y)))

Klju kod trostrukog DES-a je duzine 168 bita. Pri verziji u kojoj je M = K duzina kljua je 112 bita.
Dvostruki DES ima izrazene slabosti pri napadu tipa susret u sredini (Meet-in-the- Middle, opisao ga je
Diffie ve 1977. godine), kada pokazuje samo neznatno bolje karakteristike od obinog DES-a.

34

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

1.3 Rezime simetrinog kriptografskog algoritma IDEA

IDEA (International Data Encryption Algorithm) je algoritam razvijen 1992. godine, na ETH Zurich, od
strane Xuejie Lai i James Massey. Ovaj algoritam koristi 128 bitni klju za ifriranje 64-bitnih blokova
izvornog teksta. Sam algoritam, u svom toku, sadrzi tri osnovne operacije:
XOR operaciju, formalna oznaka O.
Sabiranje po modulu 216 ,
Mnozenje po modulu (216 +1), formalna oznaka o.
Mnozenje po modulu (216 +1), u algoritmu IDEA ima slinu ulogu, ulozi S kutija u algoritmu DES.
Modul (216 +1), je odabran zbog efikasnije implementacije modularnog mnozenja. Pobrojane tri
operacije su inkopatibilne u smislu da nikada dvije od njih ne udovoljavaju zakone asocijativnosti i
distributivnosti. IDEA ima osam rundi i zavrnu transformaciju. U tih osam rundi koriste se 52, 16-bitna
subukljua ((K1(r), K2(r),... K6(r)) tokom osam rundi ( r= 1,2,..,8) i etiri subkljua (K1(9), K2(9), K3(9), K4(9)) za
zavrnu transformaciju) koji se generiraju na osnovu polaznog 128 bitnog kljua. U prvoj iteraciji se koji
se generiraju na osnovu polaznog 128 bitnog kljua. U prvoj iteraciji se pravi 6 16- bitnih subkljueva
((K1(1), K2(1),... K6(1)) i prva dva subkljua druge iteracije ((K1(2), K2(2)). Potom se bitovi polaznog 128 bitnog
kljua K pomjeraju za 25 mjesta ulijevo, ime se pravi novi 128 bitni raspored kao osnova za preostala
etiri kljua druge iteracije ((K3(2), K4(2), K5(2), K6(2)) i prva etiri kljua tree runde ((K1(3), K2(3), K3(3),K4(3)).
Izvorni tekst se prikazuje u obliku X = (X1, X2, X3, X4) pri emu su Xi 16 bitni podblokovi. Na slici broj
2.3.1 prikazan je blok dijagram algoritma IDEA.

35

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Slika broj 2.3.1 Blok dijagram algoritma IDEA.


Prema gornjem blok dijagraku, osnovni koraci u algoritmu IDEA su:
Pomnozi X1 i prvi subklju K1(1) , po modulu (216 +1) .
Saberi X2 i drugi subklju K2(1) , po modulu (216).
Saberi X3 i trei subklju K3(1) , po modulu (216).
Pomnozi X4 i etvrti subklju K4(1) , po modulu (216 +1).
Primjeni XOR operaciju na rezultate koraka (1) i (3).
Primjeni XOR operaciju na rezultate koraka (2) i (4).
Pomnozi rezultate koraka (5) i peti subklju K5(1) , po modulu (216 +1).
Saberi rezultate koraka (6) i koraka (7) , po modulu (216)
Pomnozi rezultate koraka (8), sa estim subkljuem K6(1) , po modulu (216 +1).
Saberi rezultate koraka (7) i koraka (9) , po modulu (216)
Primjeni XOR operaciju na rezultate koraka (1) i (9).
Primjeni XOR operaciju na rezultate koraka (3) i (9).
Primjeni XOR operaciju na rezultate koraka (2) i (10).
Primjeni XOR operaciju na rezultate koraka (4) i (10).
Izlaz tekue runde su uvijek etiri podbloka, koji su rezultati koraka broj (11), (12), (13) i (14). Nakon
toga, treba jo da meusobno zamjene i vlastita mjesta, dva unutranja bloka (ovo se ne radi , jedino u
posljednjoj rundi), te da se dobije ulaz za slijedeu rundu (64 bita).
36

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Algoritam IDEA, za razliku od algoritma DES nastao je iskljuivo u akademskom ambijentu (dakle bez
uplitanja institucija tipa NSA), pa su sumnje u postojanje zadnjih vrata (Backdoor) znatno manje. IDEA
je i patentirana, vlasnik njenog patenta je firma Ascom - Tech AG Switzerland. Za njenu komercijalnu
upotrebu treba stoga pribaviti i odgovarajuu licencu. Ipak za nekomercijalnu upotrebu, licenca jo
uvijek nije potrebna.
Algoritam IDEA je efikasan i na 16 - bitnim procesorima. Softverska realizacija algoritma IDEA, ve u
startu svoje implementacije, pokazala je da je dva puta brza od softverske realizacije algoritma DES.
Ovaj algoritam, koristi se recimo i kod PGP paketa, kao jedno od moguih rijeenja za simetrinu
enkripciju. (Pretty Good Privacy Philip R. Zimmermann (Philip R. "Phil" Zimmermann Jr. Algoritam IDEA
pokazao se otpornim, i na linearnu kriptoanalizu i na difrencijalnu kriptoanalizu. Kako je prostor kljueva
koje treba testirati tokom napada metodom potpunog pretrazivanja, reda 2128, to se ovaj algoritam
smatra zasada neranjivim.
Slino kao i u algoritmu DES i kod algoritma IDEa postoje slabi kljuevi. Sve kljueve iz familije kljueva:
0000, 0000, 0x00, 0000, 0000, 000x, xxxx, x000,
pri emu je x bilo koji heksadecimalni broj, mogue je kompromitovati, po skraenom postupku, putem
napada tipa Poznat otvoreni tekst.

1.4 Rezime simetrinog kriptografskog algoritma AES

National Institute of Standards and Technology (NIST), 1997 . godine je objavio meunarodni
konkurs za kriptosistem, koji je planiran da u 21. stoljeu postepeno supstituira algoritam DES.
Na predmetnom konkursu tada su definisani i opti uslovi, koje treba da ispunjava svaki prijavljeni
algoritam:
Mora biti iz klase simetrinih algoritama
Mora biti blokovski organizovan
Algoritamske operacije treba provoditi nad 128 bitnim blokovima izvornog teksta, uz pomo kljua
duzine 128 ((192) ili (256)) bita, pri emu su kljuevi dizajnirani tako da ne postoje slabi kljuevi.
Predmetni meunarodni konkurs, zakljuen 15.06.1998. godine, pokazao je da je od 21 pristigle
prijave, njih 15 zadovoljilo opte uslove. Konano 02.08.2000. godine objavljeno je: na raspisanom
konkursu, pobjednik je algoritam RIJDAEL (rejn dol), iji su autori belgijski kriptografi Joan Daemen i

37

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Vincent Rijmen (Katholieke Universiteit Leuven). Danas se ovom algoritmu u strunim i naunim
krugovima sve ee pridruzuje naziv AES (Advenced Encryption Standard).
Prije opisa samog dizajnerskog rjeenja AES-a, korisno je navesti osnovne motive koji su doveli do
raspisivanje konkursa iji je rezultat AES.
U standardu DES je utvreno da e on biti provjeravan i eventualno ponovo certificiran svakih pet
godina. Provjera provedena 1983. godine omoguila je njegovu novu sertifikaciju bez ikakvih
ogranienja. Meutim tokom provjere provedene 1988. godine uz NBS se ukljuila i NSA, koja je uz to
imala i snagu veta na miljenje NBS (u to doba predsjednik SAD-a je bio R. Regan). NBS u poetku nije
namjeravala dati saglasnost za ponovno sertificiranje DES-a. Razlozi nisu bili u tom to je DES bio
kompromitovan, ve u injenici da se on toliko proirio u uslovima brze tehnoloke revolucije ICT
sektora, da je postalo pitanje dana kada e se DES kompromitirati. Ipak nakon velikog pritiska poslovnih
krugova i javnosti DES je ponovo sertificiran kao standard amerike administracije s rokom vazenja do
1992. godine. Potom je uslijedila javna debata da li produzavati sertifikaciju DES-a?
Po njenom okonanju DES je jo jednom sertificiran, za period od pet narednih godina uz napomenu da
u tom razdoblju treba napraviti strategiju za prelazak na novi kriptografski algoritam.
U periodu (1992.-1997.) pravile su se mnoge analize i nudile mogue alternative za DES. Jedna od njih
je bila i dvostruki, odnosno trostruki DES. Ideja o dvostrukom DES-u je odbaena, jer zahtjeva mnogo
veu raunarsku kompleksnost od obinog DES-a, a dobitak u smislu podizanja nivoa sigurnosti je
umjesto oekivanog nivoa 2128, u nekim sluajevima sveden samo na 257 (napad tipa susret u sredini Meet-in-the-Middle Attack, samo zahtjeva koritenje vie memorije da bi se skratilo vrijeme napada).
Trostruki DES se pokazao imun na slabosti koje je iskazao dvostruki DES, ali je pokazao i odreene vlstite
nedostatke: softverske implementacije 3DES-a su prespore; u tom algoritmu postoji 48 rundi, da bi se
ostvarila sigurnost za koju su dovoljne vjerovatno 32 runde; 64 bitni blokovi nisu vie optimalna veliina
za mnoge primjene.
Navedene slabosti algoritma 3 DES su osnovni uzroci zato se on nije naao na poziciji koju danas
zauzima AES.
Dok je veina algoritama kandidiranih na konkursu, iji je pobjednik bio AES imala u sebi na odreen
nain ukljuenu i mrezu Feistela, odnosno runde bazirane na takvoj mrezi, AES je bio posve drugaiji. U
AES-u unutar jedne runde postoje tri takozvana sloja:
Linearni difuzioni sloj (Linear Mixing Layer), koji obezbjeuje veliku difuziju bitova nakon nekoliko
rundi (realizuje se putem operacija: ShiftRow i MixColumn),
Nelinearni sloj (Non-linear Layer), koji se provodi pomou upotrebe supstitucijskih kutija,
optimiziranih za najgori mogui sluaj (operacija ByteSub),

38

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Sloj dodavanja kljua (Key Addition Layer), tokom kojeg se realizuje operacija ekskluzivno ili nad
potkljuem runde s trenutnim stanjem bloka (operacija AddRoundKey).
Prilikom projektovanja pobrojanih slojeva posebno se vodilo rauna o njihovoj otpornosti na
linearnu i diferencijalnu kriptoanalizu, brzini i kompaktnosti koda za irok spektar hardverskih i
softverskih platformi, te o dizajnerskoj jednostavnosti (negativna iskustva sa algoritmom IDEA).

1.4.1 Matematska osnova kriptografskog algoritma AES

Za razliku od mnogih ranijih rjeenja AES je svoju matematiku podlogu naao u Teoriji konanih
polja polja Galois. Pri tome je odabrano polje GF(28). Svi okteti algoritma AES interpretiraju se preko
bitova b7, b6, b5, b4, b3, b2, b1, b0, koji dakle mogu uzimati, ili vrijednost 0, ili vrijednost 1. esto se kaze da
su bi GF(2) , ili pak da je bi {0,1}. Koristi se i polinomijalna notacija:
b7X7 +b6 X6 + b5 X5+ b4X4+ b3X3 +b2 X2 + b1 X + b0
Sa stanovita sabiranja ispunjeni su svi uslovi da bi imali Abelovu grupu u odnosu na operaciju
sabiranje (potpunost, neutralni element 0x00, inverzni element, i komutativnost. Da bi se obezbjedila
zatvorenost nad elementima polja GF(28) i tokom provoenja operacije mnozenja nad elementima tog
polja, za redukciju se koristi polinom: m(x) = X8 + X4 + X3 + X + 1 , pri emu se namee uslov da postoji i
bar neki element GF(28), takav da je: m() = 0. Mnozenje definisano na prethodni nain je
asocijativno i ima neutralni element 0x001
Svakom nenultom elementu b GF(28), iskazanom u polinomijalnom obliku sa b(x), mogue je
odrediti inverzni polinom b-1(x), takav da je:
a(x)b(x) mod m(x) = 1, pri emu je a(x) = b-1(x)
AES je predvidjeo da se koriste i operacije nad polinomima manjeg stepena od etiri, dakle nad
polinomima oblika:
c3X3 +c2 X2 + c1 X + c0
ali kod takvih polinoma koeficijenti ci , nisu vie elementi skupa GF(2), nego su elementi skupa GF(28).
Zato se kaze da su takvi polinomi odreeni etverobajtnim vektorom, odnosno kao 32 bitna rje.
Sabiranje takvih vektora vri se putem sabiranja po modelu ekskluzivnog ILI odgovarajuih (homolognih)
koeficijenata polinoma koji se sabiru. Da bi se pri mnozenju takvih polinoma, dobio ponovo strukturno
analogan polinom stepena manjeg od etiri, za redukciju dobijenog rezultata stepena etiri, ili veeg od
etiri, koristi se polinom p(x) , pri emu je : p(x) = X4 + 1, uz uslov p() = 0, GF(28).

39

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Primjer Pomnoziti dva polinoma treeg stepena a(x) i c(x), iji su koeficijenti iz skupa GF(2 8), pa dobijeni
rezultat ponovo svesti na polinom treeg stepena d(x), koristei za redukciju polinom ( X4 + 1) .
d(x) = (a(x) c(x)) mod (x4+1) = d3X3 +d2 X2 + d1 X + d0
d0 = ( a0 b0 ) + ( a3 b1 ) + ( a2 b2 ) + ( a1 b3)
d1 = ( a1 b0 ) + ( a0 b1 ) + ( a0 b2 ) + ( a3 b3)
d2 = ( a2 b0 ) + ( a1 b1 ) + ( a0 b2 ) + ( a3 b3)
d3 = ( a3 b0 ) + ( a2 b1 ) + ( a1 b2 ) + ( a0 b3)
Treba naglasiti da se svi proizvodi oblika (ai bj ) formiraju u skladu s pravilima mnozenja po mod
(x +1) .
4

1.4.2 Postupak ifriranja u kriptografskom algoritmu AES

Stanje bloka (State Block) predstavlja trenutno stanje ifrovanog bloka podataka. Ako se iskaze u
matrinoj formi onda se ta matrica proglaava za matricu stanja. Blok izvornog teksta od 192 bita se
moze iskazati i pravougaonom matricom formata 6x4, kod koje su matrini elementi bajtovi, odnosno
osmobitni rasporedi ili okteti. Po AES standardu blok izvornog teksta je uvijek duzine 128 bita.
U tabeli broj 2.4.1 prikazan je takav matrini prikaz. Okteti izvornog teksta se upisuju u prikazanu
matricu po kolonama, dakle: s0,0 , s1,0 , s2,0 , s3,0 , s0,1 s1,1 , s2,1, s3,1, ..... s0,5 , s1,5 , s2,5 , s3,5. Broj redova u
matrici stanja je fiksan i iznosi etiri, dok broj kolona zavisi od veliine bloka (broj kolona moze biti etiri
(128 bitni blok), est (192 bitni blok) ili pak osam (256 bitni blok).
Tabela broj 2.4.1 Matrica stanja za 192 bitni blok

40

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Slino matrici stanja i klju algoritma AES, smjeta se u matricu formata 4x4 (128 bitni klju),
odnosno 4x6 (192 bitni klju), ili pak 4x8 (256 bitni klju). Elementi matrice kljua su takoer okteti,
odnosno osmobitni rasporedi, a elementi kljua se takoe upisuju po kolonama pridruzene matrice.
Broj rundi (ciklusa) algoritma odreuje se u skladu sa utvrenim veliinama bloka izvornog teksta i
odabranog kljua. Unutar runde veliina bloka izvornog teksta mora biti usaglaena sa veliinom kljua
runde. Zakonitost koja se uvazava tokom tog izbora definisana je tabelom 2.4.3
Tabela broj 2.4.2 Tabela kljua za sluaj kada je odabran 128 bitni klju

Tabela broj 4.2.3

Broj rundi u funkciji veliine bloka stanja Nb i veliine odabranog kljua Nk

Postupak ifrovanja poinje tako to se izvorni tekst preslikava u matricu stanja. Prije prve runde
vri se inicijalno dodavanje kljua (operacija AddRoundKey), odnosno sabiranje matrice stanja i matrice
kljua (operacija ekskluzivno ili ). Prva runda, kao i preostalih osam, deset ili pak dvanest rundi (broj
rundi zavisi od veliine bloka i veliine odabranog kljua, to je iskazano putem tabele 4.2.3) strukturne
su identino. jer sadrze etiri transformacije nad oktetima. U posljednjoj rundi uoava se razlika jer se u
njoj izostavlja transformacija MixColumn.
Prva transformacija Sub Byte podrazumjeva zamjenu okteta na osnovu tabele supstitucije. Ovo je
jedina nelinearna transformacija. Svaki element matrice stanja prvo se zamjenjuje s njemu
odgovarajuim multiplikativnim inverzom iz polja GF(28) (polinom b(x) supstitira se s polinomom b-1(x)).
41

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Element 0x00 ostaje nepromjenjen. U drugom djelu ove transformacije nad bitovima matrice stanja,
odnosno nad njenim svakim elementom b=(b1b2b3b4b5b6b7b8) primjenjuje se fiksna afina transformacija
oblika:
(bi) = bi + b (i+4)mod 8 + b (i+5)mod 8 + b (i+6)mod 8 + b (i+7)mod 8 + ci
(i= 1,2,3...8), ci = 01100011
Ova operacija se moze prikazati pomou S kutije algoritma AES. Svaki element AES bloka zapie se
heksadecimalno. Prvom broju u tom elementu pridruzimo pripadni red S kutije AES algoritma, a drugom
broju odgovarajuu kolonu te iste S kutije.
U tabeli broj 4.2.4 prikazana je struktura S kutije algoritma AES.
Tabela broj 4.2.4 Struktura S kutije algoritma AES

Druga transformacija (ShiftRow) oznaava pomjeranje okteta u redovima matrice stanja. Red 0 nema
pomjeranja, u redu 1 vri se pomjeranje za C1 bajtova, u redu 2 vri se pomjeranje za C2 bajtova, a u
42

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

redu 3 vri se pomjeranje za C3 bajtova. Vrijednosti ofseta C1,C2,C3 ovise o veliini bloka izvornog
teksta.
Za Nb = 4: C1=1; C2=2; C3=3
Za Nb = 6: C1=1; C2=2; C3=3
Za Nb = 8: C1=1; C2=3; C3=4
Mjeanje podataka u kolonama matrice stanja (MixColumn)
U matrici stanja, kolone se tretiraju kao polinomi nad poljam GF(28). Mnoze sa fiksnim polinomom c(x),
koji je definisan relacijom:
c(x) = 0x03X3 + 0x01 X2 + 0x01 X + 0x02
i to po modulu (X4+1). Polinom c(x) je pri tome i relativno prost u odnosu na polinom (X 4 + 1), pa je
samim tim i invertibilan. Mnozenje oblika (a0,j + a1,j X + a2,j X2 + a3,j X3)c(x)(mod (X4 + 1)) moze se
realizovati i u matrinom obliku prema slijedeoj emi:

Mnozenje oblika(a0,j + a1,jX + a2,jX2 + a3,jX3)c(x)(mod (X4 + 1))


Inverz od MixColumn je slian jer se svaka kolona mnozi sa specifinim polinomom d(x), koji je definisan
na osnovu relacije: c(x)d(x) = 0x01.
d(x) = 0x0BX3 + 0x0DX2 + 0x09 X + 0x0E
43

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Dodavanje podkljueva u matricu stanja, operacija AddRoundKey. U skladu s ovom operacijom


matrica stanja se transformie putem dodavanja elemenata podkljua runde homolognim elementima
matrice stanja po osnovu primjene operacije ekskluzivno ili.

ema dodavanje podkljueva u matricu stanja


Ekspanzija kljua Cilj ekspanzije-proirenja kljua, je stvaranje pretpostavki za generisanje
podkljueva pojedinih rundi da bi se mogla realizovati operacija AddRoundKey. Proirenjem kljua
generie se
(Nr +1) Nw 32 bitnih rijei, koje se oznaavaju sa wi ( 0 i < (Nr +1) Nw ). Simbol Nr
definisan je brojem runde, simbol Nw oznaava broj rijei u podkljuu.
Proireni klju se formira tako da prve etiri rijei predstavljaju zadani klju. Svaka slijedea rije ri dobija
se iz prethodne rijei ri-1 kojoj se u skladu sa operacijom ekskluzivno ili dodaje rije to se nalazi na
poziciji ri-Nk . Ako je i djeljivo s Nk , onda se prije primjene operacije ekskluzivno ili nad tom rijei ri-1,
obave slijedee operacije:
Operacija RotWord, kojom se rotira rije za jedno mjesto ulijevo (r0r1r2r3), postaje (r1r2r3r0),
44

Univerzitet u Sarajevu
Elektrotehniki fakultet
Odsjek za telekomunikacije

akademska godina: 2011/2012


Kriptografija i sigurnost sistema
Predavanje 2

Operacija SubWord, kojom se uzima jedan po jedan bajt iz rijei i na svaki pd njih primjeni djelovanje S
kutije,
Potom se jo realizuje i operacija ekskluzivno ili s rijei, koja je definisana relacijom: ( 02(i-4)/4,00,00,00).

45

You might also like