"We stand today on the brink of a revolution in cryptography."
So begann, wenig bescheiden, 1976 ein Artikel von Hellman und Diffie. In der Sache behielten sie mit dieser Ankündigung durchaus recht: auf dem Diffie-Hellman-Prinzip beruhen heute die meisten Public-Key-Verschlüsselungsverfahren. (Zum Zeitpunkt dieser Arbeit war übrigens
Diffie ein 32-jähriger Dauerstudent und
Hellman sein 31-jähriger Professor. Diffie hat seine Promotion bis heute nicht abgeschlossen. Finanziell wird er das auch nicht mehr nötig haben, und den Dr. hat er inzwischen als Dr.h.c.von der ETH Zürich erhalten.)
Man weiß heute übrigens, daß dieses Verfahren bereits 1974 beim britischen Geheimdienst von
Malcolm Williamson entwickelt wurde. Aus Geheimhaltungsgründen durfte Williamson seine Arbeit damals nicht veröffentlichen.
Der Diffie-Hellman-Schlüsselaustausch ist ein auf einer recht einfachen Idee beruhendes Verfahren, mit dem sich zwei Partner auf einen gemeinsamen Schlüssel einigen können, ohne diesen Schlüssel selbst über das Kommunikationsnetz verschicken zu müssen.
Die zu verschlüsselnden Schlüssel (d.h. ihre einzelnen Bits) seien gegeben als Elemente einer abelschen Gruppe. (Abelsche Gruppen hatten wir gestern in
Teil 4 erklärt. Wem Gruppen zu abstrakt sind, der kann einfach an ganze Zahlen denken. Man sollte aber wissen, daß die Gruppe der ganzen Zahlen in realen Krypto-Systemen NICHT verwendet wird. Warum, werden wir in späteren Folgen erklären.)
Alice und Bob haben sich also auf eine Gruppe G und ein Element g dieser Gruppe geeinigt. Auch einem eventuellen Lauscher sind G und g bekannt. Alice nimmt sich jetzt eine zufällig gewählte Zahl a und bildet
ag, d.h. die Summe g+g+...+g (a Summanden)
und schickt das Gruppenelement ag an Bob.
Analog nimmt sich Bob eine zufällig gewählte Zahl b und bildet
bg, d.h. die Summe g+g+...+g (b Summanden)
und schickt das Gruppenelement bg an Alice.
Weil Alice ja die Zahl a kennt, kann sie abg berechnen.
Weil Bob die Zahl b kennt, kann er bag berechnen.
Wegen abg=bag, haben Alice und Bob jetzt einen gemeinsamen Schlüssel, mit dem sie
dann ein symmetrisches Verschlüsselungsverfahren benutzen können.
Weil nur ag und bg über die unsicheren Kommunikationswege übertragen wurden, nicht aber abg, kennt ein Mithörer diesen gemeinsamen Schlüssel abg NICHT.
Der Mithörer kennt nur ag und bg.
Die Sicherheit des Verschlüsselungssystems beruht also darauf, daß man nicht aus ag und bg auf abg schliessen kann. Dies wiederum hängt davon ab, welche Gruppe man verwendet. (Dies ist auch der Grund, warum man nicht einfach die Gruppe der ganzen Zahlen verwenden kann. Dort könnte der Mithörer aus den abgehörten ag und bg nämlich sehr leicht auch den Schlüssel abg berechnen.)
Mehr dazu im nächsten Teil.
Zusammengefaßt: der Diffie-Hellman-Schlüsselaustausch beruht eigentlich auf einer (für Mathematiker) sehr banalen Idee. Daß er trotzdem sichere Verschlüsselungsverfahren liefert, liegt daran, daß es Gruppen gibt, die viel komplizierter sind als die ganzen Zahlen, und für die der Lauscher aus den beiden von A und B verschickten Informationen nicht ihren gemeinsamen Schlüssel rekonstruieren kann.