Wie funktionieren Kryptoverfahren auf Basis elliptischer Kurven?
Eine kurze Einführung
Das „diskreter Logarithmus“ Problem
Jede gute Verschlüsselung basiert auf einem Problem. Um etwas sicher verschlüsseln zu können, braucht man ein extrem schwer zu lösendes mathematisches Problem. Ein sogenanntes NP-vollständiges Problem. Um ein solches Problem zu konstruieren modelliert man sich oft eine sogenannte Falltürfunktion, also eine Funktion, in die eine Richtung einfach zu berechnen ist, aber nur schwer umkehrbar ist. Zum Beispiel kann man einfach aus Mehl und Eiern einen Kuchen backen, aus dem Kuchen aber nur schwer die Eier und das Mehl gewinnen. Ein Beispiel für ein solches Problem basierend auf einer Falltürfunktion ist in der Mathematik das Problem des diskreten Logarithmus.
Im Gegensatz zum normalen Logarithmus über den positiven reellen Zahlen wird der diskrete Logarithmus über eine zyklische Gruppe definiert. Die Ausgangsgleichung ist:
Deffie Hellman Schlüsselaustausch
Um zunächst eine zyklische Gruppe zu erzeugen, einigen sich Alice und Bob auf eine Primzahl p, die als Modul fungiert. Außerdem einigt man sich auf eine Primitivwurzel g von p oder auf eine Zahl kleiner p die keine Primitivwurzel ist. Diese würde die Sicherheit allerdings mindern.
Eine natürliche Zahl g heißt Primitivwurzel von p, wenn folgende Bedingung erfüllt ist:
Die Abbildung ist sowohl linkseindeutig (injektiv) als auch rechtstotal (surjektiv) und damit bijektiv. z.B. ist 2 Primitivwurzel von 5 denn:
P und g sind nun öffentlich einsehbar. Nun denkt sich sowohl Alice als auch Bob eine natürliche Zahl (a,b), die kleiner als die Primzahl ist und idealerweise nicht der Primitivwurzel entspricht. Diese bleiben geheim. Alice kennt also Bobs Zahl(b) nicht, und Bob kennt Alice Zahl(a) nicht.
An ein und denselben Schlüssel, den ein Außenstehender, der den Austausch abhört, nicht gelangen kann, kommen sie durch ein bestimmtes Vorgehen:
Alice berechnet
Nun schickt Alice
Schließlich berechnet Alice den gemeinsamen Schlüssel
Dass dieses Verfahren funktioniert, zeigt sich folgendermaßen:
Ein Abhörer würde nur g, p,
Elgamal-Verschlüsselung
Die Idee des Deffie Hellmann Schlüsselaustausch kann man nun weiterführen, so dass man ein asymmetrisches Kryptosystem erhält, mit dem man auch ganze Nachrichten codiert versenden kann.
Zunächst einigen sich Alice und Bob erneut auf eine zyklische Gruppe durch Wahl einer Primzahl und auf eine Primitivwurzel g von p. Nun denken sich beide erneut Zahlen (a,b) unter denselben Bedingungen wie beim Deffie Hellman Schlüsselaustausch. Außerdem berechnet Bob
Den öffentlichen Schlüssel berechnet Alice durch
Bob verschlüsselt nun einen Klartext T zum Geheimtext G indem er
Ein Abhörer steht nun vor demselben Problem wie beim Schlüsselaustausch.
Eine Möglichkeit für einen Angreifer ist bei beiden kryptographischen Methoden durch einen „Man in the Middle“ Angriff gegeben. Das bedeutet: zwischen den Teilnehmern Alice und Bob befindet sich ein Angreifer Mallory, so dass Alice denkt, Mallory sei Bob, und Bob denkt, Mallory sei Alice. Der Angreifer ist nun in der Lage sowohl mit Alice als auch mit Bob ein Kryptosystem aufzubauen. Jede Nachricht, die einer der beiden Teilnehmer zum jeweils anderen senden will, kommt in Folge dessen zuerst bei Mallory an. Dieser kann die Nachricht natürlich lesen und nun entscheiden, ob die Nachricht unverändert weitergesendet, verändert weitergesendet oder eine gefälschte Antwort zurück an den Absender gesendet werden soll.
Elliptische Kurven
Das vorgestellte Verfahren basiert auf der Standardmultiplikation und wird nun durch Definition einer Gruppe auf elliptischen Kurven der Form
Erweitert.
Addition auf elliptischen Kurven
Man wählt zwei zu addierende Punkte A und B und ‘‘zieht‘‘ eine Gerade durch diese Punkte. Der weitere Schnittpunkt mit der Kurve sei -C. Man spiegelt den Punkt -C an der x-Achse und enthält das Ergebnis der Addition C.
Sonderfall: wenn die zu addierenden Punkte identisch sind, legt man eine Tangente an den Punkt und verfährt wie geschildert.
Abb. 1 Addition zweier Punkte A und B veranschaulicht
Man kann durch überprüfen der Gruppen Definition mit Hilfe der Schnittmenge von Gerade und elliptischer Kurve einfach zeigen, dass die gewünschten Eigenschaften erfüllt sind. Die Addition der Punkte
Für die Addition zweier identischer Punkte gilt entsprechend:
Die skalare Multiplikation wird nun durch mehrfaches addieren des selben Punktes definiert. Nun wird das Potenzieren durch die elliptische Multiplikation quasi ersetzt. Die Trapdoor liegt nun in der Division auf
Der elliptische Deffie Hellman Schlüsselaustausch
Mit den elliptischen Kurven lassen sich nun die oben vorgestellten Verfahren, die auf dem diskreten Logarithmusproblem aufbauen, verbessern und elegant praxistauglicher machen.
Zunächst einigen sich Alice und Bob auf eine öffentlich einsehbare Kurve und wählen also die Kurvenparameter a und b sowie eine Primzahl p als Modul. Diese Daten sind öffentlich einsehbar. Außerdem wählen die beiden einen öffentlichen Punkt P, der auf der Kurve liegt. Nun wählt jeder eine geheime natürliche Zahl, die kleiner als die Primzahl ist(
An ein und denselben Schlüssel, den ein Außenstehender, der den Austausch abhört, nicht gelangen kann, kommen sie erneut wie folgt:
Alice berechnet
Alice schickt
Alice berechnet den gemeinsamen Schlüssel
Beide kennen jetzt den selben Schlüssel:
Will nun jemand den Schlüssel herausfinden, würde er nur die elliptische Kurve, den Punkt P,