» Deutsch   |   English

Enigma-Simulation in Javascript/HTML

von Daniel Palloks


Simulation auswählen ...
-neu-  Universal Enigma  (Version 2.0)
12 Modelle | Frei kombinierbar | Enigma-Uhr

Start=>  enigma-u_v20.html
————— ältere Versionen —————
Enigma M4  (Version 1.6)
Start=>  enigma-m4_v16.html
Enigma G//s  (Abwehr)  (Vers. 1.6)
Start=>  enigma-g_v16.html
Enigma I & M3  (Version 1.6)
Start=>  enigma-i+m3_v16.html

 

Einführung

Der Name Enigma steht für die wohl berühmteste Familie elektro­mechanischer Verschlüsselungsmaschinen. Enigmas wurden v.a. von Deutschland im 2. Weltkrieg benutzt. Die Umstände der Entschlüsselung ihrer Funktionsweise in Polen und die Aktivitäten der Codebrecher im englischen Bletchley Park sind mittlerweile legendär. Viele tausend Menschen waren daran beteiligt, darunter einige geniale Mathematiker und Ingenieure.

Funktionsweise

Die Enigma arbeitete nach dem Prinzip der polyalphabetischen Substitution (Buchstabenersetzung nach veränderlichem Muster) mit schrittweise rotierenden, per Übertrag gekoppelten Walzen, ähnlich wie bei einem mechanischen Zählwerk. Innerhalb einer Walze wurde jede Buchstaben­position umkehrbar eindeutig in eine andere Position überführt; diese Ersetzung war fest verdrahtet. Durch die Kombination und Rotation der Walzen wurden allerdings äußerst komplexe Substitutionen möglich. Außerdem konnte die interne Walzenverdrahtung als Ganzes gegenüber der äußeren Beschriftung – und den Übertragskerben – versetzt werden ("Ringstellung"). Darüber hinaus war es bei einigen Modellen möglich, auf einem Steckerbrett zusätzliche Buchstabenvertauschungen temporär fest vorzugeben (zu "steckern"). Kurz vor Kriegsende wurde dann noch ein Zusatzgerät, die sog. Enigma-Uhr (Stecker-Uhr), eingeführt. Damit konnten die gesteckerten Verbindungen nochmals untereinander verwirbelt werden, und zwar auch auf nicht-symmetrische Weise. Die Uhr wirkte also ähnlich wie eine einstellbare, nicht rotierende Walze für die Ein- und Ausgänge der Stecker.

Signalführung

Bedient wurde die Enigma über eine schreibmaschinenähnliche Tastatur; die Ausgabe erfolgte auf einem identisch zur Tastatur ausgelegten Lampenfeld. Das Tastensignal lief in jedem Schritt zunächst durch eventuell vorhandene Stecker, dann über die Eintrittswalze und die Rotorwalzen bis zur Umkehrwalze und von dort – auf einem anderen Pfad, aber bei gleicher Walzenstellung – zurück durch alle Walzen und die Stecker bis schließlich zur Lampe für den kodierten Buchstaben. Durch diese symmetrisierte Signalführung (und die damit erzielte involutorische Verschlüsselung) konnte eine Nachricht mit denselben Einstellungen entschlüsselt werden, mit denen sie kodiert worden war. Die Involutorik stellt aber zugleich eine prinzipielle Schwäche des Verschlüsselungskonzeptes der Enigma dar.

Familienschau

Es gab eine ganze Reihe unterschiedlicher Enigma-Modelle für die zivile und militärische Nutzung, außerdem spezielle Konfigurationen für den Export. Sogar innerhalb einer Baureihe existierten mitunter verschiedene Varianten. Ein "Stammbaum" findet sich in den Links.
Am bekanntesten sind heute die Enigma I, M3 und M4 sowie die Enigma G (Abwehr-Enigma). Für sie gibt es auf dieser Website jeweils auch eigene Simulationen.

Die Modelle I und M3 besaßen drei rotierende Walzen und je eine feste Eintritts- und Umkehrwalze (ETW, UKW). Sie wurden von der Wehrmacht inkl. Kriegsmarine (nur M3) benutzt, mit Ausnahme der U-Boot-Flotte. Diese verwendete das weiterentwickelte Modell M4, bei dem eine zusätzliche einstellbare (aber nicht rotierende) Walze, die sog. Griechenwalze, in Kombination mit einer dünneren UKW-Ausführung zum Einsatz kam, was in der Standardkonfiguration "abwärtskompatibel" zu den Modellen I und M3 war.

Die kompakte Enigma G der Spionageabwehr, ein technisches Kleinod, verfügte im Gegensatz zu den anderen Modellen über ein echtes Getriebe anstelle des sonst üblichen Sperrklinken-Mechanismus. Sie hatte außerdem eine rotierende UKW und Rotorwalzen mit einer größeren Zahl von Übertragskerben, jedoch kein Steckerbrett. Die hier verfügbare Einzelsimulation bildet das Modell G-312 ab, das im Museum in Bletchley Park ausgestellt ist. Im April 2000 wurde es auf spektakuläre Weise kurzzeitig entwendet, allerdings nicht von mir.

Catch-all:  "Universal Enigma + Stecker-Uhr"

Die Enigma-Modelle lassen sich bezüglich ihrer Mechanik für den Walzenvortrieb in zwei Klassen einteilen: solche mit Hebelmechanik, also durch Sperrklinken weitergeschaltet (was bei der mittleren Walze zur sog. Doppelschritt-Anomalie führt, s. Features) – und solche mit Zahnradgetriebe, die wie ein normales Zählwerk umschalten. Die M-Modelle gehören zur ersten und die Abwehr-Maschinen zur zweiten Klasse. Innerhalb einer Klasse variieren dann nur Details wie Verdrahtungsschemata oder die UKW-Stellbarkeit.

Da man ja als Codebrecher für alle Eventualitäten gewappnet sein möchte, es andererseits aber müßig wäre, für jede Modellvariante eine eigene Simulation anzubieten, gibt es hier ab Version 2.0 die "Universal Enigma". Sie beinhaltet fast alle Modelle, von denen die Spezifikationen derzeit bekannt sind. Außerdem hat sie die Stecker-Uhr mit an Bord. Eine solche Enigma gab es historisch natürlich nicht! Die Bündelung in einer einzigen Simulation hat aber den Vorteil, alle Modelle auf kompakte Weise gleichzeitig verfügbar zu machen, so daß man schnell zwischen ihnen wechseln und ihre Ausstattung und Funktionsweise vergleichen kann. Ein ausgewähltes Modell verhält sich dabei genau wie eine separate Simulation, inklusive möglicher Einschränkungen bzgl. Walzenauswahl, Stellbarkeit der UKW usw. Darüber hinaus lassen sich jedoch im Modus "Frei" sämtliche Parameter der enthaltenen Modelle (auch die Walzenmechanik!) nach Belieben kombinieren und so beispielsweise völlig neue Modelle erzeugen.

Neues   -neu-

Simulationen

  • [ k ] UE: korrekte Steckerbrett-Voreinstellung für G-111 und Enigma N
    (Dank an Alan.) -- 19.01.2016
  • [ RELEASE ] Universal Enigma mit Stecker-Uhr v2.0
    12 Modelle, 42 Walzen, frei kombinierbar; neuer Monitor -- 30.10.2011
  • [ Update ] I/M/G v1.6 (Stecker deaktivierbar) -- 30.10.2011

