Title: Elliptische Kurven und Sicherheit von ElGamal
1Elliptische Kurven und Sicherheit von ElGamal
2Heutige Situation
- Kryptographie legt die letzten Jahre
Hauptaugenmerk auf DLP mit ellipt. Kurven - Ellipt. Kurven benötigen geringeren
Speicherplatz (Rechenkapazität) - Sehr interessant für z.B. Smart Cards
3Verlauf
- Motivation
- Elliptische Kurven IR
- Elliptische Kurven Zp
- Kompression und Speedup
- Das ELGamal-Kryptosystem
- Diffie Hellman-Kryptosystem
- Diskretes Logarithmus Problem
- Fazit
- Ausblick
4Elliptische Kurven IR
5Elliptische Kurven IR
- y² x³axb
- 4a³27b² ? 0
- sichert 3 Nullstellen
- reelle oder komplexe
- non-singulare Elliptische Kurven
6Elliptische Kurven IR
- 1. x1 ? x2
- 2. x1 x2 und y1 -y2
- 3. x1 x2 und y1 y2
- P Q R mit R ? (x3,y3)
Fall 1 ?(y2-y1)(x2-x1)-1 x3?²-x1-x2 y3?(x1-x3)-y1 Fall 2 (x,y) (x,-y) ? Fall 3 ?(3x12a)(2y1)-1 x3?²-x1-x2 y3?(x1-x3)-y1
7Elliptische Kurven IR
Elliptische Kurve (E) binäre
Operation () abelsche Gruppe (E,)
P,Q ? E P (x1, y1) Q (x2, y2) P ? ? P
P mit ? Punkt im Unendlichen neutrales
Element -P (x1, -y1) inverses Element
8Elliptische Kurven Zp
- y² x³axb (mod p)
- p gt 3 ? Primzahl
9Elliptische Kurven Zp
- 1. x1 ? x2
- 2. x1 x2 und y1 -y2
- 3. x1 x2 und y1 y2
- P Q R mit R ? (x3,y3)
Fall 1 ?(y2-y1)(x2-x1)-1 (mod p) x3?²-x1-x2 (mod p) y3?(x1-x3)-y1 (mod p) Fall 2 (x,y) (x,-y) ? Fall 3 ?(3x12a)(2y1)-1 (mod p) x3?²-x1-x2 (mod p) y3?(x1-x3)-y1 (mod p)
10EC Kryptosystem
y²x³x6 über Z11
x x³x6 y
0 1 2 3 4 5 6 7 8 9 10 6 8 5 3 8 4 8 4 9 7 4 - - 4,7 5,6 - 2,9 - 2,9 3,8 - 2,9
1a 2,7 2a 5,2 3a 8,3 4a 10,2 5a
3,6 6a 7,9 7a 7,2 8a 3,5 9a
10,9 10a 8,8 11a 5,9 12a 2,4 13a ?
11EC Kryptosystem
- Alice
- Verschlüsselung
- ek(x,k) ( k(2,7) , xk(7,2) )
- Bob (Privat-Key 7)
- Entschlüsselung
- dk(y1,y2) y2 - 7y1
1a 2,7 2a 5,2 3a 8,3 4a 10,2 5a 3,6 6a 7,9 7a 7,2 8a 3,5 9a 10,9 10a 8,8 11a 5,9 12a 2,4 13a ?
12Eigenschaften von Elliptischen Kurven
- E über Zp
- ca p Punkte in E
- exakte Berechnung in O((log p)8) in Bitoperation
(Schoof-Algorithmus)
13Point Compression
- DLP 2 x Klartext
- Elliptische Kurven 4 x Klartext
- Reduzierung des Speicherbedarfs durch
Punktkompression - zu jedem x gibt es 2 y Werte
- y1 ist gerade, y2 ist ungerade
- 0 für gerade, 1 für ungerade
- 50 weniger Speicherbedarf
14Point Compression
- Compression (x,y)
- (x,y) ? (x,y mod 2)
- Decompression (x,i)
- z ? x³axb mod p
- y² ? z mod p
- if y i (mod 2)
- then return (x,y)
- else return (x,p-y)
- Compression (2,7)
- (2,7) ? (2,7 mod 2)?(2,1)
- Decompression (2,1)
- 5 ? 2³26 mod 11
- 4² ? 5 mod 11
- if 4 1 (mod 2)
- then return (2,4)
- else return (2,11-4)?(2,7)
15ECIES
- ElGamal
- Pointcompression
- 2 x Klartext
16Computing Point Multiples on Elliptic Curves
- Double-And-(Add or Subtract) Algorithmus
- Binärschreibweise ? NAF (non-adjacent form)
- 11 speedup
17Motivation für Kryptosysteme
- Kanal für Nachrichtenübermittlung meist nicht
sicher (von Dritten abhörbar) - Sicherheit eines Kanals ist mathematisch nicht
erfassbare Größe - Gängige Kryptosysteme basieren auf
- Der Einwegfunktion
- Dem Diskreten-Logarithmus-Problem (DLP)
18ELGamal-Kryptosystem(al-Dschamal-Kryptosystem)
19ELGamal Kryptosystem
- 1985 veröffentlicht
- Entwickelt von Taher ELGamal (Tahir al-Dschamal)
- Asymmetrischer Verschlüsselungsalgorithmus
- Baut auf Idee des Diffie-Hellman-Algorithmus auf
- Beruht auf Schwierigkeit "diskrete Logarithmen
modulo einer Primzahl zu berechnen - Zur Signaturerzeugung u. Verschlüsselung
verwendbar - Unterliegt keinem Patent
- Wird in vielen Verschlüsselungsverfahren
verwendet - Wikipedia
20ELGamal Verfahren
p - große Primzahl g - Element von Zp
A
B
Auswahl von geheimen, zufälligen a
y ga (mod p)
Nachricht m, wobei 0 lt m lt p
Auswahl von geheimen, zufälligen b
C1 gb (mod p)
Berechnung von C2/C1a m (bzw.) C1p-1-aC2 mod p
m
C2 m yb (mod p)
21Sicherheit von ELGamal
- Bei Schlüsselerzeugung kein sicherer Kanal
notwendig - Diffie Hellman Problem
- Sicherheit von diskreten Logarithmen
- Erschöpfende Aufzählung
- Der Pohlig-Hellman-Algorithmus
- Pollard Rho Algorithmus
- Index-Calculus-Methode
- Zahlenkörpersieb
- Elliptische Kurven
22Diffie-Hellman-Kryptosystem
23Diffie Hellman Geschichte
- 1976 veröffentlicht
- Entwickelt von M.Hellman, W.Diffie und R.Merkle
an der Universität von Stanford (Kalifornien) - Bereits 1960er erteilte das britische Government
Communications Headquarters (GCHQ) Auftrag für
neuen Weg der Schlüsselverteilung (Grund zu hohe
Kosten alter Systeme) -
24Diffie Hellman Kryptosystem
- Symmetrisches Verfahren
- Beschreibt Möglichkeit Schüssel sicher über
unsichere Kanäle auszuhandeln - Keine bestimmten Schlüssel austauschbar
- Aus ausgetauschten Informationen ist selber
Schlüssel generierbar - Basiert auf diskreten Logarithmus Problem
- Grundlage für das ElGamal-Kryptosystem
25DH Schlüsselerzeugung
p - große Primzahl g - Element von Zp
A
B
Auswahl von geheimen, zufälligen a
A ga mod p
Auswahl von geheimen, zufälligen b
B gb mod p
Berechnung von Ba mod p
Berechnung von Ab mod p
gt Ba (gb)a mod p (ga)b mod p Ab K
26DH Man in the Middle
p - große Primzahl g - Element von Zp
A
B
Auswahl von geheimen, zufälligen a
C
A ga mod p
R gr mod p
Auswahl von geheimen, zufälligen r
Auswahl von geheimen, zufälligen b
B gb mod p
Auswahl von geheimen, zufälligen s
S gs mod p
Berechnung von Sa mod p
Berechnung von Rb mod p
Berechnung von Br mod p
Berechnung von As mod p
gt Sa (gs)a mod p (ga)s mod p As K und Rb
(gr)b mod p (gb)r mod p Br K
27Diffie Hellman Sicherheit
- Arbeitet mit Session Keys
- Verwendet Einwegfunktion
- Basiert auf DLP
- gt Sicher, solange keine Lösung für DLP
- Problem Man in the Middle
28Diskreter Logarithmus Algorithmus
29DLP und elliptische Kurven
- Heutige Public-Key-Verfahren verwenden häufig das
DLP mit elliptischen Kurven - Gründe
- Bislang kein effizienterer Algorithmus gefunden
- Es existieren andere Algorithmen, aber Lösen des
DLP mit ellipt. Kurven meist schwieriger
30DLP und elliptische Kurven
- Gilt bis ca. 2020 als sicher
- Für gleichen Sicherheitsgrades
- Bei ellipt. Kurven der Gruppe G(E,)
- gt p 2160
- Bei DLP der Gruppe G(Zp,)
- gt p 21880
- Unterschied besteht auf Grund verschiedener
Algorithmen
31Erfolge bei Berechnungen
- April 2000
- ECC2K108 geknackt
- Mit Hilfe von 9500 Computern in 40 Ländern
- Benötigte Zeit ca. 50 Mal solange, wie das
RSA-512 Problem - April 2001 bis Oktober 2002
- ECCp109 geknackt
- Dauer 1 ½ Jahre
32Wie schwer ist DL-Problem?
- Hängt von Wahl der Gruppe G ab
- Problem wird momentan so schwer wie
Faktorisierung angesehen - Beste momentan bekannte Methode ist
Zahlkörpersieb (number field sieve,NFS) - Laufzeit e(1,923o(1))f(n), wobei f(n) (ln
n)1/3 (ln ln n)2/3
33Algorithmen zur Lösung von DLP
- Erschöpfende Aufzählung durch
- Näherungsverfahren
- Der Pohlig-Hellman-Algorithmus
- Pollard Rho Algorithmus
- Index-Calculus-Methode
34Effizienz dieser Verfahren
- Pohlig-Hellman-Algorithmus nur nützlich,
- wenn Primfaktoren von n ziemlich klein
- Laufzeit O(cvq)
- Bester bekannte Algorithmus für Zp die
- Index-Calculus-Methode
- Laufzeit O(e(1/2o(1))vln p ln ln p)
- Bester bekannte Algorithmus für (E,)
- der Pollard Rho Algorithmus
- Laufzeit O(vn)
35Fazit
- Das ELGamal-Kryptosystem ist
- Als sicher einzustufen, da keine effizienten
Algorithmen zur DLP Berechnung bekannt - Für Gruppe Zp und p gt 500 Bit unlösbar
- 512 Bits (geringe Sicherheit) bis
- 1024 Bits (sehr hohe Sicherheit)
- Wenn DLP berechenbar, dann auch ELGamal
berechenbar
36Ausblick
Empfohlene Schlüssellängen