Kriptográfia
Hálózati biztonság Területei: Titkosság (secrecy vagy confidentiality): az üzenet ne juthasson illetéktelen kezekbe Hitelesség (authentication): a partner kétséget kizáró azonosítása Letagadhatatlanság (nonrepudation): bizonyítható legyen, hogy ki küldte az üzenetet (aláírás) Sértetlenség (integrity): a továbbítás során az üzenet tartalma ne változhasson Mely hálózati rétegekben történik a megvalósítás, és milyen eszközökkel? Fizikai réteg (vezetékek argon gázzal töltött csőbe helyezése) Adatkapcsolati réteg (keretek titkosítása) Hálózati réteg (tűzfalak) Szállítási réteg (végpontól-végpontig terjedő összeköttetések titkosítása) Alkalmazási réteg (felhasználók azonosítása, megbízható protokollok)
Kriptográfia Cryptography: a görög „titkos írás” szavakból ered. Kód (code): szavak helyettesítése másik szóval vagy szimbólummal. Pl. a navajo indián nyelven alapuló kódolás a II. vh.-ban. Rejtjel (chipher): bitről-bitre, vagy karakterről-karakterre történő kódolás, a későbbiekben titkosítás alatt ezt értjük. Alapfogalmak: Nyílt szöveg (plaintext): a kódolandó szöveg Kulcs (key): a kódoló algoritmus által használt paraméter Titkosított szöveg (chiphertext): a kódolás során előálló (továbbítandó) szöveg Támadó (intruder): a kulcsot nem ismerő, de a titkosított szöveget birtokló illetéktelen felhasználó Kriptoanalízis (cryptoanalysis): a titkos szöveg megfejtésének tudománya
Kriptoanalízis Dk(Ek(P)) = P K – a kulcs Dk – a dekódoló függvény Ek – a kódoló függvény P – a nyílt szöveg Kerckhoff elve: Minden algoritmusnak nyilvánosnak kell lennie, csak a kulcsok titkosak! Minél hosszabb a kulcs annál nagyobb a munkatényező (work factor), amivel a kódfejtőnek számolnia kell Csak titkosított szöveg alapú kódfejtés (chiphertext only): a támadó csak a titkosított szövegnek van birtokában Ismert nyílt szöveg alapú kódfejtés (known plaintext): néhány tikosított szöveg megfejtésével is rendelkezik a támadó Választott nyílt szöveg alapú kódfejtés (chosen plaintext): a támadó egy tetszőlegesen kiválasztott nyílt szöveg titkosított párját is elő tudja állítani.
Helyettesítő kódok A titkosítási módszerek két nagy csoportba oszthatók: Helyettesítő kódok (substituion cipher): a betűket más betűkkel, vagy szimbólumokkal cseréljük fel. Keverő kódok (transposition chipher): a betűk sorrendjét összekevrjük az üzeneten belül Caser-tikosító (Ceaser chipher): a egyik legrégibb helyettesítő kódolás A betűket az ABC-ben elfoglalt helyük szerint valahány pozicióval eltoljuk Pl. legyen n=3, akkor A D B E C F Z C A visszafejtése elég egyszerű (a nyelv statisztikai törvényszerűségeinek figyelembevételével)
Keverő kódok A nyílt szöveg: „Miért legyek én tisztességes? Kiterítenek úgyis! Miért ne legyek tisztességes? Kiterítenek úgyis!” A kulcs: „JózsefAttila” A titkosított szöveg: „eer!eeeEéeetztiJtztigéeCltesygnDeéeéiKgHMnsknteskgnrsiyIit?úeer!rsiyestBgsíMkskFystit?úGéiKglsíA” J Ó Z S E F A T I L 6 8 12 9 3 4 1 10 11 5 7 2 M i é r t l e g y k n s z ? K í ú ! B C D G H
Egyszer használatos bitminta One-time pad: a kulcs ismerete nélkül biztosan megfejthetetlen! Lényege: A nyílt szövegből egy bitsorozatot készítenek (pl. az ASCII tábla alapján) Egy olyan hosszú kulcsot választanak, amely legalább annyi bitből áll, mint a kódolandó szöveg A nyilt szöveg és kulcs azonos helyiértékű bitjein XOR műveletet hajtanak végre – az így létrejövő bitsorozat lesz a tikosított szöveg Amennyiben mindig más kulcsot használunk, a kódolt szöveg visszafejthetetlen (hiszen bármilyen szöveg visszafejthető belőle, attól függően, hogy milyen kulcsot választunk. A kulcs hossza, és a kulcs-csere követelménye miatt azonban a gyakorlatban nehezen alkalmazható.
Megjegyzések Kvantumkriptográfia: kvantumfizikai elveken alapuló kódolási eljárás. A fény terjedési tulajdonságat használja fel. Lehetséges egyszer használatos bitminták használata anélkül, hogy ezt a bitsorozatot (titkosítatlanul) előzetesen át kéne vinni a csatornán. (Sőt, az esetleges támadási kísérletről feltétlenül tudomást szereznek a kommunikáló felek). Részletesebben: Andrew S. Tanenbaum: Számítógép hálózatok, Panem Kiadó Kft, 2004., 782-786. old A kriptográfia első alapelve: Az üzeneteknek valamilyen redundanciát kell tartalmaznia A kriptográfia második alapelve: Kell egy módszer az ismétléses támadások meghiúsítására.