Website

  • Website-Historie; Link-Update (Bletchley Park Museum) -- 11.03.2016

Extern

  • [ Video ] Die Universal Enigma in Aktion und ein kleines Tutorial hier. (Dank an poughkeepsieblue.) — Dec 2013

Features

Dateien

  • Die Simulationen bestehen lediglich aus einer HTML-Seite und sind auf allen gängigen Browsern mit aktiviertem Javascript lauffähig. (→ Browserkompatibilität, Sicherheit)
  • Keine Installation nötig: Zum "Mitnehmen" einfach die Browserseite speichern.
    (Um das Enigma-Logo mit zu sichern, entweder "Webseite komplett" speichern oder per Rechtsklick auf das Logo "Hintergrundbild anzeigen" lassen und dieses dann speichern.)

Enigma-Modelle

  • Die "Universal Enigma" simuliert folgende 12 Modelle:

    mit Hebelmechanik (Doppelschritt):

    I  "Services" (Heer; Luftwaffe)
    M3  (Heer; Marine)
    M4  "Shark" (U-Boote)
    D  (kommerziell)
    K  "Swiss K" (Schweiz)
    N  "Norenigma" (Norwegen)
    R  "Rocket" (Reichsbahn)
    T  "Tirpitz" (Japan)

    mit Zahnradgetriebe:

    A-865  "Zählwerk" (1928)
    G-111  (Ungarn / München)
    G-260  (Abwehr in Argentinien)
    G-312  (Abwehr / Bletchley Park)
    … sowie außerdem die Enigma-Uhr ("Stecker-Uhr"), ein interessantes externes Zusatzgerät für Modelle mit Steckerbrett. (→ Einführung / Hilfe)
  • Einzelsimulationen gibt es weiterhin für:
    Enigma I/M3, M4 "Shark" und G-312 (Abwehr)

Original-Funktionalität

  • Vollständige Walzensätze für jedes Modell (d.h. soweit bekannt)
  • Alle Einstellmöglichkeiten: Walzenauswahl; Startpositionen und Ringstellung; einblendbare Steckerleiste mit Verifizierung und Enigma-Uhr* (*nur Universal Enigma)
  • Virtuelle Tastatur im originalen "QWERTZU"-Layout (umschaltbar zu Eingabefeld, s.u.)
  • Modelle vom "M-Typ": Konstruktionsbedingt führt die mittlere Walze einen irregulären Doppelschritt aus, wenn sie die linke Walze weiterschaltet.
    Ursache für diese Anomalie war, daß die T-förmigen Sperrklinken für den Walzenvortrieb durch eine an der rechts benachbarten Walze angebrachte Kerbe eingekoppelt wurden und dann beim Vortrieb auch gegen diese Kerbe drückten. Das führt nur bei der mittleren Walze zum Effekt, da die rechte, schnelle Walze ohnehin bei jedem Schritt bewegt wird und die UKW bei den fraglichen Modellen nicht rotiert.
    -- Tip: In der Ausgangskonfiguration bei Stellung Walze II auf 'D', Walze I auf 'Q' und Eingabe der nächsten zwei Zeichen kommt es zum Doppelschritt bei Walze II.

Zusätzliche Funktionalität

  • Zwei Eingabemodi, umschaltbar:
    1. klickbare "QWERTZU"-Tastatur im historischen Layout und mit integrierten Lampen (im Original waren Tastatur und Lampenfeld getrennt!), mit zusätzlichem optionalen Eingabefeld zum bequemeren Tippen
    2. großes Textfeld, voll editierbar (Kopieren, Einfügen, Löschen... → Hilfe)
      (Hier wird bei jedem Tastendruck der gesamte Text neu verschlüsselt, was bei längeren Texten zu Verzögerungen führen kann!)
    Beim Umschalten werden Ein- und Ausgabefeld gelöscht und die Walzen auf die zuletzt eingestellten Startpositionen (Spruchschlüssel) zurückgesetzt.
  • Die Steckerleiste ist nicht auf 10 Steckerpaare beschränkt. Stecker sind de- und reaktivierbar, ohne daß sie gelöscht werden.
  • Die Enigma-Uhr in der "Universal Enigma" ist immer zusammen mit den Steckern verfügbar. Uhrposition "00" entspricht dabei der gewöhnlichen Steckerung. (→ Hilfe)
  • Dieselbe Rotorwalze kann mehrfach ausgewählt werden (z.B. VI-VI-VI).
  • Walzenrotation deaktivierbar (bei der Universal Enigma auch für UKW bzw. Griechenwalze)
  • Live-Monitor für Signalfluß, Walzenverdrahtung, Geschwindigkeit und weitere Informationen
  • Statuszeile mit aktuellen Kodierungseinstellungen
  • Zahlreiche Elemente zeigen unter dem Mauszeiger Tooltips mit Infos und Hinweisen
  • Getrennte Reset-Knöpfe für alle Einstellungen
  • Enigma G//s: Die Einzelsimulation der G-312 hat im Gegensatz zum Original eine Steckerleiste.
    Die G-312 in der "Universal Enigma" ist dagegen originalgetreu simuliert. Die Steckerleiste kann jedoch über den Modus "Frei" (s.u.) aktviert werden.
  • Universal Enigma:
    • 12 Modell-Presets (I, M3, M4, D, K, N, R, T, A-865, G-111, G-260, G-312)
    • insgesamt 42 Walzen, 10 UKW + 2 "Griechenwalzen", 3 ETW, 2 Walzenmechaniken; Steckerleiste; Enigma-Uhr (s.o.)
    • Steckerverbindungen und Uhr sind getrennt de- und reaktivierbar
    • Stecker bleiben in deaktivierter Form beim Modellwechsel erhalten
    • Monitor zeigt auch detaillierte Infos zur Modellkonfiguration
    • Im Modus "Frei" können alle Eigenschaften und Parameter beliebig kombiniert werden.
      So sind z.B. bei Hebelmechanik und rotierender UKW einige exotische Walzenschritte möglich (u.a. ein propagierender Doppelschritt), die es bei den echten Enigmas nicht gab.

[ Versionshistorie ]

Hilfe zur Bedienung

Dieser Abschnitt gibt Hilfe und einige Hintergrundinfos zur Bedienung der Sims. Auch wenn die Oberfläche hoffentlich weitestgehend selbsterklärend ist, heißt das nicht automatisch, daß man auch versteht, was die einzelnen Funktionen wirklich tun. Hier hilft es, sich mit den grundlegenden Konzepten der Enigma vertraut zu machen, wie sie in der Einführung beschrieben sind oder, sehr viel detaillierter, auf den entsprechenden Seiten, auf die in den Links verwiesen wird.

Allgemeines

  • Viele Elemente geben Infos und Hinweise über Tooltips, wenn man mit der Maus auf sie zeigt.
  • Bei Unklarheiten können vielleicht auch die Fragen & Antworten weiterhelfen.

