Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

KRIPTOGRÁFIA by: Janóczki Szilvia IV. évf.. matematika- számítástechnika.

Hasonló előadás


Az előadások a következő témára: "KRIPTOGRÁFIA by: Janóczki Szilvia IV. évf.. matematika- számítástechnika."— Előadás másolata:

1 KRIPTOGRÁFIA by: Janóczki Szilvia IV. évf.. matematika- számítástechnika

2 „Ha az emberi agy képes egy rejtjelezett írás eljárásait megérteni, akkor egy másik agy követelheti ezt az utat, amikor egy ilyen út létezéséről tudomása van. Az egyedüli titkosírás az, amely elrejti a titkok meglétét.” Francis Bacon

3 Mi is a kriptográfia? Cryptographia=tikosítás A kriptográfia adatok, üzenetek rejtjelezésével (kódolás) foglalkozó tudomány. Szűkebb értelemben valóban a rejtjelezés a kriptográfia alapvető feladata: matematikai eszközökkel biztosítani azt, hogy stratégiai fontosságú adatok, üzleti információk, pénzügyi adatok, dokumentációk vagy személyiségi jogokat érintő adatok stb. csak az azok felhasználására kijelölt körben legyenek elérhetők, ne illetéktelenek birtokába.

4 Régmúlt idők titkosítása A titkosírás története egészen i.e ig. nyúlik vissza, ekkor készült ugyanis az az ékírásos táblácska, amely az agyagmáz-készítés módját írta le, titkosítva. A görögök és a spártaiak már i.e. 475-ben használtak titkos kódokat, az itáliai reneszánsz idején pedig egyenesen virágkorát élte a titkosírás művészete. XIV. Lajos korában 587 véletlenszerűen kiválasztott elemből álló kódot használtak az állami üzenetek továbbításához.

5 Az 1800-as években Edgar Allan Poe novelláiban szereplő kódolt üzenetek felkeltették az olvasók érdeklődését, de a távíró és a Morse kód feltalálása is nagymértékben hozzájárult a titkosírás-titkosítás további fejlődéséhez. Az első világháborúban több nemzet készített mechanikus kódoló gépet, ami lehetővé tette a szövegek gyors és könnyű titkosítását, bonyolult rejtjelezéssel is. A titkosírás története itt vesz egy kisebb fordulatot, a kódok „feltörésének” története felé.

6 A mechanikus eszközök használata előtt nem használtak bonyolult rejtjelezést, mivel nagyon sok időt vett volna igénybe a szövegek, üzenetek kódolása és természetesen dekódolása is. Ebből kifolyólag viszonylag rövid idő alatt meg lehetett fejteni ezeket a kódokat. A megfejtés sokkal nehezebbé vált a kódoló gépek idejében, és a második világháborúban már az volt a hozzá vezető „legrövidebb” út, ha egyszerűen ellopják az ellenség kódoló gépét. Az a tény, hogy a szövetségesek birtokába került egy német kódoló gép - amiről a németek nem tudtak - valószínűleg befolyásolta a háború végső kimenetelét.

7 ILLEGÁLIS BETOLAKODÓ KÜLDŐKAPÓ Az üzenethez kapcsolódó személyek

8 Kriptográfia részei Két része van: klasszikus kriptográfia nyilvános kulcsú kriptográfia Vegyes módon szokták alkalmazni a titkosítást és akkor tényleg nagyon nehéz megfejteni a titkosított szöveget.

9 Klasszikus kriptográfia ezek a régi korok titkosításai ismerjük a módszert, hogy hogyan titkosítanak, akkor meg tudjuk fejteni a titkosított szöveget fejtési módszere: statisztikai módszerek a titkos szöveg általában betűkből áll

10 Nyilvános kulcsú kriptográfia modern titkosítási technika ismerjük a módszert, a fejtés még nem működik, nagyon nehezen tudjuk megfejteni fejtési módszere: statisztikai módszerek nem működnek bitsorozatokból, esetleg számokból áll a titkos szöveg

