Enkripcija podataka: Razbijanje enkripcije (Epizoda 5)
Ranije je rečeno da enkripcija obezbjeđuje sigurno slanje informacija po konceptu povjerljivosti, integriteta i originalnosti. Sada se postavlja pitanje može li se enkripcija razbiti?
RAZBIJANJE ENKRIPCIJE
Na ovo pitanje se ne može dati direktan odgovor, ali u zavisnosti od datih okolnosti i drugih faktora enkripciju je moguće razbiti. Međutim, potrebno je imati na umu da taj proces može zahtjevati ogromnu količinu uloženog vremena, resursa i tehničkog znanja. Generalno gledajući, napadači teže da do podataka dođu prije enkripcije ili da dođu do enkripcijskih ključeva. Međutim, ako je podatak već šifrovan, a napadač hoće da dođe do njega postoje određene vrste napada koji se mogu izvesti. Napadi na šifrovane podatke možemo prvo podijeliti u dvije grupe:
Pasivni napadi – ovo je grupa napada koji nisu štetni za sistemsko okruženje, jer oni ne vrše nikakve izmjene. Posmatranje ili prisluškivanje bi bili primjeri pasivnog napada.
Aktivni napadi – ova grupa napada može izmijeniti podatke ili sistemska podešavanja i očigledno je da su mnogo štetniji za okruženje u kojem se odvijaju.
VRSTE NAPADA
Neki od aktivnih napada za razbijanje enkripcije su:
Napad grubom silom
Napad grubom silom (eng. brute-force) je vrsta napada pokušava primijeniti svaku moguću kombinaciju znakova (slova, brojevi, simboli…) kako bi se našao ključ za dešifrovanje poruke. Treba imati na umu da ova vrsta napada zahtjeva manje vremena za male dužine ključa, ali će zahtjevati ogromnu količinu vremena za duže ključeve. Stoga se ova vrsta napada na moderne enkripcijske sisteme ne smatra praktičnom.
Samo šifrovani tekst napad
Samo šifrovani tekst napad (eng. cipher-only) je vrsta napada gdje napadač zna šifrovane podatke iz različitih poruka koje su šifrovane istim enkripcijskim algoritmom. Pored toga, ako su poznate informacije kao što su jezik na kom su podaci pisani i statističke informacije o rasporedu znakova, napadač ima dovoljno informacija da pokrene ovu vrstu napada. Sa svim ovim informacijama napadaču ostaje da shvati šta je ključ i da ga primjeni za dešifrovanje svih poruka. Ova vrsta napada je možda najlakši napad imajući u vidu da se do šifriranog teksta može doći njuškanjem (eng. sniffing), ali veoma ga je teško primijeniti jer je znanje o enkripcijskom procesu ograničeno.
Napad poznatog teksta
Napad poznatog teksta (eng. known-plaintext) je vrsta napada gdje napadač zna dio izvornog teksta prije šifrovanja, a posjeduje i šifrovani podatak. Ono što mu preostaje je da obrnutim inžinjeringom shvati šta je ključ i onda može dešifrovati i ostale šifrovane poruke koje koriste isti ključ i algoritam. Ovaj napad je veoma efikasan kada su u pitanju jednostavne šifre, kao na primjer supstituciona šifra. Ovaj napad je često korišten tokom Drugog svjetskog rata.
Napad izabranog teksta
Napad izabranog teksta (eng. chosen-plaintext) je sličan napadu poznatog teksta. Razlika je u tome što napadač sam odredi neki proizvoljan teksta na koji primjeni šifru koju hoće da razbije. Pretvaranjem svog teksta u šifrirani tekst, koristeći interesnu šifru napadač pokušava da shvati koji je ključ korišten za šifrovanje. Onog trenutka kada shvati ključ, on može da nauči više o procesu šifrovanja i da razumije kako je ključ upotrebljen. Sa tim saznanjem on može dešifrovati šifriran podatak.
Napad izabranog šifrovanog teksta
Napad izabranog šifrovanog teksta (eng. chosen ciphertext) je vrsta napada gdje napadač posjeduje dio dešifrovanog teksta. On onda upoređivanjem običnog teksta sa šifriranim pokušava da shvati šta je ključ. Ovo je relativno teška vrsta napada za izvesti.
Diferencijalna kriptoanaliza
Diferencijalna kriptoanaliza je vrsta napada koja se najviš primjenjuje na blokovske algoritme, kao što je DES. Napadač prati nekoliko šifrovanja običnog podatka u šifrovani podatak. Posmatrajući promjene, on pokušava da zaključi šta je ključ. Ovo je vrsta napada poznatog teksta, pošto napadač posmatra transformaciju izabranog teksta.
Linearna kriptoanaliza
Linearna kriptoanaliza je vrsta napada gdje napadač primjenjuje napad poznatog teksta na nekoliko poruka šifriranih istim ključem. To napadaču daje uvid u vjerovatnoću određenog ključa. Što na više poruka primjeni napad, veća je vjerovatnoća da će pronaći odgovarajući ključ.
Napad bočnim kanalima
Napad bočnim kanalima (eng. side channel) je vrsta napada koj pokazuje da matematički način nije jedini način za razbijanje šifriranih podataka. Napadači mogu koristiti druge tehnike kao što su posmatranje potrošnje električne energije, emisije zračenja i vremena potrebnog za obradu podataka. Sa svim ovim podacima, napadač pokreće obrnuti proces da shvati šta je ključ, samo posmatrajući količinu generisane toplote prilikom napada.
Napad reprodukcije
Napad reprodukcije (eng. replay attack) je vrsta napada gdje napadač dođe do nekih informacija (informacija o autentifikaciji), koju vrati nazad primaocu. To prevari primaoca, koji ne obraća pažnju na vremenske oznake i on mu daje neovlašteni pristup.
Implementacioni napad
Implementacioni napad je vrsta napada gdje napadači teže da iskoriste ranjivosti ili slabosti koje su nastale tokom implementacije enkripcijskog sistema. Ovaj napad se isključivo usmjerava na greške u softverskom kôdu i druge nedostatke u okviru implementacije sistema šifrovanja.