Elliptische Kurven werden in der Normalform nach WEIERSTRASS durch Gleichungen der
Form
![]() | (3.6) |
beschrieben. Wegen der (nur) zwei freien Parameter und
ist jede elliptische Kurve durch zwei
Punkte
eindeutig definiert. Insofern ist jeder weitere Punkt durch die Kenntnis von
und
festgelegt.
Für ergibt die Differenz beider Gleichungen
was dann zur Berechnung von verwendet werden kann.
Zieht man entsprechend Abbildung 3.3) durch und
eine Gerade, so berechnet sich ein dritter
(Schnitt-) Punkt
nach der Geradengleichung:
mit dem Anstieg:
Den Schnittpunkt mit der elliptischen Kurve
findet man (unter Zuhilfenahme von ) durch Gleichsetzen:
Aus der Geradengleichung ist nun berechenbar:
und so für den Kurvenpunkt :
Der kryptographische Anwendungsfall sind elliptische Kurven über endlichen (Restklassen-)
Körpern , welche selbst entweder Primzahlenkörper
oder auch Binärkörper
sind.40
Dafür definiert man die Addition zweier Punkte
zu
so, daß
(wie in
Abbildung 3.3 dargestellt) wieder auf der elliptischen Kurve liegt. Die Menge aller dieser Punkte
soll eine ABELsche Gruppe
bilden, d. h. es müssen folgende Bedingungen erfüllt
sein:
Elliptische Kurven über verwenden die Form
, funktionieren aber
grundsätzlich nach demselben Prinzip. Ohne weiteren Beweis sei hier angegeben (vgl. zum
Beispiel [HMV04, 3.1.2], zu den Algorithmen siehe auch [HHM00, BHHM01, FHLM04, Ano07]):
Zur Verifikation eines Kurvenpunktes substituiert man und erhält eine quadratische Gleichung in
.42
Die beiden Lösungen sind wegen dann
und
, unterscheiden sich also nur im
niederwertigsten Bit [IEE00, A.12.9].
Für die kryptographische Anwendung, insbesondere für Verfahren, die auf dem diskreten Algorithmus
basieren, wird zuerst die Gruppenpotenz definiert zu . Das diskrete
Logarithmus Problem besteht nun bekanntermaßen darin die Zahl
zu finden, was bei einer
Gruppenaddition per elliptischer Kurve ziemlich schwierig ist. Eines der bekanntesten Beispiele ist die
Umsetzung des Diffie-Hellman Schlüsselaustausches (vgl. Abschnitt 3.2) auf elliptische
Kurven [Ros99]. Aber auch Signatur- und Public-Key Verfahren können damit realisiert
werden [IEE04], [ANS05].