Eingaben

  • Die Eingabefelder werden nur durch Tastatur-, nicht aber durch Mauseingaben "aktiv". Wurde Text per Maus eingefügt, muß deshalb anschließend die Kodierung durch eine beliebige Tastatureingabe im Feld gestartet werden (am besten eine, die nicht mitkodiert wird, z.B. 'Strg' oder Leertaste).
    -- Dies ist nicht nötig, wenn per Tastenkombination (Strg+V) eingefügt wird.
  • Beim Umschalten des Eingabemodus werden vorhandene Texte gelöscht; der aktuelle Schlüssel bleibt dabei erhalten (inkl. Spruchschlüssel, d.h. Rotoren werden auf die zuletzt eingestellte Startposition zurückgesetzt).
  • Im Modus 'Eingabefeld' ist die manuelle Einstellung der Walzenpositionen gesperrt, sobald Text eingegeben wurde.
    Damit wird die volle Editierbarkeit gesichert, die voraussetzt, daß der aktuelle Spruchschlüssel für den gesamten Text gilt.
  • Im Modus 'Eingabefeld' kann der vorhandene Text trotzdem sehr einfach umkodiert werden.
    Zum Ändern des Spruchschlüssels (d.h. der Walzen-Startpositionen) wie folgt vorgehen:
    1. Walzen zurücksetzen mit [NULL]
    2. neue Walzenpositionen eingeben
    3. Zum Aktivieren der Kodierung ist eine Tasteneingabe im Eingabefeld erforderlich (z.B. 'Strg' oder Leertaste, die nicht mitkodiert werden).
    Ringstellung und Stecker-Konfiguration können ebenfalls geändert werden (jeweils Punkt 3 beachten).
  • Der 'QWERTZU'-Modus arbeitet originalgetreu. Dort wirken sich neue Schlüsseleinstellungen nur auf nachfolgende Eingaben aus.
  • Ein- und Ausgabefeld: Ein Doppelklick selektiert den gesamten Text.

Enigma-Uhr

  • Die Uhr benötigt genau 10 aktivierte Steckerpaare. Mit weniger kann sie nicht benutzt und auch nicht eingestellt werden. Mehr Stecker sind durchaus erlaubt; es werden dann die ersten zehn (von links gezählt) durch die Uhr beeinflußt, der Rest bleibt "normal" gesteckert.
    -- WICHTIG: Anders als beim normalen Steckern ist für die Enigma-Uhr die Reihenfolge der Steckerpaare wie auch die innerhalb eines Paares relevant!
  • Die Uhr hat 40 Stellungen (00..39). Auf "00" ist sie neutral, d.h. faktisch deaktiviert: Die Buchstabenvertauschung bei dieser Stellung entspricht genau dem, was gesteckert ist.
  • Alle durch 4 teilbaren Uhrstellungen ergeben reziproke Buchstabenvertauschungen, jedoch andere als durch die aktuelle Steckerung anzeigt (außer bei "00"). Die restlichen Stellungen führen zu nicht-reziproken Vertauschungen, sind also durch normales Steckern nicht zu realisieren.
  • Beim Deaktivieren der Stecker wird auch die Uhr deaktiviert ("00"). Beim erneuten Aktivieren der Stecker bleibt sie inaktiv und muß separat reaktiviert werden.
  • Klicken auf die Uhr-Anzeige schaltet zwischen "00" (neutral) und der letzten aktiven Stellung hin und her.

Schlüsselprozeduren

Tages- und Spruchschlüssel

Der Enigma-Schlüssel umfaßt die folgenden Komponenten:

  • Walzenauswahl und -anordnung (Walzenlage)
  • Ringstellung
  • Steckerverbindungen
  • Startpositionen der Walzen

Die ersten drei Punkte ergeben den tagesabhängigen Schlüssel, der Sender und Empfänger bekannt und in einem Codebuch verzeichnet war. Die Startpositionen der Walzen bilden den sog. Spruchschlüssel, der individuell für jede Übertragung neu festgelegt wurde.

Chiffrieren des Spruchschlüssels ...

Der Spruchschlüssel, der dem Empfänger zunächst nicht bekannt war, wurde durch den Sender chiffriert und zusammen mit der Nachricht gesendet. Dies erfolgte auf Basis des bekannten Tagesschlüssels in folgender Weise:

  1. Sender stellt den Tagesschlüssel ein und legt einen Spruchschlüssel fest, z.B. CODE (bei nicht einstellbarer UKW entsprechend nur drei Buchstaben);
  2. Sender stellt eine beliebige Walzenstellung ein, z.B. WALZ, um den Spruchschlüssel zu chiffrieren;
  3. Sender tippt seinen gewählten Spruchschlüssel (CODE) ein, notiert das Ergebnis (z.B. IPXH) neben der zur Kodierung benutzten Walzenlage, also "WALZ IPXH", und stellt diese Buchstabengruppen der chiffrierten Nachricht voran. (Die beiden Guppen werden natürlich nicht noch einmal chiffriert.)

... Dechiffrieren des Spruchschlüssels

Der Empfänger wandte nun dieselbe Prozedur an (Involutorik!): Er stellte den Tagesschlüssel ein und als Grundpositionen die erste Schlüsselgruppe (WALZ), tippte die zweite Gruppe (IPXH) und erhielt als Ergebnis den Spruchschlüssel (CODE). Dieser wurde nun als Walzenposition eingegeben, und die Nachricht konnte entschlüsselt werden.

* * *

Zahlen und Satzzeichen

Da die Walzen nur die Buchstaben A-Z enthalten, können auch nur diese direkt verschlüsselt werden. Zahlen und andere Zeichen müssen entweder mit speziellen, selten auftretenden Buchstabenkombinationen kodiert, weggelassen oder als Worte dargestellt werden.

Vorkehrungen

Um die Entschlüsselung zu erschweren (Erkennen von Zyklen), durfte eine Übertragung nicht mehr als 250 Zeichen enthalten. Danach mußte ein anderer Spruchschlüssel verwendet werden. Längere Nachrichten wurden deshalb in mehreren Teilen mit verschiedenen Spruchschlüsseln kodiert.

Manchmal wurde der Spruchschlüssel auch innerhalb eines Nachrichtenteils noch einmal geändert, dies wurde im Klartext durch vorher vereinbarte Codes angezeigt (z.B. "CYDE" für "linke Walze jetzt auf 'D' stellen").
NB: Bei den hier vorliegenden Simulationen wäre in letzterem Fall der QWERTZU-Eingabemodus zu benutzen, weil dort die Walzenposition manuell geändert werden kann, auch wenn schon Text kodiert wurde. Die Änderungen wirken sich dann nur auf die nachfolgenden Eingaben aus.

Es war wichtig, die Struktur einer Nachricht möglichst variabel zu halten, da insbesondere Eigennamen und der Briefkopf ("Von... An...") leicht zu erraten oder abzuleiten waren. Gängige Abkürzungen mußten aus demselben Grund variiert werden. Ein weiteres Beispiel: Das Satzende wurde i.d.R. im Klartext mit X (für Punkt) abgeschlossen; das X ganz am Ende der Nachricht war daher zu vermeiden. Nicht immer wurden solche Vorkehrungen allerdings beachtet, was den Codebrechern sehr zu Hilfe kam.

Interoperabilität von Enigma-Modellen

Enigma I in der M3

Die Enigma I (auch Wehrmacht-Enigma) kann als Vorgängerin der M3 angesehen werden. Sie wurde bereits ab 1930 bei der Reichswehr eingesetzt und blieb bis Kriegsende das am häufigsten benutzte Modell.

