next up previous contents
Next: MTI Up: Schlüssel-Austausch-Verfahren Previous: Schlüssel-Austausch-Verfahren   Contents

Diffie-Hellman

Algorithmus 5.1 (Diffie-Hellman)  
  1. Erzeugung des Schlüsselpaares

    A wählt eine Zufallszahl $ s_{A},\, 1<s_{A}<r $ und berechnet $ \sigma _{A}\leftarrow s_{A}\cdot h $;

    B wählt eine Zufallszahl $ s_{B},\, 1<s_{B}<r $ und berechnet $ \sigma _{B}\leftarrow s_{B}\cdot h $.

  2. Austausch

    A sendet $ \sigma _{A} $ an B;

    B sendet $ \sigma _{B} $ an A.

  3. Berechnen des gemeinsamen Wertes

    A berechnet $ \kappa _{A}\leftarrow s_{A}\cdot \sigma _{B} $

    B berechnet $ \kappa _{B}\leftarrow s_{B}\cdot \sigma _{A} $

$ \kappa =\kappa _{\mathrm{A}}=\kappa _{B} $ ist der gemeinsame, geheime Wert.

Protokoll 5.1 basiert auf dem DLP: $ s_{A} $ und $ s_{B} $ sind die geheimen Schlüssel, $ \sigma _{A} $ und $ \sigma _{B} $ sind die öffentlichen Schlüssel. $ \kappa $ ist der geimeinsame Wert, denn offensichtlich ist

$\displaystyle \kappa _{A}=s_{A}\cdot \sigma _{B}=s_{A}\cdot \left( s_{B}\cdot h\right) =s_{B}\cdot \left( s_{A}\cdot h\right) =s_{B}\cdot \sigma _{A}=\kappa _{B}$

Außerdem ist $ \kappa $ nur von A und B bekannt, denn andernfalls müßte $ s_{A} $ und $ s_{B} $ rekonstruiert werden, indem $ s_{A}=\log _{h}\sigma _{A} $ und $ s_{B}=\log _{h}\sigma _{B} $ berechnet werden. Die Berechnung von $ \kappa $ aus $ \sigma _{A} $, $ \sigma _{B} $ und $ h $ wird auch als Diffie-Hellman-Problem bezeichnet.

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 $ \left( s,\sigma \right) $ und $ \left( t,\tau \right) $ bezeichnet, wobei $ s,t\in \mathbb{Z}_{r} $ die geheimen und $ \sigma ,\tau \in H $ die öffentlichen Schlüssel sind.


next up previous contents
Next: MTI Up: Schlüssel-Austausch-Verfahren Previous: Schlüssel-Austausch-Verfahren   Contents
Stefan Vigerske 2002-06-26