Enigma (z gr. αινιγμα, wym. enigma, pl. zagadka) – niemiecka przenośna, elektromechaniczna maszyna szyfrująca oparta na zasadzie obracających się wirników, opracowana przez Artura Scherbiusa, a następnie produkowana przez wytwórnię Scherbius & Ritter. Wytwórnia ta została założona w 1918 z inicjatywy Scherbiusa oraz innego niemieckiego inżyniera Richarda Rittera i zajmowała się konstrukcją i produkcją urządzeń elektrotechnicznych między innymi silników asynchronicznych. Scherbius odkupił prawa patentowe do innej wirnikowej maszyny szyfrującej opracowanej przez holenderskiego inżyniera Hugona Kocha.
Artur Scherbius nie był pierwszym, który skonstruował maszynę szyfrującą opartą na wirnikach. Poza nim i Hugo Kochem prace nad podobnymi urządzeniami prowadzili także Edward Hebern (USA, 1917) i Arvid Gerhard Damm (Szwecja, 1919), ale tylko Scherbius ze swoją Enigmą osiągnął sukces wprowadzając ją najpierw na rynek cywilny, a później do instytucji państwowych[1].
Enigma była używana komercyjnie od lat 20. XX wieku, a później została zaadaptowana przez instytucje państwowe wielu krajów. Podczas II wojny światowej maszyna ta była wykorzystywana głównie przez siły zbrojne oraz inne służby państwowe i wywiadowcze Niemiec a także innych państw. Enigma należała do rodziny elektromechanicznych wirnikowych maszyn szyfrujących i była produkowana w wielu różnych odmianach.
Po raz pierwszy szyfrogramy zakodowane przy pomocy Enigmy udało się rozszyfrować polskim kryptologom w roku 1932. Prace Polaków, głównie Mariana Rejewskiego, Jerzego Różyckiego i Henryka Zygalskiego, pozwoliły na dalsze prace nad dekodowaniem szyfrów stale unowocześnianych maszyn Enigma najpierw w Polsce, a po wybuchu wojny we Francji i Wielkiej Brytanii.
Najczęściej odszyfrowywanymi wiadomościami były przekazy zaszyfrowane Enigmą w wersji Wehrmachtu (Wehrmacht Enigma). Brytyjski wywiad wojskowy oznaczył Enigmę kryptonimem ULTRA. Nazwa ta powstała ze względu na najwyższy stopień utajnienia faktu złamania szyfru Enigmy, wyższy niż najtajniejszy (ang. Most Secret), czyli Ultra tajny.
Spis treści |
Tak jak inne maszyny oparte na rotorach Enigma jest połączeniem systemów elektrycznego i mechanicznego. Część mechaniczna składa się z alfabetycznej 26 znakowej klawiatury, zestawu osadzonych na wspólnej osi i obracających się bębenków nazywanych rotorami lub wirnikami (niem. Chiffrierwalzen) oraz mechanizmu obracającego jeden lub kilka rotorów naraz za każdym naciśnięciem klawisza.
Części mechaniczne służą jako elementy obwodu elektrycznego – właściwe kodowanie liter odbywa się elektrycznie. Po naciśnięciu klawisza obwód elektryczny zamyka się, a prąd przepływa przez elementy składowe maszyny, powodując zapalenie się jednej z wielu lampek podświetlających literę wyjściową. Na przykład, jeśli kodowana wiadomość zaczyna się od liter ALA..., operator maszyny naciska najpierw literę A, która może spowodować zapalenie się lampki z literą Z. W ten sposób pierwszą literą zakodowanej wiadomości będzie Z. Następnie operator naciska klawisz z literą L, która zostaje zakodowana w analogiczny sposób i tak dalej.
Wyjaśnienie działania Enigmy pokazano na diagramie po lewej. Dla uproszczenia przykładu pokazano tylko 4 zestawy kodujące, lampki, klawisze, kable łącznicy, gdy w rzeczywistości było ich aż 26. Prąd przepływa z baterii (1) przez obwód posiadającego dwa styki klawisza z literą (2) do łącznicy kablowej (3). Łącznica umożliwiała zamianę dwóch liter miejscami, a jednocześnie zapewniała połączenie klawiatury (2) z walcem wstępnym (Eintrittswalze) (4). Prąd przepływa przez łącznicę kablową (3) do walca wstępnego (4), a następnie przez trzy (Enigma Heeres) lub cztery (Enigma Kriegsmarine) wirniki do bębenka odwracającego (Umkehrwalze) (6). Bęben odwracający zawraca sygnał z powrotem przez wirniki (5), ale inną drogą, do walca wstępnego (4) następnie doprowadzając go do gniazda 'S' łącznicy, a stamtąd przewodem (Steckerverbindunge) do gniazda 'D' i dwustykowego klawisza (9), powodując zaświecenie lampki.
Ciągłe obracanie się wirników powoduje bezustanne zmienianie drogi sygnału i kodowanie wiadomości szyfrem polialfabetycznym, który na ówczesne czasy zapewniał bardzo wysokie bezpieczeństwo transmisji.
Prawa strona wirnika Enigmy ze sprężynującymi pinami styków elektrycznych. Rzymska cyfra "V" oznacza sposób okablowania wirnika. |
Wirniki (nazywane także bębenkami, rotorami lub walcami – po niemiecku Walzen) stanowiły serce maszyny szyfrującej Enigma. Miały one postać koła o blisko 10 cm średnicy wykonanego z twardej gumy lub bakelitu z ułożonymi w kształt okręgu mosiężnymi pinami na sprężynkach z jednej strony i płaskimi stykami elektrycznymi z drugiej. Ułożenie pinów i styków jest takie samo jak opis literowy na pierścieniu alfabetycznym wirnika – typowo 26 liter od A do Z. Gdy wirniki są ułożone jeden za drugim na wspólnej osi, piny jednego z nich stykają się z płaskimi stykami elektrycznymi sąsiedniego, zamykając obwód elektryczny. Wewnątrz wirnika znajdowało się 26 przewodów łączących zgodnie z założoną kombinacją piny z jednej ze stykami po drugiej stronie. Sposób okablowania był inny dla każdego typu wirnika.
Pojedynczy wirnik zapewnia tylko proste szyfrowanie szyfrem podstawieniowym. Przykładowo pin odpowiadający literze E może być połączony ze stykiem od litery T po drugiej stronie. Złożoność systemu szyfrowania polega na zastosowaniu wielu równoległych współosiowych wirników – przeważnie trzech lub czterech – oraz regularnego obracania ich, co zapewnia jeszcze większy stopień komplikacji szyfrowania.
Po włożeniu do maszyny szyfrującej, wirnik mógł być ustawiony w jednej z 26 pozycji. Przekręcenie bębenka umożliwiał przytwierdzony do niego karbowany pierścień wystający przez górną pokrywę maszyny po jej zamknięciu. Aby operator maszyny mógł ustawić wirnik w odpowiedniej pozycji przymocowano do niego pierścień alfabetyczny z 26 literami lub cyframi, z których właściwa odpowiadająca nastawieniu pozycji była widoczna w specjalnym okienku pokrywy maszyny. We wczesnych modelach maszyny pierścień alfabetyczny był zamocowany do wirnika, ale później, w celu zwiększenia komplikacji szyfru, wprowadzono wirniki o zmiennym ustawieniu pierścienia alfabetycznego, którego pozycję określanego terminem Ringstellung (ustawieniem wirnika).
Enigmy Sił Lądowych (Heeres) i Luftwaffe były wyposażone w kilka typów wirników, chociaż zaraz po jej wprowadzeniu były tylko trzy. 15 grudnia 1938 zwiększono zestaw wirników do pięciu, z których do zamontowania w maszynie wybierano trzy. Dla odróżnienia bębenki były oznaczane rzymskimi cyframi I, II, III, IV i V. Każdy z nich miał jedno zlokalizowane w różnych miejscach pierścienia alfabetycznego wcięcie służące do obracania go, przez co złożoność szyfru znacznie wzrastała. Założenie konstruktorów maszyny, że zastosowanie wcięcia praktycznie uniemożliwi odkodowanie wiadomości okazało się jednak błędne, ponieważ dzięki zastosowaniu opracowanej przez Jerzego Różyckiego metody zegarowej, a później brytyjskiej Banburismus ostatecznie szyfr Enigmy został złamany.
Rozkład okablowania wirników I-V
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 ZI E K M F L G D Q V Z N T O W Y H X U S P A I B R C JII A J D K S I R U X B L H W T M C Q G Z N P Y F V O EIII B D F H J L C P R T X V Z N Y E I W G A K M U S Q OIV E S O V P Z J A Y Q U I R H X L N F T G K D C M W BV V Z B R G I T Y U P S D N H L X A W M J Q O F E C K
W odróżnieniu od maszyn Heeres i Luftwaffe, Enigmy Kriegsmarine były wyposażone w większy zestaw wirników, początkowo sześć, później siedem i ostatecznie osiem. Dodatkowe wirniki oznaczone jako VI, VII i VIII były okablowane w różny sposób i posiadały po dwa wcięcia na wysokości liter 'N' i 'A', które umożliwiały ich częstsze obracanie.
Używana przez Kriegsmarine Enigma M4 posiadała czwarty wirnik, którego zastosowanie nie wymagało przebudowy samej standardowo trójwirnikowej maszyny. Dodatkowe miejsce uzyskano poprzez zastosowanie nowego cieńszego bębenka odwracającego i specjalnego czwartego wirnika, który nigdy się nie obracał, ale mógł być ustawiony ręcznie w jednej z 26 pozycji. Czwarty wirnik był produkowany w dwóch wersjach oznaczonych jako Beta i Gamma.
Rozkład okablowania wirników VI-VIII, Beta i Gamma
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 ZVI J P G V O U M F Y Q B E N H Z R D K A S X L I C T WVII N Z J H G R C X M Y S W B O U F A I V L P E K Q D TVIII F K Q H T L X O C B J S P D Z R A M E W N I U Y G VBeta L E Y J V C N I X W P B Q M D R T A K Z G F U H O SGamma F S O K A N U E R H M B T I Y C W L Q P Z X V G J D
W celu zwiększenia komplikacji kodu niektóre wirniki poruszały się nie za każdym naciśnięciem klawisza. Takie działanie zapewnia odmienne kodowanie znaku w każdej pozycji bębenków i powstanie w efekcie bardzo skomplikowanego wieloalfabetowego szyfru podstawieniowego.
Obracanie wirników zrealizowano za pomocą mechanizmu zębatkowo-zapadkowego. Na każdy z wirników maszyny nałożono koła zębate o 26 zębach współpracujących z zapadkami. Każde naciśnięcie klawisza maszyny powoduje jednoczesne popchnięcie zapadek, które, jeśli natrafią na występ zębatki bębenka, powodują jego obrót.
W Enigmie używanej przez siły lądowe i powietrzne na wirniki założono dodatkowe koło z wcięciem. Pięć podstawowych wirników (I-V) miało po jednym wcięciu, natomiast dodatkowe wirniki maszyn Kriegsmarine (VI-VIII) po dwa. W pewnych pozycjach wcięcie to ustawiało się w takiej pozycji, że zapadka sąsiedniego wirnika umożliwiała przestawienie dwóch bębenków jednocześnie. W przeciwnym razie zapadka ślizga się po powierzchni koła z nacięciem nie powodując dodatkowego obrotu. Dla wirników mających jedno wcięcie dodatkowy skok drugiego bębenka następuje co 26 obrotów pierwszego bębenka i podobnie - obrót trzeciego co 26 obrotów drugiego. Drugi wirnik obraca się w taki sam sposób jak trzeci, dlatego w pewnym momencie przeskoczy on o dwa ząbki za jednym naciśnięciem klawisza skracając swój okres obrotu (podwójny krok)[2].
Fakt występowania podwójnego kroku w Enigmie, odróżnia sposób obracania się bębenków od np. samochodowego licznika kilometrów. Podwójny krok zachodzi gdy: pierwszy wirnik skokowo wykonuje obrót, a w momencie natrafienia zapadki na wcięcie w drugim wirniku następuje przestawienie go o jeden krok do przodu. Tak samo dzieje się z trzecim wirnikiem, ale w momencie natrafienia zapadki na wcięcie zostaje on obrócony o jeden krok wraz z drugim bębenkiem. W kolejnym cyklu zapadka popycha drugi wirnik po raz kolejny (drugi raz z rzędu).
W trójwirnikowej Enigmie mającej tylko po jednym wcięciu na pierwszym i drugim bębenku powtórzenie kombinacji kodu następuje co 16900 cykli. 26 × 25 × 26 = 16900 (Uwaga: nie jest to 26 × 26 × 26 ze względu na podwójny krok drugiego z bębenków, chociaż wszystkie wirniki mają po 26 styków). Ze względu na ograniczoną do kilkuset znaków długość zazwyczaj nadawanych wiadomości, prawdopodobieństwo powtórzenia się sekwencji kodującej było praktycznie zerowe.
Aby zrobić miejsce na czwarty wirnik kodujący Beta lub Gamma w Enigmie Kriegsmarine, która weszła do użytku w 1942 roku, zastosowano cieńszy wirnik odwracający, a sam czwarty wirnik również miał mniejszą grubość. Żadne mechanizmy maszyny nie uległy zmianie, nie dodano również zapadki do dodatkowego wirnika, a mógł być on ustawiany jedynie ręcznie w jedną z 26 pozycji.
Po naciśnięciu klawisza na klawiaturze Enigmy, najpierw następuje obrót wirników, a dopiero później jest zestawiany obwód elektryczny.
Walec wstępny (niem. Eintrittswalze) lub stojan, jest połączony z łącznicą kablową (jeśli jest ona obecna), albo bezpośrednio z klawiaturą i lampkami, a z drugiej strony z zestawem wirników. Chociaż sam sposób połączenia klawiatury z walcem nie ma większego znaczenia dla bezpieczeństwa kodowania, to początkowo przysporzył pewnych kłopotów Marianowi Rejewskiemu, który pracował nad odkryciem sposobu okablowania wirników. Komercyjna wersja maszyny miała klawisze połączone zgodnie z układem klawiatury: Q
A, W
B, E
C i tak dalej. Z kolei w wersji wojskowej połączona była alfabetycznie: A
A, B
B, C
C i tak dalej. Odkrycie tego faktu przez Rejewskiego umożliwiło mu opracowanie kolejnych równań pozwalających ostatecznie na złamanie tajemnicy Enigmy.
Z wyjątkiem pierwszych dwóch modeli Enigmy, oznaczonych literami A i B, wszystkie późniejsze maszyny posiadały walec odwracający, inaczej reflektor (niem. Umkehrwalze). Było to opatentowane rozwiązanie, które odróżniało Enigmę od innych ówcześnie budowanych maszyn szyfrujących z wirnikami. Zadaniem walca odwracającego było połączenie styków elektrycznych ostatniego wirnika kodującego w pary i zawrócenie sygnału inną drogą przez zestaw wirników.
Połączenia par styków bębnów odwracających B i C (walec stały)
UKW B AY BR CU DH EQ FS GL IP JX KN MO TZ VWUKW C AF BV CP DJ EI GO HY KR LZ MX NW QT SU
Bęben odwracający Enigmy jest symetryczny co oznacza, że zaszyfrowana informacja jest rozkodowywana po przesłaniu jej tą sama drogą (jakby powtórnym zakodowaniu). Bęben ten nadaje Enigmie jeszcze jedną własność, mianowicie, nigdy żadna litera przed zaszyfrowaniem nie może mieć tej samej wartości co zaszyfrowana (czyli nigdy A nie będzie po zaszyfrowaniu występować jako A). Wynika to z konstrukcji bębna, który zawsze zamienia znaki parami. Własność ta, choć miała być zaletą, jest w rzeczywistości błędem kryptologicznym i została wykorzystana do złamania kodu Enigmy.
W wersji komercyjnej typu C walec odwracający mógł być zainstalowany w jednej z dwóch pozycji, natomiast w nowszej wersji D w jednej z 26 pozycji, ale nie poruszał się on podczas szyfrowania. W wersji Enigmy przeznaczonej dla Abwehry walec odwracający obracał się tak samo jak pozostałe wirniki.
Połączenia par styków bębnów odwracających B i C (obrotowy Enigmy M4)
UKW B AE BN CK DQ FU GY HW IJ LO MP RX SZ TVUKW C AR BD CO EJ FN GT HK IV LM PW QZ SX UY
Enigmy wykorzystywane przez Heeres i Luftwaffe również posiadały nieruchome bębenki odwracające, które produkowano w czterech wersjach. Pierwsza z nich oznaczona jako Umkehrwalze A została zastąpiona 1 listopada 1937 przez Umkehrwalze B. Trzecia wersja Umkehrwalze C wprowadzona w 1940 była używana bardzo krótko, prawdopodobnie na skutek błędu. Wersja Enigmy z tą wersją walca została rozkodowana przez sekcję Hut 6 ośrodka kryptologicznego w Bletchley Park[3]. Czwartej wersji walca użyto po raz pierwszy około 2 grudnia 1944. W odróżnieniu od poprzednich Umkehrwalze D, posiadał zmienne uzwojenie, które mogło być przestawiane przez operatora w jedno z predefiniowanych położeń.
Łącznica kablowa (niem. Steckerbrett) umożliwia różnorodne okablowanie, które może być zmieniane przez operatora. Po raz pierwszy łącznicę kablową wprowadzono w 1930 do maszyn Heeres i Luftwaffe, a wkrótce zaadaptowano także w Kriegsmarine. Łącznica mimo swej prostoty pozwalała na znaczny wzrost komplikacji szyfru Enigmy, większy niż dodatkowy wirnik. Enigma bez łącznicy mogła być rozkodowana w relatywnie prosty sposób nawet metodami ręcznymi, natomiast zamiana liter przy pomocy łącznicy kablowej wymusiła zastosowanie do łamania kodów specjalnych maszyn.
Przewody łącznicy kablowej pozwalały zamienić niektóre pary liter miejscami, np. E i Q. Efektem była zamiana liter zarówno przed jak i po przejściu sygnału przez wirniki kodujące. Przykładowo po naciśnięciu przez operatora klawisza E sygnał jest kierowany do Q a następnie wprowadzany na wirniki. W tym samym czasie można zamienić do 13 par liter, czyli cały alfabet.
Rozkład gniazd łącznicy kablowejQ W E R T Z U I O A S D F G H J K P Y X C V B N M L |
Sygnał elektryczny biegnie z klawiatury przez łącznicę kablową do walca wstępnego (Eintrittswalze). Każda litera na łącznicy posiada dwa gniazda na wtyki bananowe, w które wkłada się wtyczkę. Po włożeniu wtyczek następuje odłączenie górnych wtyków od klawiatury i dolnych od walca wstępnego maszyny. Sygnał elektryczny przebiega kablem zamieniając połączenia dwóch liter miejscami.
Bardzo przydatnym dodatkowym oprzyrządowaniem Enigmy M4 był Schreibmax, mała drukarka, która mogła drukować cały zestaw 26 znaków na wąskiej papierowej taśmie. Zastosowanie tego urządzenia umożliwiło rezygnację z drugiego operatora, którego zadaniem było odczytywanie z lampek i zapisywanie odkodowanej wiadomości. Schreibmax był instalowany na górnej pokrywie maszyny i podłączany zamiast panelu z lampkami, który na czas używania drukarki demontowano. Poza oczywistą wygodą użytkowania zastosowanie Schreibmaxa zwiększyło również bezpieczeństwo transmisji, gdyż możliwe było zdalne zainstalowanie drukarki, choćby w drugim pomieszczeniu, co uniemożliwiało wprowadzającemu szyfrogram operatorowi odczytanie zdekodowanej wiadomości.
Innym przydatnym akcesorium był dodatkowy zdalny panel z lampkami, który tak jak w przypadku Schreibmaxa umożliwiał odczyt wiadomości w drugim pomieszczeniu, lub poza zasięgiem wzroku operatora. Wersje Enigmy wyposażone w dodatkowy panel posiadały większą skrzynię pozwalającą na zmieszczenie go w odpowiedniej przegródce.
W 1944 Luftwaffe wprowadziła dodatkowy przełącznik łącznicy kablowej, nazywany Uhr (niem. zegar). Miał on postać małego pudełka z 40-pozycyjnym przełącznikiem obrotowym zastępującym dotychczasowe wtyczki. Po podłączeniu urządzenia do Enigmy zgodnie z aktualnym kluczem dziennym, operator mógł wybrać poprzez obrót gałki jedną z 40 pozycji, z której każda odpowiadała innej kombinacji okablowania.
Maszyna szyfrująca Enigma koduje litery w taki sposób, że każda z nich może być opisana matematycznie jako wynik permutacji. Na przykładzie trójwirnikowej Enigmy używanej przez niemieckie siły lądowe i Luftwaffe będzie to wyglądało następująco: niech P oznacza przekształcenie na łącznicy kablowej, U oznacza walec odwracający, a L,M,R oznaczają działania na trzech kolejnych wirnikach. Zapis matematyczny szyfrowania E można wyrazić jako:
Po każdym naciśnięciu klawisza wirniki obracają się zmieniając przekształcenie. Przykładowo, jeśli pierwszy z prawej wirnik R obróci się o i pozycji, przekształcenie będzie miało postać ρiRρ − i, gdzie ρ jest permutacją cykliczną (patrz permutacja → akapit Cykl) odwzorowującą A na B, B na C,..., Z na A. Podobnie ruch wirników środkowego M i ostatniego z lewej L mogą być przedstawione jako obrót M o j pozycji i obrót L o k pozycji. Funkcja szyfrowania ma wtedy postać:
Niemiecka komunikacja wojskowa została podzielona na wiele różnych sieci, z których każda używała innych ustawień dla używanych w niej maszyn szyfrujących Enigma. Sieci te w ośrodku kryptologicznym w Bletchley Park nosiły nazwę kluczy (ang. keys) i przypisano im dodatkowe kryptonimy kodowe takie jak Red, Chaffinch i Shark. Każda z jednostek działających w danej sieci otrzymywała co pewien czas listy ustawień Enigmy. W celu pomyślnego przesłania wiadomości zarówno maszyna nadawcza jak i odbiorcza musiały być identycznie ustawione, włączając w to ten sam zestaw wirników ustawionych w takich samych pozycjach startowych i z identycznie okablowaną łącznicą kablową. Wszystkie dane o ustawieniach maszyn ustalano z wyprzedzeniem i drukowano w postaci książek kodowych.
Początkowe ustawienie Enigmy, jej klucz zawierał następujące dane:
Enigma została zaprojektowana w taki sposób, że transmisja musiała być bezpieczna także w przypadku gdy sposób okablowania wirników był znany dla podsłuchującego. W praktyce jednak dane na temat okablowania wirników były tajne. Z użyciem wirnika o nieznanym sposobie kablowania przybliżona liczba wszystkich ustawień wynosiła około 10114 (około 380 bitów), natomiast w przypadku wirników o jawnym sposobie kablowania, oraz znajomości ustawień malała ona do około 1023 (76 bitów)[4]. Użytkownicy Enigmy byli pewni, że bezpieczeństwo przekazu jest całkowite ze względu na olbrzymią liczbę możliwych kombinacji ustawień maszyny, a jedyną metodą rozkodowania wiadomości jest atak metodą brute force.
Większość kluczy obowiązywała przez określony czas, przeważnie jeden dzień, jednak do szyfrowania każdej wiadomości wirniki były ustawiane indywidualnie. Postępowano tak dlatego, że duża liczba przekazów zaszyfrowanych w ten sam lub podobny sposób stanowiła doskonały materiał dla kryptologów do analizy częstościowej i łatwiejszego złamania szyfru. Związane to było także z tym, że typowa depesza wojskowa na początku zawierała identyfikator (zwykle kryptonim) nadawcy. Powodowało to, że w przypadku nadawców przesyłających dużą liczbę depesz (np. sztabów wysokiego szczebla) otrzymywano dużą liczbę depesz o identycznym początku (zaszyfrowany identyfikator nadawcy, który wywiad przeciwnika zwykle znał), co mogło ułatwić atak kryptologiczny. Aby temu przeciwdziałać dla każdej wiadomości wprowadzano indywidualne ustawienia, podobnie jak we współczesnej kryptografii stosuje się wektor startowy. Zaszyfrowana właściwa pozycja wirników była transmitowana tuż przed głównym szyfrogramem. Procedura ta, nazywana procedurą wstępną, choć miała podnieść bezpieczeństwo, to przez błędy szyfrantów niemieckich pozwoliła na złamanie pierwszych wersji Enigmy.
Jedna z pierwszych procedur wstępnych została wykorzystana przez polskich kryptologów do pierwszego złamania szyfru Enigmy. Polegała ona na ustawieniu wirników zgodnie z kluczem dziennym odczytanym z książki kodowej. Początkowe ustawienie wirników (Grundstellung) mogło mieć postać AOH i taką kombinację ustawiał operator. Następnie wybierano przypadkową kombinację ustawień wirników np. EIN, która stawała się indywidualnym kluczem wiadomości. Klucz wiadomości był wpisywany dwukrotnie (w celu uniknięcia błędów) jako EINEIN i po zaszyfrowaniu mógł mieć postać XHTLOA, którą nadawano na początku przekazu szyfrowanego. Po nadaniu klucza operator ustawiał wirniki maszyny w pozycji EIN i rozpoczynał wpisywanie wiadomości do zaszyfrowania.
Procedura odbiorcza była operacją odwrotną. Najpierw w maszynę ustawioną zgodnie z kluczem dziennym wpisywano pierwszą odebraną sekwencję znaków XHTLOA, która po rozkodowaniu dawała indywidualny klucz szyfrogramu EINEIN. Następnie operator ustawiał wirniki Enigmy w pozycję EIN i przystępował do dekodowania właściwego przekazu.
Pierwszym błędem procedury wstępnej było nadawanie w początkowym okresie używania Enigmy indywidualnego klucza wiadomości tekstem otwartym. Drugim błędem natomiast było konstruowanie klucza wiadomości z trzech znaków powtórzonych dwukrotnie, co pozwoliło na odkrycie relacji pomiędzy pierwszym i czwartym znakiem, drugim i piątym, oraz trzecim i szóstym. Oba te niedostateczne zabezpieczenia transmisji pozwoliły pracownikom polskiego Biura Szyfrów na odtworzenie działania Enigmy i dekodowanie wiadomości przesyłanych przy użyciu przedwojennych maszyn szyfrujących. W 1940 zmieniono procedurę wstępną zwiększając bezpieczeństwo szyfrów. Inne błędy szyfrantów niemieckich związane z tą procedurą to:
Podczas II wojny światowej książki kodowe Enigmy zawierały tylko dane na temat zestawu wirników i ich wzajemnego ułożenia, bez kluczy dziennych. Dla każdej wiadomości operator wybierał przypadkowe ustawienie początkowe wirników, np. WZA i przypadkowy klucz wiadomości np. SXT. Po ustawieniu wirników Enigmy w położenie WZA wpisywał klucz wiadomości SXT otrzymując przykładowo ciąg znaków UHL. Następnie ustawiał wirniki maszyny w położenie SXT i kodował resztę informacji. Transmitowany meldunek rozpoczynał się od ciągu znaków mówiącego o ustawieniu początkowym WZA, następnie zakodowanego klucza wiadomości UHL a następnie właściwej treści szyfrogramu. Odbierający wiadomość operator wykonywał operacje odwrotne: najpierw ustawiał wirniki w pozycję WZA i dekodował z ciągu UHL klucz wiadomości SXT. Następnie ustawiał maszynę zgodnie z kluczem SXT i deszyfrował przekaz. Ta procedura wstępna była znacznie bezpieczniejsza niż przedwojenne, ponieważ nie zawierała podwójnej sekwencji znaków.
Powyższa procedura była wykorzystywana tylko przez siły lądowe i Luftwaffe. Kriegsmarine posiadała własne znacznie bardziej złożone procedury. Wiadomość przeznaczona do zakodowania Enigmą musiała być wstępnie zakodowana na podstawie Kurzsignalheft, książki skrótów kodowych zawierającej tabele zamieniające całe sentencje i zwroty na czteroliterowe grupy liter. Uwzględniono każde możliwe wyrażenie i każdy temat wiadomości i sytuacji na morzu. Swoje kody posiadały operacje tankowania i zaopatrzenia na morzu, nazwy zatok, państw, broni, pogody, pozycji wrogich jednostek, czasu, współrzędnych itd. Celem przyjęcia takiego rozwiązania było nie tylko utrudnienie złamania szyfru, ale także umożliwienie przekazania jak największej informacji w formie jak najkrótszej depeszy – konieczność ta wynikała z tego, że im dłuższa depesza, tym dłużej trwa jej nadawanie, co zwiększa ryzyko, że przeciwnik może na podstawie nasłuchu i radionamierzania ustalić pozycję okrętu. Druga książka kodowa zawierała Kenngruppen i Spruchschlüssel czyli klucze identyfikacyjne i klucze wiadomości[5].
Enigma wykorzystywana w wojsku używała tylko 26-literowego alfabetu. Znaki przestankowe zastępowane były przez rzadko występujące sekwencje liter. Spacja była zwykle pomijana lub zastępowana literą X, która była też używana jako kropka (lub przecinek dziesiętny). Niektóre znaki były różnie wykorzystywane przez różne siły zbrojne. Heeres i Luftwaffe zamiast przecinka wykorzystywały ZZ a zamiast znaku zapytania – frazę FRAGE lub FRAQ. Kriegsmarine z kolei zamiast przecinka wykorzystywała literę Y a zamiast znaku zapytania – UD. Litery CH, jak w wyrazie Acht (osiem) lub Richtung (kierunek) były zastępowane przez Q (AQT, RIQTUNG). Dwa, trzy lub cztery zera zastępowane były przez odpowiednio: CENTA, MILLE oraz MYRIA.
Heeres i Luftwaffe przesyłały wiadomości w postaci pięcioliterowych grup. Kriegsmarine, używała innych czterowirnikowych maszyn Enigma i inaczej przesyłano też meldunki, w postaci czteroliterowych grup. Najczęściej używane słowa w celu zamaskowania ich w kodzie wiadomości pisano na różne sposoby. Przykładowo słowo Minensuchboot (trałowiec) pisano jako MINENSUCHBOOT, MINBOOT, MMMBOOT lub MMM354. Aby dodatkowo utrudnić pracę kryptologom wprowadzono ograniczenie długości meldunku do 250 znaków. Dłuższe przekazy dzielono na części z których każda miała swój własny klucz wiadomości[6][7].
Zanim Enigma osiągnęła swą ostateczną formę zbudowano wiele odmian i modeli tej maszyny. Najwcześniejsze Enigmy, które pojawiły się na początku lat 20. XX wieku były maszynami przeznaczonymi na rynek cywilny. W połowie lat 20. zaczęły ich używać także niemieckie siły zbrojne wprowadzając całą gamę różnego rodzaju usprawnień zwiększających bezpieczeństwo przekazywanych meldunków. Dodatkowo wiele innych państw zaadaptowało Enigmę do swoich własnych potrzeb, lub wykorzystało podobną zasadę działania we własnych maszynach szyfrujących (patrz niżej).
23 lutego 1918 roku niemiecki inżynier Artur Scherbius złożył wniosek o przyznanie patentu na wirnikową maszynę szyfrującą, oraz założył wraz z Richardem Ritterem firmę Scherbius & Ritter, której celem była produkcja tego urządzenia. Obaj przedstawili projekt maszyny zarówno niemieckiej Kriegsmarine jak i Ministerstwu Spraw Zagranicznych, ale nie zyskali zainteresowania żadnej z tych instytucji. W tym wypadku przekazali prawa patentowe firmie Gewerkschaft Securitas, z której 9 lipca 1923 powstało Chiffriermaschinen Aktien-Gesellschaft (Maszyny Szyfrujące Spółka Akcyjna) w której Scherbius i Ritter zostali członkami zarządu.
W Chiffriermaschinen AG rozpoczęto produkcję i reklamowanie wirnikowej maszyny szyfrującej – Enigma model A – wystawiając ją na kongresie Powszechnego Związku Pocztowego w roku 1923 i 1924. Pierwszy model był dość duży 65×45×35 cm i ciężki około 50 kg, głównie ze względu na zintegrowaną maszynę do pisania. Druga wersja model B miała bardzo podobną konstrukcję[8]. Chociaż noszące tę samą nazwę Enigma, oba modele A i B maszyny różniły się od późniejszych wersji, nie tylko wymiarami i masą, ale także sposobem kodowania, ponieważ nie posiadały walca odwracającego.
Walec odwracający – wymyślony przez kolegę Scherbiusa Williego Korna – został wprowadzony po raz pierwszy w maszynie Enigma C w 1926 roku. Element ten stał się kluczowym w konstrukcji maszyn Enigma.
Wersja C była mniejsza i w odróżnieniu od poprzedników nadawała się do przenoszenia. Zrezygnowano w niej ze zintegrowanej maszyny do pisania, wprowadzając w zamian panel z literami podświetlanymi żarówkami. Dla odróżnienia od pierwszych odmian A i B, Enigmę C nazywano czasem świecącą Enigmą. Enigma C była używana dość krótko, gdyż już w 1927 roku zastąpiono ją maszyną Enigma D, która poza Niemcami była wykorzystywana również w Szwecji, Holandii, Anglii, Japonii, Włoszech, Hiszpanii, Stanach Zjednoczonych i Polsce.
Kriegsmarine jako pierwsza w Niemczech przyjęła na wyposażenie maszyny Enigma oznaczone jako Funkschlüssel C (Koder radiowy C), którą wprowadzono do produkcji w 1925 a do służby w 1926[9]. Klawiatura maszyny i panel z lampkami zawierały 29 liter – A-Z, Ä, Ö i Ü – które były umieszczone alfabetycznie, a nie tak jak na standardowej klawiaturze niemieckiej QWERTZU[10]. Wirniki posiadały 28 znaków, a styki litery X były połączone na wprost, bez zamiany[11]. Do szyfrowania wybierano trzy z zestawu wirników pięciu typów[12], a walec odwracający mógł być zainstalowany w jednej z czterech pozycji oznaczonych jako α, β, γ i δ[13]. Niedługo potem w lipcu 1933 konstrukcja maszyny została zmodyfikowana[14].
Od 15 lipca 1928[15], niemiecka Reichswehra wprowadziła do służby własną wersję Enigmy oznaczoną jako Enigma G, która w lipcu 1930 została zmodyfikowana do wersji Enigma I[16]. Enigma I jest również nazywana jako Enigma Wehrmachtu lub Enigma Służb i była ona intensywnie używana także przez inne niemieckie organizacje wojskowe i rządowe (takie jak kolej niemiecka[17]), zarówno przed jak i w czasie II wojny światowej. Główną różnicą między handlową wersją Enigmy i Enigmą I było dodanie łącznicy kablowej do zamiany liter parami co zwiększało bezpieczeństwo szyfru maszyny. Inną różnicą było zastosowanie nieruchomego walca odwracającego, i przeniesienie wcięć zębatki obracającej wirniki z obudowy wirnika na pierścień alfabetyczny[18].
W 1930 OKH zasugerował Kriegsmarine zaadaptowanie Enigmy do własnych potrzeb, prezentując zwiększone bezpieczeństwo wersji z łącznicą kablową, oraz łatwiejszą łączność między rodzajami sił zbrojnych. Ostatecznie Kriegsmarine przyjęła Enigmę na wyposażenie w 1934 wybierając zmodyfikowaną wersję używaną przez siły lądowe oznaczoną Funkschlüssel M lub M3. Heeres i Luftwaffe wykorzystywały w tym czasie zestaw trzech typów wirników, ale Kriegsmarine dla zwiększenia bezpieczeństwa zamówiła zestaw 5 typów wirników, z których do zainstalowania można było wybrać trzy z nich[19].
W grudniu 1938 także inne formacje Wehrmachtu zaczęły wykorzystywać rozszerzony do pięciu typów zestaw wirników[16]. W 1938 Kriegsmarine wzbogaciła swój zestaw wirników o dodatkowe dwa typy i kolejny typ w 1939, co dało zestaw 8 typów wirników[19]. W sierpniu 1935 również Luftwaffe zaczęła stosować do komunikacji maszyny Enigma w wersji używanej przez siły lądowe[16]. Pierwsza czterowirnikowa Enigma została wprowadzona po raz pierwszy w Kriegsmarine 1 lutego 1942 z przeznaczeniem do łączności z niemieckimi okrętami podwodnymi. Oficjalnie maszyna nosiła oznaczenie M4, a sieć w której je wykorzystywano została oznaczona przez aliantów kryptonimami Triton (Tryton) oraz Shark (rekin). Dodatkowy, znacznie cieńszy, wirnik został umieszczony w maszynie wraz z nowym, również cieńszym, walcem odwracającym.
Zbudowano również o wiele bardziej skomplikowaną posiadającą 8 wirników maszynę szyfrującą ze zintegrowaną maszyną do pisania oznaczoną jako Enigma II. W 1933 polskie stacje nasłuchowe przechwyciły transmisje szyfrogramów między niemieckim dowództwem najwyższego szczebla, ale sama maszyna jako zbyt zawodna i podatna na częste zacięcia nie znalazła większego zastosowania i została wkrótce wycofana[20].
Służby wywiadu i kontrwywiadu wojskowego III Rzeszy Abwehra wykorzystywały maszynę w wersji Enigma G (nazywaną Abwehr Enigma). Ta wersja Enigmy posiadała 4 wirniki z wieloma wcięciami, które powodowały częstsze obroty podczas szyfrowania, ale nie posiadała przełącznicy kablowej. Dodatkowo maszyna posiadała licznik którego stan zwiększał się po każdym naciśnięciu klawisza, przez co zyskała dodatkową nazwę Zahlwerk Enigma (niem. zahlwerk – licznik).
Poza Niemcami Enigmę wykorzystywano także w innych krajach. Marynarka wojenna Włoch zaadaptowała do celów wojskowych handlową wersję maszyny nazwaną jako "Koder Marynarki D". Hiszpania wykorzystywała Enigmy podczas wojny domowej. W Szwajcarskiej armii i dyplomacji korzystano z maszyn Enigma oznaczonych jako model K lub Swiss K, które były bardzo podobne do handlowej wersji cywilnej Enigma D. Ta wersja maszyny została rozszyfrowana przez wiele zespołów kryptologów z Polski, Francji, Wielkiej Brytanii i Stanów Zjednoczonych (ostatnia nazwa kodowa to INDIGO). Enigma T oznaczona nazwą kodową Tirpitz została wyprodukowana specjalnie dla Japonii.
Ocenia się, że powstało około 100 tysięcy maszyn Enigma[21]; większość tych które ocalały po II wojnie światowej została sprzedana do państw rozwijających się, jako urządzenia wciąż zapewniające wystarczający poziom bezpieczeństwa transmisji[21]. Utrzymanie w tajemnicy umiejętności odszyfrowywania Enigmy umożliwiło wywiadowi brytyjskiemu i innym wywiadom państw zachodnich dostęp do kodowanych informacji, w tym poczty dyplomatycznej, państw, które nadal używały Enigmę.
Pierwsze próby złamania szyfru Enigmy podejmowali Francuzi, Anglicy i Polacy już pod koniec lat dwudziestych, jednak bez rezultatu. Głównym problemem dekryptażu było zastosowanie przełomowych na owe czasy szyfrów polialfabetycznych, w których każda litera tekstu jawnego szyfrowana jest za pomocą innej permutacji alfabetu, co pozwala ukryć własności językowe szyfrogramu.
W łamaniu szyfrów główną rolę odgrywali lingwiści, którzy w procesie kryptoanalizy wyłapywali charakterystyczne cechy języka, takie jak częstość powtarzania się liter, długość wyrazów itd. W przypadku zastosowania mechanicznych maszyn szyfrujących analiza lingwistyczna nie przynosiła żadnych rezultatów co wymusiło na kierownictwie Biura Szyfrów Oddziału II Sztabu Głównego zatrudnienie do pracy profesjonalnych matematyków.
W styczniu 1929 na Uniwersytecie Poznańskim zorganizowano kurs kryptologii przeznaczony głównie dla studentów matematyki znających język niemiecki. Wybór uczelni poznańskiej nie był przypadkowy, gdyż ze względu na położenie miasta znajomość niemieckiego była tam umiejętnością powszechną. Na kurs, którego wykładowcami byli dojeżdżający z Warszawy mjr Franciszek Pokorny, kpt. Maksymilian Ciężki oraz inż. Antoni Palluth, zostali skierowani trzej najzdolniejsi uczniowie profesora Zdzisława Krygowskiego – Marian Rejewski, Jerzy Różycki i Henryk Zygalski.
Marian Rejewski (1905-80) ok. 1932 r., kiedy "złamał" Enigmę | Henryk Zygalski (1908-78) | Jerzy Różycki (1909-42) |
Jesienią 1930 utworzono w Poznaniu filię Biura Szyfrów w której zatrudniono ośmiu najzdolniejszych absolwentów kursu kryptologii. Wśród zatrudnionych znalazł się także Marian Rejewski. Dwa lata później filia została rozwiązana, a Marian Rejewski, Jerzy Różycki i Henryk Zygalski stali się od 1 września 1932 pracownikami warszawskiego Biura Szyfrów Sztabu Głównego Wojska Polskiego. Od września 1932 roku Rejewski zaczął pracować nad Enigmą. Mocarstwa zachodnie tak mocno wątpiły w możliwość złamania algorytmu szyfrującego Enigmy, że w zasadzie zaprzestały jakichkolwiek prób. Dlatego między innymi, francuski wywiad przekazał plany budowy maszyn Enigma zdobyte około roku 1931 przez francuskiego agenta Hans-Thilo Schmidta (ps. Asché) Polakom, traktując te informacje jako bezwartościowe.
W grudniu 1932 udało się Rejewskiemu rozwiązać szyfr Enigmy, a w lutym 1933 zamówiono w Wytwórni Radiotechnicznej AVA stworzonej przez Ludomira Danielewicza wraz z inżynierem Antonim Palluthem, pracownikiem Sztabu Głównego, bratem Leonardem i Edwardem Fokczyńskim kopię niemieckiej maszyny szyfrującej, nazwanej "Lacida". Nazwa pochodzi od "La" – płk. Langera szefa całej operacji, "ci" – od nazwiska por. Ciężkiego i "da" – od Danilewicza. Od tego też czasu Polacy mogli odczytywać korespondencję niemiecką, choć nie było to proste, bowiem Niemcy stale udoskonalali zarówno maszynę, jak i sposoby szyfrowania.
Polacy opracowali niezwykle efektywne metody deszyfrowania Enigmy, wykorzystując w tym celu w sposób nowatorski istniejące teorie kombinatoryczne tzw. cykli i transpozycji. Do określania permutacji cykli wirników Enigmy wykorzystywano zaprojektowany przez Rejewskiego cyklometr i karty charakterystyk, które ze względu na zmianę kodowania wprowadzoną 15 września 1938 przestały być wykorzystywane. Do tego czasu ustalenie kodu dziennego przy pomocy powyższych narzędzi zajmowało około 15 minut[22].
Około października 1938 Rejewski opracował kolejne elektromechaniczne urządzenie nazwane bombą kryptologiczną, którego zadaniem było automatyczne łamanie szyfru Enigmy w oparciu o opracowaną teorię cykli. Bomba kryptologiczna składała się z sześciu sprzężonych polskich kopii Enigmy napędzanych silnikiem elektrycznym. W połowie listopada tego samego roku zbudowano sześć takich bomb, wykorzystywanych wyłącznie do rozszyfrowywania podwójnie szyfrowanych kluczy dziennych, nigdy zaś do dekodowania samych szyfrogramów, które dekodowano przy pomocy perforowanych płacht Zygalskiego opracowanych w celu znajdowania właściwego położenia wirników Enigmy. Jedna bomba kryptologiczna pozwalała na odkodowanie klucza dziennego w ciągu około dwóch godzin i zastępowała pracę około 100 ludzi[23].
W 1939 Niemcy kolejny raz zmienili sposób szyfrowania, co wymusiło konieczność zbudowania dalszych 54 bomb kryptologicznych (aby łączna ich liczba wynosiła 60) i opracowania 60 kompletów bardzo pracochłonnych w wykonaniu płacht Zygalskiego (jeden komplet liczył 26 płacht).
Inwestycja taka znacznie wykraczała poza możliwości finansowe polskiego wywiadu, dlatego postanowiono przekazać po jednym egzemplarzu polskiej Enigmy wraz z dokumentacją agencjom wywiadu Wielkiej Brytanii i Francji. Przekazanie odbyło się 25 lipca 1939 w Pyrach pod Warszawą, w których znajdował się polski ośrodek dekryptażu.
Pomimo skromnych funduszy zespół polskich kryptologów kontynuował pracę przy Enigmie doskonaląc matematyczne metody dekryptażu i wciąż rozszyfrowując korespondencję niemiecką. Wkrótce potem w Wielkiej Brytanii w ośrodku dekryptażu w Bletchley Park pod kierunkiem Alana Turinga i w oparciu o polskie materiały rozpoczęto prace nad dekryptażem Enigmy z wykorzystaniem rozbudowanych i zmodyfikowanych bomb kryptologicznych.
Po wybuchu wojny pracownicy Biura Szyfrów ewakuowali się przez Rumunię do Francji, i we francuskim ośrodku dekryptażu Bruno w Château de Bois-Vignolles w miejscowości Gretz-Armainvilliers koło Paryża nadal prowadzili prace kryptologiczne. 10 czerwca 1940 ze względu na bliskość frontu przeprowadzono ewakuację ośrodka Bruno, a 24 czerwca przewieziono kryptologów drogą lotniczą z Tuluzy do Algieru.
Po kapitulacji Francji na terenie administrowanym przez rząd Vichy w willi Domaine les Fouzes w miejscowości Uzès powoli odbudowano ośrodek kryptologiczny, któremu nadano nazwę Cadix. W Algierze pozostała filia tego ośrodka, którą kierował major Maksymilian Ciężki. Co kilka miesięcy kryptolodzy z obu ośrodków wymieniali się podróżując drogą morską z Francji do Algieru. Podczas jednej z takich wypraw w katastrofie statku Lamoriciere zginęło trzech polskich pracowników ośrodka Cadix, wśród nich Jerzy Różycki i oficer francuski.
Po wkroczeniu Niemiec do południowej Francji 9 listopada 1942 zaistniała konieczność ewakuowania ośrodka Cadix z rejonu Uzès.
Rejewski i Zygalski 29 stycznia 1943 przedostali się przez granicę francusko-hiszpańską, ale w Hiszpanii prawie natychmiast zostali aresztowani przez tamtejszą policję. Najpierw osadzono ich w więzieniu w Séo de Urgel, a 24 marca przeniesiono do innego więzienia w Lérida. Ostatecznie dzięki wstawiennictwu Polskiego Czerwonego Krzyża obaj kryptolodzy zostali 4 maja uwolnieni i odesłani do Madrytu[24]. Następnie Rejewski i Zygalski przedostali się do Portugalii skąd na pokładzie HMS Scottish popłynęli do Gibraltaru, a stamtąd samolotem Douglas DC-3 do Wielkiej Brytanii, gdzie dotarli 3 sierpnia 1943. 16 sierpnia obaj rozpoczęli pracę w jednostce radiowej Sztabu Naczelnego Wodza Polskich Sił Zbrojnych w Stanmore-Boxmoor pod Londynem, gdzie pracowali do zakończenia wojny.
Pozostali członkowie przedwojennego Biura Szyfrów – płk Gwidon Langer i mjr Maksymilian Ciężki – zostali złapani przez Niemców i wysłani do oflagu Schloss-Eisenberg. Inż. Antoni Palluth i Edward Fokczyński trafili do obozu koncentracyjnego Sachsenhausen, gdzie obaj ponieśli śmierć; Palluth podczas alianckiego nalotu, a Fokczyński z wycieńczenia.
Dzięki pracy kryptologów polskich, a później także brytyjskich z Blechley Park, oraz dzięki przechwyconym w międzyczasie egzemplarzom Enigmy, pod koniec wojny praktycznie cała korespondencja szyfrowana przy jej pomocy była odczytywana przez aliantów. Średnio na dekryptaż niemieckiego meldunku wystarczał jeden do dwóch dni.
Informacje o rozszyfrowaniu Enigmy były utajnione do lat 70. XX wieku. Później maszyny wyszły z użycia i wiele egzemplarzy trafiło do zbiorów muzealnych w Europie i Stanach Zjednoczonych. W Polsce ocalałe Enigmy znajdują się w Muzeum Techniki (wersja M4 przekazana z Bletchley Park) i Muzeum Wojska Polskiego (wersja wojskowa trójwirnikowa i handlowa) w Warszawie, Muzeum Wojska w Białymstoku i Muzeum Oręża Polskiego w Kołobrzegu. W Deutsches Museum w Monachium znajdują się dwa egzemplarze, z 3 i 4 wirnikami, oraz kilka wcześniejszych wersji cywilnych. Jeden eksponat 3 wirnikowy znajduje się w Muzeum Poczty w Berlinie[25]. Działający egzemplarz Enigmy znajduje się w National Cryptologic Museum NSA w Fort Meade w stanie Maryland, gdzie udostępniono maszynę zwiedzającym pozwalając własnoręcznie szyfrować i deszyfrować tekst. Inne egzemplarze znajdują się w muzeach Computer History Museum w Stanach Zjednoczonych, w Bletchley Park w Wielkiej Brytanii i Australian War Memorial w mieście Canberra w Australii. Wiele maszyn znajduje się także w rękach prywatnych kolekcjonerów[26].
Pojawiające się sporadycznie na aukcjach Enigmy osiągają ceny rzędu 20 tysięcy dolarów. Można również zakupić działające repliki maszyn w wersji M4 Kriegsmarine, oraz elektroniczne symulatory (tzw. Enigma-E), oraz oprogramowanie symulujące jej działanie.
Enigma wywarła znaczący wpływ na konstrukcje wielu maszyn szyfrujących głównie opartych na wirnikach. Brytyjska maszyna szyfrująca Typex została zainspirowana patentami Enigmy, także tymi, które nie zostały wykorzystane w najsłynniejszej wojskowej wersji maszyny. Rząd brytyjski w trosce o zachowanie tajemnicy nie ujawnił informacji o wykorzystanych rozwiązaniach i w związku z tym nie płacił żadnych tantiem autorom projektu. Japończycy wykorzystywali własną maszynę szyfrującą, która przez kryptologów amerykańskich została określona kryptonimem GREEN, która posiadała cztery wirniki, ale zainstalowane współpłaszczyznowo obok siebie (tzn. nie na jednej osi). Japońska maszyna nie znalazła jednak aż tak szerokiego zastosowania jak niemiecka. Amerykański kryptolog William Friedman zbudował własną maszynę oznaczoną jako M-325, odmienną konstrukcyjnie, ale kodującą w podobny do Enigmy sposób.
W 2002 zbudowano w Holandii unikalną maszynę[27], której konstrukcja opiera się na idei Enigmy, ale posiada 4 wirniki z zestawem 40 znaków każdy, co umożliwiło wykorzystanie również cyfr i znaków przestankowych. Każdy z wirników składa się z 509 części[28]
Holenderska maszyna szyfrująca Tatjany van Vark inspirowana Enigmą. Zbudowana w 2002 roku. Wirniki maszyny mają po 40 znaków w odróżnieniu od 26 oryginalnej Enigmy. |
Inne maszyny szyfrujące z czasów II wojny światowej: