institut für informatik seminar kryptographie sose 2005 präsentation ingo grebe 1 elliptische...

42
1 Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische Kurven über reellen Zahlen 3. Elliptische Kurven über Körpern 4. Public-Key Verfahren 5. Elliptische Kurven im Allgemeinen 6. Vergleich ECC RSA 7. Schlussbetrachtung 8. Literaturverzeichn is

Upload: huncberct-dustman

Post on 05-Apr-2015

108 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

1

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Elliptische Kurven

in der Kryptographie

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 2: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

2

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Gliederung

Einleitung

Elliptische Kurven über reellen Zahlen

Elliptische Kurven über Körper

Public-Key Verfahren mittels elliptischer Kurven

Elliptische Kurven im Allgemeinen

Vergleich ECC und RSA

Schlussbetrachtung

Literaturverzeichnis

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 3: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

3

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Elliptische Kurven in der Kryptographie (ECC)

„Im Herzen von ECC steht die Tatsache, dass man auf

einer elliptischen Kurve eine abelsche Gruppe

definieren kann und dass in dieser Gruppe das diskrete

Logarithmus Problem extrem schwer zu lösen ist.“

Im Jahre 1986 gelang es Neal Koblitz und Victor Miller

unabhängig von einander, elliptische Kurven im Bereich

der Public Key Kryptographie einzusetzen.

Mit elliptischen Kurven lassen sich asymmetrische

Krypto-Verfahren realisieren.

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 4: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

4

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

ECC in Standards

IEEE [P1363] (Institute of Electrical and Electronics Engineers)

Public-Key Verfahren

geeignete Parameter

Schlüsselerzeugung, Schlüsselaustausch

FIPS [186-2] (Federal Information Processing Standard)

NIST (National Institute of Standards and Technologie)

ECDSA Signaturverfahren

Standards der IETF (Internet Engineering Task Force)

SSL/TLS, IPSEC, PKIX, S/MIME, WAP-Protokoll

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 5: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

5

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

ECC in der Praxis

Smartcards enthält privaten Schlüssel beschränkter Speicherplatz RSA benötigt >1024 Bit, ECC benötigt 160 Bit ECC ist schneller beim signieren

Kryptographie-Plugin „cv act s/mail“ entwickelt von Cryptovision eingesetzt vom Bundesamt für Wehrtechnik und Beschaffung Plugin für eMail-Clients Verschlüsselung digitale Signatur kompatibel zu IBM Lotus Notes, Novel GroupWise,

Microsoft Outlook

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 6: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

6

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Elliptische Kurven über reellen Zahlen

y2 = x3 + ax + b

a = - 4

b = 0.67

y2 = x3 – 4x + 0.67

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 7: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

7

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Abelsche Gruppe [y2 = x3 + ax + b]

Unter der Bedingung 4a3 + 27b2 0 ist eine elliptische

Kurve die Menge aller Lösungen für die Gleichung

y2 = x3 + ax + b

zusammen mit dem Punkt O im „unendlichen“.

P = (xP,yP), Q = (xQ,yQ), R = (xR,yR)

Operation: + mit P + Q = R

Assoziativität: P + (Q + R) = (P + Q) + R

Kommutativität: P + Q = Q + P

neutrales Element: O mit P + O = O + P = P

Inverses Element: (x,-y) mit P + -P = -P + P = O

Bedingung: 4a3 + 27b2 0

Gleichung: y2 = x3 + ax + b

Punkt O, der Punkt im „unendlichen“1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 8: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

8

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Geometrische Betrachtung [y2 = x3 + ax + b]

P + Q = R, P Q

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 9: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

9

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Geometrische Betrachtung [y2 = x3 + ax + b]

P + -P = O

O wird auch der „Punkt im Unendlichen“ genannt

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 10: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

10

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Geometrische Betrachtung [y2 = x3 + ax + b]

O wir auch der „Punkt im Unendlichen“ genannt

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 11: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

11

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Geometrische Betrachtung [y2 = x3 + ax + b]

P + P = 2P = R

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 12: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

12

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Geometrische Betrachtung [y2 = x3 + ax + b]

P + P = 2P = R, yp=0

P+O=P, 2P=P, 3P=2P+P=O+P=P, 4P=O, …

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 13: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

13

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Algebraische Betrachtung [y2 = x3 + ax + b]

P + Q = R, P=(xP,yP), Q=(xQ,yQ), R=(xR,yR), P Q

s = (yP – yQ) / (xP – xQ)

xR = s2 – xP – xQ

yR = -yP + s(xP – xR)

P + P = 2P = R, P=(xP,yP), R=(xR,yR), yP 0

s = (3xP2 + a) / (2yP)

xR = s2 – 2xP

yR = -yP + s(xP – xR)

s: Steigung der Geraden

durch P und Q

s: Tangente am Punkt P

a: Parameter der Kurve

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 14: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

14

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Beispiele

1. Definiert die Gleichung y2 = x3 – 7x – 6 eine Elliptische Kurve?

Ja! 4a3 + 27b2 = 4(-7)3 + 27(-6)2 = -400 0

2. Ist P=(4,7) ein Punkt auf der Elliptischen Kurve y2 = x3 – 5x + 5?

Ja! 72 = 43 – 54 + 5

49 = 64 – 20 + 5

49 = 49

• Berechne P+Q=R für P=(0,-4) und Q=(1,0) auf y2 = x3 – 17x + 16!

s = (yP – yQ) / (xP – xQ) = (-4 – 0) / (0 – 1) = 4

xR = s2 – xP – xQ = 42 – 0 – 1 = 15

yR = -yP + s(xP – xR) = -(-4) + 4(0 – 15) = -56

P + Q = R = (15,-56)

• Berechne 2P=R für P=(4,20) auf y2 = x3 – 17x + 16!

s = (3xP2 + a) / (2yP) = (342 + (-17)) / (220) = 4.475

xR = s2 – 2xP = 4.4752 – 24 = 12.022

yR = -yP + s(xP – xR) = -(20) + 4.475(4 – 12.022) = -39,362

2P = R = (12.022,-39.362)

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 15: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

15

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Elliptische Kurven über dem Körper FP

Wichtig für Kryptographie

endliche Gruppe (Diskreter Logarithmus)

schnelle und präzise Berechnungen

Elliptische Kurven über reellen Zahlen haben keine endliche Anzahl an Punkten, sind langsam in ihrer Berechnung und es treten Rundungsfehler auf.

Primzahlkörper FP

p-1 Elemente, p ist Primzahl

keine Rundungsfehler

y2 mod p = x3 + ax + b mod p, a,bFP

4a3 + 27b2 mod p 0

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 16: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

16

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Beispiel [y2 = x3 + x] über F23

Körper F23, y2 = x3 + x, P = (9,5)

y2 mod p = x3 + x mod p

25 mod 23 = 729 + 9 mod 23

2 = 2

Punkt P=(9,5) erfüllt y2 = x3 + x

Es gibt insgesamt 23 Punkte auf der Kurve y2 = x3 + x:

(0,0) (1,5) (1,18) (9,5) (9,18) (11,10) (11,13)

(13,5) (13,18) (15,3) (15,20) (16,8) (16,15) (17,10)

(17,13) (18,10) (18,13) (19,1) (19,22) (20,4) (20,19)

(21,6) (21,17)

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 17: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

17

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Beispiel [y2 = x3 + x] über F23

zwei Punkte für jeden x-Wert

symmetrisch bei y = 11.5

keine negativen Werte, -P = (xP,(-yP mod 23))

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 18: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

18

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Algebraische Betrachtung [y2 = x3 + ax + b] über FP

P + Q = R, P=(xP,yP), Q=(xQ,yQ), R=(xR,yR), P Q

s = (yP – yQ) / (xP – xQ) mod p

xR = s2 – xP – xQ mod p

yR = -yP + s(xP – xR) mod p

P + P = 2P = R, P=(xP,yP), R=(xR,yR), yP 0

s = (3xP2 + a) / (2yP) mod p

xR = s2 – 2xP mod p

yR = -yP + s(xP – xR) mod p

s: Steigung der Geraden

durch P und Q

s: Tangente am Punkt P

a: Parameter der Kurve

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 19: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

19

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Beispiele

1. Definiert die Gleichung y2=x3+10x+5 eine Elliptische Kurve über F17?

