Enigma (naprava)
Enígma je električna naprava za šifriranje sporočil. Uporabljale so jo nemške oborožene sile med 2. svetovno vojno. Beseda enigma izhaja iz grščine (starogrško Αίνιγμα, aínigma) in pomeni uganka. Simbolično pa naj bi bila Enigma uganka za angleške dekripterje tudi zaradi skladbe z istim imenom angleškega skladatelja Elgarja.
Osnove
urediTo napravo za šifriranje je razvil nemški elektroinženir Arthur Scherbius (1878-1929). Za izdelek je 23. februarja 1918 prejel patent (DRP 416219). Za izdelavo teh naprav so 9. julija 1923 v Berlinu ustanovili podjetje Chiffriermaschinen-Aktiengesellschaft. Proti koncu leta 1920 so oborožene sile začele kazati zanimanje za to napravo, kasneje pa je izginila s civilnega trga.
V času do konca vojne 1945 in še kasneje so prihajali v uporabo številni različni modeli Enigme. Najbolj razširjena je bila ENIGMA I, ki so jo od leta 1930 uporabljale nemške oborožene sile (Reichswehr) in kasneje Wehrmacht. Verjetno je bila med 2. svetovno vojno najbolj uporabljan sistem šifriranja sporočil. ENIGMA I je na prvi pogled videti kot pisalni stroj. Bistveni sestavni deli so tipkovnica, zbir zamenljivih šifrirnih kolutov in polja z lučkami za prikaz in stikalna plošča. Koluti so bistveni za šifriranje. Vsak kolut ima na obeh straneh po 26 električnih spojev (po enega za vsako črko nemške abecede), ki so vsak posebej na tajen način povezani med seboj. Na primer: vhodni spoj za črko A je na izhodu povezan s spojem za črko G in tako naprej. Ko se pritisne tipka na tipkovnici, steče tok iz vgrajene tipkovnice preko kolutov do polja z lučkami. Prižgana lučka je šifra za vneseno črko. Ker se kolut po vsakem pritisku na tipkovnici zavrti, dobi ista črka na različnih mestih odprtega besedila različne šifre. Podobno kot števec kilometrov v avtomobilu.
Če bi odtipkali SSSR, bi dobili kot šifrirano besedilo na primer HUTW. Važno in za šifriranje izredno pomebno je, da se za razliko od enoabecedne zamenjave (kjer se ista črka odprtega besedila vedno prevede v isto črko šifriranega besedila) pri ENIGMI po vsaki vneseni črki spremeni sistem zamenjave (poligrafska substitucija).
O avtorju naprave za šifriranje
urediArthur Scherbius se je rodil leta 1878 v Frankfurtu, umrl pa leta 1929 v Berlinu. Študiral je elektrotehniko na tehniški fakulteti v Münchnu, dokončal pa jo je v Hannovru, leta 1903. Po končanem faksu je delal v več nemških in švicarskih podjetjih. Scherbius je naredil številne izume ( npr. asinhroni motor, električne blazine). Scherbius je zaprosil za patent šifriranega stroja, ki ga je vložil dne 23. februarja 1918. Šifrirni stroj je temeljil na vrtenju žičnih koles, kar je zdaj znano kot šifrirna koluta. Šifriran stroj firme, ki se je tržil pod imenom Enigma, je bil prvotno "dejaven" na komercialnem trgu, ampak so ga pozneje iz trga umaknili. Bilo je več poslovnih modelov in eden od njih je bil sprejet s strani nemške mornarice leta 1926.
Zgradba
urediDesno od vrtečih se kolutov je vhodni kolut (stator), ki se ne vrti in je s 26 žicami (na skici so samo 4) povezan s tipkovnico. Levo od vrtečih se kolutov je povratni kolut /reflektor)(UKW), ki tudi miruje (povratni kolut - reflektor je izumil (DRP 452 194, prijavljen 21. marca 1926) Willi Korn, sodelavec Scherbiusa). Le-ta ima samo na desni strani 26 spojev (narisani so samo štirje). Ti spoji so med seboj parno povezani. Povratni kolut povzroči, da se tok, ki je prišel z desne na levo, sedaj vrne na levo do vhodnega koluta, kjer zapusti nabor kolutov.
Tabela prikazuje strogo zaupen sistem povezave petih vrtečih se šifrirnih kolutov (I do V) za trokolutno Enigmo in obeh povratnih kolutov (B in C).
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 I 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 J II 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 E III 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 O IV 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 B V 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
UKW B AY BR CU DH EQ FS GL IP JX KN MO TZ VW UKW C AF BV CP DJ EI GO HY KR LZ MX NW QT SU
Na čelni strani naprave je stikalna plošča s 26 dvopolnimi vtičnicami (za vsako črko 1). Tok steče po pritisku na tipko najprej skozi te vtičnice, ko pa zapusti zbir kolutov, steče ponovno skoznje. Končno se prižge ena od 26 lučk s šifriranimi črkami.
Delovanje
urediTok, ki ga daje baterija po pritisku na tipko (na primer A), steče preko stikalne plošče z vtičnicami. Če je črka A povezana z drugo črko, se črka zamenja (na primer s H), če ni povezana, ostane črka nespremenjena. Tok priteče na vhodni kolut. Pri nadaljnji razlagi se besedilo sklicuje na sliko »Pretok toka« (najprej samo na zgornji del). Prikazani so vrteči se šifrirni koluti (rotorji) in mirujoč povratni kolut (reflektor). Zaradi preglednosti je abeceda okrnjena na 8 črk (A ... H).
Tok steče preko vhodnega koluta (v skici ni prikazan) na vhodni spoj prvega (desnega) koluta. Strogo zaupne električne povezave povzročijo, da tok, ki je vstopil na desni pri vhodnem spoju A, zapusti kolut na levi strani na spoju B. Tako se pretvori A v B.
Sedaj vstopi tok v srednji kolut pri spoju B. Ker je možno, da je vhodni spoj povezan z istoimenskim izhodnim spojem, zapusti tok srednji kolut na spoju B. V tretji kolut vstopi tok pri spoju B in ga zapusti pri spoju D.
Tok je prišel skozi vse tri vrteče šifrirne kolute in je vstopil v povratni kolut (reflektor). Ta ima spoje samo na desni strani, med seboj so parno povezani. Tu se na primer zamenja črka D s črko E.
Sedaj teče tok še z desne na levo in se glede na povezave črke na vsakem kolut zamenjajo (E → C, C → F, F → G). Desni kolut zapusti tako na spoju G.
Nadaljnji tok v skici ni prikazan, ga je pa možno enostavno pojasniti. Ko zapusti vrteče kolute, preko vhodnega koluta steče nazaj v stikalno ploščo z vtičnicami. Če je črka povezana z drugo črko, se črka zamenja, če ni povezana, se ne spremeni. Končno zasveti ena od lučk, ki pomeni šifro za vneseno črko. Stikalna plošča ni smela zamenjati iste črke z isto, niti ne s sosednjo. Npr.: črka R ni smela biti sama črka R, niti Q niti S.
Po pritisku na tipko zavrti desni kolut za eno mesto (srednji kolut se zavrti šele po 26 premikih desnega, levi po 26 premikih srednjega koluta). Če bi ponovno pritisnili tipko A, steče tok po drugi poti skozi desni kolut in zato tudi po drugih poteh skozi ostale kolute. V spodnji polovici skice je prikazan potek po premiku desnega koluta za eno lego navzdol. Sedaj se A šifrira kot C.
Uporaba
urediPri ENIGMI I so bili najprej na razpolago trije, od leta 1939 pa pet šifrirnih kolutov (rotorjev) s tem, da se je število možnih kolutov (rotorjev) s petih povečalo na osem. Nemška vojna mornarica je že od samega začetka uporabljala štiri rotorje. V tajni kodni knjigi je bilo za vsak dan zapisano, katere kolute in v kakšnem vrstnem redu je potrebno vstaviti. Rotorji (koluti) so bili označeni z rimskimi številkami od I do V, kasneje do VIII. V tej kodni knjigi je vnos I IV II pod navedbo položaj kolutov pomenil, da se na levi strani vstavi kolut I, na sredini kolut IV in na desni kolut II. Nikoli ni smel en šifrirni rotor, na primer I., ostati na istem mestu dva dni. Menjavo so opravili vsak dan natanko ob polnoči.
Kakovost šifriranja
urediKo je leta 1918 Scherbius prijavil ENIGMO (še med 1. svetovno vojno) patentnemu uradu, je bila to izredno kakovostna in napredna naprava. Osnovni napredek je bil v uvedni strojnega namesto ročnih sistemov šifriranja. Po pravici je veljalo, da se šifre ne da »zlomiti« s tedaj običajnimi ročnimi postopki, ki so bili večinoma osnovani na jezikovnih posebnostih. Tako je ostalo do 30. let, torej več kot 10 let.
Kriptografska moč ENIGME je v vrtečih se šifrirnih kolutih, tako da se ista črka vsakič zašifrira z drugo pretvorbo. Bistveno za ohranitev tajnosti sporočil je zaupnost žičnih povezav v šifrirnih kolutih in število kolutov v naboru. Število kolutov je bistveno za kakovost šifriranja, zato so bile štirikolutne ENIGME M4, ki so jih uporabljali v podmornicah, bistveno bolj varne od običajnih trokolutnih ENIGEM I. Kar solidno varnost so pomenile petkolutne ENIGME, katere je sprva uporabljala Luftwaffe, kasneje pa vsi.
Kabelske povezave stikalne plošče na prednji strani naprave naj bi povečale varnost tajnosti sporočila, vendar je to dodatno zaščito dokaj enostavno »zlomiti«, ker ostanejo povezave ves čas šifriranja enega sporočila enake.
Začetna nastavitev kolutov je za zaščito skoraj brez pomena.
Število možnih šifer
urediObmočje možnih šifer se lahko izračuna iz posameznih komponent in števila možnih nastavitev. Dnevna nastavitev za ENIGMO je bila sestavljena iz štirih delnih ključev, ki so bili v strogo tajnih tabelah, ki so veljale en mesec. Tu je primer za 3 dni v nekem mesecu:
------------------------------------------------------------------------- |Dan |UKW| Položaj kolutov |Položaj obr.| Povezave na stikalni plošči | ------------------------------------------------------------------------- | 31 | B | I IV III | 16 26 08 | AD CN ET FL GI JV KZ PU QY WX | | 30 | B | II V I | 18 24 11 | BN DZ EP FX GT HW IY OU QV RS | | 29 | B | III I IV | 01 17 22 | AH BL CX DI ER FK GU NP OQ TY |
Na primer za 31. dan je potrebno vstaviti povratni kolut B (ENIGMA I je imela na razpolago dva povratna koluta (reflektorja) B in C). Kot vrtljive kolute se vzame kolute I, IV in III (kolut I je levi). Predhodno je potrebno nastaviti obroče. S tem se določi pri kateri črki se izvrši prenos na naslednji kolut. Uporabljala se je tabela (A = 01, B = 02, ... Z = 26. Na koncu je potrebno povezati s kabli še 10 vtičnic na stikalni plošči (A z D, C z N in tako dalje).
Kot zadnje je potrebno nastaviti kolute v začetni položaj in s tem je naprava pripravljena za delo.
Število šifer izhaja iz naslednjih štirih faktorjev:
- Položaj šifrirnih kolutov
Izbere se tri od 5 vrtljivih kolutov in enega od dveh reflektorjev (povratnih kolutov). To da 2·3·4·5 = 120 možnosti, kar je približno 7 bitov.
- Nastavitev obročev
Obstaja 26 nastavitev koluta za srednji in desni kolut, nastavitev levega je brez pomena. Skupaj je možnih 26 2 = 676 nastavitev. To da približno 9 bitov.
- Začetna nastavitev.
Za vsak kolut je možnih 26 začetnih položajev (povratnega koluta - reflektorja - se ne da nastaviti), kar da 263 = 17.576 nastavitev kar ustreza 14 bitom.
- Povezava stikalne plošče
Lahko se poveže največ 13 parov vtičnic pri 26 črkah. Za prvo povezavo je 26 možnosti za prvi konec in 25 možnosti za drugi konec. Ker ni pomembno, kateri konec je vstavljen prej in kateri kasneje, ostane samo polovica možnosti. Za prvi kabel je tako 26·25 / 2 = 325.
Za drug povezovalni kabel je analogno 24·23/2 = 276 možnosti. Na splošno velja, da je za n-to povezavo s kablom (26 - 2n + 2)(26 - 2n + 1) / 2 možnosti.
Številka Možnosti za Možnih Povezave prvi konec drugi konec povezav 0 1 1 1 1 26 25 325 2 24 23 276 3 22 21 231 4 20 19 190 5 18 17 153 6 16 15 120 7 14 13 91 8 12 11 66 9 10 9 45 10 8 7 28 11 6 5 15 12 4 3 6 13 2 1 1
Načelno je število kombinacij za n povezav produkt možnosti za vse n do vključno tega. Ker pa ni važno po kakšnem vrstnem redu se vnašajo povezave, je enačba za n povezav:
To enačbo lahko pretvorimo v:
Vtičnica -------------- Možnosti za ---------------------- Številka Točno n Skupaj za do n povezave povezav povezav 0 1 1 1 1 325 325 326 2 276 44850 45176 3 231 3453450 3498626 4 190 164038875 167537501 5 153 5019589575 5187127076 6 120 100391791500 105578918576 7 91 1305093289500 1410672208076 8 66 10767019638375 12177691846451 9 45 53835098191875 66012790038326 10 28 150738274937250 216751064975576 11 15 205552193096250 422303258071826 12 6 102776096548125 525079354619951 13 1 7905853580625 532985208200576
Pri ENIGMI I se je praviloma uporabljalo točno 10 povezav. Po zgornji tabeli je to 150.738.274.937.250 (150 bilijonov) možnosti, kar ustreza 47 bitom.
- Skupno število možnih šifer
Število možnih šifer za standardno ENIGMO I z izbranimi tremi vrtljivimi koluti (izmed petih), enim od dveh reflektorjev, uporabi desetih povezav se lahko izračuna kot produkt 120 položajev vrtljivih kolutov, 676 nastavitev obročev, 17.576 osnovnih nastavitev in 150.738.274.937.250 možnih povezav, kar je:
120 · 676 · 17.576 · 150.738.274.937.250 = 214.917.374.654.501.238.720.000
kar je približno 2,149 · 10²³ možnosti ali 77 bitov.
Število možnih šifer je izredno veliko in se lahko primerja s sodobnimi sistemi kriptografije. Sistem šifriranja DES (Data Encryption Standard), ki je bil konec 20. stoletja standard, ima velikost števila ključev samo 56 bitov. Naslednik sistema DES Advanced Encryption Standard (AES), imenovan tudi Rijndael, uporablja praviloma 128 bitov in velja za popolnoma varnega.
Velikost ključa in s tem število možnih ključev je nujno potreben pogoj za varnost sistena šifriranja, ni pa zadosten. Enolična pretvorba črk v druge črke ima 26! možnosti (približno 4000 · 1023, kar ustreza približno 88 bitov), vendar nihče ne trdi, da je ta sistem varen, saj se ga da dokaj hitro »zlomiti« tudi z ročnimi metodami.
Tudi pri ENIGMI predstavljajo povezave na stikalni plošči med vtičnicami fiksno enostavno enolično pretvorbo črk. Ta del ENIGME se lahko »zlomi« z uporabo inteligentne kriptoanalitske metode (Turingove bombe) in tako se lahko praktično popolnoma izniči. Tako se lahko faktor 150.738.274.937.250 črta iz izračuna dolžine ključa. Nastavitev obročev prav tako zelo malo prispeva k varnosti ključa in tudi faktor 676 se lahko črta. Alan Turing je stikalno ploščo ocenil kot nepotrebno in je po njegovem bolj služila kot strah nevednežem.
Tako ostane samo 120 · 17.576 = 2.109.120 možnosti (21 bitov). To pa je število, ki je bilo že med drugo svetovno vojno obvladljivo s tedanjo elektromehansko opremo.
Slabosti sistema
urediKorn je dosegel z uvedbo povratnega koluta (reflektorja), da je postopek šifriranja samopovraten, kar pomeni da če se pri nekem položaju kolutov šifrira črka U v črko X, se črka X šifrira kot črka U. Tako je poenostavil delo z napravo, ker ni bilo več potrebno spreminjati načina dela pri šifriranju in dešifriranju. Poleg tega je računal na povečanje varnosti, saj je tok stekel dvakrat skozi kolute, torej se je pri trokolutni Enigmi šifriral šestkrat. To pa je bilo popolnoma napačno sklepanje z daljnosežnimi in za Nemce katastrofalnimi posledicami.
Ker teče tok drugič skozi napravo zaradi povratnega koluta vedno po drugi poti kot prvič, se ne more nikdar šifrirati črka v samo sebe. Na pogled je to majhno zmanjšanje dolžine šifre, saj ostane namesto 26 možnosti »le« 25, vendar je to bistveno zmanjšanje dolžine šifre in odpira nove možnosti za »lomljenja« šifre.
Reflektor je tudi povzročil, da so permutacije in s tem šifriranje samopovratne. S tem se število možnih šifer še bolj omeji, oziroma točno razpolovi. To je v hipu ugotovil Alan Turing.
Slabosti povzročene s povratnim kolutom (reflektorjem) se lahko razložijo, če v razlagi uporabimo abecedo s 4 namesto 26 črkami.
S štirimi črkami se lahko naredi 4! = 24 različnih abeced za pretvorbo črk. Te so:
ABCD ABDC ACBD ACDB ADBC ADCB BACD BADC BCAD BCDA BDAC BDCA CABD CADB CBAD CBDA CDAB CDBA DABC DACB DBAC DBCA DCAB DCBA
Če izključimo vse abecede, v katerih se šifrira črka sama vase (kar se ne more zgoditi), odpade več kot polovica abeced:
ABCD ABDC ACBD ACDB ADBC ADCB BACD BCAD BDCA CABD CBAD CBDA DACB DBAC DBCA
Ostanejo samo naslednje abecede:
---- ---- ---- ---- ---- ---- ---- BADC ---- BCDA BDAC ---- ---- CADB ---- ---- CDAB CDBA DABC ---- ---- ---- DCAB DCBA
Ker reflektor izključi še vse permutacije, ki niso povratne, nam ostanejo za abecedo s štirimi črkami od 24 možnosti samo tri:
---- ---- ---- ---- ---- ---- ---- BADC ---- ---- ---- ---- ---- ---- ---- ---- CDAB ---- ---- ---- ---- ---- ---- DCBA
Pri ENIGMI z njenimi 26 položaji (črkami ali številkami) tako ostane namesto možnih 4033 · 10 23 le približno 4250 · 10 11 kombinacij. Zaradi reflektorja je tako izgubljenih za približno faktor 10 12 (en bilijon) možnih šifer.
Kriptografsko še katastrofalneje je, da se neka črka nikdar ne more šifrirati kot ista črka. Če kriptoanalik pri »lomljenju« šifre ve, da se črka nikdar ne šifrira kot ista črka, mu to omogoča bližnjico do rešitve in ni potrebno mukotrpno obdelati vseh možnosti. Nemci so s tem hoteli preprečiti ugotovitev strogo tajnih notranjih povezav posameznih šifrirnih kolutov, dosegli pa že zgoraj opisano.
Že stoletja je za »lomljenje« šifer znan »Postopek verjetne besede«. Napadalec pozna ali domneva, da neka beseda nastopa v besedilu, na primer »OBERKOMMANDODERWEHRMACHT« (Vrhovno poveljstvo Wehrmachta). Če napadalec na šifro (ki ima šifrirano besedilo, za katero ve, da je bilo šifrirano z ENIGMO) ve, da se črka ne more šifrirati kot ista črka, lahko ugotovi na katerih mestih šifriranega besedila se ne more nahajati verjetna beseda. Pod šifrirano besedilo napiše z zamiki verjetno besedo in izključi možnosti, ko je na istem mestu v šifriranem besedilu in verjetni besedi ista črka.
V primeru so ujemanja črk izpisana krepko:
FMHVPFUIDPJOUCXRWGYFZBECTIDFXZOSIVIEGVCEDBZDTJCOXH 1 OBERKOMMANDODERWEHRMACHT 2 OBERKOMMANDODERWEHRMACHT 3 OBERKOMMANDODERWEHRMACHT 4 OBERKOMMANDODERWEHRMACHT 5 OBERKOMMANDODERWEHRMACHT 6 OBERKOMMANDODERWEHRMACHT 7 OBERKOMMANDODERWEHRMACHT 8 OBERKOMMANDODERWEHRMACHT 9 OBERKOMMANDODERWEHRMACHT 10 OBERKOMMANDODERWEHRMACHT 11 OBERKOMMANDODERWEHRMACHT 12 OBERKOMMANDODERWEHRMACHT 13 OBERKOMMANDODERWEHRMACHT 14 OBERKOMMANDODERWEHRMACHT 15 OBERKOMMANDODERWEHRMACHT 16 OBERKOMMANDODERWEHRMACHT 17 OBERKOMMANDODERWEHRMACHT 18 OBERKOMMANDODERWEHRMACHT 19 OBERKOMMANDODERWEHRMACHT 20 OBERKOMMANDODERWEHRMACHT 21 OBERKOMMANDODERWEHRMACHT 22 OBERKOMMANDODERWEHRMACHT 23 OBERKOMMANDODERWEHRMACHT 24 OBERKOMMANDODERWEHRMACHT 25 OBERKOMMANDODERWEHRMACHT 26 OBERKOMMANDODERWEHRMACHT 27 OBERKOMMANDODERWEHRMACHT FMHVPFUIDPJOUCXRWGYFZBECTIDFXZOSIVIEGVCEDBZDTJCOXH
S to zelo enostavno metodo se da od 27 možnih položajev verjetne besede izključiti 17 položajev (več kot polovico), kar je bistvena olajšava za kriptoanalitika.
Dekodiranje
urediUporabniki ENIGME so bili prepričani, da se njihovega strojno izdelanega šifriranega besedila ne da »zlomiti« z ročnimi metodami, kar je bilo možno za praktično vse sisteme šifriranja do leta 1918. Kar so spregledali, je bilo, da se strojno šifriranje da »zlomiti« s strojnimi metodami.
Kot je zgoraj razloženo, obstaja za ENIGMO I 2.109.120 možnih šifer (nastavitev). Teh približno 2 milijona možnosti se ročno ne da rešiti. Če se uporabi ustrezna z motorjem poganjana naprava, ki obdela 20 možnosti na sekundo, pomeni to 30 ur. To je še sprejemljiv čas. Če pa se uporabi 60 strojev (enega za vsako nastavitev vrtljivih kolutov), je potrebnih samo še 30 minut, kar je izredno ugodno.
Skupina poljskih matematikov, zbranih okrog Mariana Rejewskega, je že pred drugo svetovno vojno dosegla velike uspehe pri dešifriranju besedil, šifriranih na ENIGMAH. ENIGME, zgrajene pred letom 1939 so bile malce enostavnejše. Bile so industrijske izvedenke, kakršne so uporabljala velika nemška podjetja: AG Farben, Siemens, Krupp itn. Te so imele na začetku šifrirne kolute povezane kar naravnost. Rejewski je uporabil zakone teorije permutacij, prav tako jezikovna pravila nemščine in odstopanje od pravil slučajnosti, ki so bile povzročene z vplivi ljudi. Tako ljudje radi za ključ sporočila uporabljajo enostavne kombinacije kot AAA, BBB, ABC, …
Dejstvo, da so Nemci poslali na začetku vsakega sporočila, tako imenovani ključ sporočila. Ta je bil zašifriran z dnevnim ključem in je bil na začetku sporočila poslan dvakrat. Vseboval je začetno nastavitev šifrirnih kolutov in to sporočilo je bilo namenjeno zmanjšanju napak pri sprejemanju/oddajanju sporočil. To je za dešifrerje postal "crib".
Sprejemnik sporočila je najprej dešifriral začetnih 6 črk sporočila z dnevnim ključem in nato postavil vrtljive kolute v tako določen začetni položaj in dešifriral dejansko sporočilo.
Rejewski je razpolagal tudi s kodnimi knjigami Nemcev, te so dobili od Francozov, ki si z njimi niso mogli pomagati, navodili za uporabo in drugimi materiali. Nemci so tudi delali napake, ko so na zahtevo po pošiljanju testnega signala oddali na primer 50 krat črko A, kar je bilo enostavno dešifrirati. Tako je bil napor za »lomljenje« šifer bistveno zmanjšan.
Odprto besedilo šifriranega sporočila dobimo samo, če rešimo naslednje delne probleme:
Najprej: zgradba povezav za vse šifrirne kolute, vključno z reflektorjem, potem:
- ključ za sporočilo
- dnevni ključ, ki ga sestavlja:
- izbor kolutov (npr.: I, III, V)
- položaj kolutov (npr.: V - I - III)
- osnovna nastavitev kolutov (npr.: A - B - C)
- povezave na stikalni plošči (npr.: D v F, G v J itn)
S pomočjo elektromehanskih naprav, tako imenovanih »bomb«, je bilo možno v nekaj urah odkriti dnevni ključ, ki se je uporabljal za nastavitve kolutov in so ga Nemci menjali vsak dan točno ob polnoči. Leta 1939 so Nemci izboljšali sestavo ENIGME, tako da so namesto treh uporabljali pet šifrirnih kolutov, od katerih so bili istočasno v uporabi vedno le trije. Prav tako so uvedli povezavo stikalne plošče za 10 parov namesto dotedanjih štirih parov. Tako nastalo komplikacijo so Poljaki rešili z uporabo 60 »bomb«. Angleži so po Poljakih prevzeli termin "bomba", ki lahko pomeni bombo za razbitje šifer, imajo pa Poljaki tudi slaščico s tem imenom (nekakšen "indijanček"), kar bi lahko pomenilo tudi "slaščico" za poljske dešifrerje.
Dva tedna pred nemškim napadom na Poljsko leta 1939 so Poljaki seznanili zaprepadene Angleže in Francoze, ki se jim o ENIGMI še sanjalo ni, o kriptografskih slabostih ENIGME, načrt »bomb« in jim izročili dve na Poljskem izdelani kopiji ENIGME v Združeno kraljestvo in Francijo. Spoznanja poljskega Šifrirnega urada (Biuro Szyfrów) so zavezniki razvijali naprej. Ta napredek sta vsaj delno podprla dva Nemca. Prvi je bil Hans-Thilo Schmidt. Služboval je v radijski postaji nemških oboroženih sil in se je hotel maščevati za svoj odpust na koncu prve svetovne vojne, potreboval pa je tudi denar za svoje razkošno življenje. Stopil je v stik s francosko tajno službo in se trikrat srečal z agentom z ilegalnim imenom Rex. Francozom je dostavil načrte ENIGME, vendar brez podatkov o povezavah v šifrirnih kolutih. Leta 1943 ga je francoska tajna služba izdala in še isto leto so ga Nemci usmrtili. Leta 1999 je postalo znano, da je Hans-Thilo Schmidt s tajnim imenom Asch dobavil francoskemu kriptografu Bertrand|Bertrandu podobne predloge. Domneva se, da bi Rejewski uspel tudi brez teh predlog, vendar so mu prav gotovo pomagale, da je pridobil dragoceni čas. Poudariti je še treba, da so Poljaki zlomili šifre trokolutne ENIGME, mornariške s štirimi koluti pa niso zmogli, pravtako ne petkolutne izvedenke nemške Luftwaffe.
Britanski kriptoanalitiki so delali v Bletchley Parku. Projekt je potekal pod kodnim imenom ULTRA. Nadaljevali so tam, kjer je moral Rejewski zaradi napada na Poljsko nehati in »zlomili« tudi šifro leta 1939 izboljšane ENIGME. Pri delu jim je pomagala površnost nemških šifrantov (ponavljajoči in slabo izbrani ključi sporočil, standardna oblika vremenskih podatkov ob točno določenem času (ob 18. uri vsako popoldne za naslednji dan) in podatkov o legi, …). Naenkrat je v Bletchleyju delalo približno 7.000 ljudi. Vendar iz lastnih moči niso mogli nadoknaditi tistega, kar so nepreklicno izgubili: čas. Leta 1939 so zavezniki (Francozi in Angleži) prejeli popolne podatke o poljskih dosežkih in vse podatke, vključno z dvema delujočima klonoma trokolutne Enigme.
Eden od mnogih znanstvenikov v Bletchley Parku je bil angleški matematik Alan Turing, eden največjih umov 20. stoletja, katerega dela o računalništvu, matematiki in informatiki so še danes pomembna. Turing je izdelal pomembne osnove za izdelavo angleške, močno izboljšane različice poljske »bombe«. Po njegovi zamisli je Tommy Flowers (1905-1998), poštni inženir, izdelal prvi elektronski programabilni računalnik na svetu Colossus I. in malo kasneje močno izboljšani Colossus II., za oba je Alan Turing napisal prve računalniške programe na svetu. Te računalnike so uporabljali izključno za dešifriranje nemških šifer, posebej še šifrirnih strojev Fish in Tunny. Po končani 2. SV so morali Angleži, po ukazu verjetno ne najbolj jasnovidnih politikov, vse Colossuse z načrti vred uničiti. Colossus II. je imel ~1.500 elektronk in je samo za ogrevanje elektronk porabil toliko dragocene in manjkajoče električne energije, kot jo je v tedanjih vojnih časih manjša angleška vas. Namešečen je bil več prostorih, od tod tudi njegovo ime. Kot spomin je uporabljal običajni papirni perforirani teleprinterski trak. Za branje tega traku so Angleži mimogrede izumili in izdelali še prvi optični bralnik (v velikosti dveh cigaretnih škatlic), ki je igraje in brez vsakršnih napak, bral s hitrostjo 9.600 Baudov. Hitrost so morali zmanjšati na polovico na 4.800 Baudov, ker se je papirnati teleprinterski trak, po besedah samega dr. Tommya Flowersa, prepogosto trgal. Leta 1994 so po nasvetih dr. Tommya Flowersa, in na srečo ne vseh uničenih načrtih, v Bletchley Parku izdelali delujočo kopijo Colossusa II. Sodobni računalničarji so Colossusu tudi izmerili njegovo taktno frekvenco, ki je znašala 8 MHZ, kar je približno toliko kot pri prvih PC-jih.
Zaveznikom je 4. maja 1941 uspelo zajeti močno poškodovano nemško podmornico U-110 in dobiti v roke ENIGMO M3 in številne kodne tabele. Ker je posadka podmornico zapustila in so jo na rušilcu HMS Bulldog takoj spravili pod palubo, Nemci niso izvedeli za ta zavezniški plen. V juniju 1944 so Američani zaplenili še eno napravo ENIGMA in tajna navodila za šifriranje ob zajetju podmornice U-505. Ta podmornica je danes na ogled v muzeju v Chicagu.
Pri koncu vojne je zaveznikom uspelo dešifrirati večino nemških radijskih sporočil.
Zgodovinski vidiki
urediNa splošno velja, da je razbitje šifer ENIGME ena od strateških prednosti zaveznikov med drugo svetovno vojno. Zgodovinarji domnevajo, da je to razbitje šifer skrajšalo vojno za nekaj mesecev, če ne za celo leto. Zgodovinar Rohwer domneva, da je ta dosežek prihranil potopitev kakšnih 400 zavezniških ladij. Rešeno pa je bilo tudi nešteto človeških življenj na obeh straneh, tako civilnih kot vojaških.
Razprava o alternativnih potekih zgodovine je vedno polna špekulacij. Odločilen je tudi trenutek, ko bi ENIGMA spet postala popolnoma varna. Če bi se to zgodilo leta 1945, bi to imelo majhen vpliv na potek vojne, v letu 1944 pa bi bil vpliv bistveno večji. Bili bi ovirani načrti za operacijo Overlord (invazija v Normandiji). Kot je danes znano, je bila zaradi dešifriranih sporočil zaveznikom znana zelo natančna razporeditev nemških oboroženih sil v Normandiji. Nemška podmorniška ofenziva na Atlantiku bi uspela in tudi Rommel bi se za Hitlerja lahko dokopal do toliko želene nafte v Libiji in na Savdskem polotoku.
Kaj pa bi bilo, če sporočil ENIGME sploh ne bi dešifrirali? V letu 1940 je Kraljevo vojno letalstvo (RAF) v bitki za Britanijo moral vključiti zadnje rezerve. Pri tem so bila dešifrirana sporočila o nemških načrtih v veliko pomoč. Brez te pomoči bi Britanija morda izgubila to letalsko bitko in operacija Morski lev (Seelöwe, načrtovana in kasneje dokončno odpovedana invazija na Veliko Britanijo) bi se začela. Kakšen bi bil izid, nihče ne ve. Če pa bi uspela, bi morda Velika Britanija tega leta končala vojno (Sovjetska zveza in ZDA še nista vstopili v vojno). Nemci pa, v nasprotju z mnogimi mnenji, tudi niso bili sposobni izdelati atomske bombe.
Iz teh špekulacij se vidi izreden pomen kriptografije in kriptoanalize. Pri tem je bilo pomebno, da so zavezniki vso vojno in do 70. let ohranili popolno tajnost o »zlomu« ENIGMINE šifre (projekt ULTRA). ULTRA je bil sploh največji tajni projekt do tedaj, obdržan v popolni tajnosti, podobni ameriški projekt MAGIC je bil precej manjši po obsegu.
Na podlagi sumljivih potekov dogodkov so Nemci večkrat opravili preverjanje varnosti sistema, vendar niso odkrili ničesar, sumili so izdajalce. Po koncu vojne so zavezniki (predvsem Velika Britanija in ZDA) prodale del zaplenjenih in nekaj naknadno izdelanih naprav na Bližnji vzhod in v Afriko. Tako so lahko v miru še naprej brali radijski promet (v glavnem diplomatske note) v teh (izbranih) državah.
Kriptografija in klasične kriptografije
urediKriptografíja je veda o zakrivanju sporočil, ki je zasnovana na matematičnih konceptih. V preteklosti so se uporabljale klasične kriptografije. Ena bolj znanih je Cezarjeva šifra, ki temelji na simetrični zamenjalni šifri. Prejemnik in pošiljatelj morata uporabiti isti šifrirni ključ.
Poleg Cezarjeve šifre, je še zelo znan Vigenère-jev algoritem, ki temelji na polialfabetski substituciji. Slednji algoritem šifriramo tako, da za vsak znak uporabimo drug korak, tako da se ista črka vsakič preslika v drugo in zato pri dešifriranju ne moremo uporabiti tabele pogostosti črk v jeziku. Vigenère-jev algoritem je veljal za nezlomljivega do sredine 19. stoletja, ko je leta 1863 Friedrich Wilhelm Kasiski objavil postopek za razbitje algoritma.
Možnosti izboljšav
urediŽe leta 1883 je nizozemski kriptolog Auguste Kerckhoffs pod predpostavko »Nasprotnik pozna sistem šifriranja« definiral za resno kriptografijo osnovno pravilo: Varnost sistema šifriranja ne sme biti odvisna od načina šifriranja. Za tajnost je edina garancija tajnost ključa (Kerckhoffsovo načelo).
Kriptografska zaščita ENIGME je bila osnovana na tajnosti žičnih povezav v kolutih, kar je v nasprotju z zgornjo zahtevo. S tem so postale te povezave del algoritma in ne ključa. Pomebno je, da se te povezave od leta 1920 do konca uporabe leta 1945 niso spremenile. Pri normalni uporabi tako razširjene naprave ne bi smeli domnevati, da bo tako važen del naprave ostal tajen, kljub temu da so si Nemci za to zelo prizadevali.
Prva možnost za izboljšavo bi bila pogosta zamenjava vrtečih kolutov z drugačnimi notranjimi povezavami, vsaj enkrat letno.
Še učinkovitejši bi bili koluti, katerih žične povezave se bi spreminjale glede na ključ. Pot k temu je bil reflektor D, ki je to omogočal, vendar je prišel v uporabo le redko.
Dodatna okrepitev varnosti bi bila ukinitev povratnega koluta (reflektorja) (pomanjkljivosti so opisane zgoraj).
Neka zgodnja izvedba ENIGME je vsebovala osem nezamenljivih šifrirnih kolutov. Samo z osnovno nastavitvijo teh je na razpolago 200 milijard možnosti. Ta model tudi ni vseboval povratnega koluta in pomanjkljivosti, ki jih ta povzroča. Če bi uporabili to načelo z osmimi koluti namesto treh in bi bili ti koluti še povrh vsega še zamenljivi, bi bistveno povečali varnost sistema.
Nadaljnja, dokaj enostavna izboljšava je več zatičev za prenos vrtenja koluta na sosednji kolut. Ker se je srednji kolut obrnil le za eno mesto šele po 26 črkah in levi kolut po 26 · 26 črkah, je bila za dokaj dolge dele besedila nastavitev teh dveh kolutov nespremenjena in to je olajšalo delo pri dešifriranju. Če bi imeli koluti ENIGME več zarez za prenos vrtenja, bi bilo dešifriranje bistveno težje.
Pri 2., 4. ali 13. zarezah se skrajša perioda v kateri se ponovi abeceda za zamenjavo, če pa bi izbrali števila, ki niso prafaktorji števila 26, pa te nevarnosti ni.
Abwehr (tajna služba Wehrmachta) je uporabljal poseben model ENIGME s posebnim naborom vrtljivih šifrirnih kolutov, ki so imeli 11, 15 ali celo 17 zatičev za prenos. Tudi reflektor se je vrtel. So se pa odpovedali stikalni plošči na prednji strani (Turing bi se sladko smejal). Toda strokovnjakom v Bletchley Parku je uspelo odkriti tudi ta šifrirni sistem in marsikateri nemški agent je ob vstopu v Veliko Britanijo doživel zanj nezaželen sprejem, zaslišanje in kar ga je skoraj vedno tudi stalo glave.
Strojne šifrirne naprave so se že med vojno izkazale za strahovito počasne (samo spomnimo se, da so morali številke črkovati) in ranljive, kar so Američani izjemno učinkovito rešili s Codetalkersi.
Komercialne in vojaške Enigme
urediKer so bili znanstveniki tako navdušeni nad Enigmo so začeli razvijati »sodobnejšo« Enigmo in tako so nastali različni modeli Enigme. Smiselno je razdeliti Enigmo na komercialne Enigme in vojaške Enigme.
Komercialne Enigme:
urediEnigma model A (1923)
Enigma A je bila prvi šifrirni stroj, ki se je prodajala pod blagovno znamko Enigma. Razvita je bila s strani družbe Company Scherbius & Ritter. Kot trenutno vemo, ni nobenih primerkov Enigme A, ki bi ostali. Enigma A je bila zelo težka in zajetna naprava, ki je lahko pisala svoje sporočilo direktno na papir.
Enigma C (1926)
Ta model Enigme je predlagal Scherbius-ov prijatelj Willi Korn. Model Enigme C je bil manjši in bolj prenosljiv od predhodnikov.
Enigma D (1927)
Enigma D je bila razvita leta 1926 kot naslednica Enigme C. Uradni model je bil A26 in je vseboval notranji označevalec Ch.8, proizvajalca Chiffrier machienen ag. Enigma D je vsebovala mnogo izboljšav v primerjavi z Enigmo C.
Swiss K
Švicarski državni organi so uporabljali verzijo Enigme modela K ali Swiss K za vojaške in diplomatske potrebe. Swiss K je bil zelo podoben komercialni Enigmi D. Naprave so bile naročene s strani Švice pred drugo svetovno vojno in prva serija teh modelov, jim je bila dostavljena leta 1939.
Vojaške Enigme:
urediFunkschlüssel C
Reichsmarine je bila prva vojaška podružnica, ki je sprejela Enigmo. Tipkovnica je vsebovalo 29 črk (A-Z, Ä,Ö in Ü). Črke so bile razporejene po abecednem vrstnem redu in ne po načinu QWERTZUI.
Enigma G (1928–1930)
15. julija 1928 je nemška vojska (Reichwehr) predstavila svojo ekskluzivno verzijo Enigme, Enigmo G.
Enigma G se je razlikovala od drugih modelov, ne samo zaradi kolesnega mehanizma, ampak tudi zaradi manjše velikosti, manjših kolesc, ter poševne tipkarske lučke z ročico.
M4 (1942)
Enigma M4 je bila elektromehanska šifrirna naprava razvita v času druge svetovne vojne. Namenjena je bila predvsem za nemške podmornice.
Enigma II
V letu 1933 je poljski Cipher Bureau zaznal, da je Enigma II v uporabi za visoko vojaško komunikacijo, ampak je bila potem hitro umaknjena, zaradi svoje nezanesljivosti in problemov z njo.
Literatura
uredi- v nemščini in angleščini:
- Friedrich L. Bauer: Entzifferte Geheimnisse, Methoden und Maximen der Kryptographie. 3. Auflage, Springer, Berlin 2000, ISBN 3-540-67931-6
- Robert Harris: Enigma (domišljijski roman), Arrow, 1996, ISBN 0-09-999200-0 (COBISS)
- Wladyslaw Kozaczuk: Geheimoperation Wicher. Karl Müller Verlag, Köln 1989
- Louis Kruh, Cipher Deavours: The commercial Enigma: Beginnings of machine cryptography. Cryptologia, Nr.1, vol. XXVI, Januar 2002
- OKW: H.Dv.g. 13, Gebrauchsanleitung für die Chiffriermaschine Enigma. 1937
- OKW: H.Dv.g. 14, Schlüsselanleitung zur Chiffriermaschine Enigma. 1940
- OKW: H.Dv.g. 7, Allgemeine Schlüsselregeln für die Wehrmacht. 1944
- Klaus Schmeh: Die Welt der geheimen Zeichen. W3L Verlag Bochum, 2004, ISBN 3-937137-90-4
- Simon Singh: Geheime Botschaften. dtv, 2001, ISBN 3-423-33071-6
- Gordon Welchman: The Hut Six Story: Breaking the Enigma Codes. M&M Baldwin, Cleobury Mortimer, 2000, ISBN 0-947712-34-8
Viri
urediPrevedeno in delno skrajšano iz de:Enigma (Maschine).
Zunanje povezave
uredi- (nemško)
- Die Rotor-Chiffriermaschine Enigma - opis primerka iz nemškega muzeja v Bonnu
- Robert Peloschek: Chiffriermaschinen Enigma, SZ40/42, T52 und andere (PDF) - gradivo z dunajske tehniške univerze
- K. Schäfer, B. Putsch, M. Träumner, C. Caplan, C. John: Mathe Prisme: Enigma - pojasnitev funkcionalnosti vključno s simulacijo naprave
- Enigma-Simulation - simulacija v javi
- EnigmaSim Arhivirano 2014-12-08 na Wayback Machine. - simulacija za Windows (Wehrmacht in Kriegmarine M4, brezplačni program)
- Tri pričevanja: W. Gruhle (vezist, med drugim služboval v Zagrebu), A. Born (vezist), G. Hasenjaeger (matematik, ki je pregledoval prototipe)
- ENIGMA-Emulator - kot javanski programček z izvorno kodo
- Simulacija v Flashu
- Die Rotor-Chiffriermaschine Enigma Arhivirano 2005-12-30 na Wayback Machine. - stran nemškega muzeja v Münchnu
- Als deutscher Code-Knacker im Zweiten Weltkrieg - informacije o kodiranju s TELWA in M-209
- Operation Enigma - vojaško-zgodovinsko ozadje
- Enigma - Verzeichnis geheimer Vorschriften zur Bedienung und zur Verschlüsselung - arhiv tajnih navodil za kodiranje
- [1] [2] [3] - trije članki v Telepolisu
- M. Proese: Chiffriermaschinen und Entzifferungsgeräte im Zweiten Weltkrieg: Technikgeschichte und informatikhistorische Aspekte - doktorska disertacija o napravah za šifriranje in dešifriranje med II. svetovno vojno
- (angleško)
- N. Shaylor: Enigma and the Turing Bombe Arhivirano 2004-10-11 na Wayback Machine. - simulator Turingove Bombe
- Simulator, avtor Russell Schwager
- Virtual exhibitions in Informatics Arhivirano 2019-03-30 na Wayback Machine.- od klasičnih kriptografij do modernih kriptografij v časovnem traku
- Arthur Bauer, Foundation for German Technology - zgodovinski dokumenti Enigme
- Crypto Museum - spletna stran nizozemskega muzeja
- (slovensko)