Professional Documents
Culture Documents
KRAGUJEVAC
Profesor: Studenti:
Srđan Atanasijević Nikola Vulović
Stefan Kostić
Nikola Jovanović
Nikola Mišković
Zoran Radičević
Srđan Radunović
Dušan Srećković
Sadržaj
Uvod………………………………………………………………………..…........3
Simetrična kriptografija…………………………………………………..………...4
Istorija nastanka AES-a………………………………………………..…………...5
AES algoritam – Opis postupka enkripcije……………………………………..….6
High–level algoritam kriptovanja…………………………………………...…...…7
Enkripcijski ključevi……………………………………………...………………...8
Sigurnost………………………………………………………...………………...10
Šifriranje teksta pomoću AES algoritma….............................................................11
Dešifrovanje teksta – dekripcija……………………………………………….….13
Zaključak.................................................................................................................14
Literatura ................................................................................................................15
2
Uvod
Sigurnost računarskih sistema postaje sve važnija, jer sve više korisnika na sve više
načina koristi sve više informacija u računarskom svetu. U takvom sistemu postoji i sve veća
opasnost od neovlašćene upotrebe informacija, podmetanja krivih informacija ili uništavanja
informacija. U računarskim sistemima informacije se prenose raznovrsnim otvorenim i
nesigurnim komunikacijskim putevima. Pristup do tih puteva ne može se fizički zaštititi pa svaki
neprijateljski nastrojen napadač može narušiti sigurnost sistema. Zbog toga zaštitni
komunikacijski mehanizmi nad nesigurnim komunikacijskim kanalom postaju najvažniji oblik
ostvarenja sigurnosti. Pokazuje se da je najdelotvornija zaštita poruka njihovo kriptovanje.
Kriptografija je nauka "tajnog pisanja", tj. nauka čuvanja informacija u onoj formi koja
će biti čitljiva samo onima kojima je informacija namenjena dok će za ostale biti neupotrebljiva.
Uporedo sa razvojem kriptografije razvila se i nauka kojoj je cilj analizom kriptovane poruke
odgonetnuti njen sadržaj. Ta nauka se naziva kriptoanaliza.
Pored gore navedenog, valja spomenuti jednu bitnu razliku između termina kriptografija i
termina kriptologija. Kriptografija je nauka koja se bavi svim aspektima sigurnosnog transporta
podataka kao što su na primer autentifikacija (web,lokalne mreže i sl.), digitalni potpisi, razmena
elektronskog novca. Kriptologija, je za razliku grana matematike koja se bavi matematičkim
načelima, te matematičkom implementacijom kriptografskih metoda.
Enkripcija (en. encription) ili šifriranje je proces u kriptografiji kojim se vrši izmena
podataka tako da se poruka, odnosno informacije, učine nečitljivim za osobe koje ne poseduju
određeno znanje (ključ). Ovaj pojam se najviše koristi u informatici, gde se određeni podaci
enkriptuju, i najčešće tako zaštićeni šalju putem e-maila.
Enkripcija je proces kojim se informacijski sadržaji nastoje učiniti nerazumljivim za
osobe koje ne poseduju određeno znanje odnosno enkripcijski ključ (popularno nazivanim i
ključem za šifriranje/dešifriranje). Postupak enkripcije može se provoditi ručno, što je i bio
slučaj u istoriji nastojanja čoveka da neke informacije učini tajnima, no danas će se u tu svrhu
gotovo bez izuzetka koristiti računari. U takvim uslovima enkripcijski postupci odnosno
algoritmi mogu biti daleko složeniji,a samim time korisniji,snažniji i pouzdaniji.
Enkripcija je danas neophodna prilikom prenosa podataka u otvorenim računarskim
mrežama (primer putem Interneta) kako bi se osujetile njihove moguće zloupotrebe različitih
vrsta od strane neovlašćenih korisnika.Osetljive podatke ne bi trebalo na taj način štititi samo
tokom njihovog prenosa komunikacijskim linijama već takođe i onda kada su oni sačuvani na
nekom memorijskom mediju (primer, računarskom disku ili USB memoriji).
Danas je za svrhe enkripcije u opštoj upotrebi Advanced Encryption Standard (AES)
koga valja smatrati osnovnim standardom strateškog upravljanja informacijskim tehnologijama.
3
Simetrična kriptografija
Enkripcija: C = Ek (M )
Dekripcija: M = Dk (C )
4
Istorija nastanka AES-a
Još ranih 1970-ih godina kompanija IBM razvila je svoj standard enkripcije podataka
nazvan Data Encryption Standard (DES). 1977. godine taj je standard prihvatio tadašnji
Nacionalni ured za standarde SAD (današnji Nacionalni institut za standarde i tehnologije,
NIST) kao službeni standard zaštite podataka u institucijama državne uprave SAD.
Sa razvojem informacijsko-komunikacijskih tehnologija pokazalo se da DES ne može
više na odgovarajući način zadovoljavati rastuće potrebe zaštite tajnosti podataka. Taj je problem
postao kritičan 1990-ih godina kada Internet „na velika vrata“ ulazi u široku upotrebu, posebno u
poslovnim krugovima. Zato je 1997. godine NIST pokrenuo inicijativu za pronalaženje korisnije
i pouzdanije zamene za DES.
Naglim razvojem informacijske tehnologije algoritmi koji su nastali pre deset, dvadeset i
više godina su zastareli u smislu da više ne pružaju dovoljnu sigurnost. Naime, zadnjih dvadeset
godina kriptoanaliza (kao i kriptografija) je također profitirala od razvoja računarske
moći.Algoritmi kao DES za koje se nekad smatralo da su neprobojni, danas je moguće
kompromitirati.
Cilj je pritom bio definisati zamenu za DES koja će se koristiti u svrhe postizanja
zadovoljavajućeg stepena informacijske sigurnosti u civilnim (nevojnim) informatičkim
aplikacijama i komunikacijama tela i institucija državne uprave SAD, ali i u nevladinu sektoru.
Na taj način novi će enkripcijski standard postati opšti de facto standard u SAD ali i u
međunarodnim razmerama.
NIST je putem javnog konkursa pozvao stručnjake i organizacije za kriptografiju i
sigurnost podataka iz čitavog sveta da učestvuju u raspravama i izboru novog enkripcijskog
standarda. Od nekoliko desetina predloga, u uži je izbor ušlo njih pet među kojima je kao
najprikladniji odabran enkripcijski algoritam kojega su predložili belgijski kriptografi Joan
Daeman i Vincent Rijmen. Izvorni naziv tog algoritma kojega su osmislili njegovi autori bila je
izvedenica njihovih prezimena – Rijndael. Nakon što je izabran da bude zamenom za DES, taj je
algoritam preimenovan u Advanced Ecryption Standard, poznat pod akronimom AES.
Zakonski akt kojim se AES imenuje službenim enkripcijskim standardom u državnoj
upravi SAD stupio na snagu 26. maja 2002. godine, pri čemu je on dobio službenu oznaku FIPS
197. Kao takav, i danas je važeći.
Mašine kojima bi za razbijanje šifre kodirane po DES-u trebala svega 1 sekunda, kakve
su sada, u eri razvijene računarske tehnologije česti, na AES bi potrošili 149 triliona godina.
Amerikancima ne smeta ni činjenica da je sistem izrađen u inostranstvu, jer su kompletni
algoritmi i načela dizajna već dve godine bili dostupni Pentagonovoj National Security Agency
na uvid i testiranje.
5
AES algoritam – Opis postupka enkripcije
Strogo govoreći, AES nije precizno Rijndael (iako u praksi oni se koriste nerazdvojivo),
jer Rijndael podržava veći raspon bloka i veličine ključa; AES ima fiksni blok veličine 128 bita i
ključ veličine 128, 192, ili 256 bita , dok kod Rijndaela može biti navedena, uz ključ, i veličina
bloka u bilo kojoj vrednosti pomnoženoj sa 32 bita, i najmanja je 128 bita, a najviša 256 bitova.
AES algoritam je tzv. blok-šifra koja koristi enkripcijski ključ i primenjuje se u nekoliko
iteracija (tzv. runda). Blok-šifra je vrsta enkripcijskog algoritma koji se primenjuje istovremeno,
odjednom, na celokupne blokove podataka. U izvornom AES-u taj je blok dužine 128 bita
odnosno 16 bajta (16 x 8 = 128). Pojam „iteracija“ ili „runda“ odnosi se na način na koji
algoritam višestruko „meša“ podatke (poput karata). U današnjoj je informatičkoj praksi
uobičajeno da takvih „runda“ bude 10 do 14, zavisno o odabranoj dužini enkripcijskog ključa.
AES algoritam sam po sebi nije, kao što se to često pogrešno misli, računarski program.
To je, naime, matematički opis postupka skrivanja informacijskog sadržaja podataka u čije
pojedinosti na ovome mestu nećemo ulaziti, a koji se može na različite načine, primenom
različitih račuanrskih jezika i metoda programiranja, transformisati u računarski program. Zato i
jeste u upotrebi mnoštvo programa koji su međusobno različiti ali proizlaze iz AES-a i s njime su
skladni (kompatibilni).
Kriptovanje je određeno u uslovima ponavljanja obrade koraka koje se primjenjuju kako
bi nadoknadili krugove ključem transformacije između ulaznih plain-text i konačnom izlazu
kriptovanog teksta. A set obrnut runde su primjenjivane za transformaciju kriptovanja teksta
natrag u izvorni plain-text, pomoću istog ključa za šifriranje.
6
High–level algoritam kriptovanja
7
Enkripcijski ključevi
Kod primene AES-a, u procesu enkripcije koristi se samo jedan enkripcijski ključ.
Njegova dužina, međutim, može varirati, a najčešće su u upotrebi ključevi dužine 128 bita (16
bajta), 192 bita (24 bajta) i 256 bita (32 baja). Za enkripciju (šifriranje) i dekripciju (dešifriranje)
koristi se isti ključ. Takvi se algoritmi nazivaju simetričnim enkripcijskim algoritmima.
Uz simetrične, u upotrebi su i asimetrični enkripcijski algoritmi, pri čemu je jedan ključ
javan (opšte poznat) a drugi tajan (poznat samo ovlašćenim korisnicima enkriptovanog
informacijskog sadržaja). U oba slučaja enkripcijski je ključ niz bitova (biranih znakova). Takvi
su algoritmi regulisani nekim drugim standardima.
Budući da se uz primenu AES-a isti ključ koristi i za enkripciju i za dekripciju
informacija, neophodno je čuvati njihovu tajnost te koristiti ključeve čije je vriednosti (sadržaj)
teško nasumice ili nekako drugačije otkriti (pogoditi). Obično se za generisanje enkripcijskih
ključeva koriste računarski programi koji ih „proizvode“ na slučajan odnosno pseudoslučajan
način. Postoje takođe i sastavi u kojima se za izvođenje enkripcijskih ključeva kao polazna
osnova upotrebljavaju korisničke pristupne lozinke,ali dobar sastav zaštite tajnosti informacija
nikada lozinku samu po sebi neće koristiti u funkciji enkripcijskog ključa.
U informatičkoj je praksi u upotrebi nekoliko metoda korišćenja enkripcijskih ključeva
prilikom primene AES-a. U stručnoj se terminologiji te metode nazivaju „modalitetima rada“
enkripcijskog sastava. NIST je standardizovao šest takvih modaliteta:
Svaki se od navedenih modaliteta oslanja na AES na različit, sebi svojstven način. Tako,
na primer, ECB nezavisno enkribira svaki pojedini blok podataka dok CTR enkribira 128-bitni
brojač i potom dodaje tu vriednost podacima koje potom enkribira. CBC pak koristi
inicijalizacijski vektor te dodaje enkribiranu vriednost svakog bloka podataka podacima sledećeg
bloka pre nego što i njih enkribira.
Važno je znati da će i snažan enkripcijski algoritam koji se koristi na neprimeren način
rezultirati niskim stepenom sigurnosti osetljivih podataka. Korektna primena neodgovarajućeg
modaliteta enkripcije ili pak nekorektna primena odgovarajućeg modaliteta ima će za posledicu
slabo osigurane podatke čiju će zaštitu neovlašćeni i/ili nedobronamerni korisnik lako „probiti“.
Zato je preko potrebno znati i do kraja razumeti ograničenja i implikacije primene svakog od
navedenih standardnih enkripcijskih modaliteta.
8
Neke od najvažnijih praktičnih preporuka bile bi sledeće:
9
Sigurnost
Do maja 2009, objavljeni su samo jedini uspešni napadi AES, bili su sporedni kanal
napada na specifične implementacije. Nacionalna agencija za bezbednost (NAB) je pregledala
sve AES finaliste, uključujući Rijndael, i izjavila da su svi oni dovoljno sigurni za poverljive
podatke Vlade SAD-a. U Junu 2003, Vlada SAD-a je najavila da AES, može da se koristi za
zaštitu tajnih informacija.
Dizajn i snaga svih ključnih dužine AES, algoritam (tJ., 128, 192 i 256) su dovoljne da
zaštite tajnih podataka do SECRET nivoa. Top Secret informacije će zahtevati korišćenje bilo
192 ili 256 dužine ključa. Implementacija AES-a, u proizvode namenjene zaštiti nacionalnih
sistema bezbednosti i / ili informacija mora biti pregledana i overena od strane NSA pre njihove
nabavke i upotrebe.
AES, ima 10 krugova(kola) za 128-bitne ključeve, 12 kola za 192-bitne ključeve, i 14
kola za 256-bitne ključeve. Do 2006, najpoznatiji su napadi na 7 kola za 128-bitne ključeve, 8
krugova za 192-bitne ključeve, i 9 kola za 256-bitne ključeve.
Za cryptographers, šifrovana "pauza" je nešto brža nego iscrpna pretraga. Tako, XSL-
napad na 128-bitni ključ AES, zahtevaju operacije 2100 (u odnosu na 2128 mogućih ključeva) će se
smatrati pauzom. Najveći uspešni javno poznati brute force attack je bio na 64-bitni RC5 ključ za
distributed.net.
Za razliku od većine drugih blok šifara, AES, ima vrlo uredan algebarski opis.Godine
2002, teorijski napad nazvan "XSL-napad", najavljen je od strane Nikole Kurtoa i Jozefa
Pieprzyka da pokažu slabosti u algoritmu AES, zbog svog jednostavnog opisa.Od tada,drugi
radovi su pokazali da je napad koliko god originalno predstavljen neizvodljiv.
Tokom AES procesa, programeri konkurentskih algoritama napisali su o Rijndael-u, "...
mi smo zabrinuti za njegovu ...upotrebu u aplikacijama kritične sigurnosti."Međutim, na kraju
AES procesa, Bruce Schneier autor konkurentskog Algoritma Twofish, napisao je da dok je on
mislio da će uspešni akademski napadi na Rijndael se razviti jednog dana, "Ja ne verujem da će
iko ikada otkriti napad koji će omogućiti nekome da pročita Rijndael saobraćaj".
1. Jula 2009, Bruce Schneier napisao je blog u vezi Related-key napada na 192-bitne i
256-bitnim verzije AESa, otkrivene od strane Aleks Biryukov i DmitriJ Khovratovich; povezani
ključni napad na 256-bitnu verziju AESa, eksploatiše AES-ov donekle jednostavan raspored
ključeva i na složenost od 2119. Ovo je nastavak napada koji je otkrio ranije u 2009 Aleks
Biryukov, DmitriJ Khovratovich, i Ivica Nikolić, uz složenost 296 za jednu od svakih 235
ključeva.
Drugi napad je bio blogovan od strane Bruce Schneier 30. Jula 2009 i objavljen 3.
avgusta 2009. Ovaj novi napad, od strane Aleks Biryukov, Or Dunkelman, Natan Keler, Dmitrija
Khovratovich i Adi Šamira, je protiv AES-256, koji koristi samo dva povezana ključa i 2 39
vremena da se oporavi kompletni 256-bitni ključ verzije od 9-kola , ili 2 45 vremena za verziju 10-
kola sa jačim vrstama vezanih napada potključ, ili 270 vremena za verziju od 11-krugova. 256-
bitni AES, koristi 14 krugova, tako da ovi napadi nisu efikasni protiv punog AES-a.
U novembru 2009, prvi put se objavljuje napad verzija od 8-krugova AESa-128. Ovaj
poznati ključ prepoznatljivi napad je unapređenje odbijanja ili početka-od-sredine-napada za
AES-permutacije koje ispituje dva uzastopna kruga permutacije kao primena tzv Super-Box.
Radi na 8-krugova verzije AES-128, uz izračunavanje kompleksnosti 2^48, a složenost
memoriJe 2^32.
10
Šifriranje teksta pomoću AES algoritma
Program:Cryptool
1.Startovati CrypTool
11
5. Napraviti ključ SAMO HEX vrednosti
12
Dešifrovanje teksta – dekripcija
13
Zaključak
Kada su se pojavile računarske mreže, nije se mnogo vodilo računa o njihovoj sigurnosti,
jer su se tada uglavnom koristile za razmenu elektronske pošte između istraživača sa raznih
univerziteta ili za štampanje dokumenata u kompanijama koje su posedovale više računara koji
su preko mreže bili povezani na jedan zajednički štampač.
Danas, kada su računarske mreže dostupne svakome, njihovoj sigurnosti se posvećuje
velika pažnja. Da nije toga, u današnje vreme se ne bi moglo kupovati preko mreže niti obavljati
razne bankarske transakcije. Ne mali je broj ljudi koji na razne načine pokušavaju da naruše
sigurnost mreža, želeći time da naude drugim ljudima i da prvenstveno steknu neku korist od
toga. Oni pokušavaju da čitaju ili da menjaju sadržaj poruka dostupnih preko mreže, iako nisu
ovlašćeni za to. Tako, na primer:
o učenik ili student će, čitajući tuđe e-mail poruke, sebi prekratiti vreme,
o haker će testirati nečiji sigurnosni sistem pokušavajući da mu ukrade podatke,
o poslovni ljudi će pokušati da otkriju planove konkurentne kompanije,
o otpušteni radnik će probati da se poslodavcu osveti zbog otpuštanja,
o računovođa će proneveriti novac od kompanije,
o lopov će pokušati da ukrade broj tuđe kreditne kartice da bi pomoću nje kupovao,
o špijun će pokušati da sazna sa kakvom vojnom silom raspolaže neprijatelj
14
Literatura
1. www.wikipedia.org
2. www.orkis.hr
3. http://www.cryptool.de
4. Mr Srđan Atanasijević, dipl.ing.inf :”Bezbednost informacionih sistema”
5. Panevropski univerzitet APEIRON,Fakultet Poslovne informatike; Predmet: Principi
programiranja
15