A wählt eine Zufallszahl
und berechnet
;
B wählt eine Zufallszahl
und berechnet
.
A sendet
an B;
B sendet
an A.
A berechnet
B berechnet
Diese Konstruktion ist für praktische Anwendungen etwas problematisch, denn es ist nicht ganz klar, wann Schritt 1 ausgeführt wird, d.h. wann die Schlüsselpaare erzeugt werden. Wenn die Schlüsselpaare im voraus erzeugt werden, dann werden A und B bei der Durchführung von 5.1 immer denselben gemeinsamen Wert berechnen; wenn die Schlüsselpaare jedesmal neu erzeugt werden, tauschen A und B unzertifizierte Schlüssel aus.
Das Problem wird durch die Verwendung von zwei Schlüsselpaaren (für
jede beteiligte Partei) gelöst, einem statischen (langlebigen) Schlüsselpaar
und einem flüchtigen (kurzlebigen) Schlüsselpaar; das statische Schlüsselpaar
wird dabei grundsätzlich von einer Zertifizierungs-Einrichtung (CA)
zertifiziert, das flüchtige Schlüsselpaar wird für jeden Protokoll-Durchgang
neu erzeugt und nur ein einziges mal verwendet. Im folgenden wird
hier das statische und das flüchtige Schlüsselpaar mit
und
bezeichnet, wobei
die geheimen und
die öffentlichen Schlüssel
sind.