logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów

TechEkspert 20 Lip 2026 20:48 816 5

TL;DR

  • Wyjaśnia działanie elektromechanicznej Enigmy z trzema wirnikami, łącznicą kablową i reflektorem oraz ścieżkę sygnału od klawiatury do lampki.
  • Pokazuje, że każda litera przechodzi przez wirniki w obie strony, a obrót bębenków po każdym znaku tworzy szyfr polialfabetyczny zamiast prostego podstawienia.
  • Podaje skalę klucza: 60 kombinacji wyboru wirników i ponad milion ustawień wirników, a łącznica z 10 przewodami dodaje 150 738 274 937 250 kombinacji.
  • Wskazuje, że brute-force byłby dziś łatwy obliczeniowo, ale praktycznie utrudnia go łącznica, a łamanie Enigmy oparto na kryptoanalizie, słabych procedurach operatorów i znanych formatach wiadomości.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
  • Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów
    Zapraszam do tego materiału jeżeli chcesz dowiedzieć się jak działała niemiecka maszyna szyfrująca Enigma lub jeżeli chcesz wzbogacić treść materiału swoją wypowiedzią. Enigmę można określić jako sprzętowy, elektromechaniczny szyfrator, który wykorzystywany był także w okresie II wojny światowej. Operator wpisywał tekst jawny na klawiaturze widocznej na zdjęciu poniżej (dolna część Enigmy przypominająca maszynę do pisania). Do każdej kolejnej litery Enigma przypisywała literę szyfrogramu, poprzez podanie zasilania na żarówkę pod okienkiem z symbolem litery (nad klawiaturą). Operator podczas szyfrowania wprowadzał literę na klawiaturze i odczytywał odpowiadającą podświetloną literę w polach nad klawiaturą. Odszyfrowanie polegało na wpisywaniu szyfrogramu na klawiaturze, natomiast kolejne litery tekstu jawnego były podświetlane żarówkami. Enigma nadawcy i odbiorcy musiała być skonfigurowana w taki sam sposób (mieć taki sam stan początkowy) aby szyfrogram udało się przekształcić w tekst jawny.

    Konstrukcja Enigmy była rozwijana na przestrzeni lat, w materiale jako przykład wykorzystamy wersję z trzema wirnikami i łącznicą kablową. W zbiorach ABW znajdziecie zdjęcia innych maszyn szyfrujących i oryginalnej Enigmy I z trzema wirnikami.

    Zapraszam do eksperymentu myślowego, czy byłby możliwy atak brute-force na Enigmę gdybyśmy mieli możliwość przeniesienia się w czasie i zabrania ze sobą np. Raspberry Pi 5?

    Spójrzmy na replikę Enigmy, u góry trzy wirniki i okienka z ustawioną konfiguracją początkową, poniżej podświetlane litery pod którymi Enigma uruchamiała świecenie odpowiedniej żarówki, w dolnej części klawiatura do wprowadzania liter a na samym dole przełącznica kablowa.

    Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów

    Replika Enigmy z trzema wirnikami.


    Nad podświetlanymi literami widoczne są trzy wirniki, każdy z wirników posiadał naniesione 26 liter i można było ustawić go w jednym z 26 położeń. Wirniki odgrywały bardzo istotną rolę w konstrukcji Enigmy. Styki na bokach wirników nie były połączone "na wprost" pozycje kolejnych liter były przenoszone na inne pozycje po drugiej stronie wirnika, dzięki temu litery były zamieniane na inne. Po jednej stronie wirnika znajdują się płaskie styki a po drugiej sprężynujące piny, to zapewnia przepływ prądu przez połączenia tworzone między wirnikami.

    Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów

    Wirnik Enigmy, źródło wikipedia, autor Bob Lord, GNU


    Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów

    Wirnik Enigmy, źródło wikipedia, autor Bob Lord, GNU


    Działanie maszyny było następujące:

    START

    przycisk z literą:
    -przyciskamy klawisz z literą np. "A" sygnał elektryczny trafia do styku odpowiadającego literze "A" i przekazywany jest na skrajny prawy wirnik

    wirniki:
    -prawy wirnik tak jak pozostałe został ustawiony w wybranym przez nas położeniu, dodatkowo w wirniku kolejność połączeń między stykami z prawej nie odpowiadają 1:1 kolejności połączeń do styków z lewej
    -w zależności od położenia wirnika i wewnętrznych połączeń sygnał ze styku "A" po prawej stronie prawego wirnika trafia na styk na pozycji odpowiadający innej literze np. "B" po lewej stronie wirnika
    -sygnał z pozycji litery "B" trafia na środkowy wirnik i w zależności od jego położenia (i wewnętrzne połączenia) trafia na położenie związane z inną literą np. "J"
    -sygnał z pozycji litery "J" trafia na lewy wirnik i w zależności od jego położenia (i wewnętrzne połączenia) trafia na położenie związane z inną literą np. "Z"

    reflektor:
    -sygnał trafia na tzw. reflektor, który zawraca sygnał na położenie innej litery i przykładowo sygnał przychodzi z położenia "Z" a wraca położeniem "T" ponownie na wirnik lewy

    odwrotne przejście przez wirniki:
    -sygnał z nieruchomego reflektora trafia na wirniki w odwrotnej kolejności: lewy-środkowy-prawy i np. z pozycji "T" na reflektorze pojawia się na pozycji "F" na prawych stykach prawego wirnika.

    podanie zasilania do odpowiedniej żarówki:
    -sygnał z pozycji "F" trafia do żarówki podświetlającej literę "F" (sygnał wejściowy z litery "A" nie uruchamia podświetlenia tej litery gdyż wciśnięty klawisz rozłącza obwód żarówki dla litery wejściowej)

    łącznica kablowa:
    -na przodzie Enigmy znajduje się przełącznica, która dodatkowo zamienia litery, dla ułatwienia analizujemy przypadek gdzie nie zostały włożone przewody zamieniające, gdyby np. został włożony przewód zamieniający "F" z "T" to wynikiem byłoby "T".

    Ścieżka sygnału wyglądała tak:
    litera z klawiatury->łącznica kablowa->pozycja litery na nieruchomym styku->wirniki->reflektor->wirniki w drugą stronę->nieruchomy styk odpowiadający literze->łącznica kablowa->lampka podświetlająca literę

    KONIEC

    Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów

    Łącznica kablowa na przodzie repliki Enigmy


    Co uzyskaliśmy?
    Przy określonych ustawieniach maszyny litera "A" została zamieniona na "F", wygląda to na prosty monoalfabetyczny szyfr podstawieniowy, ale... tak nie jest, wirniki obracają się przy wprowadzanych kolejnych literach, więc każda kolejna litera zamieniana jest na podstawie innych wzajemnych ustawień wirników. Uzyskujemy szyfr polialfabetyczny.

    W uproszczeniu wirniki obracają się podobnie jak w analogowym liczniku kilometrów lub liczydle indukcyjnego licznika energii elektrycznej. Po pełnym obrocie prawego wirnika przesuwa się o jedno położenie wirnik środkowy. Po pełnym obrocie wirnika środkowego obraca się o jedno położenie wirnik lewy. Pomijam tutaj występujący czasami podwójny przeskok wirnika oraz momenty przesunięć wirników inne niż w mechanicznych licznikach (przejście z 9 na 0), a także późniejsze komplikacje wprowadzane przez projektantów Enigmy. Ważne aby pamiętać o początkowej konfiguracji położeń wirników oraz przełącznicy zamieniającej litery, to początkowe ustawienie stanowi klucz wykorzystywany przez maszynę. Każda kolejna wprowadzona litera zmienia ustawienie wirników, a co za tym idzie inny sposób zamiany litery wprowadzonej na klawiaturze na literę podświetloną powyżej.

    Przełącznica wykorzystywana jest dwukrotnie:
    -zamienia literę przychodzącą z klawiatury
    -zamienia literę wychodzącą z wirników

    Stan przełącznicy nie zmienia się (w przeciwieństwie do stanu wirników) podczas wprowadzania kolejnych liter.

    Procedura szyfrowania i deszyfrowania jest taka sama. Enigma zawsze zamienia wprowadzoną literę na inną.

    Wybór wirników i ich kolejności też jest elementem klucza szyfru

    Trzy wirniki wybieraliśmy z zestawu pięciu wirników, każdy z nich miał inne wewnętrzne połączenia mieszające litery.
    Kolejność umieszczenia wirników w Enigmie również jest elementem klucza (początkowego ustawienia maszyny)

    Podsumowując na stan początkowy składa się:
    -wybór wirników
    -kolejność umieszczenia wybranych wirników
    -położenie początkowe wirników
    -przewody umieszczone w przełącznicy zamieniającej litery

    Jak ulepszano Enigmę?
    -Z czasem pojawił się liczniejszy zestaw wirników.
    -Pojawił się czwarty nieruchomy podczas szyfrowania wirnik z ustawianym położeniem początkowym (zastosowano cieńsze reflektory i możliwe było umieszczenie czwartego wirnika)
    -Pojawiły się różne wersje reflektorów (różne schematy par liter)
    -Pojawił się reflektor z konfigurowalnymi parami liter
    -Pojawił się 40-sto pozycyjny przełącznik zamiast okablowania przełącznicy kablowej
    -Pojawiły się wirniki z pierścieniami, których ustawienie na jeden z 26 sposobów modyfikowało momenty obrotu wirników i przesuwało okablowanie wirnika względem znaczników liter

    Atak siłowy na Enigmę z użyciem współczesnego komputera
    Załóżmy, że przenosimy się w czasie i zabieramy ze sobą Raspberry Pi 5, smartfon lub zwyczajnie współczesny laptop. Ustawienie początkowe to 3 wirniki po 26 znaków daje to 26x26x26. Trzy zagnieżdżone pętle w Pythonie + funkcja ewaluacji i otrzymujemy wynik szybciej niż czas potrzebny do zatopienia U-Boota :) gdyż 26³ daje nam jakieś marne 17576 kombinacji. Po chwili zauważamy, że potrzebny jest jeszcze wybór 3 wirników z 5 i ich ułożenie w dowolnej kolejności czyli 60 możliwych kombinacji. Otrzymujemy 60x26³ co daje już ponad milion kombinacji ale nadal jest to czas pracy współczesnego komputera krótszy niż potrzebny na zestrzelenie Messerschmitta ;)
    Oczywiście bardzo upraszamy szacowanie, jednak pokazuje to pewną skalę złożoności problemu. Samo przetestowanie wszystkich ustawień wirników byłoby dla współczesnego komputera bardzo łatwe. Problemem pozostaje rozpoznanie, które z otrzymanych odszyfrowań/ustawień wirników jest poprawne.

    Pozostaje nam przełącznica.
    Wybieramy przypadek gdzie stosowane było 10 przewodów, obejmujących 20 liter, 6 liter pozostaje bez modyfikacji. Czyli wybieramy 10 liter zamienianych i dla każdej wybieramy literę na jaką będziemy ją zamieniali. Np. łącząc przewodem F z T zamieniamy te dwie litery. I tutaj zaskoczenie, ta niepozorna (wręcz beznadziejnie wyglądająca) przełącznica na froncie Enigmy dodaje ponad 150 bilionów (150 738 274 937 250) kombinacji!

    Atak bruteforce nie ma dużego sensu... ale szybki komputer w rękach kryptologów łamiących szyfr Enigmy znacząco przyspieszyłby ich pracę.

    Jak szyfr Enigmy został złamany?

    Warto wspomnieć o elementach i błędach ułatwiających łamanie szyfru:
    -operatorzy wybierali słabe ustawienia początkowe wirników np. AAA, ABC itp.
    -w komunikatach często występowały identyczne formaty np. "DO", "POGODA" to zapewniało znany, przewidywalny tekst jawny
    -klucz wiadomości przesyłany był podwójnie np. ABCABC to dla operatorów było wygodne jako samo weryfikująca się wiadomość, jednak znacząco ułatwiało analizę szyfrogramów
    -Enigma nigdy nie szyfrowała litery na taką samą np. "A"-"A" to zmniejszało przestrzeń złożoności, a wynikało z zastosowania reflektora

    Znany lub przewidywalny tekst jawny ułatwiał testowanie pomysłów ataków na szyfrogramy. Przesyłanie powtórzonego ciągu ustawień początkowych dla wirników było błędem, to pozwalało kryptologom na przyjmowanie stałych założeń podczas prób odzyskania położeń wirników. Z punktu widzenia operatora gdy otrzymał klucz wiadomości np. UWE jako ciąg UWEUWE to była to dla niego weryfikacja, że wiadomość została odebrana prawidłowo oraz, że prawidłowo przeprowadził deszyfrowanie. Dla kryptologów był to sygnał, że znaleźli potencjalnie prawidłowe ustawienie początkowe wirników.

    Bez kryptoanalizy, nowatorskich rozwiązań i genialnych pomysłów złamanie szyfru Enigmy nie byłoby możliwe.
    Polscy kryptolodzy Marian Rejewski, Henryk Zygalski, Jerzy Różycki do łamania szyfru Enigmy podchodzili w bardzo nowatorski sposób. Pracując na modelu matematycznym Enigmy można było dostrzegać słabości szyfru i sposoby ograniczania złożoności operacji. Przykładowo w procesie ustalania położenia początkowego wirników (których stan zmieniał się przy każdej kolejnej literze) warto było początkowo ignorować ustawienia łącznicy kablowej. Ustawienia łącznicy kablowej były stałe w procesie szyfrowania więc można było pracować z symbolicznym opisem a finalnie rozpracować ustawienia przełącznicy aby dojść do tekstu jawnego. To zupełnie inne podejście niż w ataku brute-force gdzie łącznica kablowa wprowadzała ogromne ilości kombinacji do sprawdzenia. Rejewski patrzył na Enigmę jak na kompozycję permutacji wnoszonych przez:
    -przełącznicę
    -trzy wirniki
    -reflektor
    -trzy odwrotne permutacje wirników
    -ponownie przełącznicę
    Przy czym dla wirników występują permutacje cykliczne podczas przekształcania kolejnych liter.

    Polscy matematycy rozwijali swoje narzędzia przyspieszające łamanie szyfrów np. Płachty Zygalskiego można potraktować jako obliczenia wstępne, które przyspieszały dalsze powtarzalne prace, fizycznie były one mechanicznym filtrem logicznym, który przepuszczał światło w określonych miejscach. Elektromechaniczny cyklometr dedykowane urządzenie wspomagające tworzenie katalogu kart charakterystyk. Elektro-mechaniczna bomba kryptologiczna była koncepcją mechanicznego/automatycznego szukania ustawień wirników, można powiedzieć że był to specjalizowany mechaniczny akcelerator obliczeń ręcznych. Bomba kryptologiczna działała dla ściśle określonych warunków, dopiero późniejsze lata przyniosły urządzenia programowalne i bardziej elastyczne, przeznaczone do łamania szyfrów innych niż Enigma np. Colossus.

    Niemieccy konstruktorzy Enigmy najbardziej obawiali się przechwycenia egzemplarza maszyny szyfrującej, tym czasem szyfr Enigmy został złamany przy pomocy modelu matematycznego i przechwyconych transmisji radiowych. Obecnie w kryptografii nawet pełna znajomość sposobu działania szyfru nie może go kompromitować, tajny klucz i silny szyfr ma zapewniać poufność naszych danych. Na przestrzeni lat pojawiły się szyfry strumieniowe, szyfry blokowe a także kryptografia asymetryczna (z kluczem publicznym i prywatnym). Kryptograficzne funkcje skrótu to element mechanizmów zapewniających integralność przesyłanych informacji a także pozwalający na określenie ich autentyczności.

    Co myślicie o maszynie szyfrującej Enigma?
    Z jednej strony to prymitywne urządzenie elektromechaniczne, z drugiej strony jest tam zastosowanych wiele ciekawych pomysłów, konstruktorzy popełnili też kilka błędów a operatorzy także osłabiali siłę szyfru Enigmy. Widoczny był wyścig między projektantami Enigmy a matematykami łamiącymi szyfrogramy. Bardzo duże wrażenie zrobił na mnie sposób zbudowania zespołu kryptologów oraz genialne metody kryptoanalizy. Matematyczny opis działania Enigmy i zbudowanie narzędzi przyspieszających łamanie szyfrów, było strzałem w dziesiątkę.

    Jak oceniacie spojrzenie na Enigmę oczami elektronika?
    Zastanawiam się czy były możliwości przejścia w urządzeniach kryptologicznych do łamania szyfru Enigmy z elektromechaniki na lampy elektronowe?
    W Polsce były one produkowane przed II wojną światową

    Na elektroda.pl znajdziecie Elektroniczną wersję maszyny szyfrującej Enigma.

    Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów

    Enigma z czterema wirnikami, źródło wikipedia, autor Szymon Staniec, CC 4.0

    Fajne? Ranking DIY
    O autorze
    TechEkspert
    Redaktor
    Offline 
    W moich materiałach znajdziecie testy i prezentacje sprzętu elektronicznego, modułów, sprzętu pomiarowego, eksperymenty. Interesuje mnie elektronika cyfrowa, cyfrowe przetwarzanie sygnałów, transmisje cyfrowe przewodowe i bezprzewodowe, kryptografia, IT a szczególnie LAN/WAN i systemy przechowywania i przetwarzania danych.
    Specjalizuje się w: mikrokontrolery, rozwiązania it
    TechEkspert napisał 7283 postów o ocenie 5665, pomógł 17 razy. Jest z nami od 2014 roku.
  • #2 21942492
    zgierzman
    Poziom 31  
    Posty: 1787
    Pomógł: 108
    Ocena: 1573
    TechEkspert napisał:
    Zapraszam do eksperymentu myślowego, czy byłby możliwy atak brute-force na Enigmę gdybyśmy mieli możliwość przeniesienia się w czasie i zabrania ze sobą np. Raspberry Pi 5?


    Musisz jeszcze podać ramy czasowe :-)

    Atak siłowy jest możliwy, ale na RPi trwałoby to raczej za długo. Dawno temu miałem na swoim PC zainstalowanego klienta tego projektu:
    https://www.bytereef.org/m4_project.html
  • #3 21942538
    _ACeK_
    Poziom 15  
    Posty: 187
    Pomógł: 6
    Ocena: 207
    :smile: Pewnie jestem bardzo nudny z ciągłym zamieszczaniem filmów z TY ale to kopalnia wiedzy 😛






    🤔 Tu trochę jak się dobrać do rozkodowania :cunning:

    Btw na YT jest pełno wspaniałych informacji 8-)
  • #4 21942619
    misiek1111
    Poziom 37  
    Posty: 4088
    Pomógł: 324
    Ocena: 1091
    A co z kompatybilnością wsteczną?
    Skoro powstawały nowsze zmienione wersje, to chyba nowy szyfr nie mógł zostać odkodowany na starszej wersji Enigmy (?)
  • #5 21942692
    TechEkspert
    Redaktor
    Posty: 7283
    Pomógł: 17
    Ocena: 5665
    Nie podałem rzeczywiście ram czasowych ataku brute-force jednak bez użycia skrótów, jakie zapewniały pomysły kryptologów czas ten był nieakceptowalny :)

    Dziękuję za uzupełnienie tematu materiałami filmowymi.

    Co do kompatybilności wstecznej to wersja z 3 wirnikami nie odkoduje szyfrogramu wykonanego na 4 wirnikach, natomiast w wersji 4 wirnikami, gdyby wyjąć czwarty wirnik, zdemontować cienki reflektor i zamontować reflektor gruby to byłaby szansa na downgrade do wersji z 3 wirnikami.
  • #6 21942730
    gregor124
    Poziom 29  
    Posty: 1651
    Pomógł: 99
    Ocena: 873
    >>21942538
    Nie ma to jak filmiki z YouTube i czerpanie z nich "wiedzy" ;)

    Najbardziej rozbawiło mnie, że marynarka używała innego szyfru, bo Enigma miała 4 rotory i potrzeba było ją łamać na nowo ;)
    Polska maszyna dekryptująca "Bomba" także mogła służyć do rozpracowania Enigmy po dodaniu dodatkowych wymiennych 2 bębnów, ale trzeba było zwiększyć ilość rotorów w maszynie dekryptażowej o x10. Na co nie było ani czasu, ani potrzeby, ponieważ 4-rotorowa była używana przez okręty podwodne i dopiero od roku 1942, więc Polacy nie mieli szans ani możliwości przechwytywać takich komunikatów.

    Zresztą ilość rotorów wcale drastycznie nie zmieniała liczby kombinacji, za to znacznie zmniejszała niezawodność maszyny.
    Znacznie lepsze rezultaty i szybciej dawała Niemcom tablica krosownicza, choć i jej możliwości w pełni nie były wykorzystywane.

    Co ciekawe, już w 1929 testowano maszynę z 8 rotorami, ale szybko z niej zrezygnowano na rzecz dodania tablicy krosowniczej.
    Tak naprawdę Enigma to chyba nigdy nie została w pełni złamana, a aby znaleźć ustawienia rotorów, należało przeanalizować kilka depesz lub trafić na taką, która akurat zawierała słowa, których używano jako wzorzec.
    Do dziś nie odszyfrowano np. ostatniej depeszy nadanej z okrętu podwodnego w ostatnich dniach wojny.
    Proponuję zauważyć, że Enigma używała 26 liter, choć j. niemiecki używa 30, dodatkowo nie ma klawiszy spacji, cyfr i znaków interpunkcyjnych.
    Te informacje były zastępowane albo wyrazami, albo rzadziej stosowanym znakiem lub kilkoma znakami.

    Tak naprawdę najsłabszym punktem tej maszyny była jej masowość stosowania, co dawało wiele komunikatów do analizowania.


    Jak działała elektromechaniczna maszyna szyfrująca Enigma - opis dla elektroników, inżynierów
    Pomogłem? Kup mi kawę.
REKLAMA