Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

22
Jaroslav Pinkava - prosi nec 2000 Bankovní institut v 1 ELEKTRONICKÝ PODPIS – využití v bankovnictví (jednodenní seminář, Bankovní institut vysoká škola, a.s., 7.12.2000) Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc. AEC spol. s r.o. Norman Czech Republic

description

ELEKTRONICKÝ PODPIS – využití v bankovnictví (jednodenní seminář, Bankovní institut vysoká škola, a.s., 7.12.2000). Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc. AEC spol. s r.o.  Norman Czech Republic. Úvod. Kryptosystémy s veřejným klíčem, historie – vývoj - PowerPoint PPT Presentation

Transcript of Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Page 1: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

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., 7.12.2000)

Část V.Eliptické křivky. ECDSA.

Ing. Jaroslav Pinkava, CSc.

AEC spol. s r.o. Norman Czech Republic

Page 2: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

2

Úvod

Kryptosystémy s veřejným klíčem, historie – vývoj užívaná hodnotící kriteria pro vlastnosti systémů s veřejným klíčem: a) bezpečnost (obtížnost řešitelnosti příslušných kryptoanalytických

problémů) b) velikost klíčů c) velikost podpisů d) rychlost e) vhodnost pro implementace v podobě hardwaru, softwaru resp. firmwaru f) náročnost implementace (objem potřebného kódu, počet cyklů, spotřeba

proudu atd.), g) nároky na uložení h) průmyslové a vládní normy i) pokrytí patenty j) licenční politika

Page 3: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

3

Proč eliptické křivky?

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

Page 4: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

4

Historie

1985 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

Page 5: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

5

2. Co jsou eliptické křivky ?

rovinná křivka rozumíme množinu bodů, které splňují rovnici F (x, y) = 0.

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.

hypereliptické křivky, supereliptické křivky V kryptografii jsou předmětem zájmu eliptické

křivky definované nad konečnými tělesy.

Page 6: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

6

Definice elipt. křivky

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).

Bod křivky: P = (x, y), x a y jsou prvky prvky tělesa Zn.

V kryptografii buď n=p (p je prvočíslo, prvočíselné křivky),

anebo n=2m (binární křivky)

Page 7: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

7

Elipt. křivky-prvočíselné těleso

Weierstrassova rovnice

y 2 = x 3 + ax + b, kde a a b jsou celá čísla mod p,

přitom nesmí platit: 4a 3 + 27b 2 0 (mod p).

Page 8: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

8

Elipt. křivky- binární těleso

Weierstrassova rovnice má tvar: y 2 + xy = x 3 + ax 2 + b, kde a a b jsou celá

čísla mod q,

přitom nesmí platit: b = 0.

Page 9: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

9

Příklad

E je křivka daná rovnicí y 2 = x 3 + 10 x + 5

nad tělesem Z13. Potom body křivky E jsou {O, (1,4), (1,9), (3,6), (3,7), (8,5), (8,8),

(10,0), (11,4), (11,9)}.   Řád E je #E (Z13) = 10.

Page 10: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

10

Obrázek

Page 11: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

11

Eliptické kryptosystémy

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.

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).

Page 12: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

12

Eliptické kryptosystémy

Parametry eliptického kryptosystému (q = p je prvočíslo): -         prvočíslo p definující velikost příslušného pole Fp, p > 3;

-         (nepovinně) bitový řetězec SEED délky alespoň 160 bitů, pokud eliptická křivka byla náhodně generována;

-         a, b - dva prvky tělesa Fp , které definují rovnici eliptické

křivky E: y2 = x3+ ax+ b; -         x, y - dva prvky tělesa Fp , které definují bod G = (x,y), tento

bod má prvočíselný řád a G O; -         řád r bodu G (musí platit r 2160 and r > 4q), tento řád bodu

G je dělitelem řádu křivky E; (nepovinně) kofaktor h = #E / r.

Page 13: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

13

Eliptické kryptosystémy

Parametry eliptického kryptosystému (q je rovno 2m ). -         číslo q = 2m definující velikost příslušného pole Fq, 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;

-         (nepovinně) bitový řetězec SEED délky alespoň 160 bitů, pokud eliptická křivka byla náhodně generována;

-         a, b - dva prvky tělesa Fq , které definují rovnici eliptické křivky E: y2 + xy = x3+ ax2+ b;

-         x, y - dva prvky tělesa Fq , které definují bod G = (x,y), tento bod má prvočíselný řád a G O;

-         řád r bodu G (musí platit r 2160 and r > 4q), tento řád bodu G je dělitelem řádu křivky E;

(nepovinně) kofaktor h = #E / r.

Page 14: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

14

Eliptické kryptosystémy

Dvojice klíčů pro eliptické kryptosystémy: 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.

Page 15: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

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

Page 16: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

16

Problematika bezpečnosti eliptických křivek. 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.

Page 17: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

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

56 417 105

64 682 120

80 1464 149

86 1881 161

109 4047 206

Page 18: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

18

Výpočty parametrů

Matematicky velmi náročná úloha Doporučení náhodného generování

parametrů 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).

SECG (Certicom, University of Waterloo) ANSI X9.62, ANSI X9.63

Page 19: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

19

Práce skupiny P1363 ( IEEE).

Tři základní typy kryptosystémů: 1) RSA, Rabin-Williams 2) diskrétní logaritmus (DSA, Diffie-

Hellman, El Gamal) 3) eliptický diskr. logaritmus (ECDSA,...)

Page 20: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

20

Mezinárodní normy

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é.

Page 21: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

21

Shrnutí

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.

Page 22: Část V. Eliptické křivky. ECDSA. Ing. Jaroslav Pinkava, CSc.

Jaroslav Pinkava - prosinec 2000 Bankovní institut vysoká škola a.s.

22

Dotazy, upřesnění

?