Modern szimmetrikus kulcsú rejtjelezők kriptoanalízise

Hasonló dokumentumok
Data Security: Secret key

Kriptográfia I. Kriptorendszerek

Best of Criptography Slides

Data Security: Access Control

Data Security: Public key

Kriptográfiai alapfogalmak

Webalkalmazás-biztonság. Kriptográfiai alapok

Data Security: Access Control

RSA algoritmus. P(M) = M e mod n. S(C) = C d mod n. A helyesség igazoláshoz szükséges számelméleti háttér. a φ(n) = 1 mod n, a (a 1,a 2,...

Data Security: Protocols Integrity

Sapientia Egyetem, Műszaki és Humántudományok Tanszék.

Digitális aláírás és kriptográfiai hash függvények. 1. az aláírás generálása (az X üzenetet küldő A fél végzi): A B: X, D A (X)

Adja meg, hogy ebben az esetben mely handshake üzenetek kerülnek átvitelre, és vázlatosan adja meg azok tartalmát! (8p)

KÓDOLÁSTECHNIKA PZH december 18.

Sapientia Egyetem, Műszaki és Humántudományok Tanszék.

Kriptográfiai protokollok

Adat és Információvédelmi Mesteriskola 30 MB. Dr. Beinschróth József SAJÁTOS LOGIKAI VÉDELEM: A KRIPTOGRÁFIA ALKALMAZÁSA


Data Security. 1. Concepts 2. Secret key methods 3. Public key methods 4. Protocols I. 5. Protocols II.

Kvantumkriptográfia II.

Adatbiztonság 1. KisZH (2010/11 tavaszi félév)

Adatbiztonság PPZH május 20.

Data Security: Concepts

Sapientia Egyetem, Matematika-Informatika Tanszék.

H=0 H=1. Legyen m pozitív egészre {a 1, a 2,, a m } különböző üzenetek halmaza. Ha az a i üzenetet k i -szer fordul elő az adásban,

Adatszerkezetek II. 10. előadás

SSL elemei. Az SSL illeszkedése az internet protokoll-architektúrájába

Adatbiztonság a gazdaságinformatikában ZH december 7. Név: Neptun kód:

Sapientia Egyetem, Műszaki és Humántudományok Tanszék.

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje

Információs társadalom alapismeretek

Dr. Beinschróth József Kriptográfiai alkalmazások, rejtjelezések, digitális aláírás

AES kriptográfiai algoritmus

Sapientia Egyetem, Matematika-Informatika Tanszék.

Prímtesztelés, Nyilvános kulcsú titkosítás

IP alapú távközlés. Virtuális magánhálózatok (VPN)

megtalálásának hihetetlen nehéz voltán alapszik. Az eljárás matematikai alapja a kis FERMAT-tétel egy következménye:

Informatika Biztonság Alapjai

Felvételi tematika INFORMATIKA

Diszkrét matematika I.

Emlékeztet! matematikából

Hibajavító kódolás (előadásvázlat, november 14.) Maróti Miklós

Híradástechikai jelfeldolgozás

Elektronikus aláírás. Miért van szükség elektronikus aláírásra? A nyiltkulcsú titkosítás. Az elektronikus aláírás m ködése. Hitelesít szervezetek.

Modern titkosírások és a matematika

Hírek kriptográfiai algoritmusok biztonságáról

Hibadetektáló és javító kódolások

Sapientia Egyetem, Matematika-Informatika Tanszék.

13. Egy x és egy y hosszúságú sorozat konvolúciójának hossza a. x-y-1 b. x-y c. x+y d. x+y+1 e. egyik sem

Számítógépes Hálózatok. 5. gyakorlat

Waldhauser Tamás december 1.

Számítógépes hálózatok

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Vezetéknélküli technológia

Data Security. 1. Concepts 2. Secret key methods 3. Public key methods 4. Protocols I. 5. Protocols II.

Visszalépéses kiválogatás

Kulcsgondozás. Kulcskiosztás

Véletlenszám generátorok és tesztelésük HORVÁTH BÁLINT

Sapientia Egyetem, Matematika-Informatika Tanszék.


Titkosírás. Biztos, hogy titkos? Szabó István előadása. Az életben sok helyen használunk titkosítást (mobil, internet, jelszavak...

Titkosítási rendszerek CCA-biztonsága

Hatékonyság 1. előadás

Rendezések. A rendezési probléma: Bemenet: Kimenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat

Készítette: Fuszenecker Róbert Konzulens: Dr. Tuzson Tibor, docens

Számítógépes döntéstámogatás. Genetikus algoritmusok

Függvények növekedési korlátainak jellemzése

STATISZTIKA. A maradék független a kezelés és blokk hatástól. Maradékok leíró statisztikája. 4. A modell érvényességének ellenőrzése

2018, Diszkre t matematika. 10. elo ada s

Data Security: Protocols Digital Signature (Tk.7.fejezet)

Informatikai tehetséggondozás:

Összetett feladatok megoldása

RSA algoritmus. Smidla József. Rendszer- és Számítástudományi Tanszék Pannon Egyetem

Algoritmuselmélet 7. előadás

Az elektronikus aláírás és gyakorlati alkalmazása

Kriptográfia Nyolcadik előadás Blokktitkosítók működési módjai, folyamtitkosítók

Hálózati biztonság ( ) Kriptográfia ( )

4. Előadás Titkosítás, RSA algoritmus

ADATBIZTONSÁG: TITKOSÍTÁS, HITELESÍTÉS, DIGITÁLIS ALÁÍRÁS

Diszkrét matematika 2.C szakirány

Ahol a kvantum mechanika és az Internet találkozik

A szimplex tábla. p. 1

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Az Informatika Elméleti Alapjai

Shannon és Huffman kód konstrukció tetszőleges. véges test felett

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Véletlenszám generátorok és tesztelésük. Tossenberger Tamás

Egyesíthető prioritási sor

2. gyakorlat Mintavételezés, kvantálás

Algoritmusok és adatszerkezetek I. 1. előadás

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

ELEMI PROGRAMOZÁSI TÉTELEK

Dr. Oniga István DIGITÁLIS TECHNIKA 9

Data Security: Protocols Digital Signature (Tk.7.fejezet)

Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)

Adatszerkezetek 2. Dr. Iványi Péter

VEZETÉK NÉLKÜLI HÁLÓZATOK TITKOSÍTÁSA

1. Történeti titkosítási módszererek.

Véges állapotú gépek (FSM) tervezése

Átírás:

Modern szimmetrikus kulcsú rejtjelezők kriptoanalízise - kimerítő kulcskeresés: határa ma 64 bit számítási teljesítmény költsége feleződik 18 havonta 25 éven belül 80 bit - differenciális kriptoanalízis: iteratív blokk rejtjelezők ellen választott nyílt szövegű támadás - lineáris kriptoanalízis: ismert nyílt-rejtett párok alapú támadás - gyenge kulcsok kihasználása - algebrai támadás: csoportstruktúra DES Challenge III: sikeres kulcskeresés 22 óra 15 perc Electronic Frontier Foundation s `Deep Crack + distributed.net. Identifier: DES-Challenge-III Cipher: DES Start: January 18, 1999 9:00 AM PST Prize: $10,000 IV: da 4b be f1 6b 6e 98 3d Plaintext: See you in Rome (second AES Conference, March 22-23, 1999) Ciphertext: bd 0d de 91 99 60 b8 8a 47 9c b1 5c 23 7b 81 18 99 05 45 bc de 82 01 ab 53 4d 6f 1c b4 30 63 3c ee cd 96 2e 07 c6 e6 95 99 9c 96 46 5a 95 70 02 02 70 98 bd 41 c2 88 a9 f0 2f 8b e5 48 20 d2 a8 a0 6b bf 93 de 89 f6 e2 52 fd 8a 25 eb d0 7d 96 83 ee a4 2d c8 8d 1b 71 1

Szimmetrikus kulcsú blokk rejtjelezők üzemmódjai 1. ECB (Electronic Code Book) mód 2. CBC (Cipher Block Chaining) mód 3. CFB (Cipher FeedBack) mód 4. OFB (Output FeedBack) mód ECB (Electronic Code Book) mód y i = E k (x i ) előnye: párhuzamosan több nyílt szöveg blokk rejtése problémák: - nyílt szövegek sorozatának ismétlődései (minták) megjelennek a rejtett szövegek sorozatában - rejtett szövegek sorozatán aktív támadás lehetősége (törlés, beillesztés, ismétlés) 2

CBC (Cipher Block Chaining) mód y i = E k (x i y i-1 ), x i = D k (y i ) y i-1 - nyílt szövegek sorozatában lévő mintázat rejtésre kerül - rejtett szövegek sorozatán aktív támadás lehetősége lecsökken - kezdővektor (IV= y i-1 ) integritása fontos (első nyílt szöveg blokk sérülékeny) - blokkot törölhető a nyílt szöveg blokksorozat elejéről és végéről - ha a kezdeti vektort módosítjuk azonos kulccsal azonos szövegek észrevétlen rejtjelezhetők - hibaterjedés hatás: kommunikációs csatornabeli additív bithiba két nyílt blokkot hamisít Hf: Észrevétlenül törölhető marad első és utolsó rejtett blokk? Hf: Tekintsük a CBC következő módosítását: y i = E k (x i x i-1 y i-1 ), x i = D k (y i ) y i-1 x i-1 1. Hogyan módosul a hibaterjedés hatás? 2. Milyen új aktív támadásra nyílik lehetőség? 3

CFB (Cipher FeedBack) mód y i = E k (y i-1 ) x i, x i = E k (y i-1 ) y i (CBC: y i = E k (x i y i-1 ), x i = D k (y i ) y i-1 ) - nyílt szövegek sorozatában mintázat rejtett - blokkot törölhető a nyílt szöveg blokksorozat elejéről és végéről - utolsó rejtett blokk módosítható - ha a kezdeti vektort módosítjuk azonos kulccsal azonos szövegek észrevétlen rejtjelezhetők alkalmazás: karakterenkénti rejtés aszinkron terminál kimenetén 4

OFB (Output FeedBack) mód - kulcsfolyamatos rejtjelezés - teljes blokknál rövidebb visszacsatolása nem biztonságos (lásd alább) - nincs hibaterjedés - nyílt szöveg könnyen manipulálható a rejtett szöveg manipulálásával - ha a kezdeti vektort módosítjuk azonos kulccsal azonos szövegek észrevétlen rejtjelezhetők 5

OFB analízis 1. teljes blokkmérettel visszacsatolás esete u i = E k (u i-1 ): U U, U =2 n permutáció Modell-1: E k véletlenszerűen választott a (2 n )! számú permutáció közül Tétel: Az összes permutációt tekintve minden lehetséges (1,2,..., 2 n ) ciklushosszú ciklusból azonos számú van. Következmény: Modell-1 + véletlen kezdővektor esetén az OFB kulcsfolyam periódusának várható értéke az 1,2,..., 2 n ciklushosszak számtani átlaga 2 n-1 + 1/2 ( [2 n (2 n +1)/2]/2 n ) Pl. n=2, (1+2+3+4)/4=2+1/2=2,5. 2. szűkítés esete Modell-2: F k U U, U =2 n véletlen függvény Születésnapi paradoxon átlagos ciklushossz U 0.5 =2 n/2 Pl. DES, n=64, átlagos ciklushossz 2 32 6

Problémák, megoldások F1. DES rejtjelező kódolás esetén, ha c = E (m), akkor c = E (m), ahol v a v blokk bitenkénti negáltja. Támadhatóbb emiatt a DES? k k Megoldás: Legyen k az ismeretlen kulcs. (m,c 1 ), m, c ) nyílt szöveg-rejtett szöveg, azaz c ( 2 = E ( ) (1) 1 k m c = E ( ) c = E ( ) (2). 2 k m 2 m k A kulcsok terét keressük végig, ahol k* az aktuálisan tesztelt kulcs: Teszt: E k *( m) = c1 (1') or E k *( m) = c2 (2')? Ha nem, akkor egy kódolási művelettel két lehetséges kulcsot is teszteltünk, a k * és a k * kulcsot! (Ui. ha k *=k akkor (1)(1') igazz, ha k * =k (azaz k*=k ) akkor (2)(2') igaz) Ezzel a végigkeresendő kulcsteret megfeleztük. A kulcstér keresés ideje a kimerítő kereséshez képest a felére csökkenthető. 7

F2: Tegyük fel, hogy DES (ECB) rejtjelezést használtunk 64 bites üzenet blokkok rejtjelezésére, amelyek 8 bites karakterekből állnak, s a 8. bit páros paritás. Egy kimerítő kulcskereséses algoritmus csak rejtett szövegek megfigyelésére alapozva keresi a kulcsot, a nyílt szövegekről nincs egyéb információja. Javasoljon algoritmust, s vizsgálja annak hatékonyságát? Megoldás: Amikor az algoritmus egy k kulcsot tesztel, m rejtjeles blokkot dekódol, s ellenőrzi a paritás-helyességet. Ha helyesnek találja megáll, s a tesztelt kulcsot helyesnek fogadja el. P(egy téves kulccsal helyes paritásúra dekódolunk egy rejtett szöveg blokkot) = 2-8 P(m rejtjeles blokk mindegyikét helyes paritásúra dekódoljuk egy téves kulcs mellett) = 2-8m Ha legutoljára kerülne csak vizsgálatra az igazi kulcs (legrosszabb eset), annak valószínűsége, hogy már nem jut el eddig a vizsgálatig, legfeljebb < 2 56 2-8m. Így pl. m=8 esetén, > 1-2 -8 a sikervalószínűség. 8

F3: Mekkora a kétkulcsos háromszoros DES kódolás (EDE) középen találkozásos támadás erőforrásigénye választott nyílt szövegű támadás mellett! x w' w z=0 E D E y k1 k2 k1 Megoldás: 1. Az első kódoló z kimenetét rögzítsük zérus blokkra: x=d(0,k) dekódolás az összes különböző k kulccsal és tároljuk [x,k] párokat. (Q halmaz 2 56 párt tartalmaz) 2. w'=d(0,k') dekódolás az összes különböző k' kulccsal és tároljuk [w',k'] párokat. (Q' halmaz 2 56 párt tartalmaz) 3. Vegyünk egy [x,k] párt Q-ból. x -re kérjük az y rejtett szöveget (választott nyílt szöveg). w= D(y,k) dekódolást végzünk. 4. Ha létezik olyan [w',k'] Q', hogy w=w, akkor sejtésünk: k1=k, k2=k'. Ellenkező esetben új [x,k] Q mellett megismételjük a 3 és 4 lépéseket. 3 2 56 nagyságrendű rejtjelezés művelet, 2 56+1 nagyságrendű 64+56 bites elemekből álló memóriaigény. 9

F4: A középen találkozás támadás kétszeres DES kódolás elleni erőforrásigényét szeretné valaki megnövelni olyan módon, hogy az alábbi háromszoros kódolást alkalmazza y = Ek ( E ( E ( x))) 2 k1 k. 1 Sikerült-e a célját elérni? 10

F5: Az RSA kódolás esetén a CFB illetve az OFB blokk rejtjelzés módok alkalmazhatók-e? Nem. Az RSA nyilvános kulcsú, s a CFB illetve OFB mód esetén mind az adási, mind a vételi oldalon (!) csak kódolást végzünk, s így a nyilvános kódoló kulcs miatt a támadó által is elvégezhető műveletek. F6: Egy játék RSA algoritmus esetén p1=23, p2=11 prímeket választottuk. Adja meg a lehető legkisebb kódoló kulcsot, s az ehhez tartozó dekódoló kulcsot! Kódolja az x=5 üzenetet! ------------------------------------------------------------------------------------------------------- 11