Rekonstrukcja niemieckiej maszyny szyfrującej Enigma I - podstawowa maszyna szyfrująca armii niemieckiej w latach 1930-45.
Rekonstrukcja składa się z trzech części:
Unikalnym kluczem szyfru były sprzętowe ustawienia maszyny wprowadzane w trzech miejscach. Możesz wprowadzić dowolne ustawienia zgodne z możliwościami.
Instrukcja używania w skrócie:
Jeżeli nie wprowadzisz ustawień, zostaną zastosowane domyślne. Dostępny zakres znaków to 26 liter z klawiatury Enigmy (zgodne z US-ASCII). Cyfry zostają zamienione na odpowiadające im litery wg wzoru podanego na końcu. Odszyfrowanie polega na zaszyfrowaniu szyfrogramu z tymi samymi ustawieniami - praca Enigmy jest odwracalna.
W kryptografii używamy DUŻYCH LITER. Rezultat szyfrowania to zawsze ciąg DUŻYCH LITER.
Pamiętaj, że wróg podsłuchuje!
Aktualne ustawienia: domyślne
Bardziej szczegółowo:
Ustawienia można wprowadzać wybiórczo, np. tylko kolejność walców, lub tylko łącznica kablowa, lub tylko łącznica kablowa i ustawienia początkowe walców..., a w reszcie zdać się na ustawienia domyślne.
Sprawdź, czy ustawienia są zgodne z zaplanowanym kluczem, jeśli nie wprowadź je jeszcze raz.
Jeżeli nie wprowadzisz własnych, zostaną zastosowane domyślne: walce [I, II, III]; ustawienia początkowe walców: A, A, A; łącznica kablowa: brak połączeń
Zapisz ustawienia i prześlij je odbiorcy oddzielnym kanałem.
Tekst przeznaczony do zaszyfrowania / odszyfrowania umieść w formularzu i kliknij
. Praca Enigmy jest odwracalna, tzn. szyfrogram zaszyfrowany z tymi samymi ustawieniami daje tekst jawny. Jeżeli wyślesz odbiorcy szyfrogram, to mając informację o kluczu otrzyma tekst jawny.0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Q | W | E | R | T | Z | U | I | O | P |
Na tę chwilę nie są mi znane żadne błędy.
Najprostszą formą testu jest wrzucenie długiego ciągu takich samych znaków. Enigma nigdy nie oddaje tego samego znaku po zaszyfrowaniu. Jeżeli pokazuje się choć raz w szyfrogramie, jest to błąd.
Trochę bardziej zaawansowaną formą testu jest zaszyfrowanie dowolnego tekstu, zapisanie go i po reloadzie zaszyfrowanie go z tymi samymi ustawieniami jeszcze raz, rezultat powinien być identyczny - oczywiście bez spacji i samymi dużymi literami, ale treść musi być taka sama.
Pewność poprawnego działania można uzyskać tylko porównując z pracą innego symulatora, np. The Enigma machine: Encrypt and decrypt online — Cryptii po lewej tekst jawny, pośrodku ustawienia, szyfrogram po prawej.
Testowanie polega na umieszczeniu długiego (ok tysiąca znaków wystarczy) ciągu tych samych liter po lewej, wprowadzeniu ustawień i skopiowaniu szyfrogramu. Teraz wprowadzamy te same ustawienia w tym symulatorze, wklejamy szyfrogram i w rezultacie powinniśmy otrzymać tekst jawny, czyli wspomniany ciąg jednakowych liter.
Jeżeli rezultat się różni, sprawdź jeszcze raz: typowe błędy to pomyłka przy wprowadzaniu ustawień, brak reloadu (odświeżenia ekranu) lub skopiowanie szyfrogramu bez początkowych znaków. Jeżeli rezultat nadal się różni - zapisz ustawienia i daj mi znać, przez facebooka Dygresje.info lub formularz kontaktowy na stronie.
Do obserwacji wewnętrznej operacji maszyny polecam Universal Enigma Machine Simulator - po wprowadzeniu ustawień możemy obserwować szyfrowanie pojedynczych znaków, klikając litera po literze.
Ta wersja jest betatestem, tzn. działa, ale to wszystko na tę chwilę. UX jest do poprawy.
Symulator ten jest częścią większego projektu (podlinkowany poniżej Das ist Enigma) i będzie rozwijany w jego ramach. Zapraszam do śledzenia. Docelowo będzie to dynamiczny interfejs, a potem komponent Reacta.
Dlaczego tylko Enigma I? Przede wszystkim nie "tylko" - Enigma I to główna maszyna szyfrująca armii niemieckiej przez cały czas istnienia Wehrmachtu aż do końca wojny. Równolegle używano dwóch innych maszyn:
I oczywiście Enigma Kriegsmarine jest jakimś tam celem i to w niedalekiej przyszłości, ale przede wszystkim muszę ustabilizować kod i zmienić interfejs na dynamiczny, tak, żeby kiedy wybierzesz Enigmę M4, opcje ustawień dostosowywały się do tego wyboru.
A czy będzie Lorenz, Typex, SIGABA... etc? O bardzo bym chciał. Ale to daleka, daleka perspektywa.
Na mojej stronie:
Logo Enigmy.