• Keine Ergebnisse gefunden

Elliptische Kurven

N/A
N/A
Protected

Academic year: 2022

Aktie "Elliptische Kurven"

Copied!
6
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Elliptische Kurven

Man geht davon aus, daß das effizienteste Verfahren f ¨ur das DDH in einer UntergruppeGvon großer Primzahlordnung der Punktgruppe E(Fq)einer elliptischen Kurve mit zuf ¨allig gew ¨ahltena,bdas Pollard rho Verfahren ist.

Eine elliptische Kurve bietet somit maximal m ¨ogliche Sicherheit im Rahmen der gruppenbasierten Kryptographie.

Probleme/Fragen:

•Ordnung von#E(K)(⇒Punkte z ¨ahlen, Kurven konstruieren).

•Spezialf ¨alle, in denenE(K)unsicher ist.

•Optimierungen in Bandbreite und Rechnen (z.B.

Punktkompression).

3 29. Juni 2004

Punkte z ¨ahlen

Zum Rechnen und wegen Pohlig-Hellman m ¨ochten wirE(K)kennen.

Wissen nur#E(K) =q+ 1−t, und|t| ≤2√q.

Es gibt einige Algorithmen zum Punktez ¨ahlen. Aktuelles Forschungsgebiet.

Laufzeit:

•Kleines p, also p=O(1):O(log(q)2).

•Großes p:O(log(q)4).

Ist#E(K)berechnet, so kann man kleine Faktoren durch

Probedivision herausdividieren und auf den Kofaktor dann einen Primzahltest (Miller-Rabin) anwenden.

Methoden f ¨ur das DLP und DDH

Gruppenordnung`=c`0,`0gr ¨oßter Primfaktor von`.

Generische Methoden (Shanks BSGS, Pollard rho, ...):

•Laufzeit Theta(√

l0), also exponentiell inlog(`0).

Index Calculus Methoden f ¨urF×q mit`|(q−1):

•LaufzeitLq(1/2,c),cKonstante.

•In speziellen (und den wichtigsten) F ¨allenLq(1/3,d),dKonstante.

Daher Sicherheit im Verh ¨altnis zur Effizienz beiFqnicht wesentlich besser als bei RSA ...

1 29. Juni 2004

Elliptische Kurven

SeiK=Fqmitq=pr undp>3.

Eine elliptische Kurve wird durch eine Gleichung gegeben:

E:Y2=X3+aX+bmita,b∈K und4a2+ 27b36= 0.

Menge der Punkte ¨uberK:E(K) ={(x,y)∈K2|y2=x3+ax+b} ∪ {O}. Oist formal der Punkt

”im unendlichen“.

Hasse-Weil:#E(K) =q+ 1−t, wobei|t| ≤2√q.

Man kannE(K)in eine abelsche Gruppe mit neutralem ElementO machen. Gruppengesetz wird ¨ublicherweise additiv geschrieben. Es gibt spezielle Formeln, mit der die Punkte

”addiert“ werden.

(2)

Unsichere Spezialf ¨alle

Additiver Transfer (f ¨ur anomale Kurven, alsot= 1bzw.#E(Fq) =q):

•auch R ¨uck oder SmartASS Angriff, additive Version der FR Reduktion. Hier`=pund meistensq=p.

•Es gibt einen IsomorphismusE(Fq)[p]→F+p, der in poly(log(q)) berechnet werden kann.

•Man kann also ein DLP ausE(Fq)[p]nachF+ptransferieren und dort in Polynomzeit l ¨osen. Durch Iterieren erh ¨alt man auch diskrete Logarithmen inE(Fq)(wie bei Pohlig-Hellman).

Anomale Kurven sind also besonders unsicher, w ¨ahrend zum Beispiel supersingul ¨are Kurven nur eine reduzierte Sicherheit (subexponentiell) bieten und damit verwendbar bleiben. Siehe identit ¨atsbasierte Systeme ...

7 29. Juni 2004

Unsichere Spezialf ¨alle

Weil Abstieg Techniken.

•Treffen im wesentlichen nur aufq= 2nundnmit kleinen Faktoren und/oder f ¨ur spezielle elliptische Kurven zu.

•Konstruieren eine h ¨oher-geschlechtige Kurve, die aber ¨uber einem Teilk ¨orper vonFqdefiniert ist.

•Das DLP kann in die Picardgruppe dieser Kurve transferiert werden. Hierin kann man einen Index-Calculus Angriff durchf ¨uhren.

•Allgemeine Abhilfe:nprim w ¨ahlen, zuf ¨allige Kurven verwenden.

Kurven konstruieren

Ein anderer Ansatz ist, elliptische Kurven so zu konstruieren, daß

#E(K)a priori bekannt ist.

Subfield Kurven:

•IstE ¨uberFqdefiniert und#E(Fq)bekannt, so kann man leicht

#E(Fqn)f ¨ur allenausrechnen.

Komplexe Multiplikation:

•Mit weitergehender Mathematik kann man zu vorgegebener Punktanzahl direkt eine KurveEkonstruieren.

Etwas nachteilig ist hier - nur aus philosophischer Sicht -, daß die Kurven nicht zuf ¨allig gew ¨ahlt werden. Dies k ¨onnte M ¨oglichkeiten f ¨ur spezielle Angriffe er ¨offnen (nichts wesentliches bekannt).

5 29. Juni 2004

Unsichere Spezialf ¨alle

Multiplikativer Transfer:

•auch Frey-R ¨uck Reduktion (Menezes-Okamoto-Vanstone Angriff).

•Seiengcd{`,q}= 1undµ`die`-ten Einheitswurzeln inFqkmit

`|(qk−1)undkminimal.G=E(Fq)[`]Untergruppe der Ordnung`.

•Mit Hilfe der Tate-Paarung kann man einen Isomorphismus E(Fq)[`]→µ`definieren, der in Zeit poly(log(q))berechnet werden kann.

•Man kann also ein DLP vonE(Fq)[`]nachF×qktransferieren und dort subexponentiell l ¨osen.

•F ¨ur vonqunabh ¨angiges, zuf ¨alliges`istkmeist von der Gr ¨oßenordnung wie`, somit der Angriff nicht durchf ¨uhrbar.

•Speziell f ¨ur supersingul ¨are Kurven (t= 0 modp) kann man jedoch immerk≤6erreichen.

•Man sollte immer pr ¨ufen, ob zuqund`der Exponentk≥20ist.

(3)

Optimierungen

Man kann im Hinblick auf die Effizienz der erforderlichen Rechnungen inE(Fq)eine ganze Reihe von Optimierungen durchf ¨uhren.

1. Gruppengesetz:

•Verschiedene Koordinatensysteme f ¨ur Punkte und optimierte Formel f ¨ur das Gruppengesetz.

2. Punktvielfache:

•Die OperationλPist die teuerste Operation beim Verschl ¨usseln.

•Man verwendet Varianten von Double-und-Add.

• −Pkann besonders schnell ausgerechnet werden. Daher sollte man beim Double-und-Add auch Subtraktionen in Betracht ziehen.

11 29. Juni 2004

Optimierungen

3. Punktkompression:

•F ¨urPistyPNullstelle einer quadratischen Gleichung, die nur von EundxPabh ¨angt. Da es stets nur zwei solche Nullstellen gibt, gen ¨ugt ein Bit zur Auswahl der Nullstelle.

•Speicher- u. Kommunkationsbedarf f ¨ur einen Punkt halbiert sich.

Gehen im folgenden exemplarisch etwas n ¨aher auf 2. und 3. ein.

Zusammenfassung Sicherheit

Kriterien f ¨ur die Sicherheit einer elliptischen Kurve:

1. Punktanzahl#E(Fq)enth ¨alt einen ausreichend großen Primfaktor

`, um gegen Pohlig-Hellman und Pollard rho zu sch ¨utzen.

2. Es gilt nicht#E(Fq) =q, um vor R ¨uck bzw. SmartASS Angriff zu sch ¨utzen.