11 Nem matematikai módszerekkel való fejthetőség Nemcsak olyan titkosítási módszerek vannak, amelyeket matematikai módszerekkel lehet megfejteni. Vannak más módszerek is: láthatatlan tinta (tej) írás kopasz fejre CODE BOOK: titkosítás királya, a küldőnek is és a kapónak is van egy könyve, amelyben benne van, hogy melyik szónak mi felel meg

12 A szöveg útja Szöveg T Kódolt szöveg Titkosított szöveg E k (T) Fejtett szöveg D k (E k (T)) Szöveg T kódolástitkosítás fejtésdekódolás

13 kódolás: a szövegből valamiképpen számot csinálunk titkosítás: E k titkosítási technika (encrypt) fejtés: D k fejtési technika (decrypt) dekódolás: ezzel az eljárással visszakapjuk az eredeti szöveget

14 A jó titkosítás ismérvei: A XVII. században fogalmazta meg F. Bacon a jó titkosítás ismérveit: 3 könnyű legyen a titkosított szöveg előállítása 3a fejtő kulcs ismeretében a fejtés könnyű legyen „A fejtő kulcs hiányában a fejtés lehetetlen legyen.” 3a titkosított szöveg legyen ártatlan kinézetű

15 Fejtés Mikor lehetséges a fejtés: ] ha elég hosszú titkosított szöveg áll rendelkezésünkre ] (T, E k (T)) pár ismeretében ] ha legális kapónak tüntetjük fel magunkat

16 MONOALFABETIKUS RENDSZEREK Caesar féle titkosítás A kulcsot az ábécé betűinek egy másik ábécével való helyettesítésével képezték, amelyet a nyílt ábécéhez viszonyítva három betűvel eltoltak. Nyílt ábécé: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Rejtjel ábécé: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C Példa a rejtjelezésre: BUDAPEST = EXGDSHVW JULIUS CAESAR = MXOLXV FDHVDU

17 Kulcsszavas Caesar titkosítás SOMA Kulcsszó: SOMA Nyílt ábécé: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Rejtjel ábécé: S O M A B C D E F G H I J K L N P Q R T U V W X Y Z Példa a rejtjelezésre: KRIPTOGRAFIA = HQFNTLDQSCFS DEBRECEN = ABOQBMBK

18 Polybios módszere Polybios módszere Polübiosz a harmadik pun háború nagy római hadvezérének volt a tanácsadója.

19 Példa Az ábécé betűit magánhangzó párokkal helyettesítjük, ezeket a párokat észrevétlenül elrejthetjük szavakban. ITT ALUDT, AKI ELADOTT EGY UBORKAGYALUT. ITTHON CSÜCSÜLÖK. U Gyűjtsük páronként össze a szöveg magánhangzóit.

20 Megoldás IA UA IE AO EU OA AU IO UU OU Az elrejtett üzenet: KÜLDJ PÉNZT.

21 Hill-módszer Választunk egy tetszőleges mátrixot: például TEVE Például a titkosítandó szó: TEVE „e” és „f „e” és „f ” az ábécé betűinek a sorszáma: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

22 TEVE GHML Titkos képe

23 Legális fejtő Ismeri: GOIC Példa: Titkos szöveg: GOIC Fejtsük meg az eredeti üzenetet!

24 PÉLDA: CICA Titkosítsuk a CICA szót, majd mint legális fejtő, fejtsük vissza a titkosított szöveget, ezzel visszakapjuk az eredeti szót. CICAGOIC Titkos képe

25 Legális fejtés GOIC Titkosított szöveg: GOIC GOIC CICA Titkos képe

26 Affin kriptorendszer Választunk: a, b-t Két kép akkor egyezik meg ha:

27 POLIALFABETIKUS MÓDSZEREK Playfair módszer MINDEN NAP HETFO Kódolandó szöveg: MINDEN NAP HETFO (ékezet nélkül) MI PK ND YO EN TO NA CO PH AR ET TN FO EA

28 MINDEN NAP HETFO PKYOTOCOARTNEA Ha a két betű egy sorban van: jobbra csúszás NE OT Ha a két betű egy oszlopban van: lefelé csúszás LE FV Kódolt szöveg

29 Kulcsszavas Playfair módszer MINDEN NAP HETFO FTFKUFHKYSLIMF Kódolt szöveg A kulcsszóban ne legyen betűismétlés és legyen elég hosszú.

30 Blaise de Vigenére ( )

31 MARS Kulcsszó: MARS Titkosítandó szöveg: LENNI VAGY NEM LENNI MARSM ARSM ARS MARSM (oszlop) LENNI VAGY NEM LENNI (sor) L képe: L. sor M. eleme E képe: E. sor A. eleme LENNI VAGY NEM LENNI XEEFUVRYKNVEXEEFU Kódolt szöveg

32 Autoclave Cardano AKI MER AZ NYER Titkosítandó szöveg: AKI MER AZ NYER CER UZA AK IMER Titkosító kulcs: CER UZA AK IMER A Vigenére táblázat segítségével: Titkosított szöveg: COZGDRAJVKII AKI MER AZ NYER COZGDRAJVKII Kódolt szöveg

33 NYILVÁNOS KULCSÚ RENDSZEREK Knapsack (hátizsák) módszer NYILVÁNOS KULCSÚ RENDSZEREK Knapsack (hátizsák) módszer Merkle-Hellman-féle algoritmus A nyilvános kulcsú kriptorendszerben van sok nevekkel ellátott, nyitott lakat, amelyeknek kulcsa a tulajdonosuknál van, bezárás után csak ők tudják kinyitni. Üzenet küldésekor a megfelelő névvel ellátott lakatot kattintják rá az acéldobozra, és úgy küldik el. A fogadó saját kulcsával fogja kinyitni a dobozt, így nincs is szükség a kulcs elküldésére. Szükséges viszont a nyitott lakatok és kulcsaik megfelelő szétosztása. Nyilvános kulcsú rendszerek:Órarend Nyilvános kulcsú rendszerek: Órarend Utazóügynök problémája Rendezéses probléma Pakolási probléma

34 súlyok, apróságok Az a i apróságokra, azaz a sorozatra teljesülnie kell, hogy A hátizsákba súlyú felszerelés fér. Pakolási probléma: Pakolási probléma: Adottak különböző nagyságú hátizsákok és apróságok. A hátizsákokba kell bepakolnunk úgy, hogy a lehető legkevesebb hátizsákot használjuk fel.

35 Nyilvános kulcsú hátizsákrendszerben pár a titkos kulcs, a pedig a nyilvános kulcs. Visszafejtés és Értékek meghatározása után az könnyű hátizsákfeladat megoldásával történik.

36 hátizsák feladat Adott: Keressük: amelyre igaz az Példa:

37 Feladat: készítsük el A KRIPTO szó titkosítását és visszafejtését egy (A,t,m,B) hátizsákrendszerrel. n=10 t=25236 m=55207 t -1 =1061, mert (mod 55207) A=(103, 107, 211, 430, 863, 1718, 3449, 6907, 13807, 27610) B=(4579, 50316, 24924, 30908, 27110, 17953, 32732, 16553, 22075, 53620) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

38 Titkosítás: Nyílt szöveg Bináris kód A KR IP TO Fejtés: X=(0,1,0,1,1,1,0,0,1,0)

39 RSA algoritmus 1978-ban javasolt R. Rivest, A. Shamir és L. Adleman egy másik nyilvános kulcsú algoritmust. Az algoritmus a szerzők neve alapján az RSA nevet kapta. Választunk véletlenszerűen két nagy p és q prímszámot. Ezek nagyságrendje legalább 100 decimális jegy. Kiszámítjuk: modulust, és Választunk véletlenszerűen egy e számot Keresünk egy olyan d számot, amelyre fennáll az p, q és számokra továbbá nincs szükségünk. és

40 Titkosítás Nézzünk egy példát a titkosításra: Regina Rudolfnak akar üzenni, akkor kikeresi Rudolf nyilvános kulcsát: KP=(n,e). Az üzenetet blokkokra kell vágni úgy, hogy az eredményül kapott, egy blokknak megfelelő számok ne legyenek nagyobbak Rudolf n modulusánál. KP=d titkos kulcsot jól védett helyen kell tárolni. TITOK Titkosítsuk a TITOK szót. A kódolást az ASCII táblázat alapján végezzük el. Minden blokk egy betűből áll, és kódja nem haladja meg a modulusok értékét.

41 Regina titkosít Rudolf számáraRudolf visszafejt

42 Digitális aláírás TITOK MD Regina aláírja a TITOK szöveget. Ehhez először göngyölített XOR művelet segítségével kiszámítja az MD kivonatot.

43 Göngyölített XOR művelet eredménye. Az aláírást: érték adja. Az ellenőrzést: nyilvános kulcs ismeretében számítás adja. Az aláírás és a titkosítás egymástól független, így lehet küldeni titkosított és aláírt üzenetet is.

44 PRÍMTESZTEK Álprímek tesztelése Ha n prím, akkor Azt modjuk, hogy az n szám „a” alapú álprím, ha n összetett és Á LPRÍM (n) if M ODULÁRIS -H ATVÁNYOZÓ (2,n-1,n) 1 (mod(n)) then return ÖSSZETETT Valóban! else return PRÍM Reméljük! Ez az eljárás csak egyféleképpen adhat hamis végeredményt. Ha azt hozza ki, hogy n összetett, akkor az állítás mindig helyes. Ha pedig azt állítja, hogy n prím, csak akkor hibázik, ha az n szám 2 alapú álprím.

45 A Miller-Rabin valószínűségi prímteszt Legyen: n>2 és n páratlan,, ahol r páratlan. Ha vagyvalamelyesetén. TESZT: TÉTEL: Ha nem igaz, akkor n összetett. Ha igaz, akkor szukcesszív gyökvonást végzünk.

46 Ha -től különböző értéket kapunk, akkor n nem prím. Ha +1-et kapunk, akkor folytatjuk a gyökvonást. Ha -1-et kapunk, akkor „a” tanúskodik n prímsége mellett. „a” tanúskodik n prímsége mellett

47 TANÚ Algoritmus T ANÚ(a,n) 1 legyen az n-1 bináris alakja 2 d 1 3 for i k downto 0 4 do x d 5 d 6 if d=1 és x=1 és x=n-1 7 then return IGAZ 8 if 9 then d 10 if d=1 11 then return IGAZ 12 return HAMIS a Az n-1 bináris reprezentációját határozza meg, amit arra használunk, hogy az a számot az n-1 hatványra emeljük. Kiszámítja a értékét. Amikor azonban az 5. sorban négyzetre emel, a 6-7. sorokban rögtön leellenőrzi, hogy nem jelent-e meg az 1-nek nem triviális négyzetgyöke modulo n. Ha igen, az algoritmus leáll, és IGAZ kijelentést ad. Akkor szolgáltatnak IGAZ kifejezést, ha a -1 mod n nem 1.

48 TANÚ 11. sorbanIGAZHa a TANÚ algoritmus a 11. sorban az IGAZ eredményt adja, akkor azt fedezte fel, hogy Ha azonban n prím, akkor Fermat-tétele szerint minden elemre. Emiatt n nem lehet prím, és a bizonyíték erre. TANÚ7. sorbanIGAZHa a TANÚ algoritmus a 7. sorban ad IGAZ kijelzést, akkor pedig felfedezte, hogy x az 1-nek nem triviális négyzetgyöke modulo n, mivel ekkor ugyanakkor mégis teljesül. Ha n összetett, akkor lesz az 1-nek nem triviális négyzetgyöke modulo n. Így, ha x-ről belátjuk, hogy az 1-nek nem triviális négyzetgyöke modulo n, akkor ez bizonyíték arra, hogy n összetett.

49 M ILLER - RABIN(n,s) 1 for j to s 2 do a V ÉLETLEN (1,n-1) 3 if T ANÚ (a,n) 4 then return Ö SSZETETT 5 return P RÍM A Miller-Rabin prímteszt valószínűségi kereséssel bizonyítja, hogy n összetett. A fő ciklus az 1. sorban kezdődik a halmazból véletlenszerűen kiválaszt s darab a értéket 2. sor. Ha a kiválasztott a számok valamelyike az n összetettségére tanú, akkor a M ILLER -R ABIN teszt Ö SSZETETT kijelzést ad a 4. sorban. Ez az eredmény mindig helyes, amit a T ANÚ algoritmus szavatol. Ha az s darab szám egyike sem tanú, akkor a M ILLER -R ABIN teszt feltételezi, hogy ilyenkor egyáltalán nem is lehet tanút találni, ezért n prím. Tényleg. Majdnem biztosan.

50 FAKTORIZÁLÁS Kölcsönösen egyértelmű megfeleltetés van az n szám alakú faktorizációja és az n szám alakú előállítása között. Tegyük fel, hogy az n egész számot faktorizálni akarjuk, azaz fel akarjuk bontani prímek szorzatára. Fermat-féle faktorizáció Ez akkor működik, ha a faktorizálásnál a és b „közel” van egymáshoz.

51 Példa: Faktorizáljuk: teljes négyzet

52 Ha nincsennek „közel” a faktorok egymáshoz. Ha van közös prímtényező, az lesz a faktor. Módosított változat:

53 Példa: Faktorizáljuk: LNKO A LNKO meghatározása Euklideszi algoritmus alapján.

54 Pollard-féle heurisztikus módszer Legyen f egy tetszőleges függvény, amely előállítja maradékosztályoknak önmagára való leképezését. Például: Általában egy véletlen polinom. Tetszőlegesen „kicsi” pont. n db Iterációval előállítjuk a pontsorozatot. Az iterációval előállított pontok esetén teszteljük LNKO LNKO-t.

55 n=91 91 egyik faktora: 7

56 P OLLARD 1 2 V ÉLETLEN (0,n-1) while IGAZ 6 do if 10 then d kinyomtatása 11 if i=k 12 then 13 lnko és i értéke 1 lesz x 1 pedig a Z n véletlenszerűen választott eleme lesz n osztóit keresi x 1, x 2, x 3, x 4... végtelen sorozat soron következő elemének kiszámítása i értéke egyesével nő A program elmenti a 2-hatvány indexű x i legújabb kiszámított értékeit az y változóba. Azaz az: x 1, x 2, x 4, x 8, x 16,… számokat. k értéke megduplázódik, amikor y átíródik, k az 1,2,4,8,… értékeket veszi fel, és mindig az ennek megfelelő indexű x k számokat tárolja y-ban. k értéke 2 lesz n egyik prímtényezőjét próbálja megtalálni, az y-ban tárolt értékeket és az x i aktuális értékét felhasználva, ha d az n nem triviális osztója, akkor kinyomtatja d értékét elmenti x 1 értékét

57 x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 x7x7

58 x1’x1’ x2’x2’ x3’x3’ x4’x4’ x5’x5’ x6’x6’ x7’x7’ x1”x1” x2”x2” x3”x3” x4”x4” x5”x5” x6”x6” x7”x7”


Letölteni ppt "KRIPTOGRÁFIA by: Janóczki Szilvia IV. évf.. matematika- számítástechnika."

Hasonló előadás


Google Hirdetések