buttyán levente prezentációja
DESCRIPTION
Buttyán Levente előadása a 2011. május 25-i Kódok MeetOFF-on hangozott el.TRANSCRIPT
Modern kriptográfia
Buttyán LeventeCrySyS Adat- és Rendszerbiztonság Laboratórium
Budapesti Műszaki és Gazdaságtudományi EgyetemHíradástechnikai tanszék
www.crysys.hu
2Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Modell
Küldő
ADAT
Támadó
lehallgatás/olvasásvisszajátszásmódosításhamisítás
KÓDOLÁS
kódoló kulcs
Fogadó
DEKÓDOLÁS
dekódoló kulcs
térbeli vagy időbeli távolság
ADAT
ADAT
kódoltADAT
rejtjelezésellenőrző összeg
titkosság
KÓDOLÁS ADAT METAADAT
anonimitásintegritás-védelem
hitelesítés
dekódoló kulcs = kódoló kulcs
dekódoló kulcs kódoló kulcs
hagyományos kriptográfia (szimmetrikus kulcsú)
nyílvános kulcsú kriptográfia (aszimmetrikus kulcsú)
pl: e-mail, fájl, IP csomag, ...
3Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Szimmetrikus kulcsú rejtjelezés
…
ADATKÓDOLT
ADAT
blokkrejtjelezés (pl. CBC módban)
…
jól ismert példa: AES
E
kulcs
+
4Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Szimmetrikus kulcsú rejtjelezés
kulcsfolyamos rejtjelezés
Gkulcs
kulcsfolyam
ADAT
KÓDOLT ADAT
0 1
0 1
1 0
0
1
jól ismert példa: RC4
5Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Nyílvános kulcsú rejtjelezés
az adatblokkokat egy véges csoport (algebrai struktúra) elemeiként értelmezzük (pl. egy nagy egész szám maradékosztályai)
a kódolás a véges csoportban végzett, a kódoló kulcs által meghatározott művelet az adatot reprezentáló csoportelemen (pl. modulo hatványozás)
a dekódolás a kódolt adaton végzett művelet, amit a dekódoló kulcs határoz meg
az algerai struktúra és a műveletek olyanok, hogy a következő feladatok nehezek (nem ismert gyors polinom idejű megoldás):– a kódolt adatból és a kódoló kulcsból kiszámolni az adatot
– a kódoló kulcsból kiszámolni a dekódoló kulcsot
a kódoló kulcs nyílvánosságra hozható !
jól ismert példa: RSA
6Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Rejtjelező algoritmusok biztonsága
támadó modell:– a támadó képességeit és a rendelkezésére álló információkat rögzíti– a biztonságra vonatkozó állítások csak valamely támadó modellben
értelmezhetőek !
size matters! – legalábbis a kulcsé
bizonyítható biztonság– redukciós bizonyítás:
• feltesszük, hogy algoritmusunk hatékonyan feltörhető• megmutatjuk, hogy a feltöréshez használt bármely algoritmus segítségével
hatékonyan megoldható valamely nehéznek vélt matematikai probléma (pl. faktorizáció, diszkrét logaritmus számítás)
• tehát algoritmusunkat legalább olyan nehéz feltörni, mint a nehéznek vélt problémát megoldani
– léteznek bizonyíthatóan biztonságos kriptográfiai algoritmusok, de a többségük nem elég hatékony (gyors)
a gyakorlatban használt algoritmusok többségének biztonsága nem (vagy csak részben) bizonyítható
7Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Tökéletes rejtjelezés
véletlen kulcsfolyam
ADAT
KÓDOLT ADAT
one-time pad
miért tökéletes a one-time pad?– tegyük fel, hogy az i. kódolt bit 0; ekkor a támadó számára:
• az i. adat bit lehet 0, ha az i. kulcsfolyam bit 0• az i. adat bit lehet 1, ha az i. kulcsfolyam bit 1 • mindkét eset egyformán valószínű
minden lehetséges adat egyformán valószínű, így a támadó nem tud dönteni
a tökéletes rejtjelezés szükséges feltétele, hogy a kulcs bitekben mért hossza legalább akkora legyen mint a tömörített adat bitekben mért hossza (C. Shannon, 1948) nem praktikus
8Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Üzenethitelesítés és integritásvédelem
Küldő
ADAT ELLENŐRZŐÖSSZEG
kulcs
Fogadó
ADAT ELLENŐRZŐÖSSZEG
kulcs
=?
9Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Digitális aláírás
Küldő
ADAT
Fogadó
ADAT
=?
KÓDOLÁS
generáló kulcs
LENYOMAT
DEKÓDOLÁS
ellenőrző kulcs
LENYOMAT
10Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Gyakorlati alkalmazások
biztonságos kommunikáció nyílt csatornán / hálózaton– WWW (https / TLS)– WiFi (WEP, WPA, WPA2)– GSM/3G– Bluetooth
partnerhitelesítés– intelligens chip-kártyák (pl. banki alkalmazások)– gépjárművek kulcsa
szoftverhitelesítés– digitálisan aláírt kód (driver, applet, active X)
várhatóan a jövőben– elektronikus kereskedelem (on-line tranzakciók, számlázás)– elektronikus szavazás– ...
11Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Távoli pénzfeldobás
Alice
Bob
(1) Bob feldob egy pénzérmét, s megjegyzi az
eredményt
(2) Alice tippel
(3) Bob felfedi a dobás eredményét
Alice nyer, ha eltalálta a dobás eredményét, egyébként Bob nyer
Nem bízunk Bobban!!!
12Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
Távoli pénzfeldobás biztonságosan
Alice
Bob
(1) Bob feldob egy pénzérmét, a dobás eredménye X (0 vagy 1)
(2) Bob generál egy R nagy véletlenszámot, és kiszámolja H = h(X|R) -t
(3) H
(4) Alice tippje X’
(5) X’
(6) X, R
(7) Alice ellenőrzi, hogy h(X|R) =? H, ha nem, akkor a játék érvénytelen
Ha Bob csalni akar, akkor találnia kell egy Q véletlenszámot, melyre h(Xc | Q) = HHa h ütközésellenálló, akkor ez nehéz feladat!
Ha h egyirányú, akkor Alice nemtudja X értékét kitalálni H-ból!
13Laboratory of Cryptography and System SecurityCrySyS Adat- és Rendszerbiztonság Laboratóriumwww.crysys.hu
SPAM
TypoTeX kiadó, 2004