Die klassische Diffie-Hellman-Schlüsselvereinbarung legt die multiplikative Gruppe ℤn* mit n Primzahl zugrunde. Das Diffie-Hellman-Protokoll auf Basis elliptischer Kurven legt stattdessen die Gruppe der Punkte einer elliptischen Kurve über dem endlichen Körper ℤn mit n Primzahl und n > 3 zugrunde.
In der Gruppe der Punkte einer elliptischen Kurve ist in bestimmter Weise eine Verknüpfung zwischen den Punkten definiert. Im Diffie-Hellman-Protokoll wird die u-malige Verknüpfung eines Punktes g mit sich selbst verwendet; wir fassen die Verknüpfung multiplikativ auf und schreiben hierfür gu, analog zum klassischen Diffie-Hellman-Protokoll. 1)
Zu Beginn tauschen die Kommunikationspartner A und B öffentlich eine elliptische Kurve E und einen Basispunkt g ∈ E aus. Im Verlauf des Protokolls werden Punkte a, b, k ∈ E berechnet.
A | C | B | ||
Elliptische Kurve E Punkt g ∈ E | ||||
wählt Zufallszahl u | wählt Zufallszahl v | |||
berechnet a = gu | berechnet b = gv | |||
berechnet bu = gvu = k | berechnet av = guv = k | |||
Bild 1: Diffie-Hellman-Schlüsselvereinbarung auf Basis einer elliptischen Kurve
Der Punkt k kann nunmehr den Kommunikationspartnern A und B als gemeinsamer Schlüssel dienen. Sind die verwendeten Zahlen groß genug, so kann aus der Kenntnis von a sowie E und g nicht u berechnet werden, jedenfalls nicht mit vertretbarem Aufwand (Problem des diskreten Logarithmus elliptischer Kurven – Elliptic Curve Discrete Logarithm Problem ECDLP). Ein Dritter C kann somit nicht k = bu berechnen.
[Lan 18] H.W. Lang: Kryptografie für Dummies. Wiley (2018)
1) In der Literatur wird die Verknüpfung von Punkten einer elliptischen Kurve meist additiv aufgefasst, sodass die u-malige Verknüpfung eines Punktes g mit sich selbst dann als g·u geschrieben wird.
Weiter mit: [up]