Kryptologinen pommi ( puolalainen Bomba kryptologiczna ) on puolalaisen kryptologin Marian Rejewskin ehdottama laite, joka kehitettiin vuonna 1938 kahden matemaatikotoverin Jerzy Rozickin ja Henryk Zygalskin kanssa saksalaisten Enigman avulla salattujen viestien systemaattiseen purkamiseen . Edellytyksenä koneen luomiselle oli epäluotettava menettely saksalaisten käyttämän avaimen kaksinkertaistamiseksi, mikä mahdollisti Enigman päivittäisten asetusten määrittämisen [1] .
Enigman keksimisen jälkeen vuonna 1917, vuodesta 1930 lähtien tätä innovatiivista salausmenetelmää käytettiin säännöllisesti Saksassa. Sen naapurit, erityisesti Ranska , Iso-Britannia ja Puola , suhtautuivat siihen epäluuloisesti, varsinkin natsien valtaannousun jälkeen, kun Enigmalla alkoi olla keskeinen rooli Wehrmachtin uudelleenaseistamisessa. Huolimatta siitä, että ranskalaiset ja brittiläiset kryptanalyytikot eivät kyenneet murtamaan sitä ja luokittivat sen särkymättömäksi [2] , 27-vuotias puolalainen matemaatikko Marian Rejewski pystyi murtamaan Enigman jo vuonna 1932 [3] , kun hän löysi viestistä vakavan haavoittuvuuden. lähetysmenettely.
Viestien purkaminen Enigmalla vaati useiden parametrien tuntemista: roottoreiden järjestyksen, niiden alkuasennon, roottorinrenkaiden asennot ja pistoliitännät. Roottoreiden asennot olivat kolmikirjaiminen avain (esim. "PDN") ja ne olivat osa päivänäppäintä. Turvallisuuden lisäämiseksi jokainen yksittäinen viesti kuitenkin salattiin lisäavaimen muokkauksella. Käyttäjä valitsi satunnaisesti roottoriasetukset kullekin viestille (esimerkiksi "PDN"). Tämän viestin avain kirjoitettiin kahdesti ("PDNPDN") ja salattiin päivän avaimella. Tämän jälkeen käyttäjä nollaa koneen viestinäppäimelle, jota käytettiin myöhemmin. [1] Koska Enigman sisäinen johdotus muuttui jokaisen näppäinpainalluksen yhteydessä, toisto ei olisi ilmeistä salatekstissä, koska samat selväkieliset kirjaimet koodattaisiin eri salatekstikirjaimiin (esim. "PDNPDN":stä voisi tulla "ZRSJVL").
Avaimen toistamisen ja salaamisen sijaan saksalaiset saattoivat yksinkertaisesti salata viestin avaimen ja lähettää sen kahdesti peräkkäin (esim. "ZRSZRS") tai viestin alussa ja lopussa. Tällä saavutetaan silti haluttu redundanssi virheiden havaitsemiskyvylle . Tämä olisi kuitenkin ilmeinen haittapuoli, koska epäilyttävä toisto kiinnittäisi kryptanalyytikoiden huomion. Tällaisen tilanteen estämiseksi he alkoivat käyttää ensi silmäyksellä luotettavaa vaihtoehtoa avaimen kopioimiseen ja sen myöhempään salaukseen, koska toistoa salatekstissä ei ollut havaittavissa. Itse asiassa tämä menetelmä johti karkeaan kryptografiseen virheeseen.
On myös syytä huomata, että laiteoperaattori sai vapaasti valita avaimen. He valitsivat varsinkin stressaavissa tilanteissa hyvin yksinkertaiset näppäimet. Halutun satunnaisen näppäimen sijaan valittiin usein yksinkertaisia kirjainyhdistelmiä, kuten "AAA", "ABC" tai "ASD" (laitteen näppäimistön näppäinten viereen), jotka keksijät saattoivat yksinkertaisesti arvata. [4] Lisäksi Enigma itse salasi valitun avaimen, mikä paljasti valitun laitekokoonpanon. Toisaalta, jos käytettäisiin itsenäistä menetelmää viestin avaimen salaamiseen, Enigman sisäistä rakennetta ei voitaisi määrittää. Itse asiassa avaimen salausta ei vaadittu ollenkaan. Se voitaisiin lähettää salaamattomassa muodossa, toistaa kahdesti tai jopa kolmesti (tässä tapauksessa olisi mahdollista paitsi havaita häiriöt myös poistaa ne). Roottorirenkaiden tuntemattomasta asennosta johtuen itse roottoreiden asennolla ei ole kryptanalyytikon kannalta tärkeää tietoa. Sen sijaan avaimen tuplausmenettely antoi puolalaisille kryptanalyytikoille mahdollisuuden purkaa viestien salaus [5] .
Syyskuuhun 1938 asti kaikki yhden päivän aikana lähetetyt viestiavaimet salattiin saman päivän avaimella. Kymmeniä ellei satoja viestejä oli saatavilla päivittäin, kaikki samalla avaimella salattuina. Käyttämällä kahta saksalaisten tekemää menettelyvirhettä puolalaiset kryptanalyytikot rakensivat syklometriksi kutsutun laitteen, joka koostui kahdesta sarjaan kytketystä Enigmasta, joiden roottorien asennot siirtyivät kolmella suhteessa toisiinsa.
Syklometri antoi napojen määrittää kullekin kuudesta mahdollisesta roottorien järjestyksestä ominaispermutaatiot kullekin roottoreiden 26 3 = 17 576 alkuasennosta. Syklometri yksinkertaisti huomattavasti työlästä ja aikaa vievää työtä ominaisuuksien löytämiseksi kussakin 6 × 17 576 = 105 456 mahdollisesta tapauksesta. Saadut ominaisuudet kirjattiin luetteloon. Kuten Rejewski huomautti, ominaisuusluettelon kehittäminen "oli työlästä ja kesti yli vuoden, mutta valmistuttuaan päivittäiset avaimet saatiin selville 15 minuutissa" [6] .
Kun heijastin UKW-A korvattiin UKW-B:llä 1. marraskuuta 1937 [7] , puolalaisten kryptanalyytikoiden oli laadittava uusi ominaisuusluettelo. Mutta ennen kuin he saivat tämän prosessin päätökseen, saksalaiset muuttivat protokollaa viestiavaimen välittämiseksi [5] . Roottoreiden tietyn asennon sijaan viestiavaimen salaamiseksi käyttäjä voisi nyt valita sen mielivaltaisesti ja lähettää sen selkeässä muodossa viestin alussa [8] . Yhtäkkiä ominaisuusluettelosta tuli hyödytön, ja salaustoimisto alkoi kehittää uusia menetelmiä hyökätä Enigma-salaukseen. Tämä johti Zygalski-levyjen ja Rejewskin pommin luomiseen.
Nimen "pommi" alkuperä on edelleen mysteeri. Marian Rejewski ei muistanut sitä edes sodan jälkeen [9] . Tadeusz Lissitzkyn mukaan Rejewski, Rozhitsky ja Zygalsky söivät "pommi" -kakkua, kun Rozhitsky ehdotti laitteen nimeä. Toisen version mukaan laitteen toiminnan aikana synnyttämä ääni muistutti pommin kellokoneen tikitystä, mikä oli syy tällaiseen nimeen. Koska yksikään auto ei ole säilynyt tähän päivään mennessä, tätä versiota ei voida vahvistaa. Rejewskin itsensä mukaan "paremman vaihtoehdon puuttuessa kutsuimme niitä pommeiksi" [1] .
Pommin idea perustuu yksinomaan epäluotettavaan avainten tuplausmenettelyyn. Puolalaiset eivät tienneet roottoreiden eivätkä renkaiden asentoa. Lisäksi roottoreiden alkuasento ei ollut yksiselitteinen, vaan kryptografi valitsi sen vapaasti. Tästä huolimatta oli selvää, että istuntoavain ensin tuplattiin ja sitten salattiin. Tästä puolalaiset kryptanalyytikot saattoivat päätellä, että salatekstin ensimmäinen ja neljäs, toinen ja viides sekä kolmas ja kuudes kirjain vastasivat samoja selkeän tekstin kirjaimia. Tämä tärkeä huomautus mahdollisti haun kaavalla "123123". [kymmenen]
Enigma-salausta vastaan tehdyn hyökkäyksen teknisenä toteutuksena oli luoda sähkömekaaninen kone, joka sisälsi kuusi sarjaa Enigma-roottoreita. Puolalaiset eivät vain pystyneet kehittämään nopeasti pommin konseptia, vaan myös kokoamaan ja laittamaan ne käyttöön AVA:n (AVA Wytwórnia Radiotechniczna) tuella . Koska Enigma-roottoreita oli tuolloin kuusi eri tilausta, rakennettiin kuusi pommia, yksi jokaiselle tilaukselle. Sähkömoottorilla toimiva pommi kulki kaikkien 17 576 eri roottoriasennon läpi (AAA - ZZZ) noin 110 minuutissa [11] .
Hyökkäys koostui sellaisten paikkojen etsimisestä, joissa tietty testikirjain syötettäessä tuloskirjain täsmäsi kolme eteenpäin siirretyn paikan lähtökirjain. Koska jokaisessa pommissa oli kuusi roottorisarjaa, oli mahdollista testata kolmea viestiä samanaikaisesti. Etsimme paikkoja, joissa kaikilla kolmella parilla oli samat kirjaimet. [yksi]
Tällainen yhteensattuma tapahtui melko harvoin, ja se oli vahva merkki onnistumisesta, eli määritti oikein roottoreiden järjestyksen ja renkaiden asennon. Mutta myös epäonnistumisia oli odotettavissa, sellaiset asetukset, jotka antavat myös kirjainten pareittain vastaavuuksia, mutta jotka eivät ole avainasemassa. [10] Keskimäärin yksi vika oli roottorin asentoa kohden. Puolalaiset kryptanalyytikot käyttivät erityisesti suunniteltuja Enigma-kopioita havaitakseen vikoja ja löytääkseen oikeita liitäntöjä. Ne viritettiin käyttämällä mahdollista roottoreiden järjestystä ja pommista saatujen renkaiden asentoa. [kymmenen]
Lopulta viestin tekstin salaus yritettiin purkaa. Jos saksankielinen teksti oli jäljitetty, se tarkoitti, että roottoreiden järjestys, renkaiden asennot ja ainakin osa paneelin tulpista määritettiin oikein. Jäi lopuksi määrittämään paneelin jäljellä olevat liitännät ja ehkä muuttaa hieman renkaiden asetuksia. Tämän jälkeen päiväavain määritettiin täysin ja viestien salaus oli mahdollista purkaa.
Pommin erityinen käyttö voidaan osoittaa seuraavalla esimerkillä. Oletetaan, että käytettiin avainten tuplausmenettelyä, kuten 15.9.1938 alkaen. Oletetaan päivänäppäimeksi roottoreiden järjestys "B123", roottorin renkaiden sijainti "abc" ja pistotulpat "DE", "FG", "HI", "JK" ja "LM" ". Käyttäjä valitsi satunnaisesti aloituspaikan, kuten "BVH", ja viestinäppäimen, kuten "WIK". Kuten aiemmin selitettiin, viestiavain kaksinkertaistettiin ja salattiin valitulla päiväavaimella ja roottoreiden alkuasennolla. Tuloksena (joka voidaan varmentaa vapaasti saatavilla olevilla Enigma-simulaattoreilla) on salattu viestiavain, joka lähetetään yhdessä salaamattoman aloituspaikan kanssa salatekstin ilmaisimena, tässä esimerkissä "BVH BPLBKM".
Kryptanalyytikkojen oli ensin siepattava mahdollisimman monta viestiä ja otettava huomioon indikaattorit kussakin tapauksessa. Tavoitteena oli löytää kolme salattua viestiavainta, joissa ensimmäinen ja neljäs, toinen ja viides sekä lopuksi kolmas ja kuudes kirjain täsmäävät. [1] Yllä oleva esimerkki täyttää tämän ehdon. Vielä on löydettävä kaksi indikaattoria, joissa toinen ja viides tai kolmas ja kuudes kirjain ovat myös "B".
Periaatteessa kolmen identtisen kiinteän pisteen etsimisen sijaan (kuten parillisia kirjaimia kutsuttiin kaksinkertaistetussa ja salatussa avaimessa) [10] , voitaisiin käyttää kolmea eri pistettä. Tämä helpottaisi sopivien indikaattoreiden löytämistä, koska kolmen eri parin indikaattorit ovat yleisempiä. Kytkinpaneelin läsnäolon vuoksi parit kuitenkin muunnetaan ennen paneelin läpikulkua ja sen jälkeen puolalaisten tuntemattomalla tavalla. Oli tarpeen valita onnistuneesti kirjain, joka ei muutu paneelissa (itseliittyvä) [12] , muuten salauksen purku epäonnistuu. Viiden tai kahdeksan paneelin johdolla, kuten vuonna 1938 oli tapana, onnistuneen hakkeroinnin todennäköisyys on 50%. Toisaalta, kun käytetään kolmea eri paria, tämä todennäköisyys putoaa 12,5 prosenttiin [10] . Tästä syystä puolalaiset valitsivat harvinaisemman mutta tehokkaamman yhdistelmän kolmesta identtisestä kiinteästä pisteestä.
Oletetaan, että useiden saksalaisten viestien sieppauksen jälkeen löydettiin myös ilmaisimet "DCM WBVHBM" ja "EJX NVBUUB". Siten on olemassa kolmen yhteneväisen kiinteän pisteen joukko:
1) BVH B PL B KM 2) DCM W B VH B M 3) EJX NV B UU B |
Paremman ymmärtämisen vuoksi roottoreiden kahden asennon välisen eron (tai etäisyyden) käsite tulisi ottaa käyttöön. Ei tiedetä varmasti, kuinka salaustoimiston paikat numeroitiin. Britit Bletchley Parkissa käyttivät seuraavaa käytäntöä: jokainen paikka vastasi kolminumeroista lukua 26-numerojärjestelmässä , jossa "Z" oli nolla, "A" oli yksi ja niin edelleen, kunnes "Y" oli 25. [13] Sitten näiden kahden paikan välinen ero oli niiden numeroiden välinen ero. Esimerkissämme ero paikkojen "BVH" ja "DCM" välillä on "AGE" ja "DCM" ja "EJX" - "AGK".
Murtaakseen Enigman kryptanalyytikot asettivat pommeja seuraavalla tavalla. Jokainen kuudesta koneesta vastasi eri roottoreita, joista yksi on haluttu "B123"-versio. Kuusi roottorisarjaa yhdessä pommissa muodosti kolme paria. Roottoreiden välinen etäisyys yhdessä parissa oli kolme, ja parien välinen etäisyys vastasi siepattujen viestien konfiguraatioiden välisiä etäisyyksiä. [14] Sitten moottori käynnistettiin, ja kaikki 17 576 sijaintia saavutettiin alle kahdessa tunnissa.
Tavoitteena oli löytää paikat, joissa kaikki pommin roottorisarjat antavat saman kirjaimen vastaavassa paikassa. Tällainen ottelu tarkistettiin yksinkertaisella releellä [10] . Yllä olevassa esimerkissä roottorilla "B123" ja testikirjaimella "B" saadaan vain kaksi asentoa. Ensimmäinen osoittautuu huijaukseksi, ja toinen antaa kolme alkuasemaa (vielä normalisoituna "aaa"-renkaiden asentoon) "BUF", "DBK" ja "EIV".
Yksinkertaisesti etsimällä eroa löydettyjen asemien ja pysäytettyjen osoittimien asentojen välillä ja summaamalla se "aaa", roottorin renkaiden asema voidaan määrittää. [15] Yllä olevassa esimerkissä tulos on "abc" kaikissa kolmessa tapauksessa.
Tuloksena saadut roottoreiden paikat, renkaiden asennot ja roottoreiden alkuasennot asetettiin Enigma-kopiossa, ja viestien tulkintayritykset antoivat seuraavat tulokset:
1) BVH BPLBKM → W HH W SF 2) DCM WBVHBM → H P DI P Z 3) EJX NVBUUB→ EHAEHA |
Haluttu kuvio "123123" näkyy jo kolmannessa tapauksessa, mutta toistaiseksi tulos ei välttämättä ole oikea. Syynä tähän on edelleen tyhjä kytkintaulu. Viimeinen tehtävä oli määrittää tämä saksalaisten käyttämä asetus (viidestä kahdeksaan johtoa). Selkeää hakualgoritmia ei ollut, vaan sellaisen asetuksen löytämiseen käytettiin yritys-erehdysmenetelmää, jossa kaikissa kolmessa tapauksessa saatiin viesti muotoa "123123". [14] Hyvä tapa toimia olisi yhdistää kirjaimet, jotka eivät vielä täsmää, pareittain, esimerkiksi "H" ja "I" toisessa tapauksessa. Tämä parantaa mahdollista viestiavainta "HPDIPZ":stä "IPDIPZ:ksi". Yhden parin sijasta on nyt kaksi paria. Tämä on vahva merkki oikein määritellystä yhteydestä. Toinen lupaava yritys on yhdistää vastaavat salatekstikirjaimet selkokielisten kirjainten sijaan. Kuten tiedät, virta kulkee paneelin läpi kahdesti, kerran pelkkänä tekstinä, kerran roottoreiden läpikulun jälkeen. Esimerkiksi ensimmäisessä tapauksessa mahdollisen viestiavaimen "WHHWSF" kolmas ("H") ja kuudes ("F") eivät täsmää. "FH"-yhteys ei paranna tilannetta. Toisaalta kolmannen ja kuudennen salatekstin kirjaimen ("L" ja "M") ketjuttaminen johtaa "WHYWSY". Jälleen, pari identtisiä salatekstikirjaimia vastaa nyt paria identtisiä selväkielisiä kirjaimia, mikä tarkoittaa, että yksi lisäpaneeliyhteys on määritetty oikein. Nyt, kun parit "HI" ja "LM" on kytketty, dekoodaus ensimmäisessä tapauksessa antaa tekstin "WIJWSJ" ja toisessa - "IPDIPD", jossa kuvio "123123" on jo jäljitetty. Kun yhteys "JK" tunnistetaan oikein, mikä voidaan arvata tuloksena olevista kirjaimista, myös ensimmäinen viesti purettuna täyttää halutun kuvion ja viestiavain "WIKWIK" murtuu lopullisesti. Kaksi viimeistä yhteyttä "DE" ja "FG" löytyvät yrittämällä purkaa viesti roottoreiden alkuasennon "WIK" avulla, minkä jälkeen Enigman päivittäiset asetukset lopulta löytyvät ja loput viestit purkamalla ei ole vaikeaa.
Kuusi pommia auttoivat puolalaisia jatkamaan viestien tulkintaa sen jälkeen, kun roottorien vapaa alkutila otettiin käyttöön 15. syyskuuta 1938. Kuitenkin 15. joulukuuta 1938 ilmaantui uusi ongelma. Saksalaiset alkoivat käyttää kahta uutta roottoria (IV ja V). Tämän seurauksena roottoreiden eri asentojen määrä on kasvanut kuudesta (=3•2•1) kuuteenkymmeneen (=5•4•3) [5] . 6•17'576=105'456 mahdollisen paikan sijaan niiden määrä kymmenkertaistui ja alkoi ylittää miljoonan. Yhtäkkiä tuli tarpeelliseksi käyttää 60 pommia, jotka ylittivät huomattavasti puolalaisten kyvyt.
Vain kaksi viikkoa myöhemmin, vuosien 1938/1939 vaihteessa, alkoi tapahtua toinen asioiden komplikaatio, joka aiheutti puolalaisille paitsi määrällisiä, myös laadullisia ongelmia. Sen sijaan, että käyttivät viidestä kahdeksaan kytkentätaulua (ja siten 10:stä 16 kirjaimeen), saksalaiset alkoivat käyttää 1. tammikuuta 1939 alkaen 7-10 yhteyttä. Näin ollen 26 Enigma-kirjaimesta vain kuudesta kahteentoista kirjainta jäi yhdistämättä. Kun otetaan huomioon, että paneelia käytettiin kahdesti muutoksessa, tämä heikensi merkittävästi (kerroin kaksinkertaisesti) mahdollisuutta saada "saapumaan" kirje, johon paneeli ei vaikuttanut, mikä heikensi suuresti pommien tehoa, ja vuoden 1939 alusta lähtien ne tuskin osallistuivat. Enigma-päivänäppäinten määrittämiseen. Lopulta, kun viestiavaimen kaksinkertaistamisesta hylättiin 1. toukokuuta 1940, idea "pommista" muuttui täysin hyödyttömäksi [10] [16] .
Tähän aikaan "pommeja" ei kuitenkaan enää ollut: syyskuussa 1939, Saksan Puolaan miehityksen jälkeen , kryptanalyytikot pakotettiin tuhoamaan koneet ja pakenemaan Varsovasta [7] .
26.-27. heinäkuuta 1939 puolalaisten, ranskalaisten ja brittiläisten kryptanalyytikoiden tapaaminen pidettiin Pyryssä , 20 km Varsovasta etelään [17] . Siinä puolalaiset jakoivat kollegoidensa kanssa menetelmänsä hyökätä Enigma-salaukseen, kaksi kopiota laitteesta sekä piirustuksia syklometristä ja pommista. Tämän tiedon perusteella Alan Turing kehitti uuden Enigma- murtokoneen nimeltä pommi . Toisin kuin puolalaisen "pommin", sen toimintaperiaate ei perustunut saksalaisen viestinvälitysprotokollan haavoittuvuuksiin, vaan itse Enigman haavoittuvuuksiin. Bombella , toisin kuin puolalaisilla koneilla, oli enemmän prosessointitehoa ja se työskenteli tehokkaammalla algoritmilla kuin raakaa voimaa, ja se pystyi myös purkamaan viestien salauksen, vaikka kaikkia 13 patch-paneelin yhteyttä käytettäisiin [18] .
Sanakirjat ja tietosanakirjat |
---|
Toisen maailmansodan kryptografia | |
---|---|
Organisaatiot | |
Persoonallisuudet | |
Salauslaitteet ja salauslaitteet |
|
Kryptanalyyttiset laitteet |
Puolan tietokoneet | |
---|---|
Nolla sukupolvi | |
Analoginen | |
Analoginen-digitaalinen |
|
Keskusyksiköt | |
minitietokoneita | |
Mikrotietokoneet |
|
Kotitekoinen |
|
Henkilökohtainen |
|
Ohjauslaitteet |
|