ASAC

Diese Verschlüsselung wurde auf der Webseite Mystery Twister veröffentlicht und stellt laut ihrem Entwickler eine Verbesserung der ADFGVX-Chiffre dar. Sie erfolgt in drei Abschnitten:

  1. Verschlüsselung mit einem Polybios-Quadrat
  2. Addition der Ziffern mit einer pseudozufälligen Ziffernfolge
  3. Doppelte Spaltentransposition

Das Verfahren benutzt zwei 10x10-Tabellen und benötigt für die umfangreichen Zwischenschritte mehrere Schlüssel.

Klartext Dies ist ein geheimer Text
Schlüssel ASACVERSCHLUESSELUNG
MATHEMATIK SUBTRAHEND SPALTEN TAUSCHEN

Der erste Schlüssel kann wie in diesem Beispiel aus einem Wort, aber auch aus zwei Worten bestehen, die dann zusammengefasst werden. Die Länge muss genau 20 Buchstaben betragen. Ist der Schlüssel zu kurz, wird er periodisch verlängert. Ist er dagegen zu lang, wird er verkürzt.

Die erste Tabelle wird mit den Ziffern 0,1,...,9, dem Leerzeichen und den Buchstaben von A bis Z gefüllt. Um die Häufigkeiten der Vokale zu verschleiern, sind die Vokale A, I, O und U, doppelt vertreten, während E sogar viermal auftritt. Damit lautet die einzufügende Zeichenfolge

0123456789 AABCDEEEEFGHIIJKLMNOOPQRSTUUVWXYZ

Diese 44 Zeichen werden der Reihe nach horizontal so oft in die Tabelle eingefügt, bis diese vollständig gefüllt ist. Die zehn Spalten und Zeilen der Tabelle werden jeweils mit den Kennzahlen von 0 bis 9 versehen. Zusätzlich werden die Buchstaben des ersten Schlüsselwortes mit den 20 Buchstaben zuerst waagrecht und dann senkrecht zu den Kennzahlen hinzugefügt.

0123456789
ASACVERSCH
0L0123456789
1U AABCDEEEE
2EFGHIIJKLMN
3SOOPQRSTUUV
4SWXYZ AABCD
5EEEEEFGHIIJ
6LKLMNOOPQRS
7UTUUVWXYZ A
8NABCDEEEEFG
9GHIIJKLMNOO

Nach dem Einfügen der Buchstaben in die Ausgangstabelle werden die Zeilen und Spalten in dieser Reihenfolge verschoben, wobei der Kennbuchstabe der Zeilen in den üblichen Zahlencode umgewandelt wird.

ABCDEFGHIJKLMNOPQRSTUVWXYZ
012345678910111213141516171819202122232425

Dieser Zahlencode legt für jede Zeile fest, um wie viele Positionen die Zellen zyklisch nach rechts verschoben werden. Die obere Zeile besitzt den Kennbuchstaben L mit dem Zahlencode 11. Also werden in dieser Zeile alle Zellen um 11 Positionen verschoben, was bei zehn Spalten einer Verschiebung um eine Position entspricht.

Entsprechend geht man bei den Spalten vor, deren Buchstaben nach unten verschoben werden. Die rechte Spalte besitzt den Kennbuchstaben H mit dem Zahlencode 7. Damit werden alle Buchstaben in dieser Spalte um 7 Positionen nach unten verschoben.

0123456789
ASACVERSCH
0L9012345678
1U AABCDEEEE
2EKLMNFGHIIJ
3SPQRSTUUVOO
4SYZ AABCDWX
5EHIIJEEEEFG
6LSKLMNOOPQR
7UTUUVWXYZ A
8NEFGABCDEEE
9GKLMNOOHIIJ
0123456789
ASACVERSCH
0L9L1AOOUIEO
1U QAN3XCVIX
2EKZM2CCED7G
3SPIRBFOOEER
4SYK NT4YPIA
5EHUISADDZOE
6LSFLAEGHEWJ
7UTLUJNU5IF8
8NE0GMWBE6QE
9GKAMVBEHE J

Nach den Verschiebungen wird der Klartext inklusive der enthaltenen Leerzeichen verschlüsselt. Dazu wird jedem Buchstaben eine seiner möglichen Koordinaten der Tabelle in der Reihenfolge Spalte-Zeile zugeordnet. Da der erste Klartextbuchstabe D dreimal in der Tabelle vertreten ist, kann man zwischen den Koordinaten 55, 65 und 72 wählen. Wählt man etwa 65, beginnt der verschlüsselte Text mit diesen beiden Ziffern.

D  I  E  S     I  S  T     E  I  N    
65 25 73 06 89 81 35 44 24 80 70 34 24
G  E  H  E  I  M  E  R     T  E  X  T
92 98 69 46 81 29 68 23 01 07 62 51 44

Bis hierher handelt es sich prinzipiell um eine Verschlüsselung mit einem Polybios-Quadrat, die leicht modifiziert wurde.

Im zweiten Hauptschritt wird die erhaltene Ziffernfolge mithilfe einer pseudozufälligen Ziffernfolge verändert. Dazu wird eine zweite 10x10-Tabelle erstellt, in deren Zeilen jeweils die Ziffernfolge 0123456789 eingetragen wird. Als Kennbuchstaben der Spalten und Zeilen werden die nächsten beiden Schlüsselworte gewählt, die entweder wie hier jeweils zehn Buchstaben enthalten oder wie bei der ersten Tabelle zu einem einzigen Schlüsselwort mit 20 Buchstaben zusammengefasst werden.

0123456789
MATHEMATIK
0S0123456789
1U0123456789
2B0123456789
3T0123456789
4R0123456789
5A0123456789
6H0123456789
7E0123456789
8N0123456789
9D0123456789

Wie bei der ersten Tabelle werden die Zeilen und Spalten verschoben. Dabei legen die Codes der aus den beiden Schlüsselworten erzeugten Kennbuchstaben wieder die Größe der einzelnen Verschiebungen fest.

0123456789
MATHEMATIK
0S2345678901
1U0123456789
2B9012345678
3T1234567890
4R3456789012
5A0123456789
6H3456789012
7E6789012345
8N7890123456
9D7890123456
0123456789
MATHEMATIK
0S7324728771
1U7116026699
2B2033175818
3T0256157080
4R9429649712
5A1150466049
6H3480389352
7E0795552455
8N3893783406
9D6842413986

Anschließend werden die Ziffern zeilenweise von links nach rechts notiert und ergeben eine pseudozufällige Ziffernfolge. Diese muss genauso lang sein wie die sich aus der Codierung des Klartextes ergebende Ziffernfolge aus dem ersten Hauptschritt. Ist die neue Ziffernfolge zu lang, wird sie verkürzt. Ist sie dagegen zu kurz, wird sie periodisch verlängert.

Danach werden die Ziffern aus der Polybios-Verschlüsselung und die erzeugten pseudozufälligen Ziffern ziffernweise ohne Übertrag addiert.

   65257 30689 81354 42480 70342 49298 69468 12968 23010 76251 44
 + 73247 28771 71160 26699 20331 75818 02561 57080 94296 49712 11
   38494 58350 52414 68079 90673 14006 61929 69948 17206 15963 55

Abschließend erfolgt der dritte Hauptschritt, bei dem die Ziffern der Summe mit einer doppelten Spaltentransposition noch einmal verändert werden. Für diese Transformation werden zwei Schlüssel verwendet, deren Längen keine gemeinsamen Teiler enthalten. Zusätzlich sollten die beiden Längen jeweils größer als  n  sein, wenn n die Länge des zu verschlüsselnden Klartextes ist. Diese beiden Bedingungen sind hier mit den Längen 7 und 8 der beiden Schlüssel SPALTEN und TAUSCHEN erfüllt.

Für die erste Spaltentransposition ist für die 52 Ziffern eine Tabelle der Breite 7 und der Höhe 8 erforderlich. In diese Tabelle werden die Ziffern horizontal eingefügt und spaltenweise in der Reihenfolge des numerischen Schlüssels des ersten Schlüsselwortes wieder ausgelesen. Diese Ziffern werden dann horizontal in die zweite Tabelle eingetragen.

Diese Ziffern werden wieder vertikal in der Reihenfolge des numerischen Schlüssels des zweiten Schlüsselwortes ausgelesen und bilden den Geheimtext.

Geheimtext 04006 09624 65369 85329 11834 59164
77417 02545 59601 89399 68