Ing. <stepan.sem@gmail.com> Festival Fantazie, 2013
Osnova 1 Základní pojmy Obtížnost Kryptografie 2 Základní princip Matematické souvislosti Historie 3
Vymezení pojmů Základní pojmy Obtížnost Kryptografie kódování šifrování přizpůsobení zařízení / kanálu morseovka ASCII (Latin2) Unicode utajení obsahu sdělení Enigma
Kódování textu Základní pojmy Obtížnost Kryptografie Latin2 M A E L S T R Ö M Latin2 10 77 65 69 76 83 84 82 214 77 Latin2 2 01001101 01000001 01000101 01001100 01010011 01010100 01010010 11010110 01001101 Latin2 16 48 41 45 4C 53 54 52 D6 48 LatinN!
Historie zabezpečení Základní pojmy Obtížnost Kryptografie kštice hůl Caesarova šifra Vernamova šifra veřejný vs. tajný algoritmus
Matematický kontext Základní pojmy Obtížnost Kryptografie Z,N,N 0 10 3 2 10 = 1024
Obtížné problémy Základní pojmy Obtížnost Kryptografie
Obtížné problémy Trávníkář Základní pojmy Obtížnost Kryptografie
Obtížné problémy 2 Základní pojmy Obtížnost Kryptografie
Základní pojmy Obtížnost Kryptografie Obtížné problémy 2 První kontakt
Základní pojmy Obtížnost Kryptografie Obtížné problémy součet podmnožiny P vs. NP důkaz místo slibů? Problémy milénia, CMI (1 mil. $) N k vs k N,...,N! Součet podmnožiny x 1 w 1 + x 2 w 2 + + x N w N = K N i=1 x i w i = K? x i {0;1}
Součet podmnožiny Základní pojmy Obtížnost Kryptografie Součet podmnožiny 3x 1 + 5x 2 + 7x 3 + 2x 4 = 9 x = (0;0;1;1)
Problém faktorizace Základní pojmy Obtížnost Kryptografie prvočíselný rozklad 60 = 2 2 3 5 m = p q p,q =? p, q prvočísla
Modulární algebra Základní pojmy Obtížnost Kryptografie programátorské % (Google kalkulačka) 3 7 mod 10 (3 7) % 10 1
Modulární algebra Základní pojmy Obtížnost Kryptografie
Problém diskrétního logaritmu Základní pojmy Obtížnost Kryptografie M = g x mod n x =?
John Forbes Nash, Jr. Základní pojmy Obtížnost Kryptografie John Forbes Nash, Jr. 1928 1994 Nobelova cena (ekonomie) návrh kryptosystému založeného na obtížně řešitelném problému dopis NSA (1955) utajen do 2011 A Beautiful Mind
Kryptosystém Základní pojmy Obtížnost Kryptografie Obrázek : (A)symetrický kryptosystém [PDK]
(A)symetrická kryptografie Základní pojmy Obtížnost Kryptografie symetrická kryptografie K 1 = K 2 asymetrická kryptografie (kryptografie s veřejným klíčem) K 1 K 2 bezpečnější pomalejší (cca 1000 ) kombinování asymetricky vyměnit klíče data šifrovat symetricky
Základní princip Matematické souvislosti Historie Ron Rivest, Adi Shamir, Leonard Adleman (1977) Clifford Cocks (1973, odtajněno 1997) problém faktorizace (ϕ(m))
Základní princip Matematické souvislosti Historie
Základní princip Matematické souvislosti Historie (x i ) j mod m = x i j mod (p 1)(q 1) = 1 i,j N
Konstrukce kryptosystému Základní princip Matematické souvislosti Historie velká prvočísla p,q,p q 300 cifer (1000 bitů) modul m = pq zlikvidovat p, q volba klíčů veřejného (i) soukromého (j) zveřejnění m, i
Prvočísla do 1000 Základní princip Matematické souvislosti Historie 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997
Eulerova funkce Základní princip Matematické souvislosti Historie ϕ(m) : počet čísel < m nesoudělných s m m, n nesoudělná ϕ(mn) = ϕ(m)ϕ(n) ϕ(p k ) = p k p k 1 = p k 1 (p 1) p prvočíslo počet čísel p k soudělných s p k (násobkem) n p p k n p k 1
Eulerova funkce Základní princip Matematické souvislosti Historie Výpočet hodnot p, q různá prvočísla ϕ(p) = p 1 ϕ(p k ) = (p 1)p k 1 ϕ(p q) = (p 1)(q 1)
Eulerova věta Základní princip Matematické souvislosti Historie Eulerova věta a ϕ(m) mod m = 1 a, m N; nesoudělná ϕ(n) 1 1 ϕ(n) x i 1 ϕ(n) ax i a ϕ(n) x i 1 mod n ax j ax k mod n j = k 1 a ϕ(n) mod n
Volba klíčů Základní princip Matematické souvislosti Historie i nesoudělné s ϕ(m)! j = i ϕ(ϕ(m)) 1 mod ϕ(m) Důkaz. a ϕ(m) mod m = 1 a ϕ(ϕ(m)) modϕ(m) = i i ϕ(ϕ(m) 1 mod ϕ(m) = i j mod ϕ(m) = 1
Ilustrativní kryptosystém Základní princip Matematické souvislosti Historie osmibitové šifrování p = 17,q = 19 m = 17 19 = 323 256 ϕ(17 19) = (17 1) (19 1) = 288 ϕ(ϕ(m)) = ϕ(2 5 3 2 ) = (1 2 4 ) (2 3 1 ) = 96 i = 7 j = i 96 1 mod 288 = 247
Ukázka šifrování Základní princip Matematické souvislosti Historie M A E L S T R O M ASCII 77 65 69 76 83 84 82 79 77 ASCII i=7 5 65 45 256 155 0 64 79 5
Slabiny Základní princip Matematické souvislosti Historie nešifrovné zprávy 0, 1 x 2 mod (p q) = x x 1 = (p q 2 mod q) p x 2 = (q p 2 mod p) q σ = (1 + d(i 1,p 1)) (1 + d(i 1,q 1)) Ilustrativní kryptosystém σ 9 x 1 = (17 17 mod 19) 17 = 9 17 = 153 (OK) x 2 = (19 15 mod 17) 19 = 9 19 = 171 (OK) σ = (1 + d(6,16)) (1 + d(6,18)) = (1 + 2) (1 + 6) = 21 (KO)
Důkaz Základní princip Matematické souvislosti Historie i j = k ϕ(m) + 1 (x i ) j = x ij = x k ϕ(m)+1 x ϕ(m) mod m = 1 x k ϕ(m) mod m = 1 k mod m = 1 mod m x k ϕ(m)+1 mod m = x k ϕ(m) x mod m = x
Leonhard Euler Základní princip Matematické souvislosti Historie Leonhard Euler 1707-1783 švýcarský matematik, fyzik
Malá Fermatova věta Základní princip Matematické souvislosti Historie Malá Fermatova věta b N, p prvočíslo; nesoudělná b p 1 mod p = 1
(Malá) Fermatova věta Základní princip Matematické souvislosti Historie Star Trek: TNG Hotel Royale (Velká) Fermatova věta (1993, Andrew Wiles)
Pierre de Fermat Základní princip Matematické souvislosti Historie Pierre de Fermat 1601(1607?)-1665 francozský právník, soudce matematik amatér x n + y n = z n
Použití () komunikace (PGP, GPG) end to end instant messaging Jabber, Pidgin (ICQ?) elektronická pošta (Thunderbird) elektronické bankovnictví elektronický podpis zabezpečené prohlížení webu
Elektronický podpis Ilustrativní podepisovací mechanismus (x j ) i mod m = x [ h(m) j ] i mod m = h(m)
Pro samostatné studium nástroje Faktorizace menších čísel http://laman.webz.cz/rozklad.php?num=288 Aritmetika velkých čísel https://defuse.ca/big-number-calculator.htm Největší společný dělitel http://gcd.awardspace.com/ Modulární násobení, umocňování velkých čísel http://www.cs.virginia.edu/cs200/lectures/notes36.html Převod do binární, hexadecimální soustavy http://easycalculation.com/decimal-converter.php Modulární aritmetika velkých čísel: http://web.math.princeton.edu/math_alive/crypto/lab2/ ModCalculator.html
Literatura [PDK] LEDA 2006 témata kódování šifrování digitalizace komprese teorie informace
Literatura volně související, zájmová Academia 2003 (1998) základní myšlenky 140 stran A5 čistého textu pro naprosté laiky
Literatura volně související, zájmová Triton 2011 policejní město, GPG TOR další bezpečností mechanismy
Obrázky, fotografie Rivset, Shamir, Adleman http://www.cs.virginia.edu/cs200/lectures/notes36.html Leonhard Euler https://en.wikipedia.org/wiki/file:leonhard_euler.jpg John Forbes Nash, Jr. http://www.freeinfosociety.com/media.php?id=1198 tričko http://www.cs.virginia.edu/cs200/lectures/notes36.html Informační znak http://www.clker.com/cliparts/m/c/f/a/m/8/info-signmd.png
Obrázky, fotografie Star Trek Nová generace, 2x12 (Hotel Royale) První kontakt Trávníkář