A titkosÃtás történelme mondhatni egyidÅ‘s a civilizációval és a háborúkkal. A történelem folyamán számos olyan háború volt, ahol üzenetet kellett eljuttatni A pontból B pontba és értelemszerűen ezen információknak nem szabadott az ellenség kezébe kerülni.
Éppen ezért, már Caesar idején rájöttek arra, hogy ha az üzenetek titkosÃtva vannak valamilyen módszerrel, akkor jó esetben az ellenség nem tudja Å‘ket elolvasni, rosszabb esetben pedig csak némi késéssel fér hozzá a tartalomhoz.
A II. világháború jelentÅ‘s lökést adott az algoritmusok és a módszerek fejlesztésének, mivel akkortájt jelentek meg az elektronikus titkosÃtó berendezések, amelyek már akkora kulcstérrel rendelkeztek, hogy kézzel a kulcs visszafejtése jelentÅ‘s idÅ‘t vett igénybe.
A leghÃresebb II. világháborús titkosÃtó berendezés a német Enigma gép volt. Ez egy elektromechanikus gép volt. Az általa alkalmazott titkosÃtást nehezÃtette, hogy ugyanarra az üzenetre nem adta kétszer ugyanazt a választ.
Ez egy szimmetrikus titkosÃtás volt, vagyis ha a titkosÃtott üzenetet újra titkosÃtottuk a kulcs segÃtségével, akkor az eredeti üzenetet kaptuk vissza.
Eredetileg kereskedelmi célra szánták a gépet, Ãgy bÅ‘ven a háború kitörése elÅ‘tt (1932) ismert volt, hogy hogyan lehet visszafejteni az Ãgy kódolt üzeneteket, azonban a háborúban használt gépek kulcstere jelentÅ‘sen bÅ‘vült, illetve a titkosÃtáshoz használt kulcsokat naponta cserélték, Ãgy a szövetséges kódfejtÅ‘knek egy nap állt rendelkezésre a kulcs visszafejtéséhez. Ha ez még sikerült is nekik, akkor sem tudtak minden üzenetet dekódolni.
Éppen ezért egy Alan Turing nevű matematikus elkezdte megépÃteni, kifejleszteni a Turing bomba névre keresztelt gépet, ami automatizálta a kulcsok megkeresését. A gép létezését a lehetÅ‘ legnagyobb titokban tartották. A Turing bombák segÃtségével a háború utolsó éveiben átlagosan 24 másodperc alatt dekódoltak egy üzenetet, ami nagymértékben hozzájárult a szövetséges oldal gyÅ‘zelméhez.
A Turing bomba lényegében egy specializált Turing-gép volt. A Turing gép egy olyan gép modellje, ami pár alapművelettel dolgozik. Ha egy algoritmus megvalósÃtható ezekkel a műveletekkel, akkor matematikailag bizonyÃtott, hogy épÃthetÅ‘ a megoldására egy gép. Lényegében ez adja a számÃtástechnika matematikai alapját, sÅ‘t egy programozási nyelvet igazán nem is tekintenek programozási nyelvnek, amÃg az nem "Turing teljes".
LeegyszerűsÃtve egy nyelv akkor számÃt Turing teljesnek, ha bármilyen Turing-gép szimulálására használható. Ennek a bizonyÃtása nem triviális, éppen ezért a legegyszerűbb bizonyÃtás, ha a programozási nyelvünkben elkészÃtünk egy fordÃtót, vagy feldolgozót egy, már bizonyÃtottan Turing teljes programozási nyelvhez.
Na de térjünk vissza az enigma rendszerhez. A tényt, hogy a II. világháború során gépiesÃtették a feltörését és a módszer nem megbÃzható, egészen az 1970-es évek elejéig titkos volt. Érdekesség, hogy az 1969-ben bemutatott Unix operációs rendszer is az Enigmán alapuló algoritmust használta fájlok titkosÃtására.
A modern kriptográfia létrejötte az 1970-es évek elejére tehetÅ‘, mivel ebben az idÅ‘ben jelentek meg a cégek, bankok is a titkosÃtási módszerek felhasználóinak.
Az elsÅ‘ titkosÃtási algoritmus, ami szabvány szintre emelkedett, 1976-ban jelent meg. Létrejöttét az indokolta, hogy a különbözÅ‘ gyártók különbözÅ‘ megoldásokat kÃnáltak, de egyik sem volt átlátható a végfelhasználóinak.
Éppen ezért a DES megalkotásakor az volt az cél, hogy egy olyan algoritmust alkossanak, ami esetén a biztonság csupán a kulcs biztonságától függjön, ne pedig az algoritmus elrejtett működésétől. A DES a feladatát egész jól végezte, mivel csak a 2000-es évek elején került leváltásra.
Szintén az 1970-es évekre tehetÅ‘ az aszimmetrikus titkosÃtás felfedézése is. Az asszimetrikus titkosÃtási algoritmusok két különbözÅ‘, de valamilyen módon összefüggÅ‘ kulcsot használnak. Egy külön kulcsot a titkosÃtásra és egy külön kulcsot a visszafejtésre.