Cube-Bar

Der Doppelwürfel gilt als das beste Verschlüsselungsverfahren, das man alleine mit Papier und Stift ausführen kann. Im Kalten Krieg spielte diese Form des Verschlüsselns eine wichtige Rolle.

Gibt es ein sicheres Verschlüsselungsverfahren, für das man weder ein spezielles Gerät noch spezielle Formulare oder Tabellen benötigt? Diese Frage beschäftigte über Jahrhunderte hinweg die Geheimdienste, denn diese mussten ihren Spionen sichere Verschlüsselungsverfahren zur Verfügung stellen. Dabei durfte sich ein Spion nicht mit seltsamen Verschlüsselungsutensilien verdächtig machen. Die beste Methode, die für diesen Zweck bekannt ist, ist der “Doppelwürfel”.

Der Doppelwürfel ist schnell erklärt. Das Verfahren besteht aus der zweifachen Ausführung einer Verschlüsselungsmethode, die “Würfel” genannt wird (der etwas unglücklich gewählte Name soll daran erinnern, dass das Verschlüsseln dem Abrollen eines Würfels ähnelt). Für die Würfel-Verschlüsselung benötigt man ein Schlüsselwort (z. B. TELEPOLIS) und schreibt dieses wie folgt über den zu verschlüsselnden Text (z. B. ERWARTE MORGEN NEUE LIEFERUNG):

TELEPOLIS
---------
ERWARTEMO
RGENNEUEL
IEFERUNG

Anschließend werden die Spalten so umgeordnet, dass die Buchstaben des Schlüsselworts in alphabetischer Reihenfolge stehen:

EEILLOPST
---------
RAMWETROE
GNEEUENLR
EEGFNUR I

Der verschlüsselte Text heißt nun RGEAN EMEGW EFEUN TEURN ROLERI. Für die zweite Runde der Doppelwürfel-Verschlüsselung benötigt man ein zweites Schlüsselwort, mit dem der Vorgang wiederholt wird. Damit die Verschlüsselung auch wirklich sicher ist, sollte der Klartext in beiden Würfelkästen die letzte Zeile nicht ganz ausfüllen. Außerdem müssen die beiden Schlüsselwörter unterschiedlich lang sein, und die Schlüsselwortlängen dürfen keinen gemeinsamen Teiler haben (ein Schlüsselwort der Länge 20 und ein zweites der Länge 22 wären ungeeignet). Für eine hohe Sicherheit müssen beide Schlüsselwörter mehr als 20 Buchstaben haben. Für jede Nachricht sollte man ein neues Schlüsselwortpaar verwenden.

Der Doppelwürfel gilt als das beste Verfahren, das man alleine mit Papier und Stift ausführen kann. Trotz seiner Einfachheit ist der Doppelwürfel bei richtiger Anwendung sehr sicher. Vor allem im Kalten Krieg war der Doppelwürfel als Verschlüsselungsmethode für Spione sehr beliebt. Unter anderem nutzte der Spion Günter Guillaume den Doppelwürfel für die Kommunikation mit dem Ministerium für Staatssicherheit. Bereits im Zweiten Weltkrieg verschlüsselte der italienische Partisan Antonio Marzi auf diese Weise.

Ein großer Fan des Doppelwürfels ist Otto Leiberich, der ehemalige Präsidenten des Bundesamts für Sicherheit in der Informationstechnik (BSI). Leiberich berichtete 1999 in einem Artikel im “Spektrum der Wissenschaft” darüber. Dabei wies er darauf hin, dass der Doppelwürfel schon seit längerer Zeit nicht mehr untersucht wurde. Um neue Forschungen zu stimulieren, regte er ein kryptografisches Rätsel an, bei dem ein Doppelwürfel-Geheimtext dechiffriert werden sollte. Diesem Wunsch kam ich vor einigen Jahren nach. Ich verschlüsselte einen englischen Text mit zwei längeren englischen Schlüsselwörtern unterschiedlicher Länge und veröffentlichte das Resultat in meinem Buch “Codeknacker gegen Codemacher”. Dieses Kryptogramm wird inzwischen auch mit der kostenlosen Krypto-Lernsoftware CrypTool ausgeliefert und ist als Challenge bei MysteryTwister C3 veröffentlicht. Es lautet wie folgt:

VESINTNVONMWSFEWNOEALWRNRNCFITEEICRHCODEEA
HEACAEOHMYTONTDFIFMDANGTDRVAONRRTORMTDHE
OUALTHNFHHWHLESLIIAOETOUTOSCDNRITYEELSOANGP
VSHLRMUGTNUITASETNENASNNANRTTRHGUODAAARAO
EGHEESAODWIDEHUNNTFMUSISCDLEDTRNARTMOOIREEY
EIMINFELORWETDANEUTHEEEENENTHEOOEAUEAEAHUHI
CNCGDTUROUTNAEYLOEINRDHEENMEIAHREEDOLNNIRAR
PNVEAHEOAATGEFITWMYSOTHTHAANIUPTADLRSRSDNOT
GEOSRLAAAURPEETARMFEHIREAQEEOILSEHERAHAOTNT
RDEDRSDOOEGAEFPUOBENADRNLEIAFRHSASHSNAMRLT
UNNTPHIOERNESRHAMHIGTAETOHSENGFTRUANIPARTAOR
SIHOOAEUTRMERETIDALSDIRUAIEFHRHADRESEDNDOION
ITDRSTIEIRHARARRSETOIHOKETHRSRUAODTSCTTAFSTHCA
HTSYAOLONDNDWORIWHLENTHHMHTLCVROSTXVDRESDR

Beide Schlüsselwörter haben mehr als 20 Buchstaben und stammen aus der englischen Sprache. Der Klartext ist ebenfalls auf Englisch verfasst.

Otto Leiberich geht davon aus, dass dieses Kryptogramm nicht lösbar ist. Ich stimme dieser Ansicht zu. Dennoch haben sich schon einige an diesem Rätsel versucht. Vielleicht hat ja wider Erwarten doch irgendwann jemand Erfolg. Immerhin handelt es sich um ein sehr faires Rätsel: Die Verschlüsselungsmethode ist bekannt und so einfach, dass man für ihre Ausführung keinen Computer benötigt. Ich wünsche viel Spaß beim Knobeln.

Kommentare (19)

  1. #1 wolfgang
    14. September 2013

    Sehr interessant! Allerdings stellt sich bei mir die Frage wie viele englischsprachige Wörter mit mehr als 20 Buchstaben es gibt. Das wäre zu leicht. Ich gehe also davon aus dass dein Wort ein englischer Satz ist und die Leerzeichen einfach weggelassen worden sind, oder?
    Ansonsten würde ein Computerprogramm eine Wortliste schnell abgearbeitet haben.

    • #2 Klaus Schmeh
      14. September 2013

      Das ist richtig, es handelt sich jeweils um eine Wortfolge bzw. einen Satz.

  2. #3 yohak
    14. September 2013

    Kleine Frage: Wieso soll die letzte Zeile nicht
    vollständig ausgefüllt sein? Mir ist nicht so klar, warum dass sicherheitsrelevant sein soll.

    • #4 Klaus Schmeh
      15. September 2013

      Wenn die letzte Zeile vollständig gefüllt ist, dann sind alle Spalten gleich lang. Dadurch wird es für den Angreifer einfacher, die ursprüngliche Reihenfolge der Spalten wiederherzustellen..

  3. #5 nihil jie
    14. September 2013

    Gibt es ein sicheres Verschlüsselungsverfahren, für das man weder ein spezielles Gerät noch spezielle Formulare oder Tabellen benötigt?

    eine Fremde Sprache, deren Wortschatz, Grammatik und Orthographie niemandem bekannt sind außer den Leuten die es benutzen ?

    • #6 Klaus Schmeh
      15. September 2013

      Das gab es im Zweiten Weltkrieg (wie Rolak erwähnt hat) in Form des Navajo-Codes. Allerdings halte ich diese Form des Verschlüsseln für sehr riskant, da man eine unbekannte Sprache durchaus analysieren und dechiffrieren kann. Die Amerikaner hatten im Zweiten Weltkrieg großes Glück, dass das nicht passiert ist.

  4. #7 rolak
    14. September 2013

    Fremde Sprache?

    Ja, nihil jie, sowas wurde schon gemacht.

  5. #8 nihil jie
    15. September 2013

    @rolak

    thx… 😉 ich dachte eher gerade an das ägyptische bevor der Stein von Rosette gefunden wurde 😀

    • #9 Klaus Schmeh
      15. September 2013

      Der Stein von Rosette ist nicht verschlüsselt, daher passt dieser an dieser Stelle nicht.

  6. #10 nihil jie
    16. September 2013

    @Klaus Schmeh

    nein… er ist nicht verschlüsselt. er ist aber eine Referenz zum “entschlüsseln” und übersetzen gewesen. ohne ihn hätte es womöglich vielleicht noch etwas länger gedauert.

  7. #11 Gast
    12. Januar 2014

    Angenommen die schlüsselwörter enthalten viele gleiche buchstaben, da ist es doch selbst für den addressaten unmöglich zu entschlüsseln? bsp essenziell (und das ist ein kurzes wort!): eeeillnssz. welches der “e” ist dann spalte 1,2,3? wenn noch die “s” und “l” hinzukommen verzweifelt ja schon der richtige empfänger wenn er nicht die dazugehörigen zahlen hat…so “einfach” dass das erste “e” spalte 1 ist usw wirds ja nicht sein, oder? bsp nur am e um es zu verdeutlichen:
    essenziell
    1 2 3

    oder wird es tatsächlich so praktiziert?

    • #12 Klaus Schmeh
      12. Januar 2014

      Wenn mehrere gleiche Buchstaben im Schlüsselwort vorkommen, wird deren Reihenfolge einfach beibehalten. Aus OTTO (1234) wird also OOTT (1423).

  8. #13 Gast
    12. Januar 2014

    die leerzeichen bei den zahlen wurden nicht genommen…ich hoffe man verstehts trotzdem :)

  9. #14 Christof Rieber
    Wien
    22. November 2014

    Meines Erachtens gibt es einen soliden Lösungsansatz zur Auflösung von Doppelwürfelchiffren:

    1. Liste möglicher Schlüsselwörter (eine Liste mit z.B. 200 ‘Keywords’, etwa englische Worte mit einer Länge von >20, macht die Chiffre ohne weiteres lösbar – bei willkürlichen Schlüsseln unbekannter Länge wird das Ganze schon ein größeres EDV-Thema..die Keywords können dann jedoch in unterschiedliche Längen eingeteilt werden)

    2. Die Buchstaben der Keywords werden in Zahlen transponiert, also A=1 B=2 etc., d.h. aus dem Keyword ‘ALGORITHMUS’ wird ‘1-12-7-15-18-9-20-8-13-21-19’. Dies wird für alle in Frage kommenden Keywords so durchgeführt.

    3. Den Zahlen werden nun, je nach Position im Keyword, in Reihenfolge ordenbare ‘Associates’ zugeordnet, z.B. A, B, C, D etc…es folgt:
    ‘1-12-7-15-18-9-20-8-13-21-19’
    ‘A-B-C-D-E-F-G-H-I-J-K’

    4. Nun wird eine Erstverschlüsselung der Doppelverschlüsselung simuliert: Die Zahlen der Keywords werden alle, jedes Keyword für sich, in die alphabetische Reihenfolge gebracht (Auflage der Verschlüsselungsmethode), also
    ‘1-7-8-9-12-13-15-18-19-20-21’
    Dies entspricht dem tatsächlichen ersten Verschlüsselungsprozess, allerdings noch ohne jeglichen Text. Allerdings verschlüsseln sich hierdurch nicht nur das unbekannte Keyword (zu AGHILMORSTU), sondern auch die zugeordneten ‘Associates’ zu:
    ACHFBIDEKGJ
    Anhand der jeweiligen Keywords wird also zunächst der erste Verschlüsselungsschritt simuliert.

    5. Auf diese simulierte Erstverschlüsselung kann nun der chiffrierte Code, stets für jedes Keyword separat, gelegt werden. Bei einem Code wie etwa VONMWSFEWNO… (siehe Beispiel oben):
    VONMWSFEWNO
    ACHFBIDEKGJ

    6. Nun erfolgt die Rückverschlüsselung: Die verschlüsselten ‘Associates’ werden wieder geordnet, also zu ABCDE etc. sortiert:
    VWOFEMNNSOW
    ABCDEFGHIJK
    Hierbei (1. Zeile) handelt es sich bereits um das Zwischenergebnis der Doppelverschlüsselung. Unerheblich hierbei, ob es sich um den ersten oder um den zweiten Verschlüsselungsschritt handelt, da ohnehin beide Keywords in der Keywordliste erfasst sein müssen. Andernfalls wäre eine Entschlüsselung ohnehin unmöglich, also ergibt sich auch nur im Fall des richtigen ‘ersten’ Keywords auch das richtige Zwischenergebnis. Ebenfalls unerheblich ist, ob das Chiffre horizontal oder vertikal aus dem verschlüsselten Ergebnis ausgelesen wurde, da beide Varianten darstellbar sind (weil Schlüssellänge beim jeweiligen Keyword stets bekannt!).

    7. Auf Basis des Zwischenergebnisses wird dieser Schritt nun wiederholt und zwar für jedes Zwischenergebnis (bei 200 Keywords = 200 Zwischenresultate). Dies allerdings wiederum mit sämtlichen zur Verfügung stehenden Keywords, was zu 200×200=40.000 Endergebnissen führt. Wiederholt ist die Zuordnung von Associates, die Simulation der Verschlüsselung anhand des (zweiten Keywords), die anschließende Zuordnung des Zwischenergebnisses sowie schlussendlich auch die neuerliche Ordnung der zweiten Associates erforderlich.

    8. Dann ergibt sich jedoch folgende Situation: Alle 200×200 Varianten zweier Keywords wurden in zwei Vorgängen stufenweise rückentschlüsselt. Sind beide Keywords zutreffend und in der richtigen Reihenfolge gewählt (Darstellung aller Varianten), ergibt sich zwangsläufig die korrekte Lösung des Cleartexts.

    9. Prinzipiell ergeben sich hieraus zwei Ansätze: Erstens ist die Wahl der Keywords relevant, denn es ist ein Unterschied ob man 200×200 oder 1,000,000,000×1,000,000,000 Keywords auszuwerten hat (klassisches Problem: Texterkennung?). Zweitens ist die logische Schlussfolgerung, inwieweit eine dreifache (vierfache, fünffache etc.) Verschlüsselung nicht sinnvoll ist. Denn bei der Existenz mehrerer Keywords (z.B. Schlüsselbuch)bzw. Verschlüsselungsschritte wird erst mit Bekanntgabe der Reihenfolge dieser Keywords klar, wie vorgenanntes Variantenreichtum z.B. auf einen technisch machbaren Umfang eingegrenzt werden kann. Schlussendlich bietet sich, nebst ggfs. unbewältigbarem Datenvolumen, die Möglichkeit zur Versendung zweier Schlüssel an den Chiffre-Empfänger – eine Versendung erfolgt in Form z.B. eines Schlüsselbuchs, die andere in Form der Reihenfolge, in welcher die Keywords (z.B. nach erstem Buchstaben) anzuwenden sind. Schnell wird klar, dass bei einem Schlüsselbuch von z.B. 10,000,000,000 Schlüsseln (100 Trio. Varianten) sowie einer Verschlüsselungsreihenfolge von 20 Verschlüsselungsvorgängen (20^20-1 = ca. 5.200 Trilliarden) eine unsäglich sichere Verschlüsselung vorliegt (außer beide Versendungsnachrichten werden abgefangen).

    Christof Rieber

  10. #15 Thomas Abel
    18. Januar 2015

    Interessant! Wenn ich das ganze richtig verstanden habe, dann haben wir sozusagen einen Stapel gemischter Karten (Buchstaben). Gesucht ist der Stapel vor der Mischung. Einzige (wirkliche) Anhaltspunkte: Die Karten der gesuchten Anordnung ergeben englische Wörter und die Karten wurden mit einem bekannten Verfahren gemischt. Dieses Verfahren verwendet Schlüssel. Die Mindestlänge der Schlüssel ist angegeben. Richtig?

    Dann hätten wir folgende Situation:

    [PseudoCode]
    for KeyLength0 = MinKeyLength0 to MaxKeyLength0 do
    begin
    for I = 0 to Permutation0(KeyLength0).Count – 1 do
    begin
    Key0 = Permutation0.Value[I]
    for KeyLength1 = MinKeyLength1 to MaxKeyLength1 do
    begin
    for J = 0 to Permutation1(KeyLength1).Count – 1 do
    begin
    Key1 = Permutation1.Value[J]
    DecryptText = DoubleDiceEncryption.Decrypt(EncryptText, Key0, Key1)
    if IsProbablySyntax(DecryptText, Sprache) then Ausgabe(DecryptText, Key0, Key1)
    end
    end
    end
    end
    [/PseudoCode]

    Mal abgesehen von der Rechenzeit, wer schreibt uns eine IsProbablySyntax? Und wer sagt uns, welche “ProbablyLösung” die gesuchte ist?

    • #16 Klaus Schmeh
      19. Januar 2015

      Zunächst der Hinweis: Das Rätsel ist inzwischen gelöst, siehe http://scienceblogs.de/klausis-krypto-kolumne/2013/12/18/scheinbar-unloesbares-jahrhundertraetsel-geknackt/

      >Gesucht ist der Stapel vor der Mischung.
      Richtig.

      >Einzige (wirkliche) Anhaltspunkte: Die Karten der gesuchten Anordnung ergeben
      >englische Wörter und die Karten wurden mit einem bekannten Verfahren gemischt.
      Richtig. Das Kartenmischen erfolgt nach definierten Regeln, abhängig von zwei Schlüsselwörtern. Die Wahrscheinlichkeit, dass sich mit falschen Schlüsselwörtern ein sinnvoller Text ergibt, ist minimal (einmal abgesehen davon, dass manche Schlüsselwörter gleichwertig sind, z. B. ANNA und OTTO).

  11. #17 Thomas Abel
    19. Januar 2015

    Ja, hatte ich gesehen. Wirkliche tolle Leistung. Bin mittlerweile auch zum Doppelwürfelfan geworden. Um auch Wörter wie A oder OTTO besser zu verschlüsselten, könnte man zum Beispiel vor dem Verschlüsseln die Zeichen in den Wert der Unicodetabelle übersetzen und bei Entschlüsseln wieder zurück. Aus A (0065) mit NOTEBOOK und DECKEL würde also verschlüsselt 0506 werden. Dies hätte zwei Vorteile. Erstens weiß ein potentieller Angreifer nicht, ob das verschlüsselte Zeichen #50, #60, #55 oder #65 heißt und zweitens sieht eine solche Verschlüsselung wie eine RSA Verschlüsselung aus.
    MfG

  12. #18 joe
    Berlin
    13. September 2015

    Ein richtig angewendetes Verfahren ist GRANIT.
    Auf Mystery Twister
    https://www.mysterytwisterc3.org/de/challenges/level-2-kryptographie-challenges?page=2
    sind 3 leichte und 3 schwere Sprüche eingestellt worden.
    Z. Zt. Arbeiten einige an der Lösung der Aufgabe.

    Die Lösung der Aufgaben, bei der ein OTP doppelt
    verwendet wurde – so geschehen bei den Stay Behind Kräften/BND. Wurden schon gelöst.

    https://www.mysterytwisterc3.org/de/challenges/level-2-kryptographie-challenges?view=displaychallenges

  13. #19 Max Bärtl
    14. September 2015

    Die Granit Verschlüsselung ist schon ziemlich komplex und deutlich stärker als der Gewöhnliche Doppelwürfel. Ich bezweifle stark das die Granit Challege gelöst werden wird.