Diffie-Hellman (genauer: Diffie-Hellman-Merkle-Schlüsselaustausch) ist ein kryptografisches Verfahren, mit dem zwei Parteien über eine unsichere Leitung ein gemeinsames Geheimnis aushandeln können, ohne es selbst zu übertragen. Aus diesem gemeinsamen Geheimnis wird der symmetrische Sitzungsschlüssel abgeleitet. Das Verfahren wurde 1976 von Whitfield Diffie und Martin Hellman veröffentlicht (Ralph Merkle trug Grundideen bei) und gilt als Geburtsstunde der Public-Key-Kryptografie.

Die Grundidee

Die Sicherheit beruht auf dem diskreten Logarithmusproblem: Bei einer Primzahl p und einer Basis g ist es praktisch unmöglich, aus der Potenz g^x mod p den Exponenten x zurückzurechnen. Der Ablauf (Alice und Bob):

  • Beide einigen sich öffentlich auf Primzahl p und Basis g (kein Geheimnis).
  • Alice wählt geheim a und sendet g^a mod p; Bob wählt geheim b und sendet g^b mod p.
  • Beide berechnen (g^b)^a = (g^a)^b = g^(ab) mod p — dasselbe gemeinsame Geheimnis.

Ein Lauscher sieht zwar p, g, g^a, g^b, kann daraus aber ohne die geheimen Exponenten keinen Schlüssel ableiten.

Schwächen und moderne Praxis

  • Man-in-the-Middle: Diffie-Hellman authentifiziert die Partner nicht — ein Angreifer kann sich als beide Seiten ausgeben (siehe MITM). Deshalb wird der Austausch in TLS immer mit authentifizierenden Verfahren kombiniert (RSA- oder ECDSA-Signaturen über Zertifikate).
  • Ephemeral-Variante (DHE/ECDHE): Für jede Sitzung wird ein frisches Schlüsselpaar erzeugt. Wird der Langzeitschlüssel später kompromittiert, bleiben vergangene Sitzungen geschützt — Perfect Forward Secrecy.
  • Logjam-Angriff: Zu kleine Primzahlen (512 Bit) sind faktorisierbar; moderne Parameter verwenden mindestens 2048 Bit.

Die elliptische Variante ECDHE (Ephemeral Elliptic Curve Diffie-Hellman) ist heute in den meisten Cipher Suites von HTTPS Standard, oft kombiniert mit AES als Datenverschlüsselung. Das Ergebnis ist eine Ende-zu-Ende-Verschlüsselung der Kommunikation.

Diffie-Hellman ist ein Grundbaustein der Kryptographie neben Verschlüsselung und digitalen Signaturen. Verwandte Grundlagen: AEAD als Absicherung der übertragenen Daten.