Brechen von Transpositions-Chiffren

Nachdem man die Art der Chiffre bestimmt hat und sicher ist, dass es sich um eine Transpositions-Chiffre handelt, empfiehlt sich folgendes, weiteres Vorgehen.

Brute-Force-Check der einfachen Transpositions-Chiffren

Es gibt zahlreiche Transpositions-Chiffren mit unterschiedlichen Algorihtmen und mit unterschiedlicher Sicherheit. Von einfach wie Skytale bis schwierig wie Doppelter Spaltentausch.

Die einfachen Transpositions-Chiffren sind die, die sich durch Brute-Force leicht überprüfen lassen. Diese sollten zuerst ausprobiert werden. Vielleicht ist die Chiffre damit schon geknackt und weitere Arbeit kann entfallen.

Dabei sollte man bei den Algorithmen beginnen, die den geringsten Aufwand erfordern und dann der Reihenfolge der Schwierigkeit / des Aufwandes folgen.

Skytale knacken

Chiffrat: EEUHJEASIEEEBNWNSNDDSAKSDEEARLEARRHEESSMSIIMHAINNAANEMEETNNASDTLULSCEIR Da eine Skytale nur eine bestimmte Schrittweite aufweisen kann, ist es ein einfaches, diese mittels Computer durchzurechnen. In der Ergebnismenge 01: EEUHJEASIEEEBNWNSNDDSAKSDEEARLEARRHEESSMSIIMHAINNAANEMEETNNASDTLULSCEIR 02: EEESUSHMJSEIAISMIHEAEIENBNNAWANNSENMDEDESTANKNSADSEDETALRULLESACRERIHRE 03: EDNEEAUEAHANJREELMAEESAEIRTERNEHNEEABESNSDWSTNMLSSUNILDISDMCSHEAAIKIRSN 04: EDEEEDSEUSSTHAMNJKSNESIAADISSEMDIEHTEAALERIUELNLBENSNAACWRAENRNISHERNEM 05: ENLMNESEHNUNAAAHDRISJDRNDESHNTAAEALSKEAUISSNLEDSESEEMMCEESEEBAIEINRITRW 06: EBDENSENESADUWESATHNAMNLJSRSEUENLIMLADEIESSDAMECISRHTEEARANIEKHINRESENA 07: EEAAINDEBKRIETUNSRMMLHWDHHEUJNEEAELESEEITSANASNNCSDRSNNEIDLMAAIESESASRE 08: EEDAEAELEEDRSIEUUESLSNTLHBAEMNNSJNKASANCEWSRIAAEANDRINSISSEHMEDRINEEHMT 09: EISDRSNTUEENERIANLUEDEHIANSHEDAEMNACJBSREHESEENALSAMDIAWKESIETRSNSAMNEL 10: EINKLEMANUEESSESHNNLUENDASAEASHEDERMIMSCJBDERSNEDEENSAHINETIAWAREIATLRS 11: ESWAREINMALEINKLEINESSUESSESMAEDCHENDASHATTEJEDERMANNLIEBDERSIENURANSAH 12: EABDDEEINESSESNDEASMAEDCUIWSERSHATTEHENAARMANNLIJESKRHSIENUREENSLEINMAL 13: EABDDEEIINTDSESNDEASINENTCUIWSERSMNMNLEHENAARMHAEAUIJESKRHSAAESLREENSLE 14: EAESAEAEIINTDSESBNKARSINENTCUINDSRRSMNMNLEHEWDDLHMHAEAUIJENSEEESAAESLRE 15: EEENSEEESAAEALCEAESAEAEIINTSUEUSBNKARSINENDLIHINDSRRSMNMNTSRJEWDDLHMHAE 16: EEENSEEEMMNNEALCEAESAEAESHNETSUEUSBNKARSIAAMNDLIHINDSRRSIIAENTSRJEWDDLH 17: EEENDSAAEMMNNEALCEAESSDRRESHNETSUEUSBNAELRSIAAMNDLIHINDKEEHSIIAENTSRJEW 18: EJIBSSDRRESHNETSUEEEENNAELRSIAAMNDLIUAEWDKEEHSIIAENTSRHSENDSAAEMMNNEALC 19: EJIBSSDRRESHNETATLEEEENNAELRSIAAMNSLSIUAEWDKEEHSIIAENDUCRHSENDSAAEMMNNE 20: EJIBSSDRRESHNAMTATLEEEENNAELRSIANNENSLSIUAEWDKEEHSIIAEENDUCRHSENDSAAEMM fällt die Zeile 11 sofort auf, da sie als einzige einen lesbaren Text enthält.

Jägerzaun knacken

