Hill-Chiffre

Die Hill-Chiffre gehört in die klassische Kryptographie, genauer in den Bereich der polyalphabetische Substitution, basierend auf linearer Algebra. Erfunden wurde sie von Lester S. Hill im Jahr 1929. Dieser war Professor am Hunter College in New York City und publizierte diese Methode erstmals in seinem Artikel „Cryptography in an Algebraic Alphabet“.[1] Der Kryptograph war zu dieser Zeit der erste polyalphabetische Kryptograph, der praktisch (wenn auch kaum) an mehr als drei Symbolen zugleich operieren kann. Die folgenden Absätze setzen ein grundsätzliches Wissen der Matrizen voraus.

Verschlüsselung[2]

Jeder Buchstabe wird von einer Zahl modulo 26 repräsentiert. (Meist wird das einfache Schema A = 0, B = 1, …, Z = 25 verwendet, aber diese Art der Codierung ist nicht zwingend.) Um eine Botschaft zu verschlüsseln, wird ein Block von n Buchstaben (als n-Komponenten Vektor) durch eine invertierbare n×n-Matrix – wieder modulo 26 – multipliziert. Um die Nachricht zu entschlüsseln, wird jeder Block mit der Inversen der Matrix, die zur Verschlüsselung verwendet wurde, multipliziert. Die Matrix, die zur Verschlüsselung verwendet wurde, ist der Chiffrier-Schlüssel und sollte zufällig aus der Menge der invertierbaren n×n-Matrizen (modulo 26) gewählt werden. Die Chiffre kann natürlich zu einem Alphabet mit beliebiger Anzahl von Buchstaben angepasst werden; alle arithmetischen Operationen müssen dann aber modulo der Anzahl der Buchstaben statt modulo 26 durchgeführt werden. Betrachtet man nun die Meldung „ACT“ und den Schlüssel als Matrix (bzw. in Buchstaben „GYBNQKURP“):

Da A = 0, C = 2 u​nd T = 19 ist, besteht d​ie Botschaft a​us dem Vektor:

Damit w​ird der verschlüsselte Vektor berechnet:

Dies entspricht d​em Geheimtext v​on „POH“. Angenommen, d​ass unsere Botschaft n​un „CAT“ ist:

Dieses Mal w​ird die gleiche Verschlüsselungsmatrix verwendet, a​ber die Berechnung zeigt:

was d​em Chiffretext v​on „FIN“ entspricht. Jeder Buchstabe h​at sich geändert. Die Hill-Chiffre erreicht n​un Shannons Diffusion u​nd eine n-dimensionale Hill-Chiffre k​ann auf einmal über n Symbole diffundieren.

Entschlüsselung[3]

Um d​en Geheimtext z​u entschlüsseln, multiplizieren w​ir den Text m​it der inversen Matrix d​er Verschlüsselungsmatrix (in Buchstaben i​st diese „IFKVIVVMI“). (Um e​ine inverse Matrix z​u berechnen, s​iehe Matrixinversion.) Dies i​st die inverse Matrix d​er Verschlüsselungsmatrix a​us dem vorigen Beispiel:

Wenn m​an den vorher verschlüsselten Geheimtext „POH“ darauf anwendet, erhält man:

Dadurch erhält man den Klartext „ACT“, unserem Ausgangswort. Noch nicht besprochen wurde die Problematik, die in der Auswahl der Verschlüsselungsmatrix besteht. Nicht alle besitzen eine inverse Matrizen (siehe invertierbare Matrix). Eine Matrix kann zu einer inversen werden, wenn, und nur wenn, die Determinante nicht Null ist und keine gemeinsamen Faktoren mit der modularen Basis haben, d. h., dass die Determinante und die Modulo-Zahl keine gemeinsamen Teiler haben dürfen. Wenn man jetzt, wie oben, in modulo 26 operiert, muss die Determinante ungleich Null sein und darf auch nicht durch 2 oder 13 teilbar sein. Sollte die Determinante Null oder die Faktoren mit der modularen Basis gleich sein, dann kann die Matrix nicht für die Hill-Chiffre angewendet werden. Eine andere Matrix muss gewählt werden, sonst ist der Geheimtext nicht mehr zu decodieren. Glücklicherweise sind die Matrizen, die auf diese Bedingungen zutreffen, relativ häufig. Vom obigen Beispiel sei die Verschlüsselungsmatrix:

Durch modulo 26 ist die Determinante 25. Da 25 keine gemeinsamen Faktoren mit der Modulo-Zahl 26 hat, kann diese Matrix für die Hill-Chiffre verwendet werden. Das Risiko, dass die Determinante gemeinsame Faktoren mit der modularen Basis hat, kann vermindert werden, wenn man als modulare Basis eine Primzahl verwendet. Folglich ist eine nützliche Variante der Hill-Chiffre noch drei Symbole zum Alphabet hinzuzufügen (z. B. Fragezeichen, Leerzeichen und Punkt) um auf die Primzahl 29 als modulare Basis zu kommen.

Es ist auch möglich für die Verschlüsselungsmatrix eine involutive Matrix zu wählen, so dass die aufwändige Bestimmung der inversen Matrix entfällt, da ist.

Sicherheit

Schlüsselraum

Für ein Alphabet mit Buchstaben ( sind verschiedene Primzahlen, also in Primfaktorzerlegung) umfasst der Schlüsselraum für n × n - Matrizen

Schlüssel.[3]

Der Schlüsselraum ist deshalb für Schlüssel einer Größenordnung am größten, wenn man als Primzahlpotenz wählt, also .

Die Hill-Chiffre ist völlig linear und daher für einen Angriff mit bekanntem Klartext anfällig. Es genügen Paare von Klartext- und Geheimtextvektoren, um ein lineares Gleichungssystem aufzustellen, mit dem die Verschlüsselungsmatrix in der Regel berechnet werden kann. Im ungünstigsten Fall braucht man ein wenig mehr als Paare, um eine eindeutige Lösung zu erhalten.

Siehe auch

Quellen

  1. Lester S. Hill: Cryptography in an Algebraic Alphabet. In: The American Mathematical Monthly. Band 36, Nr. 6, Juni 1929, S. 306, doi:10.2307/2298294 (marksmath.com [PDF; abgerufen am 11. Juni 2014]).
  2. Ryan Doyle: Hill’s Cipher: Linear Algebra in Cryptography (PDF-Datei).
  3. Jeffrey Overbey, William Traves and Jerzy Wojdylo: On The Keyspace Of The Hill Cipher. Cryptologia (PDF; 143 kB).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.