Nein! 4a3 + 27b2 mod p = 4(10)3 + 27(5)2 mod 17 = 4675 mod 17 = 0

2. Liegt P=(2,0) auf der Elliptischen Kurve y2 = x3 + x + 7 über F17?

Ja! 02 mod 17 = 23 + 2 + 7 mod 17

0 mod 17 = 17 mod 17

0 = 0

• Berechne P+Q=R für P=(2,0) und Q=(1,3) auf y2= x3+ x + 7 über F17!

s = (yP – yQ) / (xP – xQ) mod p = (0 – 3) / (2 – 1) mod 17 = 14

xR = s2 – xP – xQ mod p = 142 – 2 – 1 mod 17 = 193 mod 17 = 6

yR = -yP + s(xP – xR) mod p = -0 +14(2 – 6) mod 17 = 12

P + Q = R = (6,12)

• Berechne 2P=R für P=(1,3) auf y2= x3+ x + 7 über F17!

s = (3xP2 + a) / (2yP) mod p = (3+1) 6-1 mod 17 = 4 3 mod

17 = 12

xR = s2 – 2xP mod p = 122 – 2 mod 17 = 6

yR = -yP + s(xP – xR) mod p = -3 + 12(1 – 6) mod 17 = 5

2P = R = (6,5)

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 20: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

20

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Elliptische Kurven über dem Körper F2m

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

y2 + xy = x3 + ax2 + b, b0

Bit Strings

Addition mittels XOR-Funktion

Page 21: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

21

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Verwendete Körper

Theoretisch

jeder endliche Körper kann verwendet werden

Praktisch

Primzahlkörper FP mit Primzahl p

F2m mit 2m Elementen

Unterschiede zwischen FP und F2m

bisher noch keine Sicherheitsunterschiede

FP hat beim Softwareeinsatz Vorteile

F2m hat beim Hardwareeinsatz Vorteile

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 22: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

22

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Diskrete Logarithmus Problem (ECDLP)

Gegeben: zwei Punkte P und Q auf einer elliptischen Kurve über einer Gruppen mit einer ausreichend großen Gruppenordnung

Problem: Bestimme x, so dass Q = xP

Trägt man die Punkte einerelliptischen Kurve in ein Gitter ein,so erhält man eine „Punktwolke“.Die Addition von zwei Punktenentspricht dann einem scheinbarzufälligen Springen von Punkt zuPunkt. Dieses „Chaos“ drückt dieSchwierigkeit des diskretenLogarithmusproblems auf einerelliptischen Kurve aus.

xP = P+P+…+P

x-mal

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 23: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

23

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

ECDH

einfaches Protokoll für einen Schlüsselaustausch

basiert auf Diffie-Hellman

Szenario

Alice und Bob tauschen geheimen Schlüssel aus

Lauscherin Eve

Vorraussetzungen

Alice und Bob einigen sich auf gleiche ECC-Parameter

E: elliptische Kurve

p: Größe des Körpers FP

a,b: Koeffizienten der elliptischen Kurve, a,bFP

G: Punkt auf der elliptischen Kurve E

n: Ordnung des Punktes G, n muss Primzahl sein

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 24: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

24

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

ECDH - Prinzip

Alice private Key xA: Zufallszahl, 1 < xA < n

public Key QA: Punkt QA = xAG

Bob private Key xB: Zufallszahl, 1 < xB < n

public Key QB: Punkt QB = xBG

geheimer Schlüssel R = RA = RB

Alice holt sich QB Alice berechnet RA = xAQB

Bob holt sich QA Bob berechnet RB = xBQA.

RA = xAQB = xAxBG = xBxAG = xBQA = RB

Eine Lauscherin Eve steht vor dem Problem aus G, QA und QB den Schlüssel R zu berechnen (ECDLP).

„Man in the Middle“-Attacke ist immer noch möglich.

G: Punkt auf der elliptischen Kurve En: Ordnung des Punktes G, n ist Primzahl

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 25: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

25

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Elliptische Kurven allgemein

E(K): y2 + a1xy + a3y = x3 + a2x2 + a4x + a6

elliptische Kurve (Weierstraßgleichung in Normalform)

F(x,y) := x3 – a1xy + a2x2 – a3y + a4x + a6 – y2

Polynom

Eine elliptische Kurve E über einem Körper K ist eine nicht-singuläre Kurve, definiert als Menge aller Punkte (x,y), mit x,yK, für die gilt F(x,y)=0 zusammen mit dem „Punkt in der Unendlichkeit“ O.

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 26: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

26

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

nicht-singulär

E(K): y2 + a1xy + a3y = x3 + a2x2 + a4x + a6

elliptische Kurve (Weierstraßgleichung in Normalform)

E(K) ist nicht-singulär

keine Knoten, Spitzen oder Einsiedler

F(x,y) := x3 – a1xy + a2x2 – a3y + a4x + a6 – y2

Polynom

Fx

(a,b) 0Fy

(a,b) 0 mit P(a,b)E

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 27: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

27

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

nicht-singulär

E(K) ist nicht-singulär

keine Knoten, Spitzen oder Einsiedler

E(K): y2 = x3E(K): y2 = x3 – 3x + 2

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 28: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

28

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

nicht-singulär

char(K) = m

falls es eine kleinste natürliche Zahl m gibt, so dass

m1 = 1+1+…+1 = 0

m-mal

E(K): y2 = x3 + ax + b

char(K) 2, 3

E(K) ist nicht-singulär

beide Ableitungen 0 Diskriminante von E 0

Fx

(a,b) = -3x2 – a4 0Fy

(a,b) = 2y 0

4a3 + 27b2 0, mit a,bK

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 29: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

29

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

nicht-singulär

E(K) ist nicht-singulär

beide Ableitungen 0 Diskriminante von E 0

Fx

(a,b) = -3x2 – a 0Fy

(a,b) = 2y 0

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

2

2 2

2 0 0

0 3

33

03

, für

y y

x a

ax a x

ax a

Page 30: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

30

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

nicht-singulär

E(K) ist nicht-singulär

beide Ableitungen 0 Diskriminante von E 0

Fx

(a,b) = -3x2 – a 0Fy

(a,b) = 2y 0

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

2 3

3

0 03

03 3

mit , , für a

y x ax b y x a

a aa b

Page 31: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

31

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

3

03 3

03 3 3 3

03 3 3

3 3 03 3

a aa b

a a a aa b

a a aa b

a aa a b

nicht-singulär

E(K) ist nicht-singulär

beide Ableitungen 0 Diskriminante von E 0

Fx

(a,b) = -3x2 – a 0Fy

(a,b) = 2y 0

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 32: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

32

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

2 2

32

3 2

3 3 03 3

2 3 03

4 9 03

49 0

3

4 27 0

a aa a b

aa b

aa b

ab

a b

nicht-singulär

E(K) ist nicht-singulär

beide Ableitungen 0 Diskriminante von E 0

Fx

(a,b) = -3x2 – a 0Fy

(a,b) = 2y 0

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 33: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

33

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Beispiel

E(K): y2 = x3

P=(0,0), Q=(1,1), R=(xR,yR)

s = (0 - 1) / (0 - 1) = 1

xR = 12 – 0 – 1 = 0

yR = 0 + 0 – 0 = 0

P + Q = R = (0,0) = P

P + Q = R, P=(xP,yP), Q=(xQ,yQ), R=(xR,yR), P Qs = (yP – yQ) / (xP – xQ) xR = s2 – xP – xQ

yR = -yP + s(xP – xR)

4a3+27b20, a,bK

4·03 + 27·02 = 0

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 34: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

34

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Ordnung #E(FP)

Die Anzahl der Punkte einer elliptischen Kurve E(FP) heißt auch Ordnung #E(FP).

Hasse-Schranke

es gibt keine allgemeingültige Formel für #E(FP)

Abschätzung mittels Theorem von Hasse

-2p + p + 1 #E(FP) 2p + p + 1

Beispiel

-223 + 23 + 1 #E(F23) 223 + 23 + 1

-24,795 + 24 #E(F23) 24,795 + 23 + 1

14 #E(F23) 33

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 35: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

35

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Untergruppen von E(FP)

Untergruppe UP

UP := {kP | kZ}

ist die von P erzeugte zyklische Untergruppe von E(FP).

P ist Generator der Gruppe.

Ordnung von UP

k0P = P+P+…+P = O, mit k0>0k0-mal

Da P Generator der Gruppe ist, spricht man auch von der Ordnung des Punktes P.

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 36: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

36

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Wahl der elliptischen Kurve

Kurven aus Standards

eigene Kurven generieren

wichtigster Aspekt

große Ordnung n der Punktegruppe

in der Praxis ist n zumeist eine 160-Bit große Primzahl

160-Bit = 2160 1,46 1048

Testen

Bestimmung der Kurvenordnung (Schoofs Algorithmus)

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Spudy Dica
Da das ECDLP für eine bestimmte Kurve der zentrale Sicherheitsfaktor ist, sollte dieverwendete elliptische Kurve mit großer Vorsicht gewählt werden. Hierbei gibt es generell dieMöglichkeit, entweder „fertige“ Kurven – wie sie z.B. in verschiedenen Standardsveröffentlicht werden – zu übernehmen, oder eigene Kurven zu generieren.Der wichtigste Aspekt einer Kurve ist hierbei die Ordnung ihrer Punktegruppe. Damit eineausreichende Sicherheit gewährleistet wird, muss es eine Untergruppe mit einer großenPrimzahlordnung n geben. In der Praxis ist n zumeist eine 160-Bit große Primzahl.Bis zum Anfang der 90-er Jahre war die Bestimmung der Kurvenordnung ein ernstesProblem, was die Generierung das Testen von Kurven sehr erschwert hat. Inzwischen sinddie Verbesserungen von Schoofs Algorithmus durch Elkes und Atkin das gängigsteVerfahren (abgekürzt: SEA), welches ein effizientes Berechnen ermöglicht.
Page 37: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

37

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Klassen schwacher Kurven

Geringe Ordnung der Kurve

Pohlig und Hellman haben gezeigt, wie das ECDLP in diesem Fall in kleinere Probleme unterteilt werden kann.

Gegenmittel: Kurve und einen Basispunkt benutzt, so dass die von diesem Punkt erzeugte Untergruppe von großer Primzahlordnung ist.

Anomale Kurven

#E(FP) = p

Smart, Semaev, Satoh und Araki haben gezeigt, dass für diese Kurven ein Algorithmus mit linearer Laufzeit für das ECDLP existiert.

Super-singuläre Kurven

ord(K) – #E(K) | char(K)

Menezes, Okamoto und Vanstone gezeigt, wie man das ECDLP auf das einfache DLP in Erweiterungskörpern von ZP reduzieren kann. Es lässt sich aber sehr leicht feststellen, ob eine bestimmte Kurve super-singulär ist und sich dieser Angriff somit vermeiden.

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 38: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

38

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Andere Klassen spezieller Kurven

Jede Art von Kurve, die auf irgendeine Weise speziell ist, sollte gemieden werden, auch wenn bisher noch kein besonders effizienter Angriff entdeckt worden ist.

Zu dieser Klasse von Kurven gehören z.B. die Koblitz-Kurven über F2m, deren Kurvengleichungen nur die Koeffizienten „0“ und „1“ enthalten. Diese Kurven sind besonders interessant, da es für sie hoch effiziente Algorithmen für die Punktarithmetik auf ihnen gibt. Jedoch weiß man inzwischen, dass es möglich ist, das Lösen des ECDLP auf ihnen um einen Faktor m zu beschleunigen, was aber immer noch zu vernachlässigen ist.

Es gibt Verfahren, die es ermöglichen, Kurven mit einer bestimmten Punktordnung zu erzeugen. Für Kurven, die so erzeugt worden sind, besteht zwar bisher außer den allgemein anwendbaren und extrem langsamen Verfahren noch keine besondere Angriffsmöglichkeit, dennoch bilden sie eine „besondere“ Klasse von Kurven, so dass man solch eine Angriffsmöglichkeit in der Zukunft nicht ausschließen kann.

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Spudy Dica
Außerdem gibt es die weit verbreitete Ansicht, dass jede Art von Kurve, die auf irgendeineWeise speziell ist, für kryptographische Zwecke gemieden werden sollte, auch wenn bishernoch kein besonders effizienter Angriff entdeckt worden ist.Zu dieser Klasse von Kurven gehören z.B. die Koblitz-Kurven über GF(2m), derenKurvengleichungen nur die Koeffizienten „0“ und „1“ enthalten. Diese Kurven sind besondersinteressant, da es für sie hoch effiziente Algorithmen für die Punktarithmetik auf ihnen gibt.Jedoch weiß man inzwischen, dass es möglich ist, das Lösen des ECDLP auf ihnen umeinen Faktor m zu beschleunigen, was aber immer noch zu vernachlässigen ist.Ein Verfahren, das sich komplexe Multiplikation nennt, ermöglicht es, Kurven mit einerbestimmten Punktordnung zu erzeugen. Für Kurven, die so erzeugt worden sind, bestehtzwar bisher außer den allgemein anwendbaren und extrem langsamen Verfahren noch keinebesondere Angriffsmöglichkeit, dennoch bilden sie ein „besondere“ Klasse von Kurven, sodass man solch eine Angriffsmöglichkeit in der Zukunft nicht ausschließen kann.
Page 39: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

39

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Ein kurzer Vergleich zwischen RSA und ECC

ECC ist erheblich schneller als RSA, da die benötigten Schlüssellängen bei gleichem Sicherheitsniveau für ECC deutlich kürzer sind als bei klassischen asymmetrischen Verfahren, wie RSA.

Berechnungsaufwand eines privaten Schlüssels in Rechenzeiten für RSA und ECC

Vergleichbare Schlüssellängen

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 40: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

40

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Ein kurzer Vergleich zwischen RSA und ECC

Einsatz des privaten Schlüssels

Dennoch liegt es in der Natur der beiden Systeme, dass ECC vor allem für die Aufgaben, die den Einsatz des privaten Schlüssels bedürfen, also digitales Signieren und Entschlüsseln, i.A. um wenigstens einen Faktor 4 schneller ist.

Bei der Überprüfung einer Signatur oder dem Verschlüsseln ist hingegen RSA um einen ähnlichen Faktor schneller. Dieser Unterschied rührt vor allem daher, dass der öffentliche RSA Exponent meist bewusst so gewählt wird, dass möglichst effektiv gerechnet werden kann, wohingegen der sich daraus ergebende private Exponent keine Geschwindigkeitsvorteile mit sich bringt.

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 41: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

41

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Schlussbetrachtung

Ziel dieser Folien ist es, einen Überblick über die Kryptographie basierend auf elliptischen Kurven zu geben.

Zu den hier gegebenen mathematische Ausführungen ist zu sagen, das elliptische Kurven und die zugrunde liegende Mathematik nicht annähernd vollständig erklärt worden sind.

So lässt sich beispielsweise der Punkt O in den projektiven Raum einbetten und hat somit auch konkrete Koordinaten und nicht nur die Hilfskonstruktion, die den Punkt im unendlich Fernen der perspektivischen Darstellung erscheinen lässt.

Elliptische Kurven lassen sich nicht nur zur Kryptographie verwenden, sondern es existieren auch Verfahren basieren auf elliptischen Kurven, die zur Faktorisierung oder zum Primzahlnachweis dienen.

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis

Page 42: Institut für Informatik Seminar Kryptographie SoSe 2005 Präsentation Ingo Grebe 1 Elliptische Kurven in der Kryptographie 1. Einleitung 2. Elliptische

42

Institut für Informatik

Seminar Kryptographie

SoSe 2005

PräsentationIngo Grebe

Literaturverzeichnis

„Elliptische Kurven in der Kryptographie“ A. Werner, Springer, 2002

„Cryptography: Theory and Practice“ D. Stinson, Chapman&Hall/CRC, 2002

„ECC Cryptography Tutorial“ Certicom, http://www.certicom.com

„ECC – Elliptic Curve Cryptography“ Cryptovision GmbH, http://www.cryptovision.com

„Krypto-Verfahren basierend auf elliptischen Kurven “ T. Laubrock, http://www.laubrock.de, 1999

1. Einleitung

2. Elliptische Kurvenüber reellen Zahlen

3. Elliptische Kurvenüber Körpern

4. Public-Key Verfahren

5. Elliptische Kurvenim Allgemeinen

6. Vergleich ECC RSA

7. Schlussbetrachtung

8. Literaturverzeichnis