Chiffrat: EMESCARBUSNALIESDHHTEMEDNRWILKNUEEESTDAIEEAHAEENESSANAEENLRINARISMDJNSS Auch die Jägerzaun-Chiffre kann nur eine bestimmte Schrittweite (Wechsel der Richtung nach n Zeichen) aufweisen. Große Schrittweiten werden schnell unhandlich und so bietet sich hier ein Brute-Force mittels Computer an. In der Ergebnismenge ZigZag fuer Tiefe 2: -------------------------------------------------- E M E S C A R B U S N A L I E S D H H T E M E D N R W I L K N U E E E S T D A I E E A H A E E N E S S A N A E E N L R I N A R I S M D J N S S ZigZag fuer Tiefe 3: -------------------------------------------------- E M E S C A R B U S N A L I E S D H H T E M E D N R W I L K N U E E E S T D A I E E A H A E E N E S S A N A E E N L R I N A R I S M D J N S S ZigZag fuer Tiefe 4: -------------------------------------------------- E M E S C A R B U S N A L I E S D H H T E M E D N R W I L K N U E E E S T D A I E E A H A E E N E S S A N A E E N L R I N A R I S M D J N S S ZigZag fuer Tiefe 5: -------------------------------------------------- E M E S C A R B U S N A L I E S D H H T E M E D N R W I L K N U E E E S T D A I E E A H A E E N E S S A N A E E N L R I N A R I S M D J N S S ZigZag fuer Tiefe 6: -------------------------------------------------- E M E S C A R B U S N A L I E S D H H T E M E D N R W I L K N U E E E S T D A I E E A H A E E N E S S A N A E E N L R I N A R I S M D J N S S ZigZag fuer Tiefe 7: -------------------------------------------------- E M E S C A R B U S N A L I E S D H H T E M E D N R W I L K N U E E E S T D A I E E A H A E E N E S S A N A E E N L R I N A R I S M D J N S S ... fällt der Eintrag 5 auf, der als einziger einen lesbaren Text enthält.

Andere Transpositions-Chiffren

Ein Angriffspunkt kann die Länge des Chiffrats und auffallend häufig vorkommende, eigentlich seltene Zeichen (wie Q, J, X) sein, die als Füllzeichen fungieren.

Ist die Chiffrat-Länge eine Quadratzahl (4*4=16, 5*5=25, 6*6=36, 7*7=49, 8*8=64...) kann das daher kommen, dass als Grundlage zum Eintragen / Auslesen ein Quadrat dient. Analoges gilt für "Rechteck"-Zahlen (3*4=12, 4*5=20, 4*6=24, 5*6=30, 7*6=42, 7*8=56...).

Da der gewollt zu übertragene Text meistens nicht genau in die vorgeschriebene Anzahl Felder passt, muss der Text mit Zeichen aufgefüllt werden, damit bei der Transposition keine Zeichen verloren gehen oder ungewollt verschoben werden. Oft wird es sich einfach gemacht und dasselbe seltene Zeichen, bspw. das X dafür gebraucht.

Wenn im Chiffrat bspw. 5 X verstreut durch den Text vorkommen, haben diese mit guter Wahrscheinlichkeit einmal am Ende des Klartextes gestanden. So lässt sich auf das Muster schließen, wie die Zeichen die Position gewechselt haben.

Beispiel:

Chiffrat: XTWNBTXAEEBAXRDHARXRRCNENEUEOPEVWRIO Auffallend sind die 4 X und die Chiffratlänge von 36. Das lässt auf ein 6*6 Raster mit 4 X am Ende schließen. Zuerst sollten wir das Chiffrat in eine Matrix von 6 * 6 schreiben und zwar spaltenweise von oben nach unten. X X X X N E T A R R E V W E D R U W N E H C E R B B A N O I T A R E P O Nun sehen wir, das die erste Zeile mit 4 X beginnt. Da das XXXX wohl das Ende markiert, müssen die Zeilen also rückwärts von unten nach oben und die 1. Spalte im Chiffrat als letztes gelesen werden. Schon ist der Klartext ersichtlich: "Operation abbrechen. Wurden verraten."

Es gibt viele beliebte Varianten, um eine Route durch ein Klartext-Raster zu nehmen und den Geheimtext anhand dieser Route herauszuschreiben.

Aber es können auch andere geometrische Formen als das Rechteck benutzt werden, z. B. Dreiecke oder Trapeze. Diese können ebenfalls an der Chiffratlänge erkannt werden. Dreiecke haben eine Länge von 1+2+3+4=10, +5=15, +6=21, +7=28, +8=36, +9=45, +10=55 usw., Trapeze starten mit einer beliebigen Breite und werden dann stetig breiter. Trapeze und Dreiecke sind aber eher unhandlich und haben den Nachteil, das jede neue Zeile noch länger als die letzte ist und im dadurch überproportional viele Füllzeichen gebraucht werden.