Die Enigma I und die M3 sind kompatibel, wenn man folgendes beachtet:

  • Bei der Enigma I und der Heeres-M3 kamen nur die Walzen I-V zum Einsatz; bei der Marine-M3 die Walzen I-VIII.
  • Eine erste UKW namens 'A' wurde nur in der Enigma I verwendet, aber 1937 außer Dienst gestellt und durch die UKW B ersetzt.

-- Tip: Die Kombi-Simulationen "Enigma I & M3" und "Universal Enigma" enthalten auch die alte UKW A.

M3 in der M4

Die Enigma M3 (und damit auch die Enigma I) kann mit der M4 emuliert werden. Dazu müssen ledigleich UKW und Griechenwalze "kompatibel" eingestellt werden:

  • UKW B 'dünn' + Walze Beta (auf A, Ringstellung 01)  <—entspricht—>  UKW B;
  • UKW C 'dünn' + Walze Gamma (auf A-01)  <—entspricht—>  UKW C.

Browserkompatibilität, Sicherheit

  • Die Funktionalität der Simulationen ist in allen gängigen Browsern gegeben.
      Darstellung, Bedienkomfort und Effekte können je nach Browser etwas variieren. Webdesigner kennen das leidige Thema. Die grafische Oberfläche wurde für Firefox 3 optimiert (auch wenn dessen Performance bei den Sims nicht überragend ist); nur hier funktionieren wirklich alle GUI-Effekte. Der Internet Explorer ab Version 8 schafft es immerhin fast genauso. Bei Chrome, Safari und Opera – die allesamt sehr schnell sind – sieht es auch ganz gut aus, jedoch werden z.B. Tooltips innerhalb der Auswahlmenüs nicht angezeigt. Letzteres gilt auch für Konqueror und ältere IE (vor Version 8); zudem rendern diese Browser die Seiten ziemlich schlecht, so daß sich das Vergnügen dort in Grenzen hält – v.a. bei Konqueror. Weiterhin können sich modifizierte Default-Stylesheets (z.B. bei Firefox unter Linux) nachteilig auf die Darstellung auswirken.
  • Achtung: Aktiviertes Javascript kann ein Sicherheitsrisiko darstellen, da sich Code einschleusen und ausführen läßt. Fehlerhafte Skripte oder größere zu verarbeitende Datenmengen können Fehlfunktionen oder ein Einfrieren des Browsers zur Folge haben. In TOR-Netzwerken u.ä. kann die Anonymität untergraben werden (Rückverfolgung; Wiedererkennung über Cookies).
      Zur Relativierung muß aber gesagt werden, daß man heutzutage um Javascript fast nicht mehr herumkommt, da immer mehr "moderne" Websites teilweise komplett davon abhängen, v.a. Webmail-Portale, soziale Netzwerke, aber auch z.B. Bildergalerien mit "Lightbox"-Effekten. Im Gegensatz zu den Sims auf dieser Seite sind die dabei verwendeten Skript-Monster nicht mehr wirklich zu überblicken.
  • Kryptografische Sicherheit: Die hier demonstrierte Methode ist **nicht** zur Verschlüsselung sensibler Daten geeignet! Auch wenn es schwierig sein dürfte, eine einzelne Datei unbekannten Inhalts zu entschlüsseln, so ist die Verschlüsselung der Enigma – aufgrund einiger konzeptioneller Schwächen – nicht annähernd so stark, wie man glauben könnte bzw. wie sie sein könnte. (Die Maschinen wurden von den Alliierten bereits während des Krieges geknackt, wenn auch mit unvorstellbarem Aufwand und viel Glück. Eine spannende Geschichte übrigens.)

