Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 1 ELEKTRONICKÝ PODPIS – využití v bankovnictví (jednodenní seminář, Bankovní institut vysoká škola, a.s., ) Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc. AEC spol. s r.o. Norman Czech Republic
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 2 Úvod 4 Kryptosystémy s veřejným klíčem, historie – vývoj 4 užívaná hodnotící kriteria pro vlastnosti systémů s veřejným klíčem: 4 a) bezpečnost (obtížnost řešitelnosti příslušných kryptoanalytických problémů) 4 b) velikost klíčů 4 c) velikost podpisů 4 d) rychlost 4 e) vhodnost pro implementace v podobě hardwaru, softwaru resp. firmwaru 4 f) náročnost implementace (objem potřebného kódu, počet cyklů, spotřeba proudu atd.), 4 g) nároky na uložení 4 h) průmyslové a vládní normy 4 i) pokrytí patenty j) licenční politika
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 3 Proč eliptické křivky? 4 Teorie hledá především další cesty jak zlepšit vlastnosti systémů s veřejným klíčem. Jestliže v dosažené rychlosti šifrování se zatím žádné význačně změny nerýsují, je tomu jinak z hlediska velikosti použitých klíčů. V tomto směru význačná zlepšení přináší implementace (90 léta) systémů s veřejným klíčem na bázi tzv. eliptických křivek
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 4 Historie přišli nezávisle na sobě pánové Neil Koblitz a Victor Miller k návrhu využívat pro kryptografické účely grupy na eliptických křivkách
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s Co jsou eliptické křivky ? 4 rovinná křivka rozumíme množinu bodů, které splňují rovnici F (x, y) = 0. 4 kubické křivky, závislost proměnných je popsána rovnicí třetího stupně. Jejich speciální podtřídou jsou eliptické křivky. 4 hypereliptické křivky, supereliptické křivky 4 V kryptografii jsou předmětem zájmu eliptické křivky definované nad konečnými tělesy.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 6 Definice elipt. křivky 4 Eliptickou křivkou E rozumíme množinu všech bodů P = (x, y), které splňují určitou rovnici spolu s bodem O (bod v nekonečnu). 4 Bod křivky: P = (x, y), x a y jsou prvky prvky tělesa Z n. 4 V kryptografii buď n=p (p je prvočíslo, prvočíselné křivky), anebo n=2 m (binární křivky)
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 7 Elipt. křivky-prvočíselné těleso 4 Weierstrassova rovnice y 2 = x 3 + ax + b, kde a a b jsou celá čísla mod p, přitom nesmí platit: 4a b 2 0 (mod p).
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 8 Elipt. křivky- binární těleso Weierstrassova rovnice má tvar: 4 y 2 + xy = x 3 + ax 2 + b, kde a a b jsou celá čísla mod q, 4 přitom nesmí platit: b = 0.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 9 Příklad 4 E je křivka daná rovnicí 4 y 2 = x x nad tělesem Z 13. Potom body křivky E jsou 4 { O, (1,4), (1,9), (3,6), (3,7), (8,5), (8,8), (10,0), (11,4), (11,9)}. 4 4 Řád E je #E (Z 13 ) = 10.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 10 Obrázek
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 11 Eliptické kryptosystémy 4 Pro kryptografické aplikace těchto křivek je třeba vyřešit ještě celou řadu otázek zejména výpočetního charakteru. Týká se to algoritmů pro sčítání dvou bodů eliptické křivky, násobení bodu eliptické křivky číslem, existují různé způsoby, jak vyjádřit jednotlivé body eliptické křivky s cílem zjednodušení příslušných aritmetických operací atd. 4 Při generování konkrétních eliptických křivek (pro kryptografické účely) je vhodné generovat parametry křivky náhodně. Pomocí tzv. seedu lze zabezpečit dokonce, že strana, která příslušnou křivku generovala, může později prokázat, že daná křivka skutečně náhodně vygenerována byla. Touto cestou ujistí druhou stranu, že v systému nejsou žádná skrytá zadní vrátka, která umožňují první straně získání nějakých výhod (např. spočtení soukromého klíče druhé strany).
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 12 Eliptické kryptosystémy 4 Parametry eliptického kryptosystému (q = p je prvočíslo): 4 - prvočíslo p definující velikost příslušného pole F p, p > 3; 4 - (nepovinně) bitový řetězec SEED délky alespoň 160 bitů, pokud eliptická křivka byla náhodně generována; 4 - a, b - dva prvky tělesa F p, které definují rovnici eliptické křivky E: y 2 = x 3 + ax+ b; 4 - x, y - dva prvky tělesa F p, které definují bod G = (x,y), tento bod má prvočíselný řád a G O ; 4 - řád r bodu G (musí platit r and r > 4 q), tento řád bodu G je dělitelem řádu křivky E; 4 (nepovinně) kofaktor h = #E / r.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 13 Eliptické kryptosystémy 4 Parametry eliptického kryptosystému (q je rovno 2 m ). 4 - číslo q = 2 m definující velikost příslušného pole F q, dále jaká báze je použita k vyjádření jednotlivých prvků tohoto pole (trinomialní, pentanomialní) a příslušný redukční polynom řádu m; 4 - (nepovinně) bitový řetězec SEED délky alespoň 160 bitů, pokud eliptická křivka byla náhodně generována; 4 - a, b - dva prvky tělesa F q, které definují rovnici eliptické křivky E: y 2 + xy = x 3 + ax 2 + b; 4 - x, y - dva prvky tělesa F q, které definují bod G = (x,y), tento bod má prvočíselný řád a G O ; 4 - řád r bodu G (musí platit r and r > 4 q), tento řád bodu G je dělitelem řádu křivky E; 4 (nepovinně) kofaktor h = #E / r.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 14 Eliptické kryptosystémy 4 Dvojice klíčů pro eliptické kryptosystémy: 4 Pro danou množinu parametrů eliptického kryptosystému je dvojice soukromý a veřejný klíč vytvářena následovně. Soukromý klíč s je celé číslo náhodně vygenerované v intervalu 0 s r. Veřejný klíč je bod W na eliptické křivce spočtený jako W = sG.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 15 Výpočet řádu eliptické křivky Platí následující tzv. Hasseho meze pro hodnotu n= #E řádu eliptické křivky: q - 2 q + 1 n q + 2 q + 1
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 16 Problematika bezpečnosti eliptických křivek. 4 Pro úlohu eliptického diskrétního logaritmu není znám žádný subexponenciální logaritmus (jako je tomu v případě obvyklého diskrétního logaritmu). Pro úlohu v její obecné podobě je nejlepším známým algoritmem Pollardova -metoda, jejíž složitost je ( n/2), každým jednotlivým krokem je součet na eliptické křivce. Číslo n je zde největší prvočíselný dělitel velikosti grupy eliptické křivky.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 17 Srovnatelná bezpečnost různých kryptosystémů při různých délkách klíčů Blok.šifry RSA/DL Eliptické křivky
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 18 Výpočty parametrů 4 Matematicky velmi náročná úloha 4 Doporučení náhodného generování parametrů 4 NIST – doporučované parametry (192, 224, 256, 384 a 521prvočíselná tělesa, resp. 163, 233, 283, 409 a 571 – binární tělěsa). 4 SECG (Certicom, University of Waterloo) 4 ANSI X9.62, ANSI X9.63
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 19 Práce skupiny P1363 ( IEEE). 4 Tři základní typy kryptosystémů: 4 1) RSA, Rabin-Williams 4 2) diskrétní logaritmus (DSA, Diffie- Hellman, El Gamal) 4 3) eliptický diskr. logaritmus (ECDSA,...)
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 20 Mezinárodní normy 4 Tomu, aby eliptické křivky již dnes plně nahradily RSA a byly více než důstojným nástupcem starších kryptosystémů již tedy nic nebrání a fakticky se tak již i děje. RSA stále ještě bude používána v řadě existujících systémů a zůstane tak ještě po nějakou dobu dominantním používaným kryptosystémem s veřejným klíčem. Pokud se však jedná o přípravu budoucích systémů jsou přednosti eliptických kryptosystémů nesporné.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 21 Shrnutí 4 Primární výhodou kryptosystémů na bázi eliptických křivek je jejich velká kryptografická bezpečnost vzhledem k dané velikosti klíče. Význačně kratší délka klíčů (např. oproti RSA) vede ke kratším certifikátům i menším parametrům systému a tedy i k větší výpočetní efektivnosti algoritmů. Druhá výhoda je v tom, že fakticky všechna již známá použití v systémech na bazi diskrétního logaritmu (kryptografické protokoly, ElGamalův podpis atd.) lze převést do systémů na bázi eliptických křivek.
Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s. 22 Dotazy, upřesnění ?