Kriptografija je korištenje kodova i šifri za zaštitu tajni, započela je prije više tisuća godina. Do posljednjih desetljeća, to je bila priča o tome što bi se moglo nazvati klasičnom kriptografija – to jest, metodama šifriranje koje koriste olovku i papir, ili možda jednostavne mehaničke pomoći. Početkom 20. stoljeća, izum složenih mehaničkih i elektromehaničkih strojeva, kao što je Enigma rotor , omogućio je sofisticiranima i učinkovitija sredstva za šifriranje; a naknadno uvođenje elektronike i računalstva omogućilo je razrađenim shemama još veće složenosti, od kojih je većina potpuno neprikladna za olovku i papir.
Kriptografske tehnike
Kriptografija je usko povezana s disciplinama kriptologije i kripto analize . To uključuje tehnike kao što su mikro točke, spajanje riječi s slikama i drugi načini skrivanja informacija u pohrani ili tranzitu. Međutim, u današnjem svijetu računala, kriptografija se najčešće povezuje sa šifriranje otvorenog teksta (običan tekst, koji se ponekad naziva i čistim tekstom) u šifrirani tekst (proces koji se zove šifriranje ), a zatim ponovno (poznat kao dešifriranje). Pojedinci koji prakticiraju ovo polje poznati su kao kriptografi.
Moderna kriptografija se bavi sljedećim četirima ciljevima:
- Povjerljivost : informaciju ne može razumjeti tko je bio nenamjeran
- Integritet: informacije se ne mogu mijenjati u pohrani ili tranzitu između pošiljatelja i primatelja bez da se izmijeni
- Ne-odbacivanje : tvorac / pošiljatelj informacija ne može u kasnijoj fazi uskratiti svoje namjere u stvaranju ili prijenosu informacija
- Provjera autentičnosti : pošiljatelj i primatelj mogu međusobno potvrditi identitet i izvor / odredište informacija
Postupci i protokoli koji zadovoljavaju neke ili sve gore navedene kriterije poznati su kao kripto sustavi. Za kripto sustave se često misli da se odnose samo na matematičke postupke i računalne programe; međutim, oni također uključuju regulaciju ljudskog ponašanja, kao što je odabir lozinki koje je teško pogoditi, odjavu neiskorištenih sustava i ne raspravljanje osjetljivih postupaka s vanjskim korisnicima.