chch Zajímavosti z kryptologie Vít Hrubý 22. 8. 2011
Kryptologie Hledání způsobu bezpečné komunikace, která by zajistila, že nikdo nepovolaný se ke zprávě nedostane Steganografie - ukrytí zprávy Kryptografie - zašifrování zprávy
Steganografie Způsob tajné komunikace, spočívající v ukrytí zprávy, tak že se k ní nepřítel nedostane Řecko - voskové psací tabulky, zpráva napsaná na hlavě otroka Čína - hedvábné kuličky Itálie - Giovanni Porta - vejce natvrdo
Kryptografie Šifrování - otevřený text se převádí na šifrový text Dešifrování - opačný proces šifrování, příjemce získá z šifry otevřený text Luštění(kryptoanalýza) - získávání otevřeného textu z šifer, avšak bez znalosti šifrovacího systému a klíče. Kryptografie se dělí na dva základní druhy 1 Transpozice 2 Substituce
Transpozice Transpoziční šifra mezi sebou zamění písmena zprávy-permutace písmen. Počet možných permutací je roven n! Zpráva o 3 písmenech 3! = 6 možností. Průmerná věta - 40! = 8 10 47 možností Počet možných klíčů určuje bezpečnost šifry Transpoziční klíč
Transpozice Skytala Plot Př. Otevřený text: Transpoziční šifra plot TASOINŠFALT RNPZČÍIRPO Šifrový text: TASOINŠFALTRNPZČÍIRPO
Substituce nahrazení písmen otevřeného textu jinými písmeny nebo znaky 4. století Kamasútra Julius Caesar - Zápisky o válce Galské Caesarova šifra - šifrová abeceda vznikne posunutím otevřené abecedy o tři místa ABCDEF GHI J KLMNOP QRST UVWXYZ XYZ ABCDEFGHI J KL MNOPQRST UVW
Monoalfabetcká substituční šifra U Caesarovy je míra bezečnosti nízká, existuje 25 potencionálních klíčů Šifrovací abeceda lze vytvořit podle daného klíče, hesla. Obecně se tato metoda nazývá monoalfabetcká substituční šifra. Heslo: šifry ABCDEFGHI J K L MNOP QRST UVWX YZ SI F RYAB CDEGHJ KL MNOPQT UV WXZ náhodné uhodnutí klíče je téměř nemožné
Kryptoanalýza první metody - 10. století Arábie, lingvistický výzkum Koránu. Frekvenční kryptoanaýza Čeština - nejčastější písmeno E(10,5%) Zdokonalení šifer - klamače, nomenklátory, homofonní šifra četnost výskytu písmen v českém jazyce
Polyalfabetická šifra využívá k šifrování ne jednu, ale více šifrovacích abeced. 16.stol. Blaise de Vigenere - Vigenerova šifra (26 abeced) Klíčové slovo - heslo S I F R A S I F R A S I F R A S Otevřený text B L A I S E D E V I G E N E R E Šifrový text T T F Z S W L J M I Y M S V R W
Neprolomitelná šifra Vyluštění Vigenerovy šifry - Charles Babbage 19.století (specifičnost jazyka) Vernamova šifra - absolutně bezpečná (matematicky dokázáno). Šifrovací heslo je stejně dlouhé jako samotná zpráva. V praxi těžko použitelné - jedinečnost hesla, přesný počet znaků, náhodná písmena
Polybiův čtverec Substituční šifra, kde každé písmeno je nahrazeno dvojicí čísel. 1 2 3 4 5 1 A B C D E 2 F G H I/J K 3 L M N O P 4 Q R S T U 5 V W X Y Z Tabulka se obvykle vytváří pomocí hesla. Podle hesla Ostrava by vypadala takto: 1 2 3 4 5 1 O S T R A 2 V B C D E 3 F G H I/J K 4 L M N P Q 5 U W X Y Z
Kryptologie 1. světové války Na konci 19. století vynalezeno rádio(guglielmo Marconi) S vynálezem rádia vzniká potřeba vysílané zprávy bezpečně šifrovat. Až do konce 1 sv. války nikdo nevymyslel šifru relativně snadno rozluštitelnou šifru(německá šifra ADFGVX) Používání kódových knih. Vstup USA do války díky rozluštění Zimmermanova telegramu.
ADFGVX Březen 1918-před zahájením německé ofenzívy Rozluštěna G-J. Painvinem, porovnáváním opakujících se slov na začátcích a koncích zpráv. Šifra spočívá v kombinaci dvou metod-substituce(pomocí substitučního klíče) a transpozice(pomocí permutačního klíče). Substituce se provádí pomocí písmenkové analogie Polybiova čtverce. A D F G V X A A B C D E F D G H I J K L F M N O P Q R G S T U V W X V Y Z 1 2 3 4 X 5 6 7 8 9 0
ADFGVX Otevřený text: Letní škola Substituční klíč: Je 22. srpna Transpoziční klíč: Léto Substituční tabulka: Substituovaný text: A D F G V X A J E 2 S R P D N A B C D F F G H I K L M G O Q T U V W V X Y Z 1 3 4 X 5 6 7 8 9 0 L E T N I S K O L A FV AD GF DA FF AG FG GA FV DA
ADFGVX Substituovaný text se napíše po řádcích do tabulky, která má počet sloupců stejný jako počet písmen transpozičního hesla. L E T O 2 1 4 3 F V A D G F D A F F A G F G G A F V D A Šifrový text se nakonec napíše po sloupcích vzestupně. VFFGVFGFFFDAGAAADAGD
Mechanizace šifrování Šifrovací disk - 15. století, Ital Alberti, mechanická pomůcka k Vigenerově šifře E.H.Hebern - 1918 první šifrovací stroj s rotorem, později pětirotorový - 26 5 možností Arthur Schrebius - 1927 odkoupil patent od Nizozemce H.A.Kocha, stroji dal název Enigma(řecky záhada)
ologie chch Enigma vojenská enigma se skládala ze tr í c ástí: 1 klávesnice pro zadávání otevr eného textu 2 šifrovací jednotka s disky(rotory) 3 signalizac ní lalmpic ky
Enigma Příklad disku(pro jednoduchost se 6 písmeny) a b c d e f C A D B E F Při zápisu každého písmene se disk otočí o 1/6(1/26) a b c d e f A D B E C F
Enigma Důležitou součístí stroje byl reflektor, umožňující jednoduchost dešifrování
Enigma Bezpočnost byla zvýšena dalšími dvěma prvky: 1 vyměnitelné šifrovací disky 2 propojovací deska
Enigma Celkový počet nastavení Enigmy byl závislý na: 1 Nastavení disků - 26 3 = 17576 2 Uspořádání disků - 3! = 6 3 Nastavení propojovací desky - 100 391 791 500 17576 6 100 391 791 500 = 1, 06 10 16 možných nastavení
Luštění Enigmy Polské Biuro Szyfrow Plány stroje získané špionáží - neloajální Němec H.T.Schmidt Problém při luštění - unikátní třímístný klíč Marian Rejewski - tabulka závislostí jednotlivých písmen denního klíče
Luštění Enigmy tabulka závíslostí: AB CDEF GHI J KL MNOPQRST UVWXYZ FQHPL WOGBMVRX UY CZ I TNJ EA SDK Rejewski provedl cyklickou dekompozici této permutace, tím uspořádal písmena do cyklů. A F W A B Q Y K V E L R I B C H G O Y D P C J M X S T N U J Délka cyklů - 4,9,7,7
Luštění Enigmy Důležitým zjištěním byl, že při změně písmen na propojovací desce se nezměnila délka cyklu Zameníme-li K L A F W A B Q Y L V E K R I B C H G O Y D P C J M X S T N U J Délka cyklů - 4,9,7,7
Luštění Enigmy Rejevski zůžil počet možných denních klíčů z 1, 06 10 16 na 105 456(17 567 6) Katalog cyklů podle všech možných natavení Šifrování propojovací desky luštěno logickou úvahou Bomby-mechanické stroje hledající denní nastavení 1938-další dva disky 60 možných nastavení disků
Britští luštitelé Bletchy park Enigma Luftwaffe - chyby v šifrování Námořní Enigma - 8 disků Další stroje - SZ-40, SZ-42(binární šifrování), Japonský Purpur
Šifrování za války USA-Navaho SSSR-Jednorázové klíče Británie-Naval cipher, Playfair
Playfair Búrské války, 1.sv.válka, 2.sv.válka(SOE) Princip - Playfair nešifruje jednotlivá písmena, ale dvojice písmen. Pomocí hesla "příklad Playfair"vytvoříme tabulku 5x5 P R I/J K L A D Y F B C E G H M N O Q S T U V W X Z Text, který chceme zašifovat nyní rozdělíme do dvojic. Otevřený text:ostravská univerzita OS TR AV SK AU NI VE RZ IT AX
Playfair Nyní nastanou tři možnosti: 1 Dvojice písmen leží jiném řádku a sloupci - písmena se doplní na obdelník.(tr OL) 2 Písmena leží ve stejném řádku - jako šifrová se berou písmena vpravo(os QT) 3 Písmena leží se stejném sloupci - vybírají se písmena pod (SK XF) P R I/J K L A D Y F B C E G H M N O Q S T U V W X Z Šifrový text: QT OL DU XF CP QP RO LV LQ FU
Československé šifrování Praha-Londýn(Paříž, Istanbul, Moskva) Metoda TTS(transpozice, transpozice, substituce) Sady hesel(0-9,r) Otevřený text: Ostravaská univerzita Hesla:2-Beneš, R-Masaryk 1.Transpozice: B E N E Š 1 2 4 3 5 O S T R A V S K A U N I V E R Z I T A Výsledný text: OVNZSSIIRÁEATKVTAUR
Československé šifrování 2.Transpozice: M A S A R Y K 4 1 6 2 5 7 3 O V N Z S S I I R Á E A T K V T A U R Dostáváme: VRTZEUIKOIVSARNÁAST
Československé šifrování 3.Substituce:tabulka od čísla 22 A B C Č D E Ě F G H I J K L M 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 N O P Q R Ř S Š T U V W X Y Z 37 38 39 40 41 42 43 44 45 01 02 03 04 05 06 Ž.? - / 1 2 3 4 5 6 7 8 9 0 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 Výsledná šifra: 02414506270132343832024322413722224345 Rozdělená do bloků po 5 písmenech: 02414 50627 01313 43832 02432 24137 22224 34598
Šifrování veřejným klíčem Elektronika, výpočetní technika - binární šifrování Problém distribuce klíčů Alice a Bob W.Diffie, M. Hellman - jednosměrná funkce Obousměrná funkce y = 3x Jednosměrná funkce y 3x (mod 7) x 0 1 2 3 4 5 6 3x 0 3 6 9 12 15 18 3x (mod 7) 0 3 6 2 5 1 4
Princip Diffie-Hellman šifrování Fce α x (mod p), kde p je prvočíslo a α Z p, (2 α p 2) Na začátku se Alice a Bob veřejně domluví na hodnotách α a p Alice zvolí tajné číslo z Vypočítá A = α z (mod p) a pošle ho Bobovi Nyní vypočítá šifrovací klíč K = B z (mod p) Bob zvolí tajné číslo y Vypočítá B = α y (mod p) a pošle ho Alici Nyní vypočítá šifrovací klíč K = A y (mod p) Alice i Bob dospěli ke stejnému výsledku K (α z ) y = α zy = (α y ) z
Diffie-Hellman příklad α = 5, p = 7 Alice zvolí z = 4 A = 5 4 (mod 7) = = 625 (mod 7) = 2 Bob zvolí y = 3 B = 5 3 (mod 7) = = 125 (mod 7) = 6 K = 6 4 (mod 7) = = 1296 (mod 7) = 1 K = 2 3 (mod 7) = = 8 (mod 7) = 1 Z hlediska útočníka nelze klíč snadno zjistit. Známé jsou hodnoty α, p, A, B. Jde o to vypočítat log α A (mod p) = z. Tento úkol se nazývá Discrete logarithm problem.
Asymetrické šifrování První myšlenka W.Diffie Rozdílný šifrovací a dešifrovací klíč RSA(Rivest, Shamir, Adleman)-první asymetrická šifra. Založena na součinu dvou velkých prvnočísel Faktorizace
RSA Alice si zvolí dvě velká náhodná prvočísla p a q (v řádech 10 150 ) a vypočítá si následující hodnoty: n = p q Φ = (p 1) (q 1) = n + 1 p q e; (1 < e < Φ) a platí gcd(e, Φ) = 1 d; e d 1 (mod Φ) Jako Alicin veřejný klíč slouží dvojice (n,e).označme si otevřený text m a šifrový text c Šifrování se provádí pomocí funkce f : f : c = m e (mod n) Dešifrování se provádí inverzní operací f 1 : f 1 : m = c d (mod n)
RSA-příklad Chceme Alici poslat písmeno F. V ASCII kódu je F reprezentováno jako 1000110, v desítkové soustavě 70. Označíme m=70. Zvolíme čísla p=11 a q=13.tedy n = p q = 143. Vypočítáme hodnotu Φ = (p 1) (q 1) = 10 12 = 120. Zvolíme libovolně e = 7; gcd(e, Φ) = 1 Známe (n,e), můžeme zašifrovat zprávu: c = m e (mod n) = 70 7 (mod 143) = 60 Alice si vypočítá d=103; e d (mod Φ) = 1 a dešifruje zprávu: m = c d (mod n) = 60 103 (mod 143) = 70 = F
Umocňování v Z n Algoritmus: Vstup: a Z n, k Z; 0 k < n, kde k je ve dvojkové soustavě reprezentováno jako k = t i=0 k i2 i = k 0 2 0 + k 1 2 1 + + k t 2 t Výstup: b = a k mod n 1 Jesliže k = 0, pak 1 b 2 a A 3 Jestliže, k 0 = 1,pak a b a k 0 = 0,pak 1 b 4 i 1; t poved te: a) A 2 mod n A b) Jestliže k i = 1,pak A b mod n 5 b = a k mod n b = 60 103 mod 143 k = (103) 10 = (1100111) 2 i 0 1 2 3 4 5 6 k i 1 1 1 0 0 1 1 A 60 25 53 92 27 14 53 b 60 70 135 135 135 31 70
Identifikace v RSA Alice pošle Bobovi zprávu, jakou jistotu může mít Bob, že je zpráva právě od Alice? Šifrování RSA tuto identifikaci umožní: 1 Alice chce poslat zprávu. Zná Bobův veřejný klíč f B (n B, e B ) a svůj dešifrovací klíč f 1 A (n A, d A ) 2 K zašifrování podpisu P použije funkci f B f 1 A (P) 3 Bob k dešifrování použije nejprve svůj dešifrovací klíč f 1 B. Dostává f 1 B f Bf 1 1 A (P) = fa (P). Poté aplikuje Alicin veřejný klíč f A f 1 A (P) = P 4 f 1 A nezná nikdo jiný než Alice, zpráva je pravá
Budoucnost kryptologie Nalezení rychlých metod faktorizace Řešení problému diskrétních logaritmů Kvantové počítače
Literatura Singh S.: Kniha kódů a šifer, Nakladatelství dokořán a Argo, Praha 2003. Janeček J.: Rozluštěná tajemství, Nakladatelství XYZ, Praha 2008. Menezes A.,van Oorschot P., Vanstone S.: Handbook of applied cryptography,crc Press,1997. Koblitz N.: A course in Number Theory and Cryptograghy, Springer, New York 1994.
Děkuji za pozornost