Viskas prasidėjo 1918 metais, kuomet vokiečių inžinierius
Arthuras Scherbius užpatentavo rotorinę
šifravimo mašiną, vėliau pavadintą
Enigma. Pradžioje mašina buvo skirta kai kurioms valstybinėms įstaigoms,
didelėms pramonės kompanijoms, norinčioms apsaugoti savo turimą
informaciją. Vokiečių kariškiai
susidomėjo Enigma ne iš karto, tačiau
ryškėjantys Vokietijos karinės galios
atkūrimo planai ir tas faktas, kad buvo
sužinota, jog per I pasaulinį karą britų
ir prancūzų slaptosios tarnybos
reguliariai skaitydavo slaptus vokiečių
pranešimus, paskatino ieškoti patikimo ir saugaus informacijos šifravimo
būdo. Vokietijos karinis laivynas
pradėjo naudoti patobulintas Enigma
mašinas nuo 1926 metų, o keliais metais
vėliau jos buvo įdiegtos ir vermachte,
ir karo aviacijoje. Dažniausiai tai
būdavo kiek pagerinti civilinio mašinos
varianto, kurį galėjo nusipirkti bet
kas, modeliai. Manoma, kad Vokietijos generalitetas taip elgėsi
nenorėdamas atkreipti užsienio žvalgybų dėmesį
į staigų Enigmos išnykimą iš rinkos.
Tik prieš pat prasidedant karui,
kariškių naudojami šifravimo aparatai tapo
gerokai sudėtingesni.
1 pav. Vidurinių rotorių sujungimas.
Enigma buvo naudojama vien laiškų šifravimui ir dešifravimui.
Standartiniu mašinos variantu laiško nebuvo galima atspausdinti, pasiųsti
ar priimti. Šifravimo operatorius galėjo naudotis 26 raidžių klaviatūra,
išdėstyta taip, kaip normalioje
vokiškoje spausdinimo mašinėlėje:
Q 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
Klaviatūroje nebuvo nei skaitmenų, nei skyrybos ženklų. Už šios
klaviatūros buvo trys 26 mažų
apskritų langelių eilutės. Kiekviename
langelyje buvo įrašyta po raidę; jos buvo
išdėstytos ta pačia tvarka kaip ir
pagrindinėje klaviatūroje ir galėdavo
nušvisti jų apačioje užsidegus lemputėms.
Po lemputėmis buvo įtaisytas vadinamasis rotorinis šifravimo
įrenginys, sudarytas iš dviejų fiksuotų
rotorių šonuose ir tarp jų esančių trijų
besisukančių rotorių. Įvesties
rotorius kairėje turėjo 26 kontaktus,
sujungtus su atitinkamais klavišais. Tie
kontaktai buvo tam tikra tvarka laidais sujungti su vienu iš dešinėje esančių
kontaktų. Išvesties arba apgrąžos
rotorius (Umkehrwalze) taip pat turėjo 26
kontaktus. Jis priimdavo atitekančią
srovę ir pasiųsdavo ją atgal, bet kitu
keliu, nei ji buvo atkeliavusi. Tarp abiejų fiksuotųjų rotorių yra trys
judantys, irgi turintys laidais sujungtus kontaktų rinkinius. Priklausomai nuo tų
rotorių padėties, susijungia vis kiti
skirtingų rotorių kontaktai, todėl
pasikeičia ir kelias, kuriuo teka srovė
paspaudus kurį nors iš klavišų, ir kurią
lemputę ta srovė galiausiai pasieks.
Trys viduriniai rotoriai buvo pasirenkami iš penkių kiekvieno
aparato komplekte esančių rotorių. Kas
mėnesį slaptu įsakymu buvo
apibrėžiamas rotorių pasirinkimas
kiekvienai dienai, pavyzdžiui, V-I-III arba
II-IV-I ir t.t. Savo ruožtu, kiekviename iš
tų besisukančių rotorių buvo 26 pagal
rotoriaus perimetrą išdėstytos
kontaktinių porų eilutės. Eilutėse
esančios kontaktų poros laidais buvo
sujungtos skirtingai viena nuo kitos. Savo ruožtu, po kiekvieno klavišo
paspaudimo įvesties pusėje esantis
dešinysis judantis rotorius pasisukdavo per
vieną poziciją, todėl sujungimų
tvarka pasikeisdavo. Šiam pasisukus per 26 pozicijas, per vieną poziciją
pasisukdavo ir vidurinysis judantis rotorius, o jam pakeitus visas 26 įmanomas
eilutes, pasisukdavo ir kairysis judantis rotorius. Jeigu laikysime kiekvienu
laiko momentu egzistuojančių
elektrinių sujungimų raštą tam tikru
Enigmos šifro "raktu", tai visas tokių raktų
skaičius bus lygus 26x26x26=17 576.
Galų gale, kariškių naudotose Enigmose buvo papildomas 26
lizdų, irgi raidėmis sužymėtų
įprastine QWERTZU tvarka, rinkinys. Šie
lizdai galėjo būti sujungti kabeliais
sujungtomis kištukų poromis, jungiant, pavyzdžiui C su P, M su Z, J su S ir
t.t. Keli lizdai, dažniausiai šeši, buvo
paliekami laisvi.
Šifruotojui paspaudus kurią nors raidę, dešinysis rotorius
mechaniškai pasisukdavo per vieną vietą, ir,
kaip tai buvo aiškinta anksčiau,
vidurinis ir kairysis rotoriai laikas nuo laiko irgi pajudėdavo. Srovė,
sukuriama 4,5 V vidaus baterijos, tekėdavo
per visą šią sudėtingą grandinę, kol
pasiekdavo vieną iš lempučių.
Standartiniame trijų rotorių aparate
srovės kryptis buvo keičiama net devynis
kartus. Reikia atminti, kad paspaudus bet kurį klavišą bent vienas iš rotorių
pajudėdavo ir kiekvienai raidei atsirasdavo naujas grandynas. Svarbu
pastebėti, kad paspaudus kurį nors
klavišą (pavyzdžiui, B), užsidegdavo bet
kuri kita raidė (pavyzdžiui, T). Jeigu
vėl spaustumėme klavišą B, užsidegs
vis kitos lemputės, sakykime, P, F, O, J, C..., bet niekuomet - B. Visa seka
pasikartotų po 16 900 paspaudimų,
kuomet vidinis mechanizmas grįš į
pradžioje buvusią padėtį.
Pasikartojimas galėjo padėti atspėti kodą, todėl
laiškų ilgis buvo ribojamas 250 raidžių.
Enigma leido pasirinkti vieną iš 60 įmanomų rotorių išdėstymo
tvarkų, kiekvienai tokiai tvarkai atitiko17 576 galimų kontaktų sujungimo
variantų ir virš 150 milijonų milijonų
kištukais sujungtų porų. Todėl
kasdien Enigma galėjo naudotis apie 159 milijonais milijonų milijonų
įmanomų raktų. Šis skaičius buvo toks
milžiniškas, kad vokiečiai buvo tikri, jog
jų siunčiami kariniai ir
diplomatiniai pranešimai yra visiškai saugūs. Iš
tikrųjų buvo visai ne taip.
Pirmieji su naująja Vokietijos karinių žinybų siunčiamų
pranešimų tvarka susidūrė lenkai. Atgavus
nepriklausomybę, Lenkijos kariuomenės Antrajame skyriuje buvo įkurtas
vadinamasis Šifrų biuras, kurio
užduotis buvo stebėti didžiuosius šalies
kaimynus vakaruose ir rytuose. Pradžioje tas darbas nekėlė didesnių
sunkumų: iki pat 1926 m. jauni biuro specialistai be vargo skaitydavo ne itin
sudėtingus vokiečių ir sovietų šifrus.
Iki tol visos šalys tenaudojo rankinį
šifravimą. Situacija ryškiai
pasikeitė 1926 m., kai Vokietijos karinis jūrų
laivynas palaipsniui pradėjo naudoti mašininį šifravimą. Nuo 1928 m.
liepos lenkams pasidarė nebeįkandami
ir Vokietijos armijos pranešimai.
Netrukus buvo padaryta gana logiška išvada, kad šifravimui
pradėtos naudoti mašinos. Nelaukiant buvo
įsigyta tuo metu Vokietijoje dar pardavinėjama komercinė Enigmos
versija. Mašina buvo išardyta ir
kruopščiai studijuojama, bet tai nedavė jokių
rezultatų, todėl nutarta problemos sprendimo ieškoti kitaip. 1929 m.
sausio mėnesį Poznanės universitete
buvo surengti kriptologijos kursai, kuriuose buvo bandoma atsirinkti
šiai sričiai gabius studentus
matematikus. Žingsnis visiškai pasiteisino -
būtent tada buvo įtraukti į darbą biure
Enigmos kodą išnarplioję Marianas
Rejwskis, Jerzy Rozyckis ir Henrykas Zygalskis. Visi trys pradėjo nagrinėti
pasienyje su Vokietija esančių radijo
pasiklausymo stočių perimtus
pranešimus. Kova su Enigma prasidėjo.
Pirmoji jaunųjų kriptologų
grupės sėkmė - keturių raidžių
vokiečių karinio laivyno kodo iššifravimas,
bet kelias iki Enigmos užšifruotų
pranešimų perskaitymo dar buvo labai
tolimas. Tuo momentu biuro vadovai nutarė patikėti vyriausiam,
Rejewskiui, per ilgą laiką sukauptus šifruotus
vokiečių įrašus.
Susipažinęs su komercine Enigmos versija ir disponuodamas
įrašais, Rejewskis pastebėjo kai kuriuos
būdingus požymius, kuriuos aprašė
sudaręs tam tikrą matematinę
permutacinių lygčių sistemą. Nors
nežinomųjų skaičius dar buvo daug
didesnis nei lygčių skaičius ir išspręsti
sistemą buvo neįmanoma, tai buvo
svarbus žingsnis link visos problemos sprendimo. Tai supratę viršininkai,
ryžosi patikėti Rejewskiui dar keturis
itin slaptus dokumentus, kuriuos lenkams perdavė prancūzų žvalgyba. Tai
buvo karinės Enigmos versijos nuotrauka, jos aptarnavimo instrukcija ir dvi
metų senumo lentelės su raktais. Tuose dokumentuose buvusi informacija
leido Rejewskiui eliminuoti kelis jo lygčių sistemos nežinomuosius.
Prancūzai susisiekė su lenkų
žvalgyba dar 1931 metais, kai pamatė,
kad jų šifruotojai patys nesugeba
susidoroti su Enigmos kodais. Prieš metus jie buvo užmezgę kontaktą su
vokiečiu, dirbusiu svarbiausioje Vokietijos kriptografijos agentūroje -
Chiffrierstelle. Šis agentas, turėjęs
slapyvardį "Asche", buvo Hans-Thilo
Schmidtas, garbingos vokiečių šeimos
palikuonis. Jis pats sutiko dirbti prancūzams
pabrėždamas, kad tai daro dėl
ideologinių motyvų. Nežiūrint to, už viską,
ką Asche pateikdavo, buvo dosniai sumokama. Karo metu vokiečių
karinė kontržvalgyba Abwer demaskavo Asche ir įvykdė mirties nuosprendį.
Asche buvo atsakingas už panaudotų Enigmos kodų lentelių
sunaikinimą, bet, prieš tai atlikdamas, jas
nukopijuodavo ir vėliau perduodavo savo antriesiems darbdaviams.
Prancūzams, o vėliau ir lenkams į rankas
patekdavo Enigmos raktų lentelės,
įskaitant ir kištukais sujungiamų
raidžių rinkinius.
2 pav. Enigmos aparato su apgrąžos rotoriumi veikimo schema
Tai gerokai palengvino Rejewskio ir jo kolegų darbą. Jie jau
buvo aptikę silpnąją Enigmos vietą -
apgrąžos rotorių. Iš mašinos aprašymo
buvo žinoma, kad paspaudus bet kurį, tarkim, klavišą x, užsidegdavo
lemputė y, o spaudžiant klavišą y
užsidegdavo lemputė x. Tai lėmė
paskutinis apgrąžos rotorius (2 pav.). Jei
šifruotojas dukart paspausdavo tą patį
klavišą x - pirmą kartą gaudamas
raidę a, o ketvirtą kartą b, tai pirmą
kartą spausdamas klavišą a jis turėtų
gauti raidę x, o ketvirtą kartą
spausdamas klavišą x - raidę b. Šitaip jau buvo
galima eliminuoti kai kurias permutacines lygčių sistemas ir supaprastinti
šifro dekodavimo uždavinį.
Nuo 1933 m. pradžios lenkų
Šifrų biuras jau reguliariai skaitė
Vokietijos kariškių siuntinėjamus
pranešimus. Manoma, kad iki 1938 m. pavyko iššifruoti kelis tūkstančius
Enigmos pranešimų. Tiesa, pats
dešifravimas buvo ilgai trunkąs ir varginantis
darbas, todėl karo atveju nebūtų
labai efektyvus. Lenkijos žvalgybininkai ėmėsi kurti specialią Enigmos
pranešimų dešifravimo mašiną.
Pradžioje Rejewskiui pavyko išnarplioti
vieno rotoriaus kontaktų sujungimo schemą. Po to, panaudojant vieną iš
prancūzų atsiųstų raktų lentelių,
pasisekė atspėti, kaip šie kontaktai sujungti
tarpusavyje ir kitame rotoriuje. Kiek vėliau išsiaiškinta ir trečiojo
rotoriaus paslaptis. Žinant visų trijų rotorių
vidinius sujungimus, vienoje Varšuvos firmoje buvo pradėtos gaminti
vadinamosios "bombos" - mašinos,
kurias sukiojant buvo bandoma surasti pradinę rotorių padėtį, naudotą
kiekvieną dieną šifruojant Enigmos
pranešimus. Kol Enigmos komplektą
sudarė tik trys judantieji rotoriai, šešios
lygiagrečiai veikiančios "bombos"
gana operatyviai aptikdavo dienos raktą. Bet nuo 1938 m. vokiečiai
komplektą papildė dar dviem rotoriais, todėl
uždavinys labai pasunkėjo. Jo sprendimui reikėjo mažiausiai 60
"bombų", o tai jau viršijo Šifrų biuro galimybes.
3 pav. Trijų rotorių šifravimo-dešifravimo mašina Enigma.
Artinosi karas. Žmonės, kurie skaitė slaptus Vokietijos
generaliteto pranešimus dažniau nei
kasdieninius laikraščius, tai žinojo geriau negu
bet kas kitas. Todėl lenkai nutarė
pradėti ruoštis pačiam blogiausiam
atvejui. 1939 m. Paryžiuje įvyko pirmasis
Prancūzijos, Didžiosios Britanijos ir
Lenkijos žvalgybų vadovų susitikimas.
Liepos pabaigoje, kiek daugiau negu mėnuo iki II pasaulinio karo
pradžios, Varšuvoje įvyko antrasis
susitikimas. Jo metu lenkai perdavė
prancūzams ir britams tai, ką jie jau buvo
sužinoję apie Enigmą ir po vieną veikiantį
šifravimo aparatą. Karui prasidėjus,
Šifrų biuras per Rumuniją
parsikraustė į Prancūziją, o vėliau į Angliją.
Čia Bletchley Park miestelyje buvo
įkurtas ištisas Enigmos dešifravimo
fabrikas, kuriame vienu metu dirbo net 7000 žmonių, įskaitant ir geriausius
to meto britų specialistus Alaną
Turingą ir Dilly Knoxą.
Galima būtų nustebti ir pasidomėti, kam, po viso to pasakojimo
apie matematikos taikymą ir Enigmos dublikatų gamybą, prireikė tokios
minios vokiečių pranešimus
dešifruojančių žmonių. Ogi minėtos priemonės
tiktai gerokai sumažino milijonų
milijonų milijonus galimų rakto
variantų, bet jų dar liko pakankamai
daug. Elektroninių kompiuterių tada
dar nebuvo, todėl į pagalbą buvo
galima pasitelkti tiktai lėtai veikiančias
mechanines "bombas", kurias britai gavo iš lenkų ir nuolat tobulino.
Enigma buvo tobuliausias to meto technikos kūrinys, tačiau ir ji
palikdavo nemažai šifravimo spragų,
kuriomis naudojosi britų dešifruotojai. Jie, pavyzdžiui, darė prielaidą,
kad, koduojant tiriamojo pranešimo
dalį, dešinysis rotorius dar nepasukdavo
viduriniojo. Tai šiek tiek sumažindavo galimų raktų skaičių. Be to, labai
padėjo ir pagrindinis Enigmos trūkumas - tai, kad jokia raidė niekuomet
nebuvo koduojama pati savim.
Pastaroji aplinkybė labai pagelbėdavo naudojant
vadinamąsias "špargalkas" (angl.
cribs), teksto fragmentus, kurių buvo galima tikėtis
užkoduotajame pranešime. Tvarką mėgstantys vokiečiai dažnai
pateikdavo britams tokias "špargalkas". Tie patys žodžiai dažnai išnirdavo
įvairių pranešimų pradžioje;
populiariausia pradžia buvo "An die Gruppe"
(grupei). Karui baigiantis, užnugario
štabuose gausėjo žioplų operatorių,
kurių ataskaitose nuolat kartodavosi: "Keine besondere Ereignisse"
(pažodžiui verčiant, "jokių ypatingų
atsitikimų") ar panašios standartinės
frazės. "Špargalkos" galėjo išnirti bet
kurioje pranešimo vietoje, tačiau tas
faktas, kad užšifruotuose žodžiuose
"Keine besondere Ereignisse" nei viena raidė negalėjo būti tokia pat kaip
prieš šifravimą, leido lengviau surasti,
kurioje vietoje jos yra.
Tarkime, kad mes "Keine besondere Ereignisse" pasirinkome
savąja "špargalka". Lyginant tą frazę su
užšifruotuoju tekstu, sudalintu į
grupes po penkias raides, kaip paprastai darė Vokietijos Wehrmacht'o ir
Luftwaffe operatoriai, lengva pastebėti, jog vietų, kur abiejų eilučių raidės
būtų tokios pat, skaičius bus labai
ribotas (žr. 4 pav.).
4 pav. Viršutinėje eilutėje šifravimo "špargalka", apatinėje - užšifruotas tekstas.
Pajudinus viršutinį tekstą į
kairę ar dešinę vos per vieną vietą, I ar
S raidės žodyje Ereignisse sutaps su tokiomis pat raidėmis apatiniame
tekste, o to Enigmos užšifruotame pranešime negali įvykti. Judant dar
toliau, atsiras tik daugiau atsikartojančių
raidžių. Šiuo atveju yra tiktai viena
vieta, į kurią galima įstatyti
"špargalką", ir ja remiantis jau galima atspėti,
kokia buvo pradinė rotorių padėtis.
Pasitaikydavo ir visai kurioziškų atvejų. Vieną kartą Bletchley Park
dirbęs dešifruotojas labai nustebo pamatęs, kad jam duotame ilgokame
tekste nėra nei vienos L raidės. Greitai
buvo suvokta, kad taip atsitiko dėl to, kad vokiečių operatorius, kuriam
buvo liepta pasiųsti fiktyvią šifruotę,
paprasčiausiai visą laiką spaudinėjo
vieną raidę LLLLL... Gavę tokią
"dovanėlę" britai galėjo iškart atstatyti
visą rotoriaus laidų išvedžiojimo schemą.
Taip paprasta buvo, toli gražu, ne visada, bet jei ne tas Enigmos
trūkumas (raidė niekada nėra
užšifruojama ja pačia) ir ne vokiečių operatorių
aplaidumas, nei lenkams, nei britams tikriausiai taip ir nebūtų pavykę
iššifruoti vokiečių siunčiamų pranešimų.
Iš viso prieš karą ir karo
metais Vokietijoje buvo pagaminta apie 30 tūkst. šifravimo mašinų Enigma.
Jos buvo nuolat tobulinamos, tapdavo vis sudėtingesnės ir sunkiau
įveikiamos sąjungininkų dešifruotojams.
Tačiau jie susidorojo su užduotimi ir
sąjunginės valstybės sužinojo daug
slaptų vokiečių planų. Faktiškai tik
Enigmos dešifravimo dėka buvo nutraukta
Vokietijos povandeninio laivyno veikla Atlanto vandenyne. Vokiečių
nuostoliai buvo tokie dideli, kad, 1943 m.
sąjungininkų konvojui nuskandinus 41 laivą, laivyno vadas admirolas
Doenitzas įsakė visiems povandeniniams
laivams grįžti į bazes. Enigma įtakojo
ir Šiaurės Afrikoje vykusių karo
veiksmų baigtį. Jeigu Enigma šifro
nebūtų pavykę įveikti, karas tikrai būtų
užtrukęs ilgiau.
5 pav. Atidarius Enigmos dangtį, galima pakeisti šifravimo rotorių.
Į Enigma panašios šifravimo mašinos buvo naudojamos maždaug
iki 1975 m., tik tada jas pakeitė elektroniniai kompiuteriai. Todėl ir ši
istorija pradėjo išnirti iš slaptųjų
archyvų palyginti neseniai. Iki tol ji buvo
apgaubta legendų. Kadangi tai buvo vienas iš nedaugelio atvejų, kai karo
sėkmę nulėmė ne bombų, tankų ar
karių skaičius, į laurus taikėsi daugelis.
Britai iki šiol įsitikinę, kad visi
Enigmos paslapties išnarpliojimo nuopelnai priklauso tiktai jiems. Kas gi kitas,
jei ne James Bondo tėvynainiai galėtų
susidoroti su tokia nekasdieniška užduotimi? Lenkų vaidmens visiškai
nuneigti nebuvo galima, todėl jiems buvo priskirtas Enigmos pavogimo iš
mašinas gaminusio Vokietijos fabriko
"nuopelnas" (William B. Breuer, "Secret
weapons of World War II"). Ko daugiau gali tikėtis iš tų rytų europiečių?
Su skirtingomis ir net viena kitai prieštaraujančiomis Enigmos istorijos
interpretacijomis teko susipažinti ir
ieškant medžiagos šiai publikacijai.
Gavau ieškoti "aukso vidurio": faktai,
pateikti straipsnyje, yra surinkti ir iš
lenkų, ir iš britų šaltinių, bet sudėstyti į
visumą taip, kaip tai šiandien aiškina
vokiečiai. Jų įtarti šališkumu tikrai
nevertėtų. Būtent Vokietijos
kriptografijos specialistai patvirtina: Enigmos šifrą pirmieji sugebėjo įveikti
mūsų kaimynų, lenkų, žvalgybininkai.