3. Das kleinstekmit`|(qk−1)erf ¨ulltk≥20, um gegen FR-Reduktion bzw. MOV-Angriff zu sch ¨utzen.

4. Mitq=pnsolltenprim oder1sein, wegen Weil Abstieg Angriff.

Normalerweise wird nurq= 2noderq=pverwendet.

F ¨ur identit ¨atsbasierte Systeme verzichtet man auf 3. (und 4.) und erh ¨alt zus ¨atzliche Funktionalit ¨at bei reduzierten Sicherheits-Effizienz Verh ¨altnis (hier h ¨aufig supersingul ¨ar undq= 3n, da dannk= 6

m ¨oglich).

9 29. Juni 2004

Zusammenfassung Sicherheit

Will man

”besonders sicher“ gehen, sollte man die elliptischen Kurven mit zuf ¨alligema,berzeugen, um keine

”speziellen“ Eigenschaften zu erzeugen.

Wie kann man jemanden davon ¨uberzeugen, daß man eine Kurve zuf ¨allig erzeugt hat? Kurve beweisbar zuf ¨allig erzeugen ...

•Man nimmt z.B.a=SHA-1(Zahl-1)undb=SHA-1(Zahl-2), wobei die Zahlen zu variieren sind, bis die resultierende Kurve einen großen Primfaktor enth ¨alt.

•Man ver ¨offentlicht dann die Zahlen 1, 2 zur Berechnung vona,b.

In Standards werden die zu verwendenden Kurven h ¨aufig speziell vorgegeben (IPSec). Obiger

”Sicherheitstest“ bei RSA nicht m ¨oglich.

(4)

Punktvielfache

Finde geeignete, effizient berechenbareφ:

•Frobeniusendomorphismus(xP,yP)7→(xqP,yqP)f ¨ur Subfieldkurven

¨uberFqn.

•Endomorphismen durch komplexe Multiplkation (siehe Konstruktion).

Dann zwei Hauptf ¨alle:

•r= 2,mi=O(√

`)⇒Benutze simultane Multiexponentiation.

•r≈logd(`),|mi|.d,d=O(1)⇒Benutze Horner Schema wie vorige Folie.

Liefert sogenannteφ-Entwicklungen. Weitere Methoden:

•φ-NAF, Sliding Window, ...

15 29. Juni 2004

Punktkompression

SeiP= (xP,yP)mity2P=x3P+axP+binFq(pungerade).

Dann istQ= (xP,−yP)ebenfalls ein Punkt aufE.

Es gibt keine weiteren Punkte mit derselbenx-KoordinatexP. GegebenxP, wie zwischenyPund−yPmit Hilfe eines Bits unterscheiden? Verschiedene M ¨oglichkeiten:

•Bit gibt an, oby-Koordinate ein Quadrat oder nicht ist (Jacobi Symbol).

•Bit gibt an, ob lexikographisch gr ¨oßere oder kleinerey-Koordinate zu w ¨ahlen ist.

•Praxis: F ¨urq=pw ¨ahlt man als Bit das LSB(yP)(least signifikant bit). F ¨ur0≤yP<pwird−yPdurch−yP+prepr ¨asentiert.

LSB(yP) = 0⇔LSB(−yP) = 1, da pungerade. Daher klappt’s.

Speicher- und ¨Ubertragungsersparnis von ca.50%(Patentgesch ¨utzt).

Punktvielfache

Double-and-Add als Hornerschema:

•m=∑ri=0mi2i, mi∈ {0,1}bin ¨are Entwicklung.

•[m]P= 2 ··· 2 2[mr]P+ [mr1]P

+ [mr2]P

···+ [m1]P

+ [m0]P.

Invertieren effizient, verwende daher allgemeinermi∈ {0,±1}.

⇒Non-adjacent form (NAF),mimi+1= 0m ¨oglich.

Berechnung der NAF (imi-ten Schritt):

•Wennm≡0 mod 4, dann bereitsmi=mi+1= 0. Wennm≡2 mod 4 dannmi= 0undmi+16= 0.

•Ansonsten w ¨ahlemi∈ {−1,1}mitm−mi≡0 mod 4. Dannmi+1= 0.

NAF h ¨ochstens ein Bit l ¨anger als bin ¨are Entwicklung.

Durchschnittliche Dichte der bin ¨aren Entwicklung1/2, der NAF1/3.

Bin ¨are Entwicklung(r/2)Adds+rDoubles, NAF(r/3)A+rD.

13 29. Juni 2004

Punktvielfache

E(Fq)[`]zyklisch der Ordnung`, φ∈End(E)durch algebraische Formeln auf Koordinaten definiert, liefert Element von End(E(Fq)).

⇒Es gibtλ∈Zmitφ(P) = [λ]Pf ¨ur alleP∈E(Fq)[`].

Schreibem=∑ri=01miλimod`. Dann [m]P= [

r1

i=0

miλi]P=

r1

i=0

mi[λ]i(P) =

r1

i=0

miφi(P)

= [m0]P+ [m1]φ(P) +···+ [mr1r1(P)

=φ ··· φ φ([mr1]P) + [mr2]P

+ [mr3]P

···+ [m1]P

+ [m0]P.

(5)

Digitale Unterschriften

Auch digitale Signaturen genannt.

Nachrichten aus Nachrichtenraum:M∈M. Signaturen aus Signaturenraum:σ∈S.

Schl ¨ussel sind aus Schl ¨usselr ¨aumen:d∈K1,e∈K2. SignierungsverfahrenS :K1×M S.

VerifizierungsverfahrenV :K2×M×S→ {0,1}.

Signatur von Nachrichtmmit Schl ¨usseld: σ←S(d,M).

Verifizierung vonM,σmit Schl ¨ussele: f ←V(e,M,σ).

e ¨offentlicher Schl ¨ussel,dprivater Schl ¨ussel.

19 29. Juni 2004

Bemerkungen

S undV sind effiziente Verfahren (z.B. Programme).

S undV d ¨urfen probabilistisch sein (d ¨urfen den Zufall verwenden).

S kann mehrdeutig sein ( ).

Im allgemeinen wird nur ein HashwertH(M)und nichtMselbt signiert.

•Effizienter, daH(M)viel k ¨urzer alsMist.

•Beweisbare Sicherheit von in der Praxis relevanten Verfahren (allerdings im Zufallsorakelmodell, RO).

Offenbar mußH kollisionsfrei sein, man kann keine zwei Nachrichten M1,M2mitH(M1) =H(M2)berechnen.

Parametervergleich

NIST Tabelle, Schl ¨usselgr ¨oßen bei ungef ¨ahr gleicher Sicherheit:

Block Chiffre Beispiel ECC RSA /F×q

Schl ¨usselgr ¨oße Block Chiffre Schl ¨usselgr ¨oße Schl ¨usselgr ¨oße

80 SKIPJACK 163 1024

128 AES (klein) 283 3072

192 AES (mittel) 409 7680

256 AES (groß) 571 15360

ECC mit 517 praktikabel, RSA /F×q mit 15360 nicht.

17 29. Juni 2004

Orientierung

Haben bisher im Public-Key Bereich nur Verschl ¨usselung betrachtet.

Haben daf ¨ur geeignete mathematische Strukturen und ihre Eigenschaften diskutiert.

•RSA, Rabin: Restklassenringe modulon, Potenzieren als Einwegfunktionen mit Fallt ¨ur (x7→xe).

•Zyklische Gruppen von Primzahlordnung, Exponieren als Einwegfunktion ohne Fallt ¨ur (x7→gx).

Diese Strukturen und Einwegfunktionen k ¨onnen nun auch f ¨ur weitere kryptographische Aufgabenstellungen verwendet werden.

•Digitale Unterschriften.

•Schl ¨usselaustausch (von symmetrischen Schl ¨usseln).

•...

(6)

Signatur mit Einwegfunktion mit Fallt ¨ur

Seien f,h:{0,1}n× {0,1}m→ {0,1}mderart, daß es f ¨ur jedes (zuf ¨allige)e∈ {0,1}neind∈ {0,1}ngibt, so daß die Funktion f(e,·) eine Einwegfunktion mit Fallt ¨urdund inverser Funktionh(d,·)ist.

Beispiel: RSA Funktionenx7→xe,y7→yd. Dann f ¨urM∈ {0,1}m:

•Signieren:σ=S(d,M) =h(d,M), Signatur ist(M,σ).

•Verifizieren:V(e,M,σ) = 1genau dann, wenn f(e,σ) =M.

”Sicherheit“ basiert informell also darauf, daß niemandσ=h(d,M) ausrechnen kann, ohnedzu kennen.

Signierer beweist, daß er die geheime Information kennt.

21 29. Juni 2004

Referenzen

ÄHNLICHE DOKUMENTE

Mathematisches Institut der Universit¨ at M¨

Mathematisches Institut der Universit¨ at M¨

ist eine meromorphe Funktion in der komplexen Ebene mit der Periode 1. Ihre einzigen Singularit¨aten sind

Mathematisches Institut der Universit¨ at M¨

Indem wir n¨ otigenfalls Q durch −Q ersetzen, k¨ onnen

Mathematisches Institut der Universit¨ at M¨

a) Verbindet man zwei Wendepunkte von E durch eine Gerade, so schneidet die Gerade die Kurve in einem weiteren Wendepunkt.. b) Wieviele verschiedene Verbindungsgeraden von

Mathematisches Institut der Universit¨ at M¨