Rechnernetze / Kommunikationssysteme

Aufgaben Diffie-Hellman-Schlüsselvereinbarung

  1. Berechnen Sie den Schlüsselaustausch für g = 2, p = 13 und a = 11, b = 8!
  2. Warum sollte die Basis g im DH ein primitives Element sein?
  3. Was passiert bei den Parametern g = 3 und p = 13?
  4. Wir kann der Man-in-the-Middle-Angriff verhindert werden?
  5. Wozu benötige ich noch DH, wenn ich schon ein Public-Key-Verfahren nutze? Ich könnte ja einen geheimen Transportschlüssel verschlüsselt übertragen.

Lösung

  1. $A = 2^{11}$ mod 13 = 7; $B = 2^8$ mod 13 = 9; $K = A^b = B^a = 7^8 = 9^{11} = 3$ (mod 13)
  2. Um eine maximale multiplikative Gruppe aufzuspannen. Der Schlüsselraum ergibt sich direkt durch die Mächtigkeit der multiplikativen Gruppe.
  3. Der Schlüsselraum verkleinert sich auf die multiplikative Gruppe $3^0 = 1, 3^1 = 3, 3^2 = 9, 3^3 = 1, 3^4 = 3, \dots$ .
  4. Vorab Authentifizierung der Parteien z. B. mittels Zertifikat.
  5. Der Transportschlüssel sollte nicht aus den privaten Schlüssel abgeleitet sein -> Perfect Forward Secrecy

Fakultativ