Fragen & Antworten

  • F: Ich bin komplett überfordert mit den ganzen Einstellmöglichkeiten. Wie bediene ich das richtig?
    A: Das Grundprinzip ist: Alle Einstellungen müssen beim Verschlüsseln und Entschlüsseln identisch sein! – Da man aber nichts kaputt machen kann, schadet es nichts, alles auszuprobieren und zu sehen, was passiert. Für den Anfang kann man alle Einstellungsmöglichkeiten ignorieren. Die Enigma verschlüsselt auch so. Einfach alles zurücksetzen (oder neu laden), links Text eingeben und rechts das Ergebnis sehen. Zum Entschlüsseln kann das Ergebnis kopiert und wieder links eingefügt werden. Falls es Probleme gibt, vorher noch einmal alles zurücksetzen. Später kann man nach und nach an den Knöpfen "drehen" und sehen, was sich verändert. Dabei könnte man z.B. zunächst mit den Walzenpositionen beginnen, dann die Ringstellung und die Stecker mit einbeziehen.
    -- Tip (1): Werte können mit den Tasten '+' und '-' eingesellt oder direkt eingegeben werden. Der Monitor bietet ein paar interessante Informationen zum Verlauf der Simulation.
    -- Tip (2): Als Video-Tutorial für die Simulation eignet sich dieser Clip von poughkeepsieblue! (<<)
  • F: Beim Geocaching bin ich in einem Rätsel auf einen Enigma-Schlüssel mit 3 (4) Walzen gestoßen. Welches Modell muß ich benutzen?
    A: Für gewöhnlich die M-Serie. Das heißt, bei drei Walzen die M3, bei vier Walzen die M4. (NB: Die M4 kann auch für M3-Schlüssel benutzt werden, wenn man die korrekte UKW-Kombi wählt, s. Abschnitt zur Interoperabilität.) Das liegt wohl daran, daß dies die bekanntesten Modelle sind, für die es auch die meisten Simulationen gibt. Falls das nicht klappt und alle Möglichkeiten ausgeschöpft sind (→ Schlüsselprozeduren), könnte man es bei einem 4-Walzen-Schlüssel – insbesondere wenn keine Steckerverbindungen angegeben wurden – auch mal mit der Abwehr-Enigma G-312 probieren. Manchmal scheinen Cache-Owner auch Eigenkreationen zu verwenden (z.B. mit modifizierten Walzen); in solchen Fällen ist es schwer zu sagen, auf welchem Modell diese beruhen und ob ihre Funktionsweise der des Originals entspricht.
    Übrigens: Vielleicht erweitert sich ja durch die "Universal Enigma" auch noch das Spektrum der eingesetzten Modelle :)  (<<)
  • F: Ich habe links Text eingefügt, aber es passiert nichts. Wie starte ich die Simulation?
    A: Die Verschlüsselung startet automatisch, während man tippt (die Enigma verarbeitet jedoch nur Buchstaben a-Z). Wenn allerdings kopierter Text per Maus eingefügt wird, erkennt das Interface keine Eingabe. Das ist ein normales Verhalten von HTML-Textfenstern. Daher muß in diesem Fall anschließend im Eingabefenster noch eine Tasteneingabe erfolgen (z.B. 'Strg' oder Leertaste, die beim Kodieren ignoriert werden und den Text auch nicht verfälschen).
    -- Tip: Einfügen geht auch auch mit der Tastenkombination Strg+V (oder entsprechend). Dann startet die (De-)Chiffrierung ohne weiteres Zutun. (<<)
  • F: Die Walzenpositionen lassen sich nicht mehr verändern!?
    A: Das ist im Textfenster-Eingabemodus völlig normal. Sobald man dort etwas eintippt, sind die manuellen Einstellungen an den Walzenpositionen gesperrt. Damit wird die volle Editierbarkeit im Textfenster erkauft, da gewährleistet bleibt, daß sich der Schlüssel nicht mitten im Text ändert.
        Trotzdem kann der Spruchschlüssel, d.h. die Startposition der Walzen verändert werden, aber immer nur für den gesamten Text. Und zwar wie folgt:
    1. mit Schalter [NULL] die Walzen auf 'A' zurücksetzen;
    2. neue Konfiguration eingeben;
    3. die Neukodierung durch eine beliebige Tasteneingabe im Eingabefenster (z.B. 'Strg' oder Leertaste) aktivieren.
    Alternativ kann der Text auch zunächst kopiert, dann gelöscht (oder gleich ausgeschnitten) werden. Die Walzen gehen dabei auf ihre aktuellen Startpositionen zurück, da das Eingabefeld leer ist, und lassen sich nun verstellen. Danach fügt man den Text wieder ein (Strg+V) und erhält die neue Kodierung.
    -- Siehe auch Abschnitt Hilfe zur Bedienung.
    (<<)
  • F: Wie kann ich im QWERTZU-Modus den Inhalt des Ausgabefensters löschen?
    A: Durch Umschalten in den Textfeld-Eingabemodus und wieder zurück. Dabei werden auch die Walzen auf die zuletzt eingestellte Startposition (Spruchschlüssel) zurückgesetzt. (<<)
  • F: Wieso läßt sich die Enigma-Uhr nicht einstellen?
    A: Die Uhr benötigt immer genau 10 Steckerverbindungen. Es müssen also mindestens 10 Buchstabenpaare eingegeben und aktiviert(!) worden sein. Da der Uhr-Algorithmus bei weniger oder keinen Steckern zu einer fehlerhaften Kodierung führen würde, ist die Uhr in diesen Fällen automatisch gesperrt (d.h. auf Stellung "0", wo sie sich neutral gegenüber den Steckern verhält).
    -- Weitere Hinweise zur Enigma-Uhr im Abschnitt Hilfe zur Bedienung.
    (<<)
  • F: Die Simulation reagiert schwerfällig oder gar nicht, wenn ich etwas eintippe. Woran kann das liegen?
    A: Die Enigma-Simulation ist für Javascript-Verhältnisse schon ziemlich rechenintensiv. Bei längeren Texten im Eingabefeld-Modus, die ja bei jedem Tastendruck von Anfang bis Ende neu verschlüsselt werden (das ist der Editierbarkeit geschuldet), kann sich das Programm also entsprechend verlangsamen oder im Extremfall sogar "einfrieren". Das ist keine Katastrophe, sondern durch einen Neustart des Browsers einfach zu beheben. (Natürlich gehen dann v.a. andere geöffnete Tabs ebenfalls verloren, was u.U. ärgerlich sein kann!) Ferner hängt es vom Alter des Browsers, seiner Javascript-Engine und natürlich auch dem Rechner selbst ab, wie leistungsfähig die Simulation ist. Aktuelle Rechner und Browser sollten kein Problem mit Texten bis 1000 Zeichen und darüber hinaus haben. Bei längeren Eingaben wird trotzdem eine entsprechende Warnung ausgegeben, sofern zusätzlich der Monitor aktiv ist, der ebenfalls ständig aktualisiert werden muß. Historisch wurde übrigens die Länge einer Nachricht auf 250 Zeichen begrenzt, um die Entzifferung zu erschweren (vgl. Abschnitt "Schlüsselprozeduren").
    -- Tip: Folgende Maßnahmen können die Simulation entlasten und damit die Reaktion beschleunigen:
    • Monitor schließen (bei der Universal Enigma im Textfeld-Eingabemodus nicht mehr nötig)
    • die QWERTZU-Tastatur benutzen; dieser Modus arbeitet immer gleich schnell, da stets nur das aktuelle Zeichen kodiert wird
    • längere Texte aufteilen, wie es auch real gemacht wurde (s.o.)
    • einen anderen (evtl. aktuelleren) Browser probieren
    (<<)
  • F: Die Simulation und der Browser reagieren nicht mehr (und es wird eine Warnung ausgegeben, daß ein Skript die Webseite verlangsamt o.ä.)!
    A: Kein Grund zur Panik. Bisher konnte das Skript noch nicht zum Absturz gebracht werden – außer man klickt irgendwelche Buttons in der Sim an, während ein Chiffriervorgang läuft (dann muß man u.U. den Browser neu starten). Wahrscheinlich wird aber gerade ein langer Eingabetext (im 'QWERTZU'-Modus?) bearbeitet und/oder der Browser ist nicht so leistungsfähig. Sollte eine browser-interne Warnung ausgegeben werden, gibt es immer die Möglichkeit, auf "Abbrechen" zu klicken. Das beendet die laufende Operation und hat i.d.R. keine weiteren Konsequenzen. Es kann allerdings nachfolgend zu Fehlkodierungen kommen, da das Skript sich nun in einem undefinierten Zustand befindet (s. Frage 10). Man kann aber auch auf "Weiter" klicken und warten, bis die Chiffrierung abgeschlossen ist. Abhängig von der Leistung des Browsers/PCs und der Textlänge kann das einige Zeit dauern, und womöglich werden in Abständen noch weitere Warnungen angezeigt. (<<)
  • F: Ich habe einen Schlüssel, bei dem die Walzenpositionen mit Zahlen statt Buchstaben (Ringstellung mit Buchstaben / Steckerverbindungen mit Zahlenpaaren) bezeichnet sind. Wie ist das zu verstehen?
    A: Wahrscheinlich handelt es sich um einen Marine-Schlüssel. Es gab tatsächlich, auch abhängig von Modell und Walzenbeschriftung, verschiedene Methoden den Schlüssel zu formulieren. Die hier verwendete – Buchstaben für alles außer Ringstellung – war sicher die geläufigste, da auch die meisten Walzen im Sichtfenster Buchstaben anzeigen. Buchstaben vereinfachen außerdem die Eingabe der Steckerpaare. Gegebenenfalls müssen also Schlüsselwerte vor der Eingabe entsprechend umgeschrieben werden. Dabei gilt die einfache Durchnumerierung des Alphabets:
    A B C D E F G H I   J  K  L  M  N  O  P  Q   R  S  T  U  V  W  X  Y  Z
    1 2 3 4 5 6 7 8 9  10 11 12 13 14 15 16 17  18 19 20 21 22 23 24 25 26
    -- Tip: Hält man den Mauszeiger über ein Feld, wird die jeweils andere Lesart als Tooltip angezeigt. Ich hoffe, das ist nicht zu verwirrend... (<<)
  • F: Beim Entschlüsseln kommt nicht mehr der ursprüngliche Text heraus. Wo liegt das Problem?
    A: Die Simulationen sind getestet und sollten jeden Text korrekt entschlüsseln. Voraussetzung ist, sämtliche Einstellungen entsprechen denen beim Verschlüsseln. Eine falsche Dekodierung kann daher folgende Ursachen haben:
    • Beim Kopieren oder Einfügen wurde ein Teil des Textes vergessen (z.B. am Anfang). Vielleicht war ein aus der Ausgabe kopierter Text größer als das Textfeld, und es wurde nicht richtig an den Anfang gescrollt.
      -- Tip: Ein Doppelklick ins Fenster selektiert den gesamten Inhalt.
    • Im QWERTZU-Modus bleibt einmal kodierter Text im Ausgabefenster unverändert bestehen, auch wenn inzwischen die Einstellungen geändert wurden! Hier wird – anders als im Textfenstermodus – nicht rückwirkend alles neu verschlüsselt. Man muß sich daher die Positionen merken, an der der Text mit dem aktuellen Schlüssel beginnt und endet und darf nur diesen Bereich kopieren/entschlüsseln.
      -- Tip: Das Ausgabefenster läßt sich durch Umschalten in den Textfenstermodus und anschließendes Zurückschalten löschen. Die aktuellen Schlüsseleinstellungen bleiben dabei erhalten.
    • Da der QWERTZU-Modus kein Gedächtnis hat, bewirkt dort jede Schlüsseländerung (inkl. Ringe, Stecker usw. – auch wenn sie wieder zurückgenommen wird!) einen neuen Spruchschlüssel, d.h. die aktuelle Walzenposition werden automatisch als neue Startposition gesetzt!
      -- Tip: Ein Blick in die Statuszeile informiert über die aktuellen Enstellungen. Gegebenenfalls die Startpositionen neu einstellen.
    • Steckerverbindungen wurden eingegeben/geändert, aber nicht aktiviert oder sind deaktiviert (Aktivierungsknopf ist rot).
    • Bei der Auswahl einer Walze wird deren Startposition auf 'A' und die Ringstellung auf '1' zurückgesetzt. Deshalb diese Einstellungen erst nach der Auswahl der Walze festlegen, damit sie nicht verloren gehen.
    • Sollten nur bestimmte Zeichen des Originaltextes fehlen, handelt es sich vielleicht um Sonderzeichen, Umlaute oder Zahlen. Das ist normal, denn diese können (und konnten) nicht kodiert werden, da die Walzen und die Tastatur nur Buchstaben kennen. Mehr dazu im Abschnitt Schlüsselprozeduren.
    • Ein richtig beginnender und dann plötzlich unleserlicher Text ist oft ein Zeichen für einen falschen Übertragspunkt (der rechten Walze). Ringstellung und Walzenposition müssen dann korrigiert werden, und zwar gleichzeitig in dieselbe Richtung, bis das Ergebnis stimmt.
    • Hat man den Verdacht, daß v.a. bestimmte Buchstabenpaare vertauscht (oder zyklisch vertauscht) sind, liegt das Problem bei den Steckern: Vermutlich ist ein Stecker-Buchstabe (oder mehrere) falsch eingegeben.
    • Bei sehr langen Eingabetexten kann es vorkommen, daß der Browser eine Standard-Warnung ausgibt, ein laufendes Skript verlangsame die Website (vgl. Frage 8). Bricht man dann das Skript ab, kann es bei nachfolgenden Kodierungen u.U. zu unsinnigem Output kommen. Grund ist, daß der Browser das laufende Enigma-Skript zwar abgebrochen, aber nicht zurückgesetzt hatte (Variablenwerte, Zähler etc.). Es hat also mit der internen Arbeitsweise des Browsers zu tun, nicht mit dem Enigma-Skript. Abhilfe schafft in diesem Fall das Neuladen der Seite.
    • siehe auch nächste Frage...
    (<<)
  • F: Ich habe einen Text mit einem anderen Programm verschlüsselt und erhalte mit diesem hier nicht den korrekten Originaltext (oder umgekehrt).
    A: Die Einzelsimulationen der Modelle I/M3/M4 liefen in einem speziellen Fall fehlerhaft. Und zwar, wenn die Startposition der beiden rechten Walzen im "toten Bereich" eines Doppelschritts lag, also eine Konfiguration war, die infolge der Schritt-Anomalie übersprungen worden wäre. Dies wurde mit Version 1.5a behoben. (Dank an Sylvie Grasmück für ihre Mithilfe!)
        Bei der Einzelsimulation Enigma G//s gab es einen Bug, wodurch die Ringstellungen die Übertragsposition der Walzen beeinflußten. Der Effekt trat nur auf, wenn Ringe verstellt waren. Der Fehler wurde mit v1.5a behoben. Es ist außerdem zu beachten, daß die G//s-Simulation eine Steckerleiste hat. Das Original hat keine. Vielleicht sind Steckerpositionen eingegeben?
        Generell wurden meine Simulationen, soweit möglich, gegen die unten in den Links aufgeführten Programme getestet und diese wiederum (nach Auskunft ihrer Autoren) gegen echte Enigma-Geräte. Damit sind Fehler eher unwahrscheinlich, können aber natürlich nicht völlig ausgeschlossen werden (z.B. nach Änderungen am Quelltext). Es wurden aber bereits etliche "fremde" Texte mit meinen Simulationen erfolgreich entschlüsselt. Eventuell also nochmal alle Einstellungen überprüfen oder auch die vorige Antwort konsultieren. (<<)
  • F: Meistens dreht sich nur die rechte Walze. Geht es nicht ein bißchen schwungvoller?
    A: Berechtigte Frage. Und sogar eine von kryptografischer Bedeutung. Denn die Walzen, die pro Umdrehung nur einen Übertrag erzeugen, lassen insbesondere die linke Walze oft quasi statisch beim Kodieren einer Nachricht. Eine so ausgestattete Enigma hat damit im Grunde effektiv nur eine bis zwei Rotorwalzen, was die kryptografische Stärke erheblich reduziert. In den Modellen vom "Typ G" wurde dieses Manko behoben durch Walzen mit einer Vielzahl von Übertragskerben sowie zusätzlich eine rotierende UKW. Die Walzen anderer Modelle wurden aber nie durch entsprechend verbesserte ausgetauscht. Das mag auch finanzielle, logistische oder Kompatibilitätsgründe gehabt haben.
    -- Tip: Die Walzen des Modells A-865 und der G-Serie haben die meisten Kerben, wobei jeweils die mit der Nummer "1.." mit 17 Kerben an der Spitze liegt. Bei der Enigma T haben alle Walzen immerhin noch 5 Kerben. Die Walzen VI-VIII der M-Serie schalten zweimal pro Umlauf weiter (allerdings immer genau auf der Hälfte, was kryptografisch sogar schädlich ist, weil es die Periode verkürzt anstatt zu verlängern: die Umschaltperiode sollte immer teilerfremd zur Umlaufperiode sein!). Alle restlichen Walzen besitzen nur eine Übertragskerbe. (<<)
  • F: Was bedeuten die Symbole, die in der Statuszeile zwischen den Walzen stehen?
    A: Sie zeigen die aktuelle "Kopplung" der Walzen untereinander an, d.h. den Fortschaltungsmechanismus.
    Es gibt 3 Möglichkeiten: Weiterschaltung per Hebel/Sperrklinke, per Getriebe, oder keine (Rotation deaktiviert). Analog gibt es drei verschiedene Symbole, die (hoffentlich) diese Zustände illustrieren: '–' für einen Hebel; '¤' für Getriebe (das Währungssymbol erinnert an ein Zahnrad); sowie '^' für entkoppelt ('hochgeklappt'), also deaktivierte Rotation.
    -- Taucht ein Symbol auch zwischen der linken Rotorwalze und der UKW auf, so gibt es zwischen diesen auch eine Kopplung, d.h. die UKW ist dann rotierend. (<<)
  • F: Wie ist der Monitor der Universal Enigma zu verstehen?
    A: Die linke und rechte Spalte ist sicher selbsterklärend. Das mittlere Feld zeigt je nach Benutzeraktion entweder den aktuellen Signalfluß oder die aktuelle innere Verdrahtung an:
    1. Im Fall, daß irgendwelche Einstellungen vorgenommen werden (Walzenauswahl, Startposition, Ringstellung, Stecker oder Uhr), wechselt der Monitor zur Anzeige der inneren Verdrahtung. Man sieht dort dann zeilenweise pro Komponente (also Walzen, Stecker/Uhr), wie eingehende in ausgehende Signale übersetzt werden. Dabei wird alphabetisch nach dem Eingangsbuchstaben geordnet – oder im Fall von Rotorwalzen alphabetisch, beginnend mit der aktuellen Rotorposition ganz links. Für Walzen repräsentiert die jeweils obere Zeile den äußeren Buchstabenring, wie man ihn in den Anzeigefenstern der echten Enigma und auch in der Simulation sieht. Großbuchstaben stehen für die Übertragspositionen zur nächsten Walze. In der zweiten Zeile ist dann für jeden Eingangs- der aktuelle Ausgangsbuchstabe (ebenfalls bezogen auf den äußeren Ring) angezeigt. Im hellblauen Feld links sind alle angezeigten Komponenten bezeichnet.
      -- Beim Ändern einer Walzen-Startposition werden z.B. beide Zeilen synchron um den entsprechenden Betrag verschoben, so daß die Startposition (äußerer Ring) ganz links steht. Wird die Ringstellung geändert, ändert sich nur die untere Zeile, da die Walze selbst nicht rotiert, sondern lediglich ihre innere Verdrahtung gegenüber dem Außenring. Bei den Steckern, der Uhr und der ETW bleibt die obere Zeile immer unverändert, und nur die untere Zeile (Ausgangsseite) wird entsprechend modifiziert.
    2. Erfolgt eine Eingabe zur Chiffrierung, dann schaltet der Monitor in den Signalfluß-Modus um, wo man den Verlauf des Signals von der Eingabe bis zur Ausgabe verfolgen kann. Dies wird durch grüne bzw. rote Pfeile für den Hin- bzw. Rückweg des Signals verdeutlicht. Wie im Fall der inneren Verdrahtung, werden zeilenweise die beteiligten Komponenten (Walzen, Stecker/Uhr) angezeigt, deren Positionen alphabetisch nach Eingangssignal geordnet sind bzw. für rotierende Walzen beginnend mit der aktuellen Walzenposition. Diesmal wird nur die obere Zeile angezeigt, und die Pfeile verdeutlichen dort den Ein- und Ausgang des Signals. Auch hier stehen Großbuchstaben für Übertragspositionen zur nächsten Walze (wie man mittels der Tooltips in der Positionsanzeige der Walzen leicht nachprüfen kann).
    (<<)
  • F: In den Einzelsimulationen zeigt der Monitor fast immer einen falschen Signalverlauf!
    A: Das stimmt leider, und es betrifft nur die älteren Versionen. Trotzdem ist das Ergebnis korrekt! -- Der Monitor arbeitet innerhalb seiner Logik konsistent und zeigt den Verlauf der Belegung einer Variable an, die zu Beginn den originalen und am Schluß den kodierten Buchstaben enthält. Wegen der verwendeten Methode wird auf dem "Rückweg" aber die Walzenrotation/Ringstellung mit in die Variable eingerechnet, was den Wert vorübergehend systematisch verfälscht. Momentan wird daher auf dem Rückweg statt des eigentlichen Buchstabenwertes die Buchstabenposition relativ zur Position 'A' der nicht-permutierten Eintrittswalze angezeigt. Aus demselben Grund sollte man auch das angezeigte Verdrahtungsschema bei Ringstellung nicht so wörtlich nehmen. Der Monitor verdeutlicht also eher, wie die Simulationen selbst arbeiten.
    -- Tip: Bei der Universal Enigma wurde der Monitor komplett neu konzipiert. Er zeigt nun den tatsächlichen physikalischen Signalpfad (=Stromfluß) an, ebenso die korrekte Verdrahtung im Fall einer Ringstellung. (<<)
  • F: Die grafische Oberfläche sieht komisch aus: In der QWERTZU-Tastatur sind Buchstaben verrutscht u.ä.
    A: Das liegt an der Darstellung der Seite im konkreten Browser. Trotz größtmöglicher Anpassung an verschiedene Browser kann es Abweichungen geben. Oft sind Schriftarten standardmäßig zu groß, so daß es Umbrüche gibt. Bei Firefox (Windows) ist die Standardschrift, die auch in den Sims verwendet wird, Times New Roman, Größe 16px. Man kann dies unter Extras>Einstellungen>Inhalt anpassen. In den meisten Browsern läßt sich auch einfach die Schriftgröße der gerade angezeiten Seite ändern, i.d.R. durch gleichzeitiges Drücken von Strg und '+' oder'-'.
    -- s.a. nächste Frage. (<<)
  • F: In Firefox rutscht die gesamte Enigma nach rechts, wenn eine Info- oder Popup-Meldung erscheint.
    A: Dieses Problem betrifft Firefox 7 und 8. Mit Ffx 9 scheint es behoben zu sein. Bei anderen Browsern gibt es keine derartigen Probleme.
    Ab Firefox 7 wurden Javascript-Popups ("alert") nicht mehr als Betriebssystem-Requester, sondern browserintern per Javascript und CSS generiert, was offenbar mit dem Seitenlayout (CSS) der Simulation kollidierte. Das Problem tritt ab einer Fensterbreite von ca. 1200 Pixeln auf (also z.B. im Vollbild-Modus auf modernen Displays) und auch nur, wenn viel Text in der Popup-Meldung steht.
    -- Workaround: Fenstermaximierung umschalten (oben rechts in der Titelleiste) oder kurz die Fensterbreite etwas verändern, dann ist die Anzeige wieder mittig. (<<)
  • F: Die Einzelsimulation der Enigma G (G//s) hat eine Steckerleiste; bei der G-312 in der Universal Enigma fehlt sie aber. Heißt das, man kann dort u.U. Texte der Einzelsimulation nicht mehr entschlüsseln?
    A: Doch, beide Sims sind weiterhin kompatibel. Man muß allerdings vom Preset "G-312" in den Modus "Frei" umschalten. Dabei wird dann u.a. die Steckerleiste aktiviert, während alle Einstellungen und sogar der bisher kodierte Text erhalten bleiben. (Schaltet man allerdings zurück auf ein Preset, werden alle Einstellungen modellspezifisch zurückgesetzt und eingegebene Texte gelöscht.)
    Hintergrund: Bei der Universal Enigma habe ich mich entschlossen, die einzelnen Modelle wirklich mit allen Einschränkungen zu versehen, die das Original auch hat. Damit soll die Kompatibilität zu Simulationen aus anderen Quellen gesichert werden. Auch von der Logik her bedeutet die Nutzung eines "artfremden" Features in einem Modell, daß man bereits im benutzerdefinierten Modus arbeitet.
    -- Tip: Beim Modell-Preset "G-111" ist die Steckerleiste aktiviert, da es zumindest eine Variante dieses Modells gab, bei der man optional ein Steckerbrett anschließen konnte (s. Enigma-Stammbaum in den Links). Die G-111 ist allerdings nicht kompatibel zur G-312. (<<)
  • F: Wo geht es zu den Downloads? Die Links in der Box führen immer nur direkt auf die Simulationsseiten.
    A: Es gibt keine Downloads. Grund: Die Simulationen bestehen lediglich aus je einer normalen HTML-Webseite (und einem Bild für das Logo). Die Seiten lassen sich nach dem Aufruf ganz normal speichern (Strg+S). Alternativ kann man mit der rechten Maustaste auf die Links klicken und "Ziel speichern unter..." auswählen (je nach Browser-Modell kann es statt "Ziel" auch "Verknüpfung", "verlinkter Inhalt" o.ä. heißen). Damit ist die Simulation "heruntergeladen".
    -- Tip: Um die Logo-Grafik ebenfalls zu speichern, entweder die Option "Webseite komplett" wählen, oder per Rechtsklick auf die Grafik "Hintergrundbild anzeigen" lassen und dieses dann speichern. (<<)
  • F: Wozu noch mehr Enigma-Simulationen? Es gibt doch schon genug, sogar mit viel besserer Grafik.
    A: Grafik stand nicht so sehr im Vordergrund; Bedienbarkeit und Kompaktheit aber schon. Die Hauptargumente für diese Simulationen sind: 1. Zum Ausführen wird lediglich ein Browser benötigt; die Simulationen laufen also plattformunabhängig, d.h. auf so ziemlich jedem Computer und Betriebssystem. -- 2. Man kann den Quelltext unmittelbar lesen und auch verändern. (Und das ist sogar erlaubt! Unter Beachtung der Lizenzbedingungen, s.a. 'i'-Knöpfchen in der Simulation.) Javascript ist eine recht gut nachvollziehbare Sprache, und das Zusammenspiel von Algorithmen und Anzeige/GUI läuft über (dynamisch verändertes) HTML, das ebenfalls leicht zu durchschauen ist. -- 3. Die Sims sind, obwohl es sich um kommentierte Skripte handelt, äußerst kompakt (HTML-Seite mit 40-50kB; optional noch die Logo-Grafik). -- 4. Die Universal Enigma mit Stecker-Uhr bietet eine Vielfalt an Modellen und Optionen, die vergleichbare Simulationen bisher vermissen lassen. -- Für mich war darüber hinaus die Frage interessant, ob eine solche Simulation mit den Mitteln von HTML/Javascript überhaupt sinnvoll machbar ist und man sich dabei auf eine Seite von "normalem" Umfang beschränken kann. Zum Zeitpunkt der ersten Versionen (Oktober 2007) hatte ich jedenfalls im Internet nichts Vergleichbares gefunden. (<<)
  • F: Wo kann ich die alte Holzkiste entsorgen, die bei mir im Keller steht... mit der komischen Schreibmaschine drin?
    A: Bei mir im Keller ist noch Platz!
  • F: Wie kann man dieses Projekt unterstützen?
    A: Ich freue mich über Feedback und Anregungen. Und man kann diese Seite natürlich auch verlinken und weiterempfehlen. (<<)

Kontakt

 
  palloks@physik.hu-berlin.de
 

Links

  • Die Wikipedia-Einträge zur Enigma (inkl. weiterer zu bestimmten Modellen und zur Enigma-Uhr) waren anfangs meine Hauptquellen für dieses Projekt. Dort auch viel zur Geschichte und zu kryptografischen Fragen. Der englische Eintrag erklärt den Mechanismus des Doppelschritts etwas besser als der deutsche.
  • Relativ umfassende Zusammenstellungen von Walzenverdrahtungen verschiedener Enigma-Modelle fand ich seinerzeit auf einer Seite der Universität Toledo: "python cryptanalysis files: Enigma" (dort die Datei "enigma_configs.py") und im Rotor-Kompendium der spanischen Website "Taller de Criptografía". (NB: Beide Ressourcen sind mittlerweile vom Netz; die Links führen daher ins Internet-Archiv.) Außerdem natürlich im CryptoMuseum, s.u.
  • Die reichhaltigen Seiten von CryptoMuseum.com in Holland bieten neben Modellspezifikationen (inkl. einer vollständigen Liste der Walzenverdrahtungen) auch Fotos und viele Originaldokumente(!) zu den verschiedenen Enigma-Modellen. Außerdem gut verständliche Infos zur Stecker-Uhr und einen Enigma-Stammbaum. Die Seitem werden ständig erweitert.
  • Die außerordentlich schöne Enigma-Simulation (Windows-Executable) von Dirk Rijmenants hat mir nicht nur beim Debuggen geholfen, sondern gibt auch wichtige Informationen zum mechanischen Ablauf (Walzen rotieren zuerst, danach erfolgt die Kodierung). Die Website enthält viel Material zu Verschlüsselungsmaschinen und Kryptografie und wird ständig aktualisiert.
  • Zur Analyse der genauen Funktionsweise der Ringstellung wurde auch der M3 Naval Enigma Simulator von Geoff Sullivan und der Crypto Simulation Group (s.a. CryptoCellar) zu Rate gezogen, der u.a. eine interessante Visualiserung für den Signalfluß durch die Walzen bietet. Auch meine G-312 wurde mittels der entsprechenden "Abwehr"-Simulation von Geoff überprüft, dem ich in diesem Zusammenhang herzlich für seine Hilfe danken möchte. Zur Arbeitsweise der Enigma-Uhr ist seine Uhr-Simulation wohl die einzige Referenz im Netz und daher unverzichtbar für die Klärung der genauen Signalwege (Steckerbuchsen für ein- und ausgehende Signale).
  • Mein Dank geht auch an David Hamer, an Mavis Batey ("the only one left who was present when the Abwehr machine was broken") sowie an John Alexander vom Bletchley Park Museum.
  • Der Universal Enigma Simulator in einem Video von poughkeepsieblue (zu sehen ab 3:00 min). Nicht nur ein hübsches Tutorial, sondern auch eine kreative Anwendung ... Danke, poughkeepsieblue!

Copyright, Lizenz, Haftungsausschluß

Copyright © 2007-2016 by Daniel Palloks. -- Das Programm ist Freeware und darf nach Belieben weitergegeben und verändert werden, solange (1) meine Urheberschaft anerkannt bleibt, (2) alle Änderungen entsprechend gekennzeichnet werden, (3) der Freeware- und OpenSource-Status und die Bedingungen für Weitergabe/Modifikation gewahrt bleiben. Dies gilt auch für Teile des Quelltextes, sofern sie an anderer Stelle verwendet werden. Bei der Weitergabe der Software muß auch eine Kopie dieser Bestimmungen weitergegeben werden. -- Der Autor haftet nicht für Schäden, die mittelbar oder unmittelbar durch die Benutzung der Software entstehen.

Für die Inhalte hier verlinkter externer Seiten kann ich natürlich ebenfalls keine Haftung übernehmen.
Quelle des Enigma-Logos: Wikimedia Commons. Die Grafik ist Public Domain.

 


© Daniel Palloks 2009-2016
Letzte Änderung: 11.03.16

HTML 4.01 Strict