Meistens werden wir es also mit Rechtecken zu tun haben. Oft wird aber nicht anhand einer einfachen Route abgelesen, sondern horizontal niedergeschriebene Zeichen werden vertikal wieder ausgelesen, wobei dies in einer bestimmten Reihenfolge der Spalten geschieht. Diese Art Transposition nennt sich Spaltentausch-Chiffre.

Die Spaltentausch-Chiffre kommt auch ohne Füllzeichen aus, weil durch einen Schlüssel festgelegt ist, in welcher Reihenfolge ausgelesen wird. Die Chiffratlänge ist also diesmal kein Anhaltspunkt für die Rechteckgröße. Der Umstand, dass die Spalten ohne Füllzeichen hintereinander weggeschrieben sind, macht die Dechiffrierung schwierig, weil man nicht weiß, bei welcher Spalte zuerst niedergeschrieben wurde und ob dies die Klartext-Erste ist oder nicht. Die Trennung des Chiffrats in Spalten fällt deswegen schwer, weil die Spaltenlänge unklar ist.

Chiffrat (Länge 32): encrroirwvetbnntabeearahdrpoeuen Bei einer Schlüssellänge von 5 wäre die Matrix 5*7=35. Minus 32 macht 3 Füllzeichen. Bei einer Schlüssellänge von 6 wäre die Matrix 6*6=36. Macht 4 Füllzeichen. Also 2 Spalten mit 6 Zeichen und 4 Spalten mit 5 Zeichen. Die Spalten könnten also verteilt sein: 6 6 5 5 5 5 encrro irwvet bnnta beear ahdrp oeuen 6 5 6 5 5 5 encrro irwve tbnnta beear ahdrp oeuen 6 5 5 6 5 5 encrro irwve tbnnt abeear ahdrp oeuen 6 5 5 5 6 5 encrro irwve tbnnt abeea rahdrp oeuen 6 5 5 5 5 6 encrro irwve tbnnt abeea rahdr poeuen 5 6 6 5 5 5 encrr oirwve tbnnta beear ahdrp oeuen 5 6 5 6 5 5 encrr oirwve tbnnt abeear ahdrp oeuen 5 6 5 5 6 5 encrr oirwve tbnnt abeea rahdrp oeuen 5 6 5 5 5 6 encrr oirwve tbnnt abeea rahdr poeuen 5 5 6 6 5 5 encrr oirwv etbnnt abeear ahdrp oeuen 5 5 6 5 6 5 encrr oirwv etbnnt abeea rahdrp oeuen 5 5 6 5 5 6 encrr oirwv etbnnt abeea rahdr poeuen 5 5 5 6 6 5 encrr oirwv etbnnt abeear ahdrp oeuen 5 5 5 6 5 6 encrr oirwv etbnn tabeea rahdr poeuen 5 5 5 5 6 6 encrr oirwv etbnn tabee arahdr poeuen 1 2 3 4 5 6 e t a A o t a r p B e i b b a o C n r n e h e c w n e d u r v r e r n o e t a p t a r Falls die Schlüssellänge 6 ist, sollte sich in dem Rechteck von oben nach unten der Klartext ablesen lassen, wenn immer im selben Muster zwischen den Spalten hin- und hergesprungen wird. Zur Unterstützung kann man sich passende Anagramme für das Chiffrat erzeugen, welche man anschließend auf Gültigkeit untersucht. Da große Anagramme sehr schnell zu viele Möglichkeiten bieten, sollte man sich nur auf die erste (oben fette) Zeile zuzüglich der optionalen (darüberstehenden, nicht fetten) Buchstaben beschränken (ABC). etaotarpeibbao Stellen wir nach dem enthaltenen Anagramm OPER (das O aus Spalte 2, damit das P aus Spalte 6 noch verwendet werden kann) um: 2 6 1 5 3 4 a e t o p r t a i o e a b b r e n h n e w u c d n e v e r r n r e o p t a t a r Wie können wir OPER erweitern? Sinnvoll erscheinen OPERat(ion), OPERet(te) OPERbe(wachen etc.). Wir stellen nach Ersterem um: 2 6 1 5 4 3 a t e o p r a t i o e a b b r e n h e n w u c d e n v e r r n r e o p a t t r a Wenn wir nun die dritte Spalte von links hinaufrücken, können wir den Klartext bereits gut erkennen: Operation abbrechen. Wurden verraten. 2 6 1 5 4 3 a t e o p e r a t i o n a b b r e c h e n w u r d e n v e r r n o e p a t t r a

Code / Chiffre online dekodieren / entschlüsseln bzw. kodieren / verschlüsseln (DeCoder / Encoder / Solver-Tool)



Quellen, Literaturverweise und weiterführende Links

Bauer, Friedrich L.: Entzifferte Geheimnisse, Springer Verlag 1995, S. 352
Gaines, Helen Fouché: Cryptanalysis, Dover Verlag New York 1956, S. 37