Chaocipher Chiffre

Kategorisierung:Klassisch / Substitution und Transposition
Herkunft / Verwendung: Chaocipher ist der Name für ein symmetrisches Verschlüsselungsverfahren, das 1918 von John Francis Byrne entwickelt wurde. Ursprünglich war ein mechanisches Gerät mit 2 Scheiben (Alphabete) für die Kodierung geplant, dass Byrne selbst aber nie gebaut hatte.

Die Scheiben sind drehbar gelagert und so miteinander verbunden, dass sich bei der Drehung der einen Scheibe in eine Richtung (im oder gegen den Uhrzeigersinn) die andere Scheibe gegenläufig mitdreht. Nach jeder Verschlüsselung eines Buchstabens werden die Alphabete also transponiert, wobei die Permutation vom vorher ver- bzw. entschlüsselten Buchstaben abhängt.

Byrne hielt den Algorithmus für nicht zu brechen. Bis zu seinem Tode versuchte Byrne erfolglos, Regierungsbehörden von seinem Verfahren zu überzeugen da er nicht die Absicht besaß, Einzelheiten des Algorithmus der Öffentlichkeit zugänglich zu machen. Im Jahre 2010 spendete seine Familie die hinterlassenen Unterlagen des Erfinders an das National Cryptologic Museum in Ft. Meade, U.S.A., wodurch der Algorithmus erstmals öffentlich gemacht wurde.

Beschreibung des Algorithmus

Zum Einsatz kommen zwei Alphabete, das linke für den Geheimtext und das rechte für den Klartext. Diese erhalten jeweils alle 26 Buchstaben in gewürfelter Form:

1 2 Position 1-26: 12345678901234567890123456 + * Links (Geheimtext): HXUCZVAMDSLKPEFJRIGTWOBNYQ Rechts (Klartext): PTLNBQDEOYSFAVZKGJRIHWXUMC Die Markierungen + und * bezeichente Byrne als "Zenith" und "Nadir". Zu Beginn sind linkes und rechtes Alphabet an ihren jeweiligen Zenith-Markierungen ausgerichtet.

Die Verschlüsselung folgt folgendem Ablauf:
  1. Lese Geheimtextbuchstaben ab: 1 2 Position 1-26: 12345678901234567890123456 + * Links (Geheimtext): HXUCZVAMDSLKPEFJRIGTWOBNYQ Rechts (Klartext): PTLNBQDEOYSFAVZKGJRIHWXUMC <-- für ein KT-A erhält man ein GT-P
  2. Permutiere Geheimtextalphabet - dies erfolgt in 4 Schritten:
    1. Verschiebe das gesamte linke Alphabet nach links so, dass sich der soeben gefundene Geheimtextbuchstabe an Position 1 (Zenith) befindet. + * Links (Geheimtext): PEFJRIGTWOBNYQHXUCZVAMDSLK Rechts (Klartext): PTLNBQDEOYSFAVZKGJRIHWXUMC
    2. Entnehme den Buchstaben an Position Zenith+1, also den Buchstaben rechts des Zenith aus dem Alphabet (dabei entsteht für den Moment eine Lücke). + * Links (Geheimtext): P FJRIGTWOBNYQHXUCZVAMDSLK --> E Rechts (Klartext): PTLNBQDEOYSFAVZKGJRIHWXUMC
    3. Verschiebe alle Buchstaben von Position Zenith+2 bis einschließlich Position Nadir (Zenith+13) nach links um eine Stelle. + * Links (Geheimtext): PFJRIGTWOBNYQ HXUCZVAMDSLK Rechts (Klartext): PTLNBQDEOYSFAVZKGJRIHWXUMC
    4. Füge den in Schritt 2. entnommenen Buchstaben in die Lücke bei Position Nadir (Zenith+13) ein. + * Links (Geheimtext): PFJRIGTWOBNYQEHXUCZVAMDSLK <-- E Rechts (Klartext): PTLNBQDEOYSFAVZKGJRIHWXUMC
  3. Permutiere Klartextalphabet - dies erfolgt in 5 Schritten:
    1. Verschiebe das gesamte rechte Alphabet nach links so, dass sich der soeben gefundene Klartextbuchstabe an Position 1 (Zenith) befindet. + * Links (Geheimtext): PFJRIGTWOBNYQEHXUCZVAMDSLK Rechts (Klartext): AVZKGJRIHWXUMCPTLNBQDEOYSF
    2. Verschiebe jetzt das gesamte rechte Alphabet um eine weitere Stelle nach links + * Links (Geheimtext): PFJRIGTWOBNYQEHXUCZVAMDSLK Rechts (Klartext): VZKGJRIHWXUMCPTLNBQDEOYSFA
    3. Entnehme den Buchstaben an Position Zenith+2 (auch hier entsteht dadurch eine Lücke). + * Links (Geheimtext): PFJRIGTWOBNYQEHXUCZVAMDSLK Rechts (Klartext): VZ GJRIHWXUMCPTLNBQDEOYSFA --> K
    4. Verschiebe alle Buchstaben von Position Zenith+3 bis einschließlich Position Nadir (Zenith+13) nach links um eine Stelle. + * Links (Geheimtext): PFJRIGTWOBNYQEHXUCZVAMDSLK Rechts (Klartext): VZGJRIHWXUMCP TLNBQDEOYSFA
    5. Füge den in Schritt 3. entnommenen Buchstaben in die Lücke bei Position Nadir (Zenith+13) ein. + * Links (Geheimtext): PFJRIGTWOBNYQEHXUCZVAMDSLK Rechts (Klartext): VZGJRIHWXUMCPKTLNBQDEOYSFA <-- K

Beispiel

Klartext:well done is better than well said
Schlüssel:HXUCZVAMDSLKPEFJRIGTWOBNYQ,PTLNBQDEOYSFAVZKGJRIHWXUMC
Chiffrat:OAHQ HCNY NX TSZJRR HJBY HQKS OUJY
Die Permutationen der Alphabete: Geheimtext-Alphabet Klartext-Alphabet Geheim-Bst. Klar-Bst. HXUCZVAMDSLKPEFJRIGTWOBNYQ PTLNBQDEOYSFAVZKGJRIHWXUMC O W ONYQHXUCZVAMDBSLKPEFJRIGTW XUCPTLNBQDEOYMSFAVZKGJRIHW A E ADBSLKPEFJRIGMTWONYQHXUCZV OYSFAVZKGJRIHMWXUCPTLNBQDE H L HUCZVADBSLKPEXFJRIGMTWONYQ NBDEOYSFAVZKGQJRIHMWXUCPTL Q L QUCZVADBSLKPEHXFJRIGMTWONY NBEOYSFAVZKGQDJRIHMWXUCPTL H D HFJRIGMTWONYQXUCZVADBSLKPE JRHMWXUCPTLNBIEOYSFAVZKGQD C O CVADBSLKPEHFJZRIGMTWONYQXU YSAVZKGQDJRHMFWXUCPTLNBIEO N N NQXUCVADBSLKPYEHFJZRIGMTWO BIOYSAVZKGQDJERHMFWXUCPTLN Y E YHFJZRIGMTWONEQXUCVADBSLKP RHFWXUCPTLNBIMOYSAVZKGQDJE N I NQXUCVADBSLKPEYHFJZRIGMTWO MOSAVZKGQDJERYHFWXUCPTLNBI X S XCVADBSLKPEYHUFJZRIGMTWONQ AVKGQDJERYHFWZXUCPTLNBIMOS T B TONQXCVADBSLKWPEYHUFJZRIGM IMSAVKGQDJERYOHFWZXUCPTLNB S E SKWPEYHUFJZRILGMTONQXCVADB RYHFWZXUCPTLNOBIMSAVKGQDJE Z T ZILGMTONQXCVARDBSKWPEYHUFJ LNBIMSAVKGQDJOERYHFWZXUCPT J T JILGMTONQXCVAZRDBSKWPEYHUF LNIMSAVKGQDJOBERYHFWZXUCPT R E RBSKWPEYHUFJIDLGMTONQXCVAZ RYFWZXUCPTLNIHMSAVKGQDJOBE R R RSKWPEYHUFJIDBLGMTONQXCVAZ YFZXUCPTLNIHMWSAVKGQDJOBER H T HFJIDBLGMTONQUXCVAZRSKWPEY LNHMWSAVKGQDJIOBERYFZXUCPT J H JDBLGMTONQUXCIVAZRSKWPEYHF MWAVKGQDJIOBESRYFZXUCPTLNH B A BGMTONQUXCIVALZRSKWPEYHFJD VKQDJIOBESRYFGZXUCPTLNHMWA Y N YFJDBGMTONQUXHCIVALZRSKWPE HMAVKQDJIOBESWRYFGZXUCPTLN H W HIVALZRSKWPEYCFJDBGMTONQUX RYGZXUCPTLNHMFAVKQDJIOBESW Q E QXHIVALZRSKWPUEYCFJDBGMTON SWYGZXUCPTLNHRMFAVKQDJIOBE K L KPUEYCFJDBGMTWONQXHIVALZRS NHMFAVKQDJIOBRESWYGZXUCPTL S L SPUEYCFJDBGMTKWONQXHIVALZR NHFAVKQDJIOBRMESWYGZXUCPTL O S OQXHIVALZRSPUNEYCFJDBGMTKW WYZXUCPTLNHFAGVKQDJIOBRMES U A UEYCFJDBGMTKWNOQXHIVALZRSP GVQDJIOBRMESWKYZXUCPTLNHFA J I JBGMTKWNOQXHIDVALZRSPUEYCF OBMESWKYZXUCPRTLNHFAGVQDJI Y D YFJBGMTKWNOQXCHIDVALZRSPUE JIBMESWKYZXUCOPRTLNHFAGVQD

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

Bitte geben Sie zwei Schlüssel, durch Kommata getrennt, an.