Die Vigenère-Verschlüsselung

Die bekannteste Art der polyalphabetischen Chiffrierung ist die Vigenère-Verschlüsselung. Sie wurde im Jahre 1586 in dem berühmten Buch „Traité des chiffres“ von dem französischen Diplomaten Blaise de Vigenère (1523 bis 1596) der Öffentlichkeit zugänglich gemacht. Vigenère perfektionierte dabei ein Verfahren, das ursprünglich der Mönch Johannes Trithemius (1462-1516) entwickelt hatte. Da es zur Zeit der Renaissance noch keine Computer gab, sollte erst einmal das Vorgehen bei der Verschlüsselung „per Hand“ erläutert werden. Zur Chiffrierung der Nachrichten benötigt man ein Schlüsselwort und das Vigenère-Quadrat. Dabei kann das Schlüsselwort jede beliebige Buchstabenfolge sein. Im nachfolgenden Beispiel soll exemplarisch die Vorgehensweise bei dieser Art von Verschlüsselung dargestellt werden. Es wird vereinbart:
Schlüsselwort W*
BOND
Schlüsselwort W:
BONDBONDBONDBONDBONDBO
Klartext K: 
TREFFINDERGRUENENTANNE
Geheimtext G
UFRIGWAGFFTUVSAHOHNQOS
Wie kommt man zu dem Geheimtext? Es ist ein beliebiges Schlüsselwort, z.B. „BOND“ zu wählen. Dieses Wort wird zeichenweise so lange über den Klartext geschrieben, bis die Länge des Klartextes erreicht ist. Der über einem bestimmten Klartextzeichen stehende Schlüsselwortbuchstabe und der direkt darunter liegende Klartextbuchstabe bestimmen anhand des Vigenère-Quadrates den Geheimtextbuchstaben. Dazu geht man in die Zeile, die mit dem Schlüsselwortbuchstaben anfängt und sucht die Spalte, die mit dem Klartextbuchstaben beginnt. Am Schnittpunkt von Zeile und Spalte steht der Geheimbuchstabe. Das Vigenère-Quadrat und die Suche der ersten beiden Geheimtextbuchstaben würde für das obige Beispiel wie folgt aussehen:

Das Vigenère-Quadrat
Das Vigenère-Quadrat
Die Verschlüsselung des restlichen Textes erfolgt analog. Wie im Beispiel zu sehen ist, werden dem E aus dem Klartext verschiedene Buchstaben zugeordnet (R,F,S,S). Dadurch wird die Häufigkeit des Auftretens der verschiedenen Buchstaben verschleiert, was ja – bereits bekannt – den Angriffspunkt für die statistischen Methoden der Kryptoanalyse bei monoalphabetischen Verfahren bot.
Obiges Beispiel zeigt die Funktionsweise der Verschlüsselung mit dem Vigenère-Quadrat recht deutlich. Für die Arbeit mit einem Computer ist es notwendig, die Vorgehensweise mathematisch auszudrücken und zu algorithmieren. Die mathematische Beschreibung des Vigenère-Verfahrens sieht folgendermaßen aus:

G* = (S* + K*) mod 26.

wobei G*, S* und K* die Positionen der Geheimtext-, Klartext- und Schlüsselbuchstaben z.B. in einem Array sind. Wie man sieht, ist dies die gleiche Formel, die auch zur Caesar-Chiffrierung angewandt wurde. Der Unterschied besteht darin, dass sich S* ständig ändert und somit eine bessere Verteilung der Häufigkeiten der Zeichen erreicht wird. Im obigen Beispiel sieht das so aus:

B + T = ? B* = 1; T* = 19 daraus folgt 1 + 19 = 20 daraus folgt U

O + R = ? O* = 14; R* = 19 daraus folgt 14 + 17 = 31 daraus folgt 31 mod 26 = 5 daraus folgt F

Die Modulo-Funktion wird für die Ermittlung des ersten Geheimtextbuchstabens nicht benötigt, weil der „Definitionsbereich“ nicht verlassen wurde. Die Dechiffrierung mit bekanntem Schlüssel verläuft analog in umgekehrter Richtung.
Auch diese Art der Verschlüsselung hat ihren Schwachpunkt. Trotz der besseren Verschleierung der Häufigkeiten der Buchstaben wiederholen sich kleinere Wörter. Mit diesen kann man das Schlüsselwort (vor allem bei kurzen Schlüsseln) errechnen. Allgemein gilt: Je länger der Schlüssel (am besten so lang wie der Klartext), desto sicherer die Vigenère-Verschlüsselung.

Programme: vigenere.html, vigeneredechiff.html

zurück Gliederung vor