You are on page 1of 11

ELEKTROTEHNIKI FAKULTET

UNIVERZITET U SARAJEVU

Odsjek za telekomunikacije
MSc studij, I godina
Predmet: Kriptografija i sigurnost sistema
Predava: R. Prof. Dr Narcis Behlilovi, dipl. ing. el

- PREDAVANJE 2 -

Osnovi 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 vedi
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, ved 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 bespomodni, jer je u nastavku aktivnosti
trebalo jo i deifrovati pronaeni tekst.
Od pomenute dvije opcije za tajnost komunikacija, kriptografija je sigurnosno mnogo modnija, 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 nede bitnije promjeniti, jer se u vedini grafikih formata prikazuje vie boja, nego to ljudsko oko
moe da detektuje. U crno-bijelu fotografiju rezolucije 1024x1024 opisanim pristupom mogude je
ubaciti tekst od 64 kilobajta.
Sposobnosti razbijanja postojedih 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 skradeno se oznaava sa M (eng. Message), ili sa P (eng.
Plaintext). Iskazuje se putem odabranih simbola, koji s aspekta raunara imaju samo, vlastitu, binarnu
interpretaciju. Izvorni tekst je najede namjenjen, ili za skladitenje, ili pak za slanje na odreenu
lokaciju.
Kriptovani oblik otvorenog teksta ili ifrat (eng. Ciphertext), obino se skradeno oznaava sa C.
Iskazan je u binarnom obliku, pri emu broj njegovih bita, moe biti ne samo isti kao i u M, nego i
vedi, pa ak i manji, od broja bita u M, 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 sljededa
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.
Modniji 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.
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 mogudih 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)

( )
(

, tada se

(2.8)
( ))

(2.9)

Kriptosistem (eng. Cryptosystem) je pojam koji obuhvata kriptografski algoritam, sve mogude
otvorene tekstove, sve njihove verzije - kriptovane predmetnim algoritmom i sve mogude kljueve,
usklaene s tim algoritmom.
Formalno se kriptosistem moe definisati na sljededi 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
relacije:

, postoji funkcija ifriranja

i funkcija deifriranja

i to takve da vae

( ( ))

Posebno vazan detalj u prethodnoj definiciji je zahtjev da funkcija


preslikavanje.

mora biti injektivno

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


ek (x1) = ek (x2) = y

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 slijededa 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 odgovarajudi
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 ved konstatovano, kriptoanaliza je
nauka koja, bez kljua, a na osnovu pribavljenog ifrata, pokuava odrediti izvorni tekst. Kriptoanaliza
omogudava i da se lociraju slabosti analiziranog kriptosistema, ali da se eventualno doe i do
osnovnog 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 ved bio u golemoj naunoj
prednosti spram Evrope. Dok su arapski uenjaci uivali u razdoblju velikih vlastitih naunih
dostignuda, u Evropi se tek u XV vijeku, tokom Renesanse, omogudilo 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:
sluaju na osnovu

,...,
(

ili napraviti algoritam koji omogudava da se u optem


) odredi
.

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

( ),

( ), ....,

( )

a cilj je izraunati klju


(
) odredi
.

, ili pak algoritam, koji de omoguditi da se na osnovu

napad odabran otvoreni tekst (eng. Chosen Plaintext Attack). Kriptoanalitiar ne samo
da ima pristup odreenom broju ifrata i njima odgovarajudih izvornih poruka, nego moe i
birati izvorni tekst koji de biti ifrovan. Ovo je modniji napad od napada tipa poznat otvoreni
tekst, jer je kriptoanalitiar u prilici da bira specifine blokove izvornog teksta, koji mu
pomau da 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: , , ,...,


klju , ili pak algoritam, koji de omoguditi da se na osnovu

( )

. Postavljeni je cilj izraunati


(
), 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, ved 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 omogudava da se odabere i manji dio odabranog bloka, nad kojim se izvri planirani
napad, pa zatim koristedi 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 dodi do odgovarajude 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.
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 kripto-algoritma smatra se da ste u osnovi bezbjedni, ukoliko je cijena provaljivanja tajnih
podataka, veda 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 de 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.

Primjer 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

Svi drugi algoritmi su provaljivi postupkom grube sile (eng. Brute Force Attack), pri emu
raspoloivi kadrovski i raunarski resursi, diktiraju koliko de 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 mogudnosti


provaljivanja analiziranog algoritma jasno uz pomod odgovarajudih raunarskih resursa.
U tom smislu, predmetni algoritam smatra se raunarski sigurnim (eng. Computationally Secure) ako
ga nije mogude provaliti raspoloivim sredstvima. Ovakva procjena se bazira na osnovu raspoloivih
teoretski znanja i hardverskih i softverskih resura. Meutim kako je bududi 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 osjedaja i kompleksnosti napada uzima se da je starost planete je 109
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, omogudava razbijanje kriptoanalitikih algoritama na milijarde
segmenata, to uz paralelnu povezanost raunara i neobaveznost meusobnog komuniciranja
njihovih procesora, stalno pomjera granicu izmeu praktino mogudeg i teoretskog, upravo ka tom
teoretskom.
Potvrda prethodne ocjene su i komercijalna rjeenja kriptografskih algoritama zasnovana na 128bitnim kljuevima (IDEA) i AES (128 bitni, 196 bitni, 256 bitni kljuevi).
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 odgovarajudim simbolom ifrata, dok primalac zamjenjuje
svaki simbol ifrata odgovarajudim 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
odgovarajudim 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.

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

A
D

B
E

C
F

D
G

E
H

F
I

G
J

H
K

I
L

J
M

K
N

L
O

M
P

N
R

O
S

P
T

...
...

Cezarova ifra je primjenjivana i sa pomakom udesno vedim 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 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 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 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) = (( 26a) (+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 Z26, b, imaju sebi inverzan element u odnosu na operaciju mnozenje, 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 slijededi 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 de se pomicati slova pri ifriranju.
Primjer: Ako je ifrat LFPZQYJY, formiran primjenom Cezarove ifre, odrediti prvo upotrebljeni klju K,
a potom i sam izvorni tekst.
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.

You might also like