EITC/IS/ACC napredna klasična kriptografija je evropski program IT sertifikacije koji unapređuje nivo stručnosti u klasičnoj kriptografiji, prvenstveno fokusirajući se na kriptografiju sa javnim ključem, sa uvodom u praktične šifre javnog ključa, kao i digitalne potpise, infrastrukturu javnih ključeva i sigurnosni certifikati koji se široko koriste na Internetu.
Nastavni plan i program EITC/IS/ACC napredne klasične kriptografije fokusira se na (asimetričnu) kriptografiju s javnim ključem, počevši od uvoda u Diffie-Hellmanovu razmjenu ključeva i problema diskretnog dnevnika (uključujući njegovu generalizaciju), a zatim se nastavlja na šifriranje sa problemom diskretnog dnevnika, koji pokriva Elgamalovu šemu enkripcije, eliptičke krivulje i kriptografiju eliptične krivulje (ECC), digitalne potpise (uključujući sigurnosne usluge i Elgamal digitalni potpis), hash funkcije (uključujući funkciju SHA-1), kodove za autentifikaciju poruka (uključujući MAC i HMAC), uspostavljanje ključa (uključujući Symmetric Key Establishment SKE i Kerberos) kako bi se završilo sa razmatranjem klase napada čovjek u sredini, zajedno sa kriptografskim certifikatima i infrastrukturom javnog ključa (PKI), unutar sljedeće strukture , koji obuhvata sveobuhvatan video didaktički sadržaj kao referencu za ovu EITC certifikat.
Kriptografija se odnosi na načine sigurne komunikacije u prisustvu protivnika. Kriptografija, u širem smislu, je proces kreiranja i analize protokola koji sprječavaju treće strane ili širu javnost da pristupe privatnim (šifriranim) porukama. Moderna klasična kriptografija zasniva se na nekoliko glavnih karakteristika informacione sigurnosti kao što su povjerljivost podataka, integritet podataka, autentifikacija i neporicanje. Za razliku od kvantne kriptografije, koja se zasniva na radikalno različitim pravilima kvantne fizike koja karakterišu prirodu, klasična kriptografija se odnosi na kriptografiju zasnovanu na zakonima klasične fizike. Oblasti matematike, računarstva, elektrotehnike, komunikologije i fizike susreću se u klasičnoj kriptografiji. Elektronska trgovina, platne kartice zasnovane na čipovima, digitalne valute, kompjuterske lozinke i vojne komunikacije su sve primjeri kriptografskih aplikacija.
Prije današnje ere, kriptografija je bila gotovo sinonim za šifriranje, pretvarajući informacije iz čitljivih u nerazumljive besmislice. Kako bi spriječio napadače da dobiju pristup šifriranoj poruci, pošiljatelj dijeli samo proces dekodiranja sa predviđenim primaocima. U kriptografskoj literaturi se često koriste imena Alice (“A”) za pošiljaoca, Bob (“B”) za namjeravanog primaoca i Eva (“prisluškivač”) za protivnika.
Metode kriptografije postale su sve složenije, a njene primjene sve raznovrsnije, od razvoja rotorskih šifarskih mašina u Prvom svjetskom ratu i uvođenja kompjutera u Drugom svjetskom ratu.
Moderna kriptografija se snažno oslanja na matematičku teoriju i praksu kompjuterskih nauka; kriptografske metode su izgrađene na osnovu pretpostavki o tvrdoći računanja, što ih čini teškim za svakog protivnika da ih razbije u praksi. Dok je provala u dobro osmišljen sistem teoretski moguća, u praksi je to nemoguće. Takve šeme se nazivaju „sigurne za računanje“ ako su adekvatno izgrađene; ipak, teorijska otkrića (npr. poboljšanja u metodama faktorizacije cijelih brojeva) i brža računarska tehnologija zahtijevaju stalnu ponovnu evaluaciju i, ako je potrebno, prilagođavanje ovih dizajna. Postoje informacijski teoretski sigurni sistemi, kao što je jednokratna podloga, za koje se može dokazati da su neraskidivi čak i uz beskonačnu računarsku snagu, ali ih je znatno teže primijeniti u praksi nego najbolje teoretski lomljive, ali računarski sigurne sheme.
U informatičkom dobu, napredak kriptografske tehnologije proizveo je niz pravnih izazova. Mnoge nacije klasifikuju kriptografiju kao oružje, ograničavajući ili zabranjujući njenu upotrebu i izvoz zbog njenog potencijala za špijunažu i pobunu. Istražitelji mogu natjerati da se predaju ključevi za šifriranje za dokumente koji se odnose na istragu na nekim mjestima gdje je kriptografija zakonita. U slučaju digitalnih medija, kriptografija također igra ključnu ulogu u upravljanju digitalnim pravima i sukobima o kršenju autorskih prava.
Termin „kriptograf” (za razliku od „kriptograma”) prvi put je upotrebljen u devetnaestom veku, u kratkoj priči Edgara Alana Poa „Zlatna buba”.
Do nedavno, kriptografija se gotovo samo odnosila na "šifriranje", što je čin pretvaranja običnih podataka (poznatih kao otvoreni tekst) u nečitljiv format (koji se naziva šifrirani tekst). Dešifriranje je suprotno od šifriranja, tj. prelazak od nerazumljivog šifriranog teksta do otvorenog teksta. Šifra (ili šifra) je skup tehnika koje izvode šifriranje i dešifriranje obrnutim redoslijedom. Algoritam i, u svakom slučaju, “ključ” su zaduženi za detaljno izvršavanje šifre. Ključ je tajna (po mogućnosti poznata samo komunikantima) koja se koristi za dešifrovanje šifrovanog teksta. Obično je niz znakova (idealno kratak kako bi ga korisnik mogao zapamtiti). “Kriptosistem” je uređena kolekcija elemenata konačnog potencijalnog otvorenog teksta, šifriranih tekstova, ključeva i procedura šifriranja i dešifriranja koji odgovaraju svakom ključu u formalnim matematičkim terminima. Ključevi su ključni i formalno i praktično, jer se šifre sa fiksnim ključevima mogu lako razbiti koristeći samo informacije šifre, što ih čini beskorisnim (ili čak kontraproduktivnim) za većinu namjena.
Istorijski gledano, šifre su se često koristile bez ikakvih dodatnih procedura kao što su autentifikacija ili provjere integriteta za šifriranje ili dešifriranje. Kriptosistemi su podijeljeni u dvije kategorije: simetrični i asimetrični. Isti ključ (tajni ključ) koristi se za šifrovanje i dešifrovanje poruke u simetričnim sistemima, koji su jedini bili poznati do 1970-ih. Budući da simetrični sistemi koriste kraće dužine ključa, manipulacija podacima u simetričnim sistemima je brža nego u asimetričnim sistemima. Asimetrični sistemi šifriraju komunikaciju "javnim ključem" i dešifriraju je koristeći sličan "privatni ključ". Upotreba asimetričnih sistema poboljšava sigurnost komunikacije, zbog poteškoća u određivanju odnosa između dva ključa. RSA (Rivest-Shamir-Adleman) i ECC su dva primjera asimetričnih sistema (Elliptic Curve Cryptography). Široko korišteni AES (Advanced Encryption Standard), koji je zamijenio raniji DES, primjer je visokokvalitetnog simetričnog algoritma (Standard šifriranja podataka). Različite tehnike zapetljavanja dječjeg jezika, kao što je svinjski latinski ili neki drugi stihovi, i zapravo sve kriptografske sheme, ma koliko ozbiljno mislile, iz bilo kojeg izvora prije uvođenja jednokratnog blokčića početkom dvadesetog stoljeća, primjeri su loše kvalitete simetrični algoritmi.
Izraz "šifra" se često kolokvijalno koristi za označavanje bilo koje tehnike šifriranja ili prikrivanja poruke. Međutim, u kriptografiji, kod se odnosi na zamjenu kodne riječi za jedinicu otvorenog teksta (tj. smislenu riječ ili frazu) (na primjer, “wallaby” zamjenjuje “napad u zoru”). Nasuprot tome, šifrirani tekst se stvara modifikacijom ili zamjenom elementa ispod tog nivoa (slovo, slog ili par slova, na primjer) kako bi se formirao šifrirani tekst.
Kriptoanaliza je proučavanje načina za dešifriranje šifriranih podataka bez pristupa ključu potrebnom za to; drugim riječima, to je studija o tome kako "razbiti" šeme šifriranja ili njihove implementacije.
Na engleskom, neki ljudi naizmjenično koriste izraze "kriptografija" i "kriptologija", dok drugi (uključujući američku vojnu praksu općenito) koriste "kriptografiju" za upotrebu i praksu kriptografskih tehnika, a "kriptologija" za kombinirane proučavanje kriptografije i kriptoanalize. Engleski je prilagodljiviji od brojnih drugih jezika, gdje se "kriptologija" (kako praktikuju kriptolozi) uvijek koristi u drugom smislu. Steganografija je ponekad uključena u kriptologiju, prema RFC 2828.
Kriptolingvistika je proučavanje jezičkih svojstava koja imaju određenu važnost u kriptografiji ili kriptologiji (na primjer, statistika učestalosti, kombinacije slova, univerzalni obrasci i tako dalje).
Kriptografija i kriptoanaliza imaju dugu istoriju.
Historija kriptografije je glavni članak.
Prije moderne ere, kriptografija se prvenstveno bavila povjerljivošću poruka (tj. šifriranjem) - pretvaranjem poruka iz razumljivog u nerazumljiv oblik i opet, čineći ih nečitljivim od strane presretača ili prisluškivača bez tajnog znanja (odnosno ključa potrebnog za dešifriranje te poruke). Šifriranje je osmišljeno tako da razgovore špijuna, vojnih vođa i diplomata zadrži privatnim. Posljednjih decenija, disciplina je narasla i uključuje tehnike kao što su provjera integriteta poruke, autentifikacija identiteta pošiljaoca/primaoca, digitalni potpisi, interaktivni dokazi i sigurno računanje, između ostalog.
Dva najčešća klasična tipa šifre su transpozicione šifre, koje sistematski zamenjuju slova ili grupe slova drugim slovima ili grupama slova (npr. 'zdravo svet' postaje 'ehlol owrdl' u trivijalno jednostavnoj šemi preuređivanja), i supstitucijske šifre, koji sistematski zamjenjuju slova ili grupe slova drugim slovima ili grupama slova (npr. 'leti odjednom' postaje 'gmz bu Jednostavne verzije bilo kojeg drugog nikada nisu pružale mnogo privatnosti od lukavih protivnika. Cezarova šifra je bila rana šifra zamjene u kojoj svako slovo u otvorenom tekstu zamijenjeno je slovom na određenom broju pozicija niz abecedu. Prema Svetonije, Julije Cezar ga je koristio sa smjenom od tri čovjeka da komunicira sa svojim generalima. Primjer je rana hebrejska šifra, Atbash. Najstarija poznata upotreba kriptografije je uklesani šifrirani tekst na kamenu u Egiptu (oko 1900. godine p.n.e.), međutim moguće je da je to učinjeno radi uživanja pismenih gledalaca, a ne i prikrivanje informacija.
Izvještava se da su kripte bile poznate klasičnim Grcima (npr. šifra transpozicije scytale za koju se tvrdi da je koristila spartanska vojska). Steganografija (praksa prikrivanja čak i prisustva komunikacije kako bi se očuvala privatnost) također je izmišljena u antičko doba. Fraza istetovirana na obrijanoj glavi roba i skrivena ispod izrasle kose, prema Herodotu. Upotreba nevidljivog mastila, mikrotačaka i digitalnih vodenih žigova za prikrivanje informacija su aktuelniji primeri steganografije.
Kautiliyam i Mulavediya su dvije vrste šifri koje se spominju u indijskoj 2000 godina staroj Kamasutri iz Vtsyyane. Zamjene šifriranih slova u Kautilijamu su zasnovane na fonetskim odnosima, kao što su samoglasnici koji postaju suglasnici. Šifra abecede u Mulavediji sastoji se od podudarnih slova i upotrebe recipročnih slova.
Prema muslimanskom učenjaku Ibn al-Nadimu, Sasanidska Perzija je imala dva tajna pisma: h-dabrya (doslovno "Kraljeva skripta"), koja se koristila za službenu prepisku, i rz-saharya, koja se koristila za razmjenu tajnih poruka s drugim zemlje.
U svojoj knjizi The Codebreakers, David Kahn piše da je savremena kriptologija počela od Arapa, koji su bili prvi koji su pažljivo dokumentirali kriptoanalitičke procedure. Knjigu kriptografskih poruka napisao je Al-Khalil (717–786), a sadrži najranije korištenje permutacija i kombinacija za popis svih zamislivih arapskih riječi sa i bez samoglasnika.
Šifrovani tekstovi generisani klasičnom šifrom (kao i neke moderne šifre) otkrivaju statističke informacije o otvorenom tekstu, koje se mogu koristiti za razbijanje šifre. Gotovo sve takve šifre mogao je razbiti inteligentni napadač nakon otkrića frekventne analize, vjerovatno od strane arapskog matematičara i polimatičara Al-Kindija (također poznatog kao Alkindus) u 9. stoljeću. Klasične šifre su i danas popularne, iako uglavnom kao zagonetke (vidi kriptogram). Risalah fi Istikhraj al-Mu'amma (Rukopis za dešifriranje kriptografskih poruka) napisao je Al-Kindi i dokumentirao je prvu poznatu upotrebu tehnika kriptoanalize frekvencijske analize.
Neki pristupi šifriranja proširene istorije, kao što je homofonska šifra, koji imaju tendenciju da izravnaju distribuciju frekvencija, možda neće imati koristi od frekvencija slova jezika. Frekvencije grupe jezičkih slova (ili n-grama) mogu predstavljati napad na te šifre.
Sve do otkrića polialfabetske šifre, prije svega od strane Leona Battiste Albertija oko 1467. godine, gotovo sve šifre su bile dostupne kriptoanalizi koristeći pristup frekventnoj analizi, iako postoje dokazi da je Al-Kindi već bio poznat. Alberti je došao na ideju da koristi odvojene šifre (ili zamjenske alfabete) za različite dijelove komunikacije (možda za svako sljedeće slovo otvorenog teksta na granici). On je također stvorio ono što se smatra prvim automatskim uređajem za šifriranje, točak koji je izvršio dio njegovog dizajna. Šifriranje u Vigenère šifri, polialfabetskoj šifri, kontrolira ključna riječ koja upravlja zamjenom slova na osnovu toga koje se slovo ključne riječi koristi. Charles Babbage je sredinom devetnaestog vijeka pokazao da je Vigenèreova šifra bila osjetljiva na Kasiskijevu analizu, ali je Friedrich Kasiski objavio svoje nalaze deset godina kasnije.
Uprkos činjenici da je analiza frekvencija moćna i široka tehnika protiv mnogih šifri, enkripcija je ostala efikasna u praksi jer mnogi potencijalni kriptoanalitičari nisu svjesni te tehnike. Za razbijanje poruke bez upotrebe frekvencijske analize bilo je potrebno poznavanje upotrijebljene šifre i možda uključenog ključa, što bi špijunažu, podmićivanje, provalu, prebjeg i druge kriptoanalitički neinformirane taktike učinilo privlačnijim. Tajna algoritma šifre je konačno priznata u 19. veku kao ni razumna ni izvodljiva garancija sigurnosti poruke; u stvari, svaka odgovarajuća kriptografska šema (uključujući šifre) treba da ostane sigurna čak i ako protivnik u potpunosti razumije sam algoritam šifriranja. Sigurnost ključa bi trebala biti dovoljna da dobra šifra zadrži povjerljivost u slučaju napada. Auguste Kerckhoffs je prvi put iznio ovaj osnovni princip 1883. godine, a poznat je kao Kerckhoffsov princip; alternativno, i otvorenije rečeno, Claude Shannon, izumitelj teorije informacija i osnova teorijske kriptografije, ponovio je to kao Šenonov Maksim – 'neprijatelj poznaje sistem.'
Da bi se pomoglo sa šiframa, korišteni su mnogi fizički uređaji i pomoć. Scytale antičke Grčke, štap koji su Spartanci navodno koristili kao alat za šifriranje transpozicije, možda je bio jedan od prvih. Druga pomagala su osmišljena u srednjem vijeku, kao što je rešetka za šifriranje, koja se također koristila za steganografiju. Sa razvojem polialfabetskih šifri, postala su dostupna sofisticiranija pomagala kao što je Albertijev disk za šifrovanje, shema tabula recta Johannesa Trithemiusa i šifra kotača Thomasa Jeffersona (nije javno poznata, a koju je Bazeries samostalno izmislio oko 1900.). Mnogi mehanički sistemi za šifrovanje/dešifrovanje su osmišljeni i patentirani početkom dvadesetog veka, uključujući rotorske mašine, koje su slavno koristile nemačka vlada i vojska od kasnih 1920-ih do Drugog svetskog rata. Nakon Prvog svjetskog rata, šifre implementirane od strane kvalitetnijih primjeraka ovih dizajna mašina rezultirale su značajnim porastom kriptoanalitičkih poteškoća.
Kriptografija se prvenstveno bavila lingvističkim i leksikografskim obrascima prije početka dvadesetog stoljeća. Od tada, fokus je evoluirao, a kriptografija sada uključuje aspekte teorije informacija, računske složenosti, statistike, kombinatorike, apstraktne algebre, teorije brojeva i konačne matematike općenito. Kriptografija je vrsta inženjeringa, ali je jedinstvena po tome što se bavi aktivnim, inteligentnim i neprijateljskim otporom, dok drugi tipovi inženjeringa (kao što je civilni ili hemijski inženjering) moraju samo da se bave prirodnim silama koje su neutralne. Veza između poteškoća u kriptografiji i kvantne fizike se također istražuje.
Razvoj digitalnih kompjutera i elektronike pomogao je kriptoanalizi tako što je omogućio stvaranje znatno sofisticiranijih šifri. Nadalje, za razliku od tradicionalnih šifri, koje su isključivo šifrirale tekstove pisanog jezika, kompjuteri su dozvoljavali šifriranje bilo koje vrste podataka koji bi mogli biti predstavljeni u bilo kojem binarnom formatu; ovo je bilo novo i ključno. I u dizajnu šifre i u kriptoanalizi, kompjuteri su tako istisnuli kriptografiju jezika. Za razliku od klasičnih i mehaničkih metoda, koje prvenstveno direktno manipulišu tradicionalnim znakovima (tj. slovima i brojevima), mnoge kompjuterske šifre rade na binarnim sekvencama bitova (povremeno u grupama ili blokovima). Računari su, s druge strane, pomogli kriptoanalizi, koja je djelimično kompenzirala povećanu složenost šifre. Uprkos tome, dobre moderne šifre su ostale ispred kriptoanalize; često je slučaj da je upotreba dobre šifre vrlo efikasna (tj. brza i zahtijeva malo resursa, kao što su memorija ili kapacitet procesora), dok njeno razbijanje zahtijeva mnogo veći napor i znatno veći od onog koji je potreban za bilo koji klasična šifra, koja efektivno onemogućava kriptoanalizu.
Moderna kriptografija ima svoj debi.
Pokazalo se da je kriptoanaliza novih mehaničkih uređaja izazovna i dugotrajna. Tokom Drugog svjetskog rata, kriptoanalitičke aktivnosti u Bletchley Parku u Ujedinjenom Kraljevstvu podstakle su pronalazak efikasnijih metoda za obavljanje zadataka koji se ponavljaju. Kolos, prvi potpuno elektronski, digitalni, programabilni računar na svetu, razvijen je da pomogne u dekodiranju šifri koje je kreirala mašina nemačke vojske Lorenz SZ40/42.
Kriptografija je relativno nova oblast otvorenog akademskog istraživanja, koja je započela tek sredinom 1970-ih. Zaposleni u IBM-u su osmislili algoritam koji je postao federalni (tj. američki) standard šifriranja podataka; Whitfield Diffie i Martin Hellman objavili su svoj ključni algoritam sporazuma; i kolumna Martina Gardnera Scientific American objavila je RSA algoritam. Kriptografija je od tada postala popularna kao tehnika za komunikacije, računarske mreže i računarsku bezbednost uopšte.
Postoje duboke veze sa apstraktnom matematikom budući da nekoliko modernih pristupa kriptografiji može zadržati svoje ključeve u tajnosti samo ako su određeni matematički problemi nerešivi, kao što je faktorizacija cijelih brojeva ili pitanja diskretnog logaritma. Postoji samo nekoliko kriptosistema za koje se pokazalo da su 100% sigurni. Claude Shannon je dokazao da je jednokratni blok jedan od njih. Postoji nekoliko ključnih algoritama za koje se pokazalo da su sigurni pod određenim uslovima. Nemogućnost faktoriranja ekstremno velikih cijelih brojeva, na primjer, je osnova za vjerovanje da su RSA i drugi sistemi sigurni, ali je dokaz neraskidivosti nedostižan jer osnovni matematički problem ostaje neriješen. U praksi, oni se široko koriste, a većina kompetentnih posmatrača smatra da su neraskidivi u praksi. Postoje sistemi slični RSA, kao što je onaj koji je razvio Michael O. Rabin, koji su dokazivo sigurni ako je faktoriranje n = pq nemoguće; međutim, oni su praktično beskorisni. Problem diskretnog logaritma je osnova za vjerovanje da su neki drugi kriptosistemi sigurni, a postoje slični, manje praktični sistemi koji su dokazivo sigurni u smislu rješivosti ili nerješivosti problema diskretnog logaritma.
Dizajneri kriptografskih algoritama i sistema moraju uzeti u obzir moguće buduće napretke kada rade na svojim idejama, pored toga što su upoznati sa kriptografskom istorijom. Na primjer, kako se moć kompjuterske obrade poboljšala, širina napada grubom silom je porasla, a time su porasle i potrebne dužine ključeva. Neki dizajneri kriptografskih sistema koji istražuju post-kvantnu kriptografiju već razmatraju potencijalne posledice kvantnog računarstva; najavljena neminovnost skromnih implementacija ovih mašina može učiniti potrebu za preventivnim oprezom više nego samo spekulativnom.
Klasična kriptografija u modernom vremenu
Simetrična (ili privatni ključ) kriptografija je vrsta enkripcije u kojoj pošiljatelj i primatelj koriste isti ključ (ili, rjeđe, u kojem su njihovi ključevi različiti, ali povezani na lako izračunljiv način i čuvaju se u tajnosti, privatno ). Do juna 1976. ovo je bila jedina vrsta šifriranja koja je bila poznata javnosti.
Blok šifre i stream šifre se koriste za implementaciju simetričnih šifri ključa. Blok šifra šifrira unos u blokovima otvorenog teksta, a ne u pojedinačnim znakovima, kao što to radi šifra toka.
Američka vlada je odredila Standard za šifrovanje podataka (DES) i Napredni standard šifrovanja (AES) kao standarde kriptografije (iako je DES-ov sertifikat na kraju povučen kada je AES uspostavljen). DES (naročito njegova još uvijek odobrena i znatno sigurnija trostruka DES varijanta) ostaje popularan uprkos tome što je odbačen kao službeni standard; koristi se u širokom spektru aplikacija, od ATM enkripcije do privatnosti e-pošte i sigurnog udaljenog pristupa. Izmišljeno je i objavljeno mnoštvo različitih blok šifri, s različitim stepenom uspjeha. Mnogi, uključujući i neke koje su dizajnirali kvalifikovani praktičari, kao što je FEAL, su u velikoj meri pokvareni.
Stream šifre, za razliku od blok šifri, generišu beskonačno dugačak tok ključnog materijala koji je povezan sa otvorenim tekstom bit po bit ili znak po znak, slično kao jednokratni blok. Izlazni tok stream šifre se generira iz skrivenog unutrašnjeg stanja koje se mijenja kako šifra funkcionira. Materijal tajnog ključa se koristi za prvo postavljanje tog unutrašnjeg stanja. Šifra toka RC4 se uveliko koristi. Kreiranjem blokova toka ključeva (umjesto generatora pseudoslučajnih brojeva) i korištenjem XOR operacije za svaki bit otvorenog teksta sa svakim bitom toka ključeva, blok šifre se mogu koristiti kao šifre toka.
Kodovi za provjeru autentičnosti poruke (MAC) su slični kriptografskim hash funkcijama, s izuzetkom što se tajni ključ može koristiti za provjeru vrijednosti hash nakon prijema; ova dodatna zamršenost sprječava napad na gole algoritme digestije, pa se smatra vrijednom truda. Treća vrsta kriptografske tehnike su kriptografske hash funkcije. Oni uzimaju poruku bilo koje dužine kao ulaz i izlaze mali heš fiksne dužine koji se može koristiti u digitalnim potpisima, na primjer. Napadač ne može locirati dvije poruke koje proizvode isti hash koristeći dobre hash algoritme. MD4 je široko korištena, ali sada neispravna hash funkcija; MD5, poboljšani oblik MD4, također se široko koristi, ali je u praksi pokvaren. Secure Hash algoritam serije heš algoritama sličnih MD5 razvila je Američka agencija za nacionalnu sigurnost: američka agencija za standarde odlučila je da je „razborito“ sa sigurnosnog stanovišta razviti novi standard kako bi se „značajno poboljšala robusnost NIST-ovog ukupnog hash algoritma komplet alata.” SHA-1 se široko koristi i sigurniji je od MD5, ali kriptoanalitičari su identifikovali napade na njega; porodica SHA-2 poboljšava SHA-1, ali je ranjiva na sukobe od 2011.; i SHA-2 porodica poboljšava SHA-1, ali je podložna sukobima. Kao rezultat toga, do 2012. godine trebalo je da se održi takmičenje u dizajnu heš funkcija za odabir novog američkog nacionalnog standarda, koji će biti poznat kao SHA-3. Konkurs je završen 2. oktobra 2012. godine, kada je Nacionalni institut za standarde i tehnologiju (NIST) najavio Keccak kao novi SHA-3 hash algoritam. Kriptografske hash funkcije, za razliku od invertibilnih blok i stream šifri, daju heširani izlaz koji se ne može koristiti za oporavak originalnih ulaznih podataka. Kriptografske hash funkcije se koriste za provjeru autentičnosti podataka dobijenih iz nepouzdanog izvora ili za dodavanje dodatnog stepena zaštite.
Iako poruka ili skup poruka može imati drugačiji ključ od drugih, kriptosistemi sa simetričnim ključem koriste isti ključ za šifriranje i dešifriranje. Upravljanje ključem potrebno za sigurno korištenje simetričnih šifri je veliki nedostatak. Svaki pojedinačni par strana u komunikaciji bi, u idealnom slučaju, trebao dijeliti drugačiji ključ, kao i eventualno drugačiji šifrirani tekst za svaki poslani šifrirani tekst. Broj potrebnih ključeva raste direktno proporcionalno broju učesnika u mreži, što zahtijeva komplikovane tehnike upravljanja ključevima kako bi svi ostali dosljedni i tajni.
Whitfield Diffie i Martin Hellman izmislili su koncept kriptografije s javnim ključem (također poznat kao asimetrični ključ) u ključnom radu iz 1976. godine, u kojem se koriste dva različita, ali matematički povezana ključa – javni ključ i privatni ključ. Iako su neraskidivo povezani, sistem javnog ključa je izgrađen na takav način da je izračunavanje jednog ključa ('privatnog ključa') od drugog ('javnog ključa') računski neizvodljivo. Umjesto toga, oba ključa se proizvode u tajnosti, kao povezani par. Kriptografija s javnim ključem, prema istoričaru Davidu Kahnu, "najrevolucionarnija je nova ideja u ovoj oblasti otkako je polialfabetska zamjena nastala u renesansi".
Javni ključ u kriptosistemu s javnim ključem može se slobodno prenositi, ali povezani privatni ključ mora biti skriven. Javni ključ se koristi za šifriranje, dok se privatni ili tajni ključ koristi za dešifriranje u šemi šifriranja s javnim ključem. Iako Diffie i Hellman nisu mogli stvoriti takav sistem, oni su pokazali da je kriptografija s javnim ključem zamisliva pružanjem Diffie-Hellman protokola za razmjenu ključeva, rješenje koje omogućava dvije osobe da se tajno dogovore oko zajedničkog ključa za šifriranje. Najrasprostranjeniji format za certifikate javnog ključa definiran je standardom X.509.
Publikacija Difija i Helmana izazvala je široko akademsko interesovanje za razvoj praktičnog sistema za šifrovanje sa javnim ključem. Ronald Rivest, Adi Shamir i Len Adleman na kraju su pobijedili na takmičenju 1978. godine, a njihov odgovor je postao poznat kao RSA algoritam.
Pored toga što su najraniji javno poznati primjeri visokokvalitetnih algoritama s javnim ključem, Diffie–Hellman i RSA algoritmi su među najčešće korištenim. Cramer-Shoup kriptosistem, ElGamal enkripcija i brojni pristupi eliptičke krivulje su primjeri algoritama asimetričnog ključa.
Kriptografi GCHQ-a predvidjeli su nekoliko naučnih napredaka, prema dokumentu koji je 1997. godine izdao Vladin štab za komunikacije (GCHQ), britanska obavještajna organizacija. Prema legendi, kriptografiju asimetričnog ključa izmislio je James H. Ellis oko 1970. Clifford Cocks je 1973. izumio rješenje koje je bilo izuzetno slično RSA u smislu dizajna. Malcolm J. Williamson je zaslužan za izum razmjene ključeva Diffie-Hellman 1974. godine.
Sistemi digitalnog potpisa su također implementirani korištenjem kriptografije javnog ključa. Digitalni potpis je sličan tradicionalnom potpisu po tome što je korisniku jednostavan za kreiranje, ali ga je teško krivotvoriti drugima. Digitalni potpisi također mogu biti trajno povezani sa sadržajem komunikacije koja se potpisuje; to znači da se ne mogu 'premeštati' iz jednog dokumenta u drugi a da se ne otkriju. Postoje dva algoritma u šemama digitalnog potpisa: jedan za potpisivanje, koji koristi tajni ključ za obradu poruke (ili hash poruke, ili oboje), i jedan za verifikaciju, koji koristi odgovarajući javni ključ s porukom za provjeru valjanosti autentičnost potpisa. Dvije od najčešće korištenih metoda digitalnog potpisa su RSA i DSA. Infrastruktura javnih ključeva i mnogi sigurnosni sistemi mreže (npr. SSL/TLS, mnogi VPN-ovi) oslanjaju se na digitalne potpise da bi funkcionirali.
Računska složenost “teških” problema, poput onih koji proizlaze iz teorije brojeva, često se koristi za razvoj metoda javnog ključa. Problem cjelobrojne faktorizacije vezan je za tvrdoću RSA, dok je problem diskretnog logaritma vezan za Diffie–Hellman i DSA. Sigurnost kriptografije eliptičke krive temelji se na teoretskim problemima broja eliptičke krive. Većina algoritama s javnim ključem uključuje operacije poput modularnog množenja i eksponencijacije, koje su znatno skuplje u računskom smislu od tehnika koje se koriste u većini blok šifri, posebno s normalnim veličinama ključa, zbog težine osnovnih problema. Kao rezultat toga, kriptosistemi sa javnim ključem su često hibridni kriptosistemi, u kojima je poruka šifrovana brzim, visokokvalitetnim algoritmom simetričnog ključa, dok se relevantni simetrični ključ šalje sa porukom, ali je šifrovan algoritmom javnog ključa. Hibridne šeme potpisa, u kojima se izračunava kriptografska heš funkcija i samo rezultirajući heš je digitalno potpisan, također se često koriste.
Hash funkcije u kriptografiji
Kriptografske hash funkcije su kriptografski algoritmi koji proizvode i koriste specifične ključeve za šifriranje podataka za simetrično ili asimetrično šifriranje, i mogu se smatrati ključevima. Oni uzimaju poruku bilo koje dužine kao ulaz i izlaze mali heš fiksne dužine koji se može koristiti u digitalnim potpisima, na primjer. Napadač ne može locirati dvije poruke koje proizvode isti hash koristeći dobre hash algoritme. MD4 je široko korištena, ali sada neispravna hash funkcija; MD5, poboljšani oblik MD4, također se široko koristi, ali je u praksi pokvaren. Secure Hash algoritam serije heš algoritama sličnih MD5 razvila je Američka agencija za nacionalnu sigurnost: američka agencija za standarde odlučila je da je „razborito“ sa sigurnosnog stanovišta razviti novi standard kako bi se „značajno poboljšala robusnost NIST-ovog ukupnog hash algoritma komplet alata.” SHA-1 se široko koristi i sigurniji je od MD5, ali kriptoanalitičari su identifikovali napade na njega; porodica SHA-2 poboljšava SHA-1, ali je ranjiva na sukobe od 2011.; i SHA-2 porodica poboljšava SHA-1, ali je podložna sukobima. Kao rezultat toga, do 2012. godine trebalo je da se održi takmičenje u dizajnu heš funkcija za odabir novog američkog nacionalnog standarda, koji će biti poznat kao SHA-3. Takmičenje je završeno 2. oktobra 2012. godine, kada je Nacionalni institut za standarde i tehnologiju (NIST) najavio Keccak kao novi SHA-3 hash algoritam. Kriptografske hash funkcije, za razliku od invertibilnih blok i stream šifri, daju heširani izlaz koji se ne može koristiti za oporavak originalnih ulaznih podataka. Kriptografske hash funkcije se koriste za provjeru autentičnosti podataka dobijenih iz nepouzdanog izvora ili za dodavanje dodatnog stepena zaštite.
Kriptografski primitivi i kriptosistemi
Veliki dio teorijskog rada kriptografije fokusira se na kriptografske primitive—algoritme koji imaju osnovna kriptografska svojstva—i kako se oni odnose na druge kriptografske izazove. Ovi osnovni primitivi se zatim koriste za kreiranje složenijih kriptografskih alata. Ovi primitivi pružaju osnovne kvalitete koji se koriste za stvaranje složenijih alata poznatih kao kriptosistemi ili kriptografski protokoli koji osiguravaju jedno ili više sigurnosnih svojstava visokog nivoa. S druge strane, granica između kriptografskih primitiva i kriptosistema je proizvoljna; RSA algoritam se, na primjer, ponekad smatra kriptosistemom, a ponekad primitivnim. Pseudoslučajne funkcije, jednosmjerne funkcije i drugi kriptografski primitivi su uobičajeni primjeri.
Kriptografski sistem, ili kriptosistem, nastaje kombinovanjem jednog ili više kriptografskih primitiva kako bi se stvorio komplikovaniji algoritam. Kriptosistemi (npr. El-Gamal enkripcija) imaju za cilj da obezbede specifičnu funkcionalnost (npr. šifrovanje javnog ključa) istovremeno obezbeđujući određene bezbednosne kvalitete (npr. slučajni model proročišta izabran-plaintext napada CPA bezbednost). Da bi podržali sigurnosne kvalitete sistema, kriptosistemi koriste svojstva osnovnih kriptografskih primitiva. Sofisticirani kriptosistem se može generisati iz kombinacije brojnih rudimentarnijih kriptosistema, jer je razlika između primitivnih i kriptosistema donekle proizvoljna. U mnogim okolnostima, struktura kriptosistema uključuje komunikaciju naprijed-nazad između dvije ili više strana u prostoru (npr. između pošiljaoca i primatelja sigurne poruke) ili kroz vrijeme (npr. između pošiljaoca i primaoca sigurne poruke) (npr. kriptografski zaštićeni rezervni podaci).
Da biste se detaljno upoznali sa nastavnim planom i programom sertifikacije, možete proširiti i analizirati tabelu ispod.
EITC/IS/ACC Nastavni plan i program certifikacije napredne klasične kriptografije referencira didaktičke materijale otvorenog pristupa u video obliku. Proces učenja je podijeljen u strukturu korak po korak (programi -> lekcije -> teme) koja pokriva relevantne dijelove kurikuluma. Takođe su obezbeđene neograničene konsultacije sa stručnjacima iz domena.
Za detalje o proceduri certifikacije provjerite Kako funkcionira.
Glavne napomene sa predavanja
Razumijevanje kriptografije Christofa Paara i Jana Pelzla, Online tečaj u obliku PDF slajdova
https://www.crypto-textbook.com/slides.php
Razumijevanje kriptografije Christofa Paara i Jana Pelzla, Online tečaj u obliku videa
https://www.crypto-textbook.com/movies.php
Glavna referenca knjige klasične kriptografije
Razumijevanje kriptografije Christofa Paara i Jana Pelzla
https://www.crypto-textbook.com/index.php
Dodatna referenca knjige primijenjene klasične kriptografije
Priručnik za primijenjenu kriptografiju A. Menezesa, P. van Oorschota i S. Vanstonea:
https://cacr.uwaterloo.ca/hac/
https://www.amazon.com/exec/obidos/ISBN=0849385237/7181-7381933-595174
https://notendur.hi.is/pgg/Handbook%20of%20Applied%20Cryptography.pdf
Preuzmite kompletne pripremne materijale za samoučenje van mreže za program napredne klasične kriptografije EITC/IS/ACC u PDF datoteci
EITC/IS/ACC pripremni materijali – standardna verzija
EITC/IS/ACC pripremni materijali – proširena verzija sa pitanjima za pregled