• Keine Ergebnisse gefunden

Elliptische Kurven

N/A
N/A
Protected

Academic year: 2022

Aktie "Elliptische Kurven"

Copied!
5
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Elliptische Kurven

Kurve und Gruppengesetz

6

-

Py Py

Q

y

R

y

P+Q y

3 23. Januar 2009

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

Im folgenden grober ¨Uberblick ...

Elliptische Kurven

F ¨ur Index Calculus muß man

”liften“ und faktorisieren k ¨onnen. Gibt es Gruppen, wo dies nicht geht bzw. wo Pollard rho die (vermutlich ) effizienteste Methode f ¨ur das DDH ist?

⇒elliptische Kurven, hyperelliptische Kurven kleinen Geschlechts.

SeiK =Fq mitq = pr undp>3.

Eine elliptische Kurve wird durch eine Gleichung gegeben:

E : Y2= X3+ aX + bmita,bK und4a3+ 27b26= 0.

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

”im unendlichen“.

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

•Heuristisch: H ¨alfte der quadratischen Gleichungen inynach Einsetzen f ¨urxhat zwei Nullstellen ink, die andere keine.

1 23. Januar 2009

Elliptische Kurven

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:

SeiP = (xP,yP),Q = (xQ,yQ)∈E(K).

DannP + Q =

(O f ¨urxP= xQundyP=yQ,

(xP+Q,−yQ−λ(xP+QxQ))andernfalls, wobei xP+Q2(xP+ xQ)undλ=

((yQyP)/(xQxP)f ¨urxP6= xQ, (3x2P+ a)/(2yP)andernfalls.

Das Nachrechnen der Gruppengesetze (insbesondere Assoziativit ¨at) ist recht umst ¨andlich bzw. ben ¨otigt mehr mathematische Theorie.

Das Gruppengesetz f ¨ur elliptische Kurven ¨uberK =Rkann geometrisch veranschaulicht werden.

(2)

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(k 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 mod p) kann man jedoch immerk≤6erreichen.

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

7 23. Januar 2009

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 paarungsbasierte Kryptographie ...

8 23. Januar 2009

Punkte z ¨ahlen

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

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

Algorithmen zum Punktez ¨ahlen:

•Schoof-Elkies-Atkin (SEA),

•Satoh, AGM (Mestre),

•Dwork-Spur Formel, Deformationen (Lauder-Wan),

•Monsky-Washnitzer Kohomologie (Kedlaya).

Diese Verfahren sind polynomiell inlog(q)(SEAO(log(q)4), die anderenO(log(q)2)f ¨ur p = O(1)).

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

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

5 23. Januar 2009

Kurven konstruieren

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

#E(K)a priori bekannt ist.

Subfield Kurven:

•IstE ¨uberFq definiert 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).

6 23. Januar 2009

(3)

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.

11 23. Januar 2009

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.

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.

9 23. Januar 2009

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 paarungsbasierte Kryptographie verzichtet man auf 3. (und 4.) und erh ¨alt zus ¨atzliche Funktionalit ¨at bei reduziertem

Sicherheits-Effizienz Verh ¨altnis (z.B. supersingul ¨ar undq = 3n, da dannk = 6m ¨oglich).

(4)

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 allePE(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.

15 23. Januar 2009

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

16 23. Januar 2009

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.

13 23. Januar 2009

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= 0f ¨ur alleim ¨oglich.

Berechnung der NAF (imi-ten Schritt):

•Wennm≡0 mod 2, dannmi= 0. Ansonsten w ¨ahlemi∈ {−1,1}mit mmi≡0 mod 4(dannmi+1= 0).

•Setzem = (mmi)/2und wiederhole f ¨uri = i + 1.

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.

14 23. Januar 2009

(5)

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; f ¨urq≡3 mod 4, da dann−1kein Quadrat ist).

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

17 23. Januar 2009

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.

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¨