Kriptografija
Kriptografija je znanstvena disciplina o metodama za slanje poruka (informacija) u obliku koji će biti razumljiv samo onima koji ih znaju pročitati, odnosno samo onima kojima su namijenjene.[1][2] Riječ dolazi od grčkog pridjeva kriptós (κρυπτός) za skriven i glagola gráfo (γράφω) za pisati. Kriptografija je, uz kriptoanalizu koja razvija postupke za odgonetanje poruka bez poznavanja ključa, grana kriptologije.[1]
Kriptografija omogućava dvjema osobama, pošiljatelju i primatelju, očuvanje tajnosti poruka čak i kada se one prenose nesigurnim vezama koje su dostupne trećim osobama.[3] Kriptografija se stoljećima primjenjivala za osiguravanje tajnosti pretežito vojne i diplomatske komunikacije. Ispočetka su se postupci kriptiranja svodili na razmještanje (dislokaciju) znakova teksta ili na njihovu zamjenu (supstituciju). Danas je, u doba razmjene poruka globalnim komunikacijskim mrežama, kriptografija u širokoj uporabi. Ona se bavi podatcima u digitalnom obliku, a postupci kriptiranja i dekriptiranja matematičke su naravi i provode se uz pomoć računala. Suvremena je kriptologija tako informatička disciplina koja se oslanja na teoriju brojeva i druge matematičke teorije.
Algoritmi koji iz jasnoga teksta izračunavaju kriptirani tekst i obrnuto obično primjenjuju parametarske matematičke funkcije.[3] Parametar funkcije određuje konkretan način izračunavanja i čini ključ kriptiranja. U skladu s Kerckhoffsovim načelom, funkcije kriptiranja i dekriptiranja, koje zajedno čine kriptosustav, najčešće su poznate, a tajnost poruka jamči njihov ključ.
Povijest
urediKroz 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. Prve korištene metode nisu bili složeni matematički algoritmi, nego se počelo korištenjem alternativnih jezika koji su bili poznati samo malom broju ljudi. 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.
Nikad nije točno utvrđen početak kriptografije, ali se smatra da je počela više od 2000 godina pr. Kr. jer iz tog vremena potječu prvi pronađeni tragovi šifriranja. Točnije, oko 1900. godine pr. Kr. u Egiptu nastao je natpis koji se danas smatra prvim dokumentiranim primjerom pisane kriptografije. U 6. stoljeću pr. Kr. u zapisu dijela Biblije, Knjige o Jeremiji, korištena je jednostavna šifra koja izvrće abecedu naopako. Šifra je poznata pod imenom ATBASH, a bila je jedna od hebrejskih šifri koje su u to vrijeme korištene. 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 slabijom čak i od ATBASH šifre, ali je u to vrijeme bila dobra jer je mali broj ljudi znao čitati.
U srednjem vijeku kriptografija je često korištena u službi Crkve, a jedan od primjera toga je nomenclator – kombinacija malog koda i supstitucijske abecede kojeg je na zahtjev pape Clementa VII stvorio Gabrieli di Lavinde. Ova šifra ostala je u upotrebi sljedećih 450 godina, iako su u međuvremenu stvorene i sigurnije šifre. Razlog tome je najvjerojatnije bio u njenoj jednostavnosti. 1518. Johannes Trithemius je napisao prvu tiskanu knjigu o kriptografiji. Oko 1790. Thomas Jefferson je uz pomoć matematičara Dr. Roberta Pattersona izumio šifrarnik s kotačem. On je kasnije ponovno izumljen u nekoliko različitih oblika i korišten u II. svjetskom ratu od strane američke ratne mornarice. 1861. u Patentnom uredu u SAD-u prijavljen je prvi izum vezan uz kriptografiju. Do 1980. prijavljeno je 1769 takvih izuma.
20. stoljeće bilo je vrlo burno: 2 svjetska rata i mnogo raznih sukoba u kojima je kriptografija odigrala značajnu ulogu. William Frederick Friedman (kasnije poznat kao otac američke kriptoanalize) prvi je uveo pojam "kriptoanaliza". Kriptografiju su rado koristili i kriminalci, a jedan vrlo slikovit primjer je iz razdoblja 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.
30-ih godina 20. stoljeća nastaje američki «suparnik» Enigme, tehnički naprednija SIGABA.
Nakon II. 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. se također pojavila ideja kriptiranja javnim ključem. 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 s javnim ključevima koja se mogla koristiti i za šifriranje poruka i za digitalni potpis, a bazirala se na težini faktoriziranja velikih brojeva. 1984. – 1985. u softveru za čitanje novosti na USENET-u upotrebljena je rot13 šifra (rotiranje slova za 13, slično "caesar" šifri) da bi se spriječio pristup djece za njih neprikladnim sadržajima. Ovo je prvi poznati primjer uspješnog korištenja šifre s javnim ključem. 1990. je u Švicarskoj 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. U prvo vrijeme koristio je RSA algoritam koji se dugo vremena smatrao dosta sigurnim. Računala su sve brža i brža, a razvoj svega vezanog uz njih sve je teže pratiti. Budućnost kriptografije je danas povezana s budućnošću računala.
Metode šifriranja
urediPovijesno najduže korištena metoda šifriranja je metoda olovke i papira. Primjer ove metode je supstitucija. Također su uz ovu metodu vezane kodne knjige koje su služile za standardno šifriranje jer su u njima bile fraze i riječi i tako se olakšalo šifriranje. Primjer kodne knjige je ranije spomenuti nomenclator. Još jedna davno korištena metoda je metoda transpozicije. Ideja te metode je u pomicanju slova naprijed ili nazad za određen broj mjesta. Primjeri su caesar šifra i rot13. Općenito danas postoje dvije vrste metoda šifriranja. To su metoda simetričnog šifriranja i metoda asimetričnog šifriranja. Metoda simetričnog šifriranja je donedavno bila jedina poznata metoda. Metoda koristi jedinstveni ključ. Prednost je svakako njena jednostavnost i brzina, a od mana treba spomenuti problem sigurnosti, pogotovo u slučaju krađe ključa. Od 1976. i pojave javnog ključa možemo govoriti i o metodi asimetričnog šifriranja. Razlika je u tome što ova metoda koristi dva odvojena ključa – javni i tajni. Javni se koristi za šifriranje, a tajni za dešifriranje. Iz imena javni ključ jasno je da isti ne mora biti tajan. Prednost ove metode je svakako veća kvaliteta šifriranja koja omogućuje veću sigurnost i, što je često iznimno važno, tajnost. Mana je definitivno količina vremena koja je potrebna za svaki postupak dešifriranja.
Još jedna važna metoda šifriranja je jednosmjerno šifriranje. Njegova glavna osobina je ireverzibilnost tj. ne može se dobiti originalni sadržaj. Danas se koristi za potvrde, (digitalne) potpise, softver, ... Za još sofisticiranije metode šifriranja koristi se tzv. jako šifriranje. Ta kompleksnija metoda je u nekim državama zabranjena.
Moderna kriptografija
urediU modernoj kriptografiji još se uvijek koristi šifriranje simetričnim ključem. Primjer za to je IBM-ova DES šifra koju i danas koristi Unix, kao i njen prethodnik šifra Lucifer. Najčešći problem ove metode je i danas način prijenosa ključa. Postoje i varijante metode kod kojih su ključevi različiti, ali se mogu jednostavno jedan iz drugoga izračinati. DES je javno dostupna metoda šifriranja iz 1976. godine. Iako se danas smatra nesigurnom, često se nalazi u upotrebi (ATM, šifriranje e-mailova, kod pristupanja sustava s udaljenosti itd.)
Oba spadaju u "blok" metode i jedan od razloga popularnosti je činjenica da su oba proglašena službenim metodama šifriranja vlade SAD. Postoje brojne varijacije tih metoda pa tako i trostruki DES koji je bitno sigurniji.
Također postoje metode šifiranja koja su prilagođene šifriranju protoka podataka, kao npr. RC4. Kako nizovi podataka prolaze kroz program, mijenja se dio koji šifira podatke, a način promjene se kontrolira ključem, a ponekad i samim podacima koji se šifriraju.
Jedna od čestih upotreba šifriranja u današnje doba je i kontrola pristupa (ustanovama, računalima, podatcima,...) ali i preračunavanja čitavih sadržaja u jedinstven broj hash s izuzetno malom vjerojatnosti dvostrukih rješenja za različite sadržaje. Sličan način ali s drugom namjenom je MAC, odnosno šifriranje pristupne poruke, kada tajna, ključna lozinka daje šifrirani tekst koji se uspoređuje sa spremljenim za kontrolu pristupa, odnosno vjerodostojnosti.
Javni ključevi
urediGlavi problem u simetričnom šifriranju je rukovođenje tajnim šiframa, ključevima koji su korišteni za šifriranje i dešifriranje poruke. Zbog toga se nakon objavljivanja rada koji su napisali Whitfield Diffie i Martin Hellman 1976. godine pojavilo šifriranje s javnim ključevima.[4] Metoda je toliko promijenila rad s ključevima da ju David Kahn opisuje kao "najveći, revolucionarni napredak u kriptografiji od renesanse".
Stvaranje javnog i privatnog ključa je povezano matematičkim postupkom, nakon čega se dobiveni tekst javnog ključa može slobodno podijeliti, ali se njime skriven tekst može otključati samo privatnim ključem. Godine 1978. Ronald Rivest, Adi Shamir i Len Adleman objavili su RSA algoritam. Napokon je 1997. godine obznanjeno kako je zapravo James H. Ellis u GCHQ, britanskoj obavještajnoj službi zapravo ranih 1970-ih izmislio asimetrično šifriranje javnim ključem te da su i Diffie-Hellman i RSA algoritam zapravo već izmislili Malcolm J. Williamson, odnosno Clifford Cocks.
Često korišteni primjeri su RSA algoritam, digitalni potpisi, VPN, SSL/TLS i program PGP, koji se također temelje na ovakvim metodama. Današnje metode bazirana su na problemima gdje se brzo i jednostavno pomoću računala tekst šifrira ali je rješenje "teško", u metematičnom smislu. Dok se RSA na problemu faktoriziranja prirodnih brojeva, DSA i Diffie-Hellman metode se oslanjanju na problem diskretnih logaritama.
Problemi moderne kriptografije su svakako sigurnost, ali i zakonska ograničenja u mnogim zemljama. Pitanje sigurnosti je goruće pitanje zbog sve veće pojave programa za razbijanje lozinki kao što su: Crack i John the Ripper. Drugi veliki problem su zakonska ograničenja.
U SAD-u se kriptografija smatra oružjem. Do 1999. u Francuskoj je bila znatno ograničena upotreba kriptografije. Od ostalih država sa strogim zakonskim ograničenjima upotrebe kriptografije prednjači Kina ispred Bjelorusije, Mongolije, Rusije, Pakistana, Tunisa i drugih.
Vidi još
urediIzvori
uredi- ↑ a b Andrej Dujella. Kriptografija. Inačica izvorne stranice arhivirana 11. ožujka 2016. Pristupljeno 19. studenoga 2020.
- ↑ John Savard. A Cryptographic Compendium. Inačica izvorne stranice arhivirana 9. studenoga 2020. Pristupljeno 19. studenoga 2020.
- ↑ a b Hrvatska enciklopedija: kriptografija. enciklopedija.hr. Pristupljeno 15. siječnja 2021.
- ↑ Dujella, Andrej. Kriptografija: Kriptosustavi s javnim ključem. Inačica izvorne stranice arhivirana 11. ožujka 2016. Pristupljeno 19. studenoga 2020.