7.1.3 Kombinationen von Verfahren, Schlüsselaustausch

Obwohl eine der Forderungen an asymmetrische Verfahren ist, daß sie in der normalen Anwendung leicht zu berechnen sein sollen, stellt es sich im Vergleich zu den symmetrischen Verfahren heraus, daß eine asymmetrische Anwendung aus Gründen, die wir noch einsehen werden, wesentlich langsamer ist als eine symmetrische.

Da aber auch in der EDV der Grundsatz "Zeit ist Geld" gilt, sucht man natürlich nach Methoden, die die Vorteile beider Verfahrensgruppen in sich vereinigen. Die Antwort ist dabei ganz einfach: Man verschlüsselt die eigentliche Nachricht mit Hilfe eines schnellen symmetrischen Verfahrens; hier steckt ja der Löwenanteil an Daten. Und wie bekommt der Empfänger den verwendeten symmetrischen Sitzungsschlüssel? Nun, der wird mit den beschriebenen asymmetrischen Verfahren verschlüsselt und an den Empfänger geschickt. Der muß zunächst den empfangenen Sitzungsschlüssel entschlüsseln, dann kann er diesen verwenden, um die eigentliche Nachricht zu dechiffrieren.

Abb. 7.3: Die eigentliche Nachricht wird mit einem symmetrischen Verfahren verschlüsselt. Danach wird der symmetrische Sitzungsschlüssel mit dem öffentlichen Schlüssel des Empfängers verschlüsselt und der Nachricht beigelegt.

Dies ist nur eine Methode, Schlüssel sicher auszutauschen. Von den Verfahren, die es heute gibt, soll eines kurz angesprochen werden, das Verfahren "Diffie-Hellmann-Key-Exchange" (Schlüsselaustausch, 1976).

Alice und Bob einigen sich anfangs auf eine Zahl p, die eine Primzahl sein muß und nicht zu klein sein sollte. Desweiteren auf eine Zahl g, die kleiner sein muß als p ( g < p ); p und g sind öffentlich. Wenn Alice an Bob einen Sitzungsschlüssel über einen unsicheren Kanal senden möchte, dann wird nach folgendem Muster vorgegangen:

1. Alice wählt eine natürliche Zahl x.
2. Alice berechnet a = gx mod p
3. Bob wählt ebenfalls eine natürliche Zahl y.
4. Bob berechnet b = gy mod p.

Die Zahl gxy ist der gemeinsame Schlüssel.

5. Beide tauschen nur Ihre Ergebnisse aus; Alice sendet also an Bob die Zahl a, Bob sendet an Alice die Zahl b.
6. Alice kennt x und b, Bob kennt y und a. Alice berechnet bx, Bob berechnet ay

Nun kennen Alice und Bob beide den gemeinsamen Sitzungsschlüssel. Eve, die Lauscherin, kennt nur a, b und g. Sie muß aber, um den Schlüssel zu berechnen, einen diskreten Logarithmus (siehe nächster Abschnitt) berechnen. Das aber wird als mindestens ebenso schwierig eingeschätzt wie eine Primfaktorenzerlegung (siehe nächster Abschnitt) - und damit ist eine Berechnung praktisch nicht möglich.

Es gibt inzwischen einige Verbesserungen an diesem Verfahren, die unter anderem das Problem betreffen, daß die Sicherheit des Verfahrens auf Annahmen beruht, die nicht bewiesen werden können. Daneben gibt es weitere, neuere Verfahren, die das Problem in anderer Weise lösen.