Berechne und skizziere einen Diffie-Hellman-Schlüsselaustausch (d.h. A, B und g,a,b) für die folgenden Parameter:
p = 29, g = 5, a = 13, b = 11.
Eve zapft die Leitung an, mit der Alice und Bob kommunizieren. Sie weiß nun die vier angegebenen Zahlen:
p = 17, g = 3, A = 5, B = 11.
a) Was sind nun also a und b und welches ist der Schlüssel, den sich Eve nun beschafft hat?
b) Warum hat Eve in den wahren kryptografischen Anwendungen keine effektive Chance, sich den Schlüssel auf diese Weise zu beschaffen?
a) Erläutere, warum der Diffie-Hellman-Schlüsselaustausch auf dem diskreten Logarithmusproblem basiert und warum dies den Algorithmus sicher macht.
b) Erkläre, warum es einem Angreifer schwerfällt, den gemeinsamen geheimen Schlüssel zu berechnen, selbst wenn er die öffentlichen Schlüssel von Alice und Bob kennt.
c) Welche Rolle spielen die Primzahl p und die Basis g für die Sicherheit des Diffie-Hellman-Verfahrens? Warum müssen p und g sorgfältig ausgewählt werden?
Leider hat Alice bei der Wahl von g nicht aufgepasst und als öffentliche Parameter g = 3 und p = 13 gewählt.
Wie beeinträchtigt die Wahl von g die Sicherheit des Diffie-Hellman-Schlüsselaustauschs?
a) Beschreibe den Ablauf eines Man-in-the-Middle-Angriffs bei Diffie-Hellman.
b) Wie kann Eve zwei verschiedene geheime Schlüssel zwischen Alice und Bob berechnen, ohne dass Alice und Bob es bemerken?
c) Welche Möglichkeiten gibt es, um einen solchen Angriff zu verhindern?
a) Erstelle mit Hilfe von HTML/JavaScript eine Funktion die die Berechnung von A, B, K automatisch durchführt.
b) Erweitere das Programm so, dass die Verifikation von K sichergstellt ist.