U MAMCFLÁKÚL

36
U MAMCFLÁKÚL 015 017 016 015 018 014 005 015 005 018 020 002 013 002 015 005 013 002 015 009 011 002 009 008 019 015 015 018 016

description

U MAMCFLÁKÚL. 015 017 016 015 018 014 005 015 005 018 020 002 013 002 015 005 013 002 015 009 011 002 009 008 019 015 015 018 016. A titkosírás. története és a matematikai háttér. Tartalom. Bevezet ő A lkalmazásai A kriptográfia eszköztára Alapvető fogalmak, definíciók - PowerPoint PPT Presentation

Transcript of U MAMCFLÁKÚL

Page 1: U MAMCFLÁKÚL

U MAMCFLÁKÚL

015 017 016 015 018 014 005 015 005 018 020 002 013 002 015 005 013 002

015 009 011 002 009 008 019 015 015 018 016

Page 2: U MAMCFLÁKÚL

A titkosírás

története és a matematikai háttér

Page 3: U MAMCFLÁKÚL

3

Tartalom Bevezető Alkalmazásai A kriptográfia eszköztára Alapvető fogalmak, definíciók Szimmetrikus rejtjelező algoritmusok Aszimetrikus rejtjelező algoritmusok

Page 4: U MAMCFLÁKÚL

4

Kinek volt/van erre szüksége?Kinek volt/van erre szüksége?

Katonák Diplomácia Naplóírók Szerelmesek Az utóbbi évtizedekben a számítástechnika

illetve legújabban az Internet-alkalmazások tartanak igényt titkosításra

A diákoknak: órai levelezés (Aladár és Cecil) A tanároknak: dolgozatkérdések

Page 5: U MAMCFLÁKÚL

5

Néhány alapfogalom

A kriptológia szó a görög ó (ejtsd krüptosz) szóból származik, amelynek jelentése rejtett, titkos;

Kriptológia = kriptográfia+kriptoanalízis

Kriptográfia: az információ elrejtése/elérhetetlenné tétele;

Steganográfia: az információ "fizikai" elrejtése; „kopasz rabszolga”, szkütalé -görögök, „német írásjel”

Page 6: U MAMCFLÁKÚL

6

Történeti bevezető példákkal

Első módszerek

egyiptomiak: rejtjelezett szöveg egy több mint négyezer éve megírt kőtáblán

szteganográfia Deszkára írt üzenet+viasz (Demeratosz /Hérodotosz /,

perzsa háborúk) Hisztaiaeusz: küldönc fejének leborotválása szkütalé

anagramma, betűkeverés, átrendezés elég megbízható, lehetőségek száma: faktoriális,

fésüs módszer

Page 7: U MAMCFLÁKÚL

7

behelyettesítés: első megjelenése: Káma Szutra (a nő dolga pl.

főzés mellett a titkosírás művészete) behelyettesítő kódnak nevezik, a pozíció marad, a

hangérték változik (pl. A helyett B)

Page 8: U MAMCFLÁKÚL

8

Caesar-módszer, amivel a kárthágóiakat verte át Caesar:

nyílt szöveg: veni, vidi, vicikódolt szöveg: YHQL, YLGL, YLFLkulcs: DEFGHIJKLMNOPQESTUVWXYZABC (három hellyel csúztatjuk)

lehetséges kulcsok száma: 25nyílt abc bármely elrendezését tekintve a lehetséges kulcsabc-k

száma: több, mint 4*10^26 (angol abc)miért volt elég akkor a 25?

a kulcsmondat alapú behelyettesítés módszere: pl. kód-abc: JULISCAERTVWXYZBDFGHKMNOPQ előnye: megjegyezhető, nem kell felírni hátránya: kevesebb lehetőség, támpontok, megfejthetőség

közös elnevezés: monoalfabetikus behelyettesítő kód: a kódolás folyamata alatt mindvégig ua. a kódabc-t használják

Page 9: U MAMCFLÁKÚL

9

Dekódolás, desifrírozás, kriptoanalízis, feltörés

kell hozzá: intuíció, statisztika, nyelvészet, támpontok! azaz: elegendő mennyiségű szöveg, használt nyelv statisztikai jellemzőinek ismerete

Page 10: U MAMCFLÁKÚL

10

Dekódolás, desifrírozás, kriptoanalízis, feltörés gyakorlat (Mária skót királyné története)

CBÜQEEÜCÍVBNKIGMGÁHÚBÜCÍMCKECÖBÓGÍNGUGÚÚWNBCBNQÁQÚBÜHÖAGÁRÜ!BCÁÜBÚÁŐUÁPNHÖÜBNKGÓGOMWN!BGÁÁGOBCBNKIGMGÁHÚÜBÚÁŐUÁCÜÜDBCOCNLÜŐÜÜŰN!

megfejtés: 1. betűgyakoriság megállapítása, mi lehet a szóköz?

2. összehasonlítás a magyar abc gyakorisági táblázatával

3. próbálgatás (Word)

Page 11: U MAMCFLÁKÚL

11

A „feltörhetetlen” kódok

Több kód-abc használata (polialfabetikus) Vigenére-kódolás (1523)

Kulcs, 26 kód-abc-t használ 1 helyett A nyílt szöveg minden betűjét más-más Caesar-kód

abc segítségével sifrírozzák Vigniére-tábla Nehézkes a használata, így a régit használják

Kódfejtő szobák (Bécs- nagyon híres, fekete szoba)

Page 12: U MAMCFLÁKÚL

12

kulcsszó W H I T E W HITE

nyílt t a m a d j o t o r a k o r

kód P H U T H D …

•A Vienére-kód megfejtése:

• Babbage: 1854, újságcikk nyomán

• 1. lépés: kulcsszó hossza (legnagyobb közös osztó)

• 2. lépés: felbomlik monoalfabetikus szövegekre -> kriptoanalízis

• 3. lépés: kulcsszó megállapítása

• Nyílt szöveg hosszúságú kód

• Matematikailag megfejthető

- -

Page 13: U MAMCFLÁKÚL

13

További kódolások Homofonikus behelyettesítés:

• A nyílt abc betűinek arányosan több kód felel meg• Pl.: a betűnek: 09, 12, 23, 47, 53, 67, 78, 92

• z betűnek: 02.• minden betű gyakorisága 1% körüli, nincs kiugrás!• Minden kód-jel csak 1 betűt jelölhet• Megfejtése: monoalfabetikus-kód, nyelvészet szerepe

(dupla betűk elemzése) A monoalfabetikus kódok csűrése-csavarása nehezítette a

megfejtést ->nem kellett a Vigneré-kódolást használni (pl. XIV. Lajos -„nagy kódja”, amit megfejtettek, Vasálarcos)

Könyvkód (Vignére-kódolás módosítva)

Page 14: U MAMCFLÁKÚL

14

A titkosírás matematizálása XX. század elejére

feltörhetetlennek hitt kódok feltörése a matematika segítségével

Morze-távíró, telefon, rádió -> kommunikáció első forradalma -> növekvő igény a biztos titkosírásra

háborús helyzet -> gyors, megbízható eljárás kell XIX. századig: nyelvészek, kevés matematikus,

humán beállítódás nem minden megfejthető, de senki sem lehet

biztos abban, hogy nem fejtik meg

Page 15: U MAMCFLÁKÚL

15

A XX-XXI. század

Az első világháború titkos története 1914-18: német ADFGVX-sifre, (1918. március 5-

én a 21-i offenzíva előtt alkalmazták) 1918. június: németek már csak a meglepetés erejére

számíthattak, a franciák feltörték –Painvin behelyettesítés és átrendezés módszere együtt, kell kulcs megfejtették -> németek elvesztették a csatát

1917. január 17: Zimmermann-távirat ->USA belép az első világháborúba angolok fejtik meg

Page 16: U MAMCFLÁKÚL

16

A Zimmermann-távírat

Page 17: U MAMCFLÁKÚL

17

Második világháború (1939-1945) a matematikusok 20-as évekre rájöttek: csak az

egyszeri, véletlen kulcsos kódolás valóban megfejthetetlen (ld. 1945 után: „forró drót”)

németek 1918, 1930-as évek: ENIGMA gépesítették a kódolást a gép szerkezetének ismeretével sem lehet megfejteni (ezt

hitték) alapja: 2 (3) tárcsa keveri a

betűket+kapcsolótábla+billentyűzet+kijelző+visszairányító lehetséges kulcsok száma: 26^3*3!*10^10=kb. 10^15 db

Page 18: U MAMCFLÁKÚL

18

Az ENIGMA feltöréselengyelek: Ciezki-százados vezette 40-es szoba lakói

megszerezték az Enigma leírását (magát a gépet) kódkönyvek felépítését is megszerezték (szabványokat)-

keverőtárcsák, stb. sorrendjének leírását üzenetkulcsot is küldtek a németek (ezután eszerint sifriroznak) Rejewski fejti meg az ismétlések és a szabványok alapján

szabályszerűségekre jött rá -> kódfejtés gépesítette („bombák”) összefoglalva: félelelm, matematika, kémkedés segített Lengyelország lerohanása: Angliába menekítik

angolok: Bletchley Park német üzenetek elfogása, megfejtése általános módszer kidolgozása, cilly-k felfedezése Turing munkássága -> a mai elektronikus számítástechnika-elmélet

alapjainak megteremtése, Colossus -> 1970-es évekig titokban maradt

kódkönyvek ellopása olasz és japán kódok feltörése -> USA Midway-szigetek

háborút eldöntötte, még 2-3 évig tartott volna, ha nem fejtik meg

Page 19: U MAMCFLÁKÚL

19

A második világháború tanulságai, a modern kriptográfia németek túlzottan bíztak az Enigmában USA: nyelvi korlát kihasználása: navahó indiánok alkalmazása -

>lényegében nem kell titkosítani! (kódbeszélők) Lorenz-kód (Hitler és a vezérkar között) angolok feltörték -> és

sikerült gépesíteni -> programozható számítógépek megteremtése (Colossus/Neumann János)

megjelenik a SZÁMÍTÓGÉP a titkosításban és a kódtörésben számokkal dolgozunk (ASCII) kettes számrendszer függvények az első számítógépesített kódolási eljárások: Lucifer kulcsmegosztás problémája előtérben

Page 20: U MAMCFLÁKÚL

20

A modern kriptológia eszköztára

A hangsúly a gyakorlati feltörhetetlenségre helyeződött. Általánosan elmondható, hogy olyan nehézségű titkosítást kell

választanunk, hogy egy esetleges feltörési kísérlet erőforrás- igénye (pénz, idő, ember) nagyobb legyen, mint a feltört információból elérhető haszon.

Egyirányú függvények: f egyirányú, ha x ismeretében y = f(x) könnyen számolható, de adott y-hoz a fenti tulajdonsággal rendelkező x-et megtalálni nehéz.

y=f(x)=2x; C=8=y, akkor könnyen kitalálható, hogy x=4. Ezért a jó függvény megtalálása a cél, még akkor is, ha ismert az f fv.

Például véges testekben y = x^2 könnyű, x = y^(1/2) nehéz.

Page 21: U MAMCFLÁKÚL

21

Részösszefoglalás: szimmetrikus rejtjelezés

Alice Bob

Biztonságos csatorna <- itt a probléma!!!!!!

Nyilt csatorna

Page 22: U MAMCFLÁKÚL

22

Szimmetrikus rejtjelezés

Rejtjelezés: c = E(m)m = D(c)

Kulcsos rejtjelezés:c = E(k,m)m = D(k’,c)

Szimemtrikus algoritmus: k = k’ (vagy legalábbis könnyen kiszámítható egyikből a másik).

található jó egyirányú függvény -> probléma: mi legyen a kulcscsal?

Page 23: U MAMCFLÁKÚL

23

Szimmetrikus rejtjelezés 2. Az algoritmus biztonsága kizárólag a kulcson

alapszik Algoritmusok: DES, RC4, RC5, Blowfish, Rijndael

(AES) … valódi véletlenszerű, egyszeri kulcsosak

feltörhetelenek -> „forró drót” drága, nehézkes

Page 24: U MAMCFLÁKÚL

24

Nyilvános kulcsú rendszerekSzimmetrikus rendszereknél problémák: Túl sok kulcs. N résztvevő esetén O(N^2) Bonyolult a kulcsok cseréje. Személyes

találkozást, vagy megbízható harmadik személyt igényel.

Megoldás: Nyilvános kulcsú rendszerek

Page 25: U MAMCFLÁKÚL

25

Nyilvános kulcsú rendszerek

Alice Bob

Nyilt csatorna

Nyílt csatorna

Nyilvános kulcs

Titkoskulcs

Page 26: U MAMCFLÁKÚL

26

Nyilvános kulcsú rendszerek 1976-ban vetette fel az ötletet Whitfield Diffie és Martin

Hellman -> szimmetrikus kódolás ->DES,2DES,3DES Megoldható a probléma: kétkulcsos láda Alice, Bob, Cecil között matematika: modulusok-elmélete, óra-számtan,

maradékok, ebben valódi egyirányú-függvényeket tudunk alkotni

3^x=1 (mod 7) x=? ; x=5 nem jó, sok. x=6 jó közös kulcs kialakítása, Alice és Bob közösen kidolgozza a

kulcsot, de nem kell magát a kulcsot átadniuk, ez nem nyilvános! 1978 Ron Rivest, Adi Shamir, Leonard Adleman – RSA

aszimmetrikus, pl. Alice csak rejtjelezni tud, desifrírozni ua. kulccsal nem tud! Más a sifrírozó és más a desifrírozó kulcs!

láda-hasonlat: „Bob lakatja a boltban” -> privát kulcs, nyilvános kulcs fogalma

nehéz volt matematikai függvényt találni

Page 27: U MAMCFLÁKÚL

27

DES

Data Encryption Standard USA-beli szabvány Titkos kulcsú algorimus 56 bites kulcsot használ Nyílt szöveget 64 bites blokkonként kódoljuk, ami

során szintén 64 bites titkos üzeneteket kapunk Az algoritmus, melynek paraméteréűl egy 56 bites

kulcs szolgál 19 különálló fokozatból épül fel

Page 28: U MAMCFLÁKÚL

28

DES kódolása

Első lépés egy kulcsfüggetlen keverés 64 bites bemeneten, az utolsó lépés ennek pontosan az inverz művelete

Az utolsót megelőző lépésben az első 32 bites részt felcsréljük a hátsó 32 bites résszel

A maradék 16 lépés mükődése ehhez hasonló A dekódolást ugyanazzal a kulccsal végezhetjük, mint a

kódolást(csak a lépések sorrendje fordított)

Page 29: U MAMCFLÁKÚL

29

IDEA

International Data Encryption Algorithm két svájci kutató fejlesztette ki 128 bites kulcsot használ jelenleg nem ismert olyan módszer amely

emberi idő alatt feltörné az IDEA-t az algoritmus hasonló a DES-hez

Page 30: U MAMCFLÁKÚL

30

RSA

(Rivest, Shamir, Adleman) nyilvános kulcsú gyakorlatilag feltörhetelen 2000 szeptember 20-án járt le a szabadalom egyetlen hátránya, hogy túl lassú nagyobb

adahalmaz kódolására

Page 31: U MAMCFLÁKÚL

31

RSA algoritmus alapja: moduláris aritmetika, számelmélet

nagy prímszámok kellenek > 10100 Alice: n = p*q és z = (p-1)*(q-1) /pl. n=17*11=187; z=160/

legyen e z-hez képest relatív prím /e=7/

Alice nyilvános kulcsa az (e, n) pár -> aki üzenetet akar küldeni A-nak Kódolás C = Pe mod n /C=887=11 (mod 187)/

keressünk egy olyan d-t, amelyre e*d = 1 (mod z) /7*d=1

(160) d=23/ - azaz e*d z-vel osztva 1 maradékot ad a titkos kulcs a (d, z, q, p) Dekódolás: P = Cd (mod n) /P=1123 =88 (187)/

számolásigényes!

Page 32: U MAMCFLÁKÚL

32

RSA algoritmus 2. biztonságát az adja, hogy nem ismert olyan módszer, amely meg

tudná határozni p, q-t illetve z-t az n faktorizálása nélkülA legnagyobb számok, amiket 1990-es évek végén prímtényezőire tudnak bontani a matematikusok, 130-140 jegyűek. Egyes speciális típusú számok felbontásával 155 vagy több jegyig is el lehet jutni. (Egy 512 bites kulcs kb. 155 jegyű!)

Tipikus méretek n-re: 512, 768, 1024, 2048, 4096. Az utóbbi három tekinthető biztonságosnak (jelenleg)

digitális aláírás -> tényleg mi küldtük!

feltörése: összes kulcs kipróbálása (brute-force)

angol titkosszolgálat: RSA előtt évtizeddel kidolgozta Cocks

Page 33: U MAMCFLÁKÚL

33

Kommunikáció RSA-val

A BA

B

B+ +

A B+ +

A=

• Alice rejtjelezi az üzenetet Bobnak és alá is írja. • Természetesen bármelyik fázis kihagyható.

Page 34: U MAMCFLÁKÚL

34

Jelen bármely kód

megfejthető, ha másképp nem, akkor kulcspróbálgatással: ezt 100 millió db 100 MHz,

8 MB RAM-os gép 10^130 nagyságrendű n esetén 15 másodperc alatt elvégzi, ezért a szabvány: 10^308 nagyságrend

szimmetrikus kódolás (DES)->

Kulcs hossza (bit)

Az összes kulcs teszteléséhez szükséges idő hossza

(Deep Crack- Deep Crack melynek megalkotása dollármilliókba került -

másodpercenként 90 milliárd kulcsot próbál ki )

40 10 sec

56 7 nap

72 1 381 év

88 90 544 142 év

104 5 933 900 946 398 év

12899 554 337 900 332 014 087

év

Page 35: U MAMCFLÁKÚL

35

Thomas Jefferson és Henry David Thoreau eszmei örököseinek valló kriptolibertariánusok megjelenése

Philip Zimmermann megírta 1991-ben a PGP/Pretty Good Privacy, vagyis Egészen Tisztességes Titkosítás, a szimmetrikus+RSA vegyítése. A szimmetrikus kódolás (IDEA)+aszimmetrikus (RSA) együtt, a kulcs kódolása RSA-val/. Akár katonai szintű 1024-es bites kulccsal is védhetjük elektronikus magánlevelezésünket a kíváncsi szemektől

A PGP az RSA algorimus alkalmazása e-mail-ek titkosítására

Page 36: U MAMCFLÁKÚL

36

Jövő

Az üzleti élet kihívásai, mivel a DES már nem biztonságos

Az USA kiviteli tilalmának lehetséges hatásai: megjelenhetnek az izraeli és kínai titkosító algoritmusok,tehát az USA elveszítheti elsőségét az informatikai piacon

kvantum-számítógépek és a kvantum-titkosítás