Automatische Analyse für Hill-Verschlüsselungsverfahren (Menü Analyse \ Symmetrische Verschlüsselung (klassisch) \ Known Plaintext)

Für das Hill-Verschlüsselungsverfahren steht ein Angriff (Known-Plaintext-Angriff) zur Verfügung. Das heißt, man muss der Funktion sowohl einen Klartext als auch den mittels Hill-Verschlüsselungsverfahren verschlüsselten Text eingeben. Daraufhin ermittelt CrypTool den Schlüssel, mit dem der Klartext verschlüsselt worden ist.

Wie oben erwähnt, muss der automatischen Analyse sowohl der Klartext als auch der verschlüsselte Text bekannt sein. Einer der Texte muss im aktiven Fenster vor dem Aufruf der Funktion zur automatischen Analyse des Hill-Verschlüsselungsverfahrens vorhanden sein, der andere Text muss im Dialog Analyse Hill-Verschlüsselungsverfahren eingegeben werden.

Die Analyse funktioniert wie folgt: CrypTool nimmt an, dass der Schlüssel die Dimension n x n (aus dem im Dialog Analyse Hill-Verschlüsselungsverfahren gewählten Bereich) hat. Nun werden der Klartext und der verschlüsselte Text in Blöcke der Länge n unterteilt. Aus n Blöcken des Klartextes und den entsprechenden Blöcken des verschlüsselten Textes werden die Matrizen K (Klartext) und V (verschlüsselter Text) aufgebaut. Offensichtlich gilt: V = K * A, wobei A der Schlüssel ist. Falls K invertierbar ist, kann der Schlüssel durch einfache Matrizenmultiplikation modulo 26 (Anzahl der Buchstaben) berechnet werden: Inverse(K) * V = A. Ist K nicht invertierbar, so wird eine andere mögliche Kombination von Blöcken ausprobiert.

Beispiel zum Suchen einer Kombination von Blöcken:

Der Klartext lautet: ABCDXY.
Der verschlüsselte Text ist: STONLC.
Die Schlüssellänge beträgt: 2.

Als erstes probiert CrypTool mit Hilfe der folgenden Matrizen den Schlüssel zu finden.

K: AB V: ST
  CD   ON

Die Matrix K ist nicht invertierbar. Daher wäre es nicht möglich, den Schlüssel zu finden, wenn der Klartext ABCD und der verschlüsselte Text STON wäre. Da in dem Beispiel aber ein weiterer Block vorhanden ist, wird die nächste mögliche Kombination von Blöcken gebildet. Die Matrizen haben dann folgendes Aussehen:

K: AB V: ST
  XY   LC

Da diese Matrix K invertierbar ist, kann das Produkt der Inversen Matrix von K und der Matrix V berechnet werden und man erhält sofort den Schlüssel der Dimension 2 x 2:

A: TE
  ST

Damit erfolgt eine Ausgabe dieses Schlüssels im Dialog Schlüssel für Hill Verschlüsselungsverfahren.

Die letzte mögliche Kombination von Blöcken wäre bei diesem Klartext und diesem verschlüsselten Text:

K: CD V: ON
  XY   LC

In diesem Beispiel war das Bilden dieser letzten Kombination nicht notwendig, da der Schlüssel schon mit der vorherigen Kombination von Blöcken gefunden worden ist.

Falls alle möglichen Kombinationen von Blöcken nicht zum Finden des Schlüssels führen, wird die nächste Dimension ausprobiert. Wenn der Schlüssel nicht gefunden werden konnte, wird eine entsprechende Meldung ausgegeben.

Im Kapitel Szenarien befindet sich ein Beispiel zum Angriff auf das Verschlüsselungsverfahren.

Voraussetzungen an das Dokument für einen erfolgreichen Angriff:

Der Schlüssel wird immer gefunden, falls das Dokument

nicht zu kurz ist (mindestens jedoch so viele Zeichen enthält, wie der Schlüssel Zeichen besitzt).

nicht aus ein- und derselben Zeichenfolge (oder Zeichenfolgen, deren Zeichen den gleichen Abstand voneinander haben) besteht.

Die zweite Bedingung besagt, dass zum Beispiel für Klartext ABAB der Schlüssel unter Umständen nicht ermittelt werden kann. Dies gilt auch für den Klartext ABCD, da der Abstand der Buchstaben des ersten Blockes (AB) genauso groß wie der Abstand der Buchstaben des zweiten Blockes (CD) ist, nämlich ein Zeichen.

Diese beiden oben angeführten Bedingungen sind normalerweise erfüllt, wenn der Klartext aus Wörtern einer natürlichen Sprache besteht, zum Beispiel dem Wort "HILLCIPHER".

Der Schlüssel kann unter Umständen dennoch gefunden werden, wenn ein kurzer Text, der die zweite Bedingung erfüllt, vorliegt.