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

Hasonló dokumentumok
Sapientia Egyetem, Matematika-Informatika Tanszék.

2018, Diszkre t matematika. 10. elo ada s

Sapientia Egyetem, Matematika-Informatika Tanszék.

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

2017, Diszkrét matematika

Data Security: Public key

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

Diszkrét matematika I.

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

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

2018, Diszkre t matematika. 8. elo ada s

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

2016, Diszkrét matematika

Sapientia Egyetem, Matematika-Informatika Tanszék.

Emlékeztet! matematikából

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

2016, Diszkrét matematika

Sapientia Egyetem, Matematika-Informatika Tanszék.

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

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

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,...

Sapientia Egyetem, Matematika-Informatika Tanszék.

1. Egészítsük ki az alábbi Python függvényt úgy, hogy a függvény meghatározza, egy listába, az első n szám faktoriális értékét:

Minden egész szám osztója önmagának, azaz a a minden egész a-ra.

Információs társadalom alapismeretek

Módszerek és eszközök a kriptográfia oktatásakor

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:

Waldhauser Tamás december 1.

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

2015, Diszkrét matematika

Kriptográfiai algoritmus implementációk időalapú támadása Endrődi Csilla, Csorba Kristóf BME MIT

Kriptográfiai alapfogalmak

Diszkrét matematika 2.

Fábián Zoltán Hálózatok elmélet

Számelméleti alapfogalmak

SzA XIII. gyakorlat, december. 3/5.

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

2018, Diszkrét matematika

Algoritmuselmélet gyakorlat (MMN111G)

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

Biztonságos kulcscsere-protokollok

Diszkrét matematika I.

2016, Diszkrét matematika

Diszkrét matematika 2.

2016, Diszkrét matematika

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

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

Titkosítási rendszerek CCA-biztonsága

Elektronikus aláírás. Gaidosch Tamás. Állami Számvevőszék

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

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

Kvantumkriptográfia II.

3. Kriptográfia (Jörg Rothe)

TANTÁRGYI ADATLAP. 2.7 A tantárgy jellege DI

2018, Diszkrét matematika

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

Diszkrét matematika 1. estis képzés. Komputeralgebra Tanszék ősz

Számelmélet (2017. február 8.) Bogya Norbert, Kátai-Urbán Kamilla

Egyesíthető prioritási sor

Nyilvános kulcsú titkosítás RSA algoritmus

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

2. Tétel (Az oszthatóság tulajdonságai). : 2. Nullát minden elem osztja, de. 3. a nulla csak a nullának osztója.

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

A nyilvános kulcsú algoritmusokról. Hálózati biztonság II. A nyilvános kulcsú algoritmusokról (folyt.) Az RSA. Más nyilvános kulcsú algoritmusok

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

2018, Diszkrét matematika

illetve a n 3 illetve a 2n 5

Negatív alapú számrendszerek

2018, Diszkrét matematika

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

Kongruenciák. Waldhauser Tamás

Bevezetés az Információtechnológiába

Számelmélet. 1. Oszthatóság Prímszámok

Diszkrét matematika I.

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

Számelmélet Megoldások

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

Mintafeladat az RSA algoritmus szemléltetésére

Informatikai biztonság alapjai

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I.

5.1 Környezet Hálózati topológia

Diszkréció diszkrét logaritmussal

Kriptográai protokollok

Eötvös Loránd Tudományegyetem

Waldhauser Tamás. Jelölés. Az egyszerűség kedvéért (a, b) ρ helyett gyakran azt írjuk, hogy aρb.

Bevezetés az algebrába 1

Polinomok (el adásvázlat, április 15.) Maróti Miklós

Alapvető polinomalgoritmusok

Dan Brown Digitális erődje és a nyilvános kulcsú titkosítás

Felhasználók hitelesítése adatbiztonság szállításkor. Felhasználóknak szeparálása

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

Diszkrét matematika 2.

Modern titkosírások és a matematika

SZÁMELMÉLETI FELADATOK

Data Security: Protocols Integrity

Titkosítás NetWare környezetben

Kriptográfia I. Kriptorendszerek

TUDOMÁNYOS DIÁKKÖRI DOLGOZAT. A nyílt kulcsú titkosítás és a digitális aláírás

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

Ahol a kvantum mechanika és az Internet találkozik

Átírás:

Kriptográfia és Információbiztonság 8. előadás Sapientia Egyetem, Műszaki és Humántudományok Tanszék Marosvásárhely, Románia mgyongyi@ms.sapientia.ro 2017

Miről volt szó az elmúlt előadáson? A Crypto++ könyvtárcsomag A OpenSSL könyvtárcsomag Az NTL könyvtárcsomag Nagyszámok kezelése, C# Nagyszámok kezelése, Java Az RSA titkosító rendszer: specifikáció, példa Valószínűségi prímtesztek A kínai maradéktétel Faktorizációhoz kapcsolódó problémák

Miről lesz szó? a Rabin titkosító a diszkrét logaritmus probléma, primitív gyök (generátor elem) meghatározása. diszkrét logaritmus problémán alapuló rendszerek: Diffie-Hellman kulcscsere

A Rabin titkosító rendszer 1979-ben publikálta Michael O. Rabin, azt a lehetőséget vizsgálja, amikor az RSA titkosítás során az e = 2 értéket választjuk ha e = 2, akkor nem létezik inverz, mert phi mindig páros, ezért lnko(e, phi) 1 a visszafejtést más aritmetikai műveletek határozzák meg Gen, a kulcs-generáló algoritmus: (p, q) R Gen(1 k ), ahol p q 3 (mod 4), n = p q, p k = (n), s k = (p, q), Enc (n) a rejtjelező algoritmus: c m 2 Dec (p,q) a visszafejtő algoritmus: m c 1 2 (mod n), (mod n).

A Rabin titkosító, biztonság A visszafejtés nem egyértelmű: 4 lehetséges visszafejtett szöveg közül kell kiválsztani a megfelelőt, a visszafejtés lépéssorozata, alkalmazzuk a kínai maradéktételt: m p = c (p+1)/4 (mod p), m q = c (q+1)/4 (mod q), kiterjesztett Euklideszi algoritmussal meghatározzuk p 1, q 1 -t, jelöljük rendre x, y-al, azaz x p + y q = 1, m 1 = (x p m q + y q m p) (mod n), m 2 = (x p m q y q m p) (mod n) m 1, m 1, m 2, m 2 lesz a 4 megoldás.

A Rabin titkosító rendszer, példa legyen p = 11, és q = 31 n = 341, legyen m = 42, a nyílt-szöveg, titkosítás: c = 42 2 = 59 (mod 341), visszafejtés: 11 = 31 = 3 (mod 4) 59 (11+1)/4 = 9 (mod 11), 59 (31+1)/4 = 20 (mod 31), kiterjesztett Euklideszi algoritmussal: 31 1 = 5, 11 1 = 17, azaz 31 5 + 11 17 = 341, m 1 = (31 31 1 9 + 11 11 1 20) = 20 (mod 341), m 2 = (31 31 1 9 + 11 11 1 20) = 20 (mod 341), m 3 = (31 31 1 9 11 11 1 20) = 42 (mod 341), m 4 = (31 31 1 9 11 11 1 20) = 42 (mod 341),

A Rabin titkosító, biztonság A visszafejtés fenti képletét azért lehet alkalmazni, mert p q 3 (mod 4), sokkal hatékonyabb, mint az RSA, megmutatható, hogy a Rabin rendszer feltörése ugyanolyan nehézségű, mint a fakorizációs probléma, ez nem igaz a textbook RSA-ra, az RSA-nál vett feltörési stratégiák egy része itt is alkalmazható, újabb változata (2001, Boneh) ellenáll a CCA támadásnak (az egyik legerősebb támadási mód), illetve egyértelmű a visszafejtése hasonlóan az RSA-hoz kulcscsere és hitelesítési protokollokban használják.

A diszkrét logaritmus (DL) probléma Számos kriptorendszer biztonsága alapszik a DL problémán. Az egész számok Z p multiplikatív csoportja esetében, ahol p prímszám a DL probléma a következő: az A, g-alapú diszkrét logaritmusa (mod p) szerint azt jelenti, hogy megkeressük azt az a pozitív egész számot, melyre fennáll: g a A (mod p), ahol g primitív gyök (generátor elem), és g, A Z p. A g szám primitív gyök (mod p) szerint, ha g hatványai 1-től, φ(p)-ig, azaz g, g 2, g 3,..., g φ(p), különböző maradékot adnak (mod p) szerint. A primitív gyök egy sajátos esetét jelenti a multiplikatív csoportok generátor elemének.

Adott primitív gyök meghatározása A p > 2 prímszám és g Z p esetében g akkor és csakis akkor primitív gyök (mod p) szerint, ha g (p 1)/q 1 (mod p), bármely q prímszám esetében, ahol q (p 1). Ha ismert a p 1 prímtényezős felbontása, akkor egyszerű meghatározni a primitív gyököt nem hatékony algoritmus. Ha p = 2 q + 1, ahol p, q páratlan prímszámok, akkor g primitív gyök (mod p) szerint, ahol g ±1 (mod p), akkor és csakis akkor, ha g q = p 1 (mod p) hatékony algoritmus.

Adott primitív gyök meghatározása, példa Legyen p = 13, p 1 = 12 = 2 2 3, g = 7 primitív gyök? Igen, mert 7 4 = 9 1 (mod 13) és 7 6 = 12 1 (mod 13). g = 9 primitív gyök? Nem, mert 9 4 = 9 1 (mod 13) és 9 6 = 1 (mod 13). Legyen p = 47, p 1 = 46 = 2 23, g = 13 primitív gyök? Igen, mert 13 23 = 46 (mod 47). g = 3 primitív gyök? Nem, mert 3 23 = 1 (mod 47).

Diffie-Hellman kulcscsere 1976-ban publikálták a szerzők, két távoli egység (számítógép, mobileszköz, stb.) kulcscsere mechanizmusára, hitelesítésére ad megoldást. Feltételezve, hogy a kommunikációban résztvevő két legális fél Alice és Bob, akkor a protokoll a következő: 1. Alice és Bob egy központi szervertől lekéri a p, k-bites prímszámot, és a g primitív gyököt (mod p) szerint, 2. Alice a k, p, g ismeretében meghatározza az a, A értékeket, ahol: a {2,..., p 2} véletlen szám, A = g a (mod p), az a értékét titokban tartja, A-t pedig elküldi Bobnak.

Diffie-Hellman kulcscsere 3. Bob a k, p, g ismeretében meghatározza a b, B értékeket, ahol: b {2,..., p 2} véletlen szám, B = g b (mod p), a b értékét titokban tartja, B-t pedig elküldi Alicenak. 4. Alice a közös K kulcsot a kövekezőképpen határozza meg: K = B a (mod p). 5. Bob a közös K kulcsot a kövekezőképpen határozza meg: Helyesség: K = A b (mod p). K = A b = B a = g ab (mod p).

Diffie-Hellman kulcscsere, példa Legyen p = 47, g = 13, Alice : választja a = 12-t A = g a (mod p) = 9 (mod 47), elküldi Bobnak az A = 9 értéket. Bob: választja b = 34-t B = g b (mod p) = 21 (mod 47), elküldi Alicenak a B = 21 értéket. Alice: K = B a (mod p) = 21 12 = 16 (mod 47), Bob: K = A b (mod p) = 9 34 = 16 (mod 47). a közös kulcs: K = 16.

Diffie-Hellman kulcscsere, biztonság lassú áttérés a (mod p) aritmetikáról az elliptikus görbékre, nem biztonságos egy aktív támadó esetében (man in the meedle): egy C támadó kiadja magát A-nak, mint B, illetve kiadja magát B-nek, mint A, A irányába, a közös kulcs K 1 = g a ˆb, B irányába, a közös kulcs K 2 = g â b,