Starije izmjene na obje strane
Starija izmjena
Novija izmjena
|
Starija izmjena
|
racfor_wiki:kriptoanaliza:cryptoanalysis_and_attacks [2020/01/08 01:44] kjurcic ["Hash" funkcije] |
racfor_wiki:kriptoanaliza:cryptoanalysis_and_attacks [2024/12/05 12:24] (trenutno) |
===== Sažetak ===== | ===== Sažetak ===== |
| |
<font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Jedno od ključnih sredstava poslovanja, trgovanja i komunikacije u današnje vrijeme čine informacije koje se svakodnevno izmjenjuju, pohranjuju i obrađuju putem Interneta. Veliki postotak tih informacija predstavlja vrlo važne ili tajne podatke neke tvrtke, organizacije ili države. Kako bi se osigurala njihova sigurnosti razvijaju se razne metode kriptiranja podataka prije njihova slanja putem mreže. Kako bi se što bolje zaštitili podaci koriste se metode kriptoanalize. Tehnike kodiranja su kroz povijest napredovale, pogotovo od druge polovice 20. stoljeća nadalje. Budući da informacije postaju sve dostupnije svima, potrebno je naći što bolje tehnike zaštite istih. Nažalost, kako napreduju tehnike kodiranja, tako napadači pronalaze sve sofisticiranije načine za dekodiranja šifri.</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Jedno od ključnih sredstava poslovanja, trgovanja i komunikacije u današnje vrijeme čine informacije koje se svakodnevno izmjenjuju, pohranjuju i obrađuju putem Interneta. Veliki postotak tih informacija predstavlja vrlo važne ili tajne podatke neke tvrtke, organizacije ili države. Kako bi se osigurala njihova sigurnosti razvijaju se razne metode kriptiranja podataka prije njihova slanja putem mreže. Kako bi se što bolje zaštitili podaci koriste se metode kriptoanalize. Tehnike kodiranja su kroz povijest napredovale, pogotovo od druge polovice 20. stoljeća nadalje. Budući da informacije postaju sve dostupnije svima, potrebno je naći što bolje tehnike zaštite istih. Nažalost, kako napreduju tehnike kodiranja, tako napadači pronalaze sve sofisticiranije načine za dekodiranje šifri.</font> |
| |
<font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Keywords: kriptoanaliza; dekodiranje; kriptologija; zaštita podataka; kriptografski napadi</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Keywords: kriptoanaliza; dekodiranje; kriptologija; zaštita podataka; kriptografski napadi</font> |
<font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Kroz cijelu povijest čovječanstva postojala je potreba za sigurnom razmjenom informacija. Problemom sigurne komunikacije bavili su se već Egipćani i Indijci prije više od 3000 godina i od tada do danas osnovna ideja se nije promijenila – prenijeti neku poruku s jednog mjesta na drugo što je sigurnije moguće, tj. napraviti algoritam koji bi omogućio skrivanje originalne poruke tako da bude potpuno nerazumljiva osobama koje bi neovlašteno došle u njen posjed.Razvoj složenijih metoda sigurne komunikacije počeo je tek razvojem pisma, što je omogućilo da se bilo koja informacija prikaže određenim brojem znakova koji bi, nakon upotrebe određenog ključa, formirali ponovno početnu poruku. S vremenom se javila i ideja prikaza slova drugim simbolima. Primjeri koji su i danas u upotrebi su: //Morseov kod//, //Braille-ovo pismo// i //ASCII kod//.</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Kroz cijelu povijest čovječanstva postojala je potreba za sigurnom razmjenom informacija. Problemom sigurne komunikacije bavili su se već Egipćani i Indijci prije više od 3000 godina i od tada do danas osnovna ideja se nije promijenila – prenijeti neku poruku s jednog mjesta na drugo što je sigurnije moguće, tj. napraviti algoritam koji bi omogućio skrivanje originalne poruke tako da bude potpuno nerazumljiva osobama koje bi neovlašteno došle u njen posjed.Razvoj složenijih metoda sigurne komunikacije počeo je tek razvojem pisma, što je omogućilo da se bilo koja informacija prikaže određenim brojem znakova koji bi, nakon upotrebe određenog ključa, formirali ponovno početnu poruku. S vremenom se javila i ideja prikaza slova drugim simbolima. Primjeri koji su i danas u upotrebi su: //Morseov kod//, //Braille-ovo pismo// i //ASCII kod//.</font> |
| |
<font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Iako je termin "kriptoanaliza" relativno nov (William Friedman, 1920.), metode stvaranja i razbijanja šifra datiraju mnogo prije.U 6. desetljeću pr. Kr. Julije Cezar je u državnim komunikacijama koristio jednostavnu supstituciju koja je kasnije njemu u čast dobila ime "caesar" šifriranje. Ideja je bila u pomicanju svih slova za tri mjesta naprijed. Takva šifra danas se smatra neupotrebljivom i slabom, ali je u to vrijeme bila učinkovita jer je mali broj ljudi znao čitati. U svojoj knjizi //The Codebreakers//, David Kahn navodi da su arapski učenjaci prvi sistematski dokumentirali metode šifriranja i dešifriranja poruka. Tadašnji matematičari i teolozi ispitivali su autentičnost Kur'anskih ajeta i proročkih hadisa. Primijetili su da se određena slova (samoglasnici) češće pronalaze nego druga. Arapski polihistor Al-Kindi u svojem djelu //Risalah fi Istikhraj al-Mu'amma// (//A Manuscript on Deciphering Cryptographic Messages//) prvi je opisao metode analize učestalosti pojavljivanja pojedinih slova u tekstu, te se zato smatra prvim poznatim kriptografom u povijesti. Analiza učestalosti je uobičajena metoda za razbijanje klasičnih šifri. U svakom prirodnom jeziku, određena slova se pojavljuju češće nego druga; u engleskom jeziku, na primjer, slovo "E" se najčešće pojavljuje u tekstovima, dok je "TH" najčešća kombinacija dva slova. Ova metoda se oslanja na statistiku pojavljivanja pojedinih slova u tekstu, što je ujedno i njezin najveći problem. Na primjer, u najjednostavnijoj zamjeni slova nekim drugim znakovima, u engleskom jeziku bi se znak koji se najčešće pojavljuje mogao lako protumačiti kao slovo "E", ili ako je riječ o hrvatskom jeziku to bi bilo slovo "A". U Europi je tijekom 15. i 16. stoljeća razvijena ideja o abecednoj zamjeni znakova(eng. polyalphabetic substitution cipher), a jedan od pokretača bio je Blaise de Vigenère. Sljedeća tri stoljeća Vigenère-ova šifra, koja koristi ključ (proizvoljnu riječ) za odabir različitih kriptirajućih abeceda (svako slovo nekriptiranog teksta zamijeni se nekim drugim), smatrana je u potpunosti sigurnom.</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Iako je termin "kriptoanaliza" relativno nov (William Friedman, 1920.), metode stvaranja i razbijanja šifra datiraju mnogo prije. U 6. desetljeću pr. Kr. Julije Cezar je u državnim komunikacijama koristio jednostavnu supstituciju koja je kasnije njemu u čast dobila ime "caesar" šifriranje. Ideja je bila u pomicanju svih slova za tri mjesta naprijed. Takva šifra danas se smatra neupotrebljivom i slabom, ali je u to vrijeme bila učinkovita jer je mali broj ljudi znao čitati. U svojoj knjizi //The Codebreakers//, David Kahn navodi da su arapski učenjaci prvi sistematski dokumentirali metode šifriranja i dešifriranja poruka. Tadašnji matematičari i teolozi ispitivali su autentičnost Kur'anskih ajeta i proročkih hadisa. Primijetili su da se određena slova (samoglasnici) češće pronalaze nego druga. Arapski polihistor Al-Kindi u svojem djelu //Risalah fi Istikhraj al-Mu'amma// (//A Manuscript on Deciphering Cryptographic Messages//) prvi je opisao metode analize učestalosti pojavljivanja pojedinih slova u tekstu, te se zato smatra prvim poznatim kriptografom u povijesti. Analiza učestalosti je uobičajena metoda za razbijanje klasičnih šifri. U svakom prirodnom jeziku, određena slova se pojavljuju češće nego druga; u engleskom jeziku, na primjer, slovo "E" se najčešće pojavljuje u tekstovima, dok je "TH" najčešća kombinacija dva slova. Ova metoda se oslanja na statistiku pojavljivanja pojedinih slova u tekstu, što je ujedno i njezin najveći problem. Na primjer, u najjednostavnijoj zamjeni slova nekim drugim znakovima, u engleskom jeziku bi se znak koji se najčešće pojavljuje mogao lako protumačiti kao slovo "E", ili ako je riječ o hrvatskom jeziku to bi bilo slovo "A". U Europi je tijekom 15. i 16. stoljeća razvijena ideja o abecednoj zamjeni znakova(eng. polyalphabetic substitution cipher), a jedan od pokretača bio je Blaise de Vigenère. Sljedeća tri stoljeća Vigenère-ova šifra, koja koristi ključ (proizvoljnu riječ) za odabir različitih kriptirajućih abeceda (svako slovo nekriptiranog teksta zamijeni se nekim drugim), smatrana je u potpunosti sigurnom.</font> |
| |
<font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Iako gledajući iz današnje perspektive relativno jednostavna za "razbiti", Al-Kindijeva metoda analiziranja učestalosti slova je bila najznačajnija metoda razbijanja šifra sve do početka 20. stoljeća. William Frederick Friedman prvi je uveo pojam "//kriptoanaliza//". Kriptografiju su rado koristili i kriminalci, pogotovo za vrijeme prohibicije. Da bi mogli švercati alkohol koristili su vrlo komplicirane sustave šifriranja koji su u to vrijeme bili vrlo napredni. 1923. Arthur Scherbius proizvodi svoj najslavniji proizvod - široko poznatu //Enigmu//. Ona je prvotno trebala biti komercijalni proizvod, ali nije uspjela pa su je preuzeli njemački nacisti. Oni su je poboljšali pa je postala glavni uređaj za šifriranje u nacističkoj Njemačkoj. Prvi je njenu šifru slomio jedan poljski matematičar na osnovi ukradenog primjerka šifriranog teksta i dnevnih ključeva za tri mjeseca unaprijed. Kasnije su uspješno razbijene i druge Enigmine šifre prvenstveno pod vodstvom Alana Turinga.</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Iako gledajući iz današnje perspektive relativno jednostavna, Al-Kindijeva metoda analiziranja učestalosti slova je bila najznačajnija metoda razbijanja šifra sve do početka 20. stoljeća. William Frederick Friedman prvi je uveo pojam "//kriptoanaliza//". Kriptografiju su rado koristili i kriminalci, pogotovo za vrijeme prohibicije. Da bi mogli švercati alkohol koristili su vrlo komplicirane sustave šifriranja koji su u to vrijeme bili vrlo napredni. 1923. Arthur Scherbius proizvodi svoj najslavniji proizvod - široko poznatu //Enigmu//. Ona je prvotno trebala biti komercijalni proizvod, ali nije uspjela pa su je preuzeli njemački nacisti. Oni su je poboljšali pa je postala glavni uređaj za šifriranje u nacističkoj Njemačkoj. Prvi je njenu šifru slomio jedan poljski matematičar na osnovi ukradenog primjerka šifriranog teksta i dnevnih ključeva za tri mjeseca unaprijed. Kasnije su uspješno razbijene i druge Enigmine šifre prvenstveno pod vodstvom Alana Turinga.</font> |
| |
<font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Nakon Drugog Svjetskog rata razvoj računala daje novi zamah kriptografiji. Tako 1970. IBM razvija šifru pod nazivom Lucifer, koja kasnije, 1976. inspirira stvaranje DES (Data Encryption Standard) šifre. Široko je prihvaćena u svijetu zbog svoje dokazane otpornosti na napade. 1976. godina je bila značajna za razvoj kriptoanalize, jer se tada također pojavila ideja javnih klučeva. Godinu kasnije grupa početnika u kriptografiji Rivest, Shamir i Adleman stvorili su algoritam koji su po prvim slovima svojih prezimena nazvali RSA algoritam. To je bila praktična šifra sa javnim ključevima koja se mogla koristiti i za šifriranje poruka i za digitalni potpis, a bazirala se na težini faktoriziranja velikih brojeva. 1990. godine u Švicarskoj je objavljen "Prijedlog za novi standard za šifriranje blokova podataka" tj. prijedlog za International Data Encryption Algorithm (IDEA), koji bi trebao zamijeniti DES. IDEA koristi 128-bitni ključ i koristi operacije koje je lako implementirati na računalu. 1991. Phil Zimmermann objavljuje prvu verziju svog PGP-a (Pretty Good Privacy) programa za zaštitu e-mailova i podataka općenito. Zbog toga što je bio freeware komercijalni proizvodi iste vrste su redom propali, a PGP je postao svjetski standard.</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Nakon Drugog Svjetskog rata razvoj računala daje novi zamah kriptografiji. Tako 1970. IBM razvija šifru pod nazivom Lucifer, koja kasnije, 1976. inspirira stvaranje DES (Data Encryption Standard) šifre. Široko je prihvaćena u svijetu zbog svoje dokazane otpornosti na napade. 1976. godina je bila značajna za razvoj kriptoanalize, jer se tada također pojavila ideja javnih klučeva. Godinu kasnije grupa početnika u kriptografiji Rivest, Shamir i Adleman stvorili su algoritam koji su po prvim slovima svojih prezimena nazvali RSA algoritam. To je bila praktična šifra sa javnim ključevima koja se mogla koristiti i za šifriranje poruka i za digitalni potpis, a bazirala se na težini faktoriziranja velikih brojeva. 1990. godine u Švicarskoj je objavljen "Prijedlog za novi standard za šifriranje blokova podataka" tj. prijedlog za International Data Encryption Algorithm (IDEA), koji bi trebao zamijeniti DES. IDEA koristi 128-bitni ključ i koristi operacije koje je lako implementirati na računalu. 1991. Phil Zimmermann objavljuje prvu verziju svog PGP-a (Pretty Good Privacy) programa za zaštitu e-mailova i podataka općenito. Zbog toga što je bio freeware komercijalni proizvodi iste vrste su redom propali, a PGP je postao svjetski standard.</font> |
| |
<font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Jedan od medijski najpoznatijih slučajeva upotrebe kriptoanalize u popularnoj kulturi je neriješeni slučaj serijskog ubojice poznatijim kao "Zodiac". Takozvana "Zodiac 340" šifra je jedna od najpoznatijih neriješenih šifri ikada. Navodno ju je napisao "Zodiac", čiji identitet još uvijek nije poznat. "Zodiac" je tijekom 60-ih godina prošloga stoljeća na području San Francisca ubio sedam osoba, iako je u svojim mnogobrojnim pismima medijima izjavio da je ubio 37 osoba. Za vrijeme istrage, šifrirana poruka poznatija pod nazivom "Zodiac 408" poslana je trima lokalnim novinama, i uspješno je probijena. Nekoliko dana nakon toga novine su dobile novu poruku dugačku 340 znakova. Ova šifrirana poruka, poznatija kao "Zodiac 340", još uvijek nije razbijena. Mnogi kriptolozi pokušali su ju dešifrirati, ali nitko još uvijek nije uspio.</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Jedan od medijski najpoznatijih slučajeva upotrebe kriptoanalize u popularnoj kulturi je neriješeni slučaj serijskog ubojice poznatijim kao "Zodiac". Takozvana "Zodiac 340" šifra je jedna od najpoznatijih neriješenih šifri ikada. Navodno ju je napisao "Zodiac", čiji identitet još uvijek nije poznat. "Zodiac" je tijekom 60-ih godina prošloga stoljeća na području San Francisca ubio sedam osoba, iako je u svojim mnogobrojnim pismima medijima izjavio da je ubio 37 osoba. Za vrijeme istrage prva šifrirana poruka, poznatija pod nazivom "Zodiac 408", poslana je trima lokalnim novinama, i uspješno je probijena. Nekoliko dana nakon toga novine su dobile novu poruku dugačku 340 znakova. Ova šifrirana poruka, poznatija kao "Zodiac 340", još uvijek nije razbijena. Mnogi kriptolozi pokušali su ju dešifrirati, ali nitko još uvijek nije uspio.</font> |
| |
| |
==== Simetrični algoritmi ==== | ==== Simetrični algoritmi ==== |
| |
Simetrični algoritmi koriste se za napad na blokovske kriptografske sustave koji nekriptirani tekst dijele u blokove te koriste posebne funkcije za miješanje bloka teksta sa ključem. Na opisani način dobije se šifrirani tekst. Česta primjena simetričnih algoritama kriptoanalize su šifre nizova, gdje se nekriptirani tekst miješa s nizom bitova ključa preko određenih operacija (obično XOR funkcija). Najčešći oblici napada na ovakve sustave uključuju uporabu rječnika. U nastavku će biti spomenuti neki od najpoznatijih napada koji spadaju u navedenu skupinu. | Simetrični algoritmi koriste se za napad na blokovske kriptografske sustave koji nekriptirani tekst dijele u blokove te koriste posebne funkcije za miješanje bloka teksta sa ključem. Na opisani način dobije se šifrirani tekst. Česta primjena simetričnih algoritama kriptoanalize su šifre nizova, gdje se nekriptirani tekst miješa s nizom bitova ključa preko određenih operacija (obično XOR funkcija). Najčešći oblici napada na ovakve sustave uključuju uporabu rječnika. U nastavku će biti spomenuti neki od najpoznatijih napada koji spadaju u navedenu skupinu. |
| |
=== Brute force napad === | === Brute force napad === |
| |
Najprimitivniji, tj. najjednostavniji oblik napada je tzv. "brute force" napad, u kojem napadač pokušava razbiti šifru isprobavajući svaku moguću kombinaciju. Ovaj oblik napada je u teoriji uvijek uspješan, ali je najveći faktor isplativosti ove metode vrijeme potrebno da se isproba svaka kombinacija. Prije nekoliko desetaka godina, kada su računala bila primitivnija, ova metoda je možda i bila relevantna, ali to danas nije slučaj. Moderne šifre se štite protiv ovakvih napada korištenjem ključa koji je dovoljno dugačak da se zaštiti od bilo kakve mogućnosti isprobavanja svih mogućnosti. Na primjer, trenutno najduža veličina ključa pripada AES šifri, i iznosi 256 bita. To znači da postoji 2^256 mogućih AES ključeva, što niti jedno današnje računalo ne može pretražiti u normalnom vremenskom intervalu. | Najprimitivniji, tj. najjednostavniji oblik napada je tzv. "brute force" napad, u kojem napadač pokušava razbiti šifru isprobavajući svaku moguću kombinaciju. Ovaj oblik napada je u teoriji uvijek uspješan, ali je najveći faktor isplativosti ove metode vrijeme potrebno da se isproba svaka kombinacija. Prije nekoliko desetaka godina, kada su računala bila primitivnija, ova metoda je možda i bila relevantna, ali to danas nije slučaj. Moderne šifre se štite protiv ovakvih napada korištenjem ključa koji je dovoljno dugačak da se zaštiti od bilo kakve mogućnosti isprobavanja svih mogućnosti. Na primjer, trenutno najduža veličina ključa pripada AES šifri, i iznosi 256 bita. To znači da postoji 2^256 mogućih AES ključeva, što niti jedno današnje računalo ne može pretražiti u normalnom vremenskom intervalu. |
| |
=== Daviesov napad === | === Daviesov napad === |
| |
Daviesov napad predstavlja metodu statističke kriptoanalize, a koristi se kao napad na DES (eng. Data Encryption Standard) algoritam. Spada u skupinu napada s poznatim nekriptiranim tekstom, a temelji se na neuniformnoj distribuciji izlaznih vrijednosti parova susjednih S-tablica (osnovni element algoritma). Funkcionira na način da se skuplja mnogo poznatih parova šifriranih i nešifriranih znakova te računa empirijska distribucija pojedinog znaka. | Daviesov napad predstavlja metodu statističke kriptoanalize, a koristi se kao napad na DES (eng. Data Encryption Standard) algoritam. Spada u skupinu napada s poznatim nekriptiranim tekstom, a temelji se na neuniformnoj distribuciji izlaznih vrijednosti parova susjednih S-tablica (osnovni element algoritma). Funkcionira na način da se skuplja mnogo poznatih parova šifriranih i nešifriranih znakova te računa empirijska distribucija pojedinog znaka. |
| |
=== Meet-in-the-middle napad === | === Meet-in-the-middle napad === |
| |
Napad "meet-in-the-midle" spada u vrstu napada na poznati nešifrirani tekst (eng. Known-plaintext). Ovaj napad koristi prostornovremenske odnose (eng. space-time tradeoff). Cilj napada je pronaći posebnu vrijednost u svakom rasponu i domenama kompozicije dvaju funkcija. Napad funkcionira na način da napadač kriptira sve primjere nekriptiranog teksta svim mogućim ključevima te rezultat pohrani u memoriju. Drugi korak uključuje dekriptiranje šifriranih parova svakim mogućim ključem, a bilo koje slaganje rezultata može otkriti ključ. Ovaj napad razvili su Diffie i Hellman 1977. godine kao napad na blokovske šifre. | Napad "meet-in-the-midle" spada u vrstu napada na poznati nešifrirani tekst (eng. Known-plaintext). Ovaj napad koristi prostornovremenske odnose (eng. space-time tradeoff). Cilj napada je pronaći posebnu vrijednost u svakom rasponu i domenama kompozicije dvaju funkcija. Napad funkcionira na način da napadač kriptira sve primjere nekriptiranog teksta svim mogućim ključevima te rezultat pohrani u memoriju. Drugi korak uključuje dekriptiranje šifriranih parova svakim mogućim ključem, a bilo koje slaganje rezultata može otkriti ključ. Ovaj napad razvili su Diffie i Hellman 1977. godine kao napad na blokovske šifre. |
| |
=== Mod n kriptoanaliza === | === Mod n kriptoanaliza === |
| |
<font 12px/inherit;;inherit;;inherit>Mod n kriptoanaliza je napad na blokovske šifre i šifre nizova. Radi se o obliku kriptoanalize razdjeljivanjem koja iskorištava promjenjivost u tome kako šifra funkcionira preko ekvivalentnih klasa (skup svih elemenata u nekom skupu koji su ekvivalentni s danim elementom) modulo n. Metodu su predložili 1999. godine John Kelsey, Bruce Schneier i David Wagner, a korištena je za napad na šifre RC5P (inačicu šifre RC5) i M6 (blokovske šifre standarda FireWire).</font> | <font 12px/Arial,Helvetica,sans-serif;;inherit;;inherit>Mod n kriptoanaliza je napad na blokovske šifre i šifre nizova. Radi se o obliku kriptoanalize razdjeljivanjem koja iskorištava promjenjivost u tome kako šifra funkcionira preko ekvivalentnih klasa (skup svih elemenata u nekom skupu koji su ekvivalentni s danim elementom) modulo n. Metodu su predložili 1999. godine John Kelsey, Bruce Schneier i David Wagner, a korištena je za napad na šifre RC5P (inačicu šifre RC5) i M6 (blokovske šifre standarda FireWire).</font> |
| |
| |