A kriptológiai bomba ( lengyelül Bomba kryptologiczna ) Marian Rejewski lengyel kriptológus által javasolt berendezés, amelyet 1938 -ban fejlesztettek ki két matematikustársával, Jerzy Rozickival és Henryk Zygalskival a németek által Enigma segítségével titkosított üzenetek szisztematikus dekódolására . A gép létrehozásának előfeltétele a németek által használt kulcs megkettőzésének megbízhatatlan eljárása volt, amely lehetővé tette az Enigma napi beállításainak meghatározását [1] .
Az Enigma 1917-es feltalálása után 1930-tól ezt az innovatív titkosítási módszert rendszeresen alkalmazták Németországban. Szomszédai, különösen Franciaország , Nagy-Britannia és Lengyelország gyanakodtak rá, különösen a nácik hatalomra jutása után, amikor az Enigma kulcsszerepet kezdett játszani a Wehrmacht újrafegyverkezésében. Annak ellenére, hogy a francia és brit kriptoanalitikusok nem tudták feltörni, és feltörhetetlennek minősítették [2] , a 27 éves lengyel matematikus , Marian Rejewski már 1932-ben fel tudta törni az Enigmát [3] , miután az üzenetben komoly sebezhetőséget fedezett fel. küldési eljárás.
Az üzenetek Enigma segítségével történő megfejtéséhez több paraméter ismeretére volt szükség: a rotorok sorrendjének, kezdeti helyzetének, a rotorgyűrűk helyzetének és a dugaszolólap csatlakozásainak ismeretében. A forgórészek pozíciói egy hárombetűs kulcs (pl. "PDN") voltak, és a nappali gomb részét képezték. A nagyobb biztonság érdekében azonban minden egyes üzenetet egy további kulcsmódosítással titkosítottak. A kezelő véletlenszerűen választotta ki a rotor beállításait minden egyes üzenethez (például "PDN"). Ennek az üzenetnek a kulcsát kétszer írták be ("PDNPDN"), és az adott nap kulcsával titkosították. A kezelő ezután visszaállította a gépet az üzenetgombra, amelyet később használt. [1] Mivel az Enigma belső huzalozása minden billentyűleütéssel megváltozott, az ismétlődés nem lesz látható a rejtjelezett szövegben, mivel ugyanazok a nyílt szövegű betűk különböző rejtjelezett betűkké lesznek kódolva (például a „PDNPDN” „ZRSJVL”-vé válhat).
A kulcs megismétlése, majd titkosítása helyett a németek egyszerűen titkosíthatták az üzenetkulcsot, és kétszer egymás után elküldhetik (pl. „ZRSZRS”), vagy az üzenet elején és végén. Ez továbbra is eléri a hibaészlelési képesség kívánt redundanciáját . Ez azonban nyilvánvaló hátrány lenne, mivel a gyanús ismétlés felkeltené a kriptoanalitikusok figyelmét. Az ilyen helyzet megelőzése érdekében első pillantásra megbízható lehetőséget kezdtek használni a kulcs másolásával és az azt követő titkosítással, mivel a rejtjelezett szöveg ismétlődése nem volt észrevehető. Valójában ez a módszer durva kriptográfiai hibához vezetett.
Azt is érdemes megjegyezni, hogy a készülék kezelője szabadon választhatta meg a kulcsot. Ők, különösen stresszes helyzetekben, nagyon egyszerű billentyűket választottak. A kívánt véletlenszerű billentyű helyett gyakran olyan egyszerű betűkombinációkat választottak, mint az "AAA", "ABC" vagy "ASD" (a készülék billentyűzetének billentyűi mellett), amelyeket a roppant egyszerűen kitalálhattak. [4] Ezenkívül a kiválasztott kulcsot maga az Enigma titkosította, ami felfedte a kiválasztott eszközkonfigurációt. Másrészt, ha az üzenetkulcs titkosítására független módszert alkalmaznának, az Enigma belső szerkezetét nem lehetne meghatározni. Valójában a kulcs titkosítására egyáltalán nem volt szükség. Titkosítatlan formában sugározható, kétszer vagy akár háromszor is megismételhető (ilyenkor nemcsak az interferencia észlelése, hanem azok megszüntetése is lehetséges lenne). A rotorgyűrűk ismeretlen helyzete miatt maguk a rotorok helyzete nem hordoz semmilyen fontos információt a kriptoanalizátor számára. Ehelyett a kulcskettőzési eljárás lehetővé tette a lengyel kriptoanalitikusok számára az üzenetek visszafejtését [5] .
1938 szeptemberéig az egy napon továbbított összes üzenetkulcsot ugyanazon a napon kódolták. Naponta több tucat, ha nem több száz üzenet volt elérhető az éterben, mindegyik ugyanazzal a kulccsal titkosítva. A németek által elkövetett két eljárási hiba felhasználásával a lengyel kriptoanalitikusok megszerkesztettek egy ciklométernek nevezett eszközt, amely két sorba kapcsolt Enigmából állt, és a rotorok helyzete háromszor eltolódott egymáshoz képest.
A ciklométer lehetővé tette a pólusok számára, hogy a forgórészek hat lehetséges sorrendjének mindegyikére meghatározzák a jellemző permutációkat a rotorok 26 3 = 17 576 kezdeti helyzetéhez. A ciklométer nagymértékben leegyszerűsítette a karakterisztikák megtalálásának fáradságos és időigényes munkáját a 6 × 17 576 = 105 456 lehetséges esetben. A kapott jellemzőket a katalógusban rögzítettük. A funkciókatalógus fejlesztése, amint Rejewski megjegyezte, "fárasztó volt és több mint egy évig tartott, de miután elkészült, a napi kulcsokat 15 perc alatt meg lehetett határozni" [6] .
Miután 1937. november 1-jén az UKW-A reflektort UKW-B-re cserélték [7] , a lengyel kriptaelemzőknek új jellemzőkatalógust kellett összeállítaniuk. Mielőtt azonban befejezhették volna ezt a folyamatot, a németek megváltoztatták az üzenetkulcs átadásának protokollját [5] . Az üzenetkulcs titkosítására szolgáló forgórészek bizonyos pozíciója helyett a kezelő most tetszőlegesen választhatja azt, és az üzenet elején áttekinthető formában továbbíthatja [8] . Hirtelen a funkciókatalógus használhatatlanná vált, és a Cipher Bureau új módszereken kezdett dolgozni az Enigma rejtjelezés elleni küzdelemben. Ez vezetett a Zygalski-lapok és a Rejewski-bomba létrehozásához.
A "bomba" név eredete továbbra is rejtély. Marian Rejewski még a háború után sem emlékezett rá [9] . Tadeusz Lissitzky szerint Rejewski, Rozhitsky és Zygalsky egy "bomba" tortát evett, amikor Rozsickij javasolta az eszköz nevét. Egy másik változat szerint az eszköz által működés közben kiadott hang egy bomba óraszerkezetének ketyegésére emlékeztetett, ez volt az oka az ilyen elnevezésnek. Mivel a mai napig egyetlen autó sem maradt fenn, ez a verzió nem ellenőrizhető. Maga Rejewski szerint "jobb lehetőség híján bombáknak neveztük őket" [1] .
A bomba ötlete kizárólag a megbízhatatlan kulcskettőzési eljáráson alapul. A lengyelek nem ismerték sem a rotorok, sem a gyűrűk helyzetét. Ezenkívül a rotorok kezdeti helyzete nem volt egyértelmű, hanem a kriptográfus szabadon választotta meg. Ennek ellenére egyértelmű maradt, hogy a munkamenet kulcsát először megduplázták, majd titkosították. Ebből a lengyel kriptaelemzők arra a következtetésre jutottak, hogy a titkosított szöveg első és negyedik, második és ötödik, valamint harmadik és hatodik betűje a nyílt szöveg azonos betűinek felel meg. Ez a fontos megjegyzés lehetővé tette a keresést az "123123" mintával. [tíz]
Az Enigma rejtjel elleni támadás technikai végrehajtása egy elektromechanikus gép létrehozása volt, amely hat Enigma rotort tartalmazott. A lengyelek nemcsak a bomba koncepcióját tudták gyorsan kidolgozni, hanem az AVA (AVA Wytwórnia Radiotechniczna) támogatásával össze is szerelték és üzembe helyezték azokat . Mivel abban az időben hat különböző rendű Enigma rotor létezett, hat bombát építettek, minden megrendeléshez egyet. A villanymotorral hajtott bomba körülbelül 110 perc alatt bejárta mind a 17 576 különböző rotorpozíciót (AAA-tól ZZZ-ig) [11] .
A támadás olyan pozíciók kereséséből állt, ahol egy bizonyos tesztbetű beírásakor a kimeneti betű megegyezett a hárommal előre mozgott pozíció kimeneti betűjével. Mivel minden bombának hat rotorkészlete volt, három üzenetet lehetett egyszerre tesztelni. Olyan pozíciókat kerestünk, ahol mindhárom párnak ugyanaz a betűje volt. [egy]
Ilyen egybeesés elég ritkán fordult elő, és erős jele volt a sikernek, vagyis helyesen határozták meg a rotorok sorrendjét és a gyűrűk helyzetét. De számítani lehetett kudarcokra is, olyan beállításokra, amelyek a betűk páronkénti egyezését is adják, de nem ezek a kulcsok. [10] Rotorhelyzetenként átlagosan egy hiba történt. A lengyel kriptoanalitikusok speciálisan tervezett Enigma replikákat használtak a hibák észlelésére és a megfelelő dugaszolócsatlakozások megtalálására. Hangolásuk során a rotorok lehetséges sorrendjét és a bombából nyert gyűrűk helyzetét használták fel. [tíz]
Végül megpróbálták visszafejteni az üzenet szövegét. Ha a német nyelvű szöveget nyomon követték, akkor ez azt jelentette, hogy a rotorok sorrendje, a gyűrűk helyzete és legalább a paneldugók egy része helyesen lett meghatározva. Maradt, hogy végre meghatározzuk a panel fennmaradó csatlakozásait, és talán kissé módosítsuk a gyűrűk beállítását. Ezt követően a nap kulcsa teljesen megtörtént, és lehetőség nyílt az üzenetek visszafejtésére.
A bomba konkrét felhasználását a következő példa szemlélteti. Tegyük fel, hogy az 1938. szeptember 15-i időszakhoz hasonlóan a kulcskettőzési eljárást alkalmazták. Tegyük fel, hogy a nap gombja a rotorok sorrendje "B123", a rotorgyűrűk helyzete "abc", a csatlakozódugók pedig "DE", "FG", "HI", "JK" és "LM" ". A kezelő véletlenszerűen kiválasztott egy kezdőpozíciót, például "BVH" és egy üzenetbillentyűt, például "WIK". Amint azt korábban kifejtettük, az üzenetkulcsot megduplázták, és a választott napi kulccsal és a rotorok kezdeti helyzetével titkosították. Az eredmény (amely a szabadon elérhető Enigma szimulátorokkal ellenőrizhető) egy titkosított üzenetkulcs, amelyet a titkosítatlan kezdőpozícióval együtt küldünk el rejtjelezett szöveg jelzőként, ebben a példában "BVH BPLBKM".
A kriptoanalitikusoknak először a lehető legtöbb üzenetet kellett elkapniuk, és minden esetben figyelembe kellett venniük a mutatókat. A cél az volt, hogy három olyan titkosított üzenetkulcsot találjanak, amelyekben az első és a negyedik, a második és az ötödik, végül a harmadik és a hatodik betű egyezik. [1] A fenti példa eleget tesz ennek a feltételnek. Még két mutatót kell találni, ahol a második és ötödik vagy harmadik és hatodik betű is "B".
Elvileg három azonos fix pont keresése helyett (ahogy a páros betűket a duplázott és titkosított kulcsban hívták) [10] három különböző pont használható. Ez megkönnyítené a megfelelő indikátorok megtalálását, mivel gyakoribbak a három különböző páros mutatók. A kapcsolópanel jelenléte miatt azonban a párok a panel áthaladása előtt és után a lengyelek számára ismeretlen módon konvertálódnak. Olyan betűt kellett sikeresen kiválasztani, amely nem változik a panelen (öndugós) [12] , különben a visszafejtés meghiúsul. Öt-nyolc panelvezetékkel, ahogy az 1938-ban szokás volt, a sikeres feltörés valószínűsége 50%. Másrészt, ha három különböző párt használunk, ez a valószínűség 12,5%-ra csökken [10] . Emiatt a lengyelek három egyforma fix pont ritkább, de hatékonyabb kombinációját választották.
Tegyük fel, hogy több német üzenet lehallgatása után a "DCM WBVHBM" és az "EJX NVBUUB" jelzőket is megtalálták. Így van egy három egybeeső fix pont halmaza:
1) BVH B PL B KM 2) DCM W B VH B M 3) EJX NV B UU B |
A további megértés érdekében be kell vezetni a forgórészek két helyzete közötti különbség (vagy távolság) fogalmát. Nem tudni biztosan, hogy a Cipher Bureau-ban hogyan voltak számozva a pozíciók. A Bletchley Park britek a következő konvenciót alkalmazták: minden pozíció egy háromjegyű számnak felelt meg a huszonhatos számrendszerben , ahol „Z” nulla, „A” egy, és így tovább, amíg „Y” 25 nem lesz. [13] Ekkor a két pozíció közötti különbség a megfelelő számok különbsége volt. Példánkban a „BVH” és „DCM” pozíciók közötti különbség „AGE”, a „DCM” és „EJX” pozíciók között pedig „AGK” lesz.
Az Enigma megtörésére a kriptaelemzők a következő módon állítanak fel bombákat. Mind a hat gép különböző sorrendű rotoroknak felelt meg, amelyek közül az egyik a kívánt "B123" változat. Hat rotorkészlet egy bombán három párat alkotott. A rotorok közötti távolság egy párban három, a párok közötti távolság pedig megfelelt az elfogott üzenetekben szereplő konfigurációk közötti távolságoknak. [14] Ezután beindították a motort, és mind az 17576 pozíciót kevesebb mint két óra alatt sikerült elérni.
A cél az volt, hogy olyan pozíciókat találjunk, ahol a bombában lévő összes rotorkészlet ugyanazt a betűt adja a megfelelő pozícióban. Az ilyen egyezést egy egyszerű relé segítségével ellenőrizték [10] . A fenti példában a "B123" rotorral és a "B" tesztbetűvel csak két pozíció érhető el. Az első hiányosnak bizonyul, a második pedig három kezdeti pozíciót ad (még mindig az "aaa" gyűrűk helyzetére normalizálva): "BUF", "DBK" és "EIV".
Egyszerűen megkeresve a különbséget a talált pozíciók és az elfogott mutatók pozíciói között, és "aaa"-val összegezve meghatározható a rotorgyűrűk helyzete. [15] A fenti példában az eredmény mindhárom esetben "abc".
A rotorok eredő helyzetét, a gyűrűk helyzetét és a forgórészek kezdeti helyzetét az Enigma replikában beállítottuk, és az üzenetek megfejtésére tett kísérletek a következő eredményeket adtak:
1) BVH BPLBKM → W HH W SF 2) DCM WBVHBM → H P DI P Z 3) EJX NVBUUB→ EHAEHA |
A kívánt „123123” minta már a harmadik esetben is látható, de egyelőre nem feltétlenül helyes az eredmény. Ennek oka a még üres kapcsolótábla. Az utolsó feladat ennek a németek által használt beállításnak a meghatározása volt (5-8 vezeték). Nem volt egyértelmű keresési algoritmus, ehelyett próbálkozás és hiba módszerrel kerestek egy ilyen beállítást, amelyben mindhárom esetben "123123" formátumú üzenetet kaptak. [14] Egy jó megoldás az lenne, ha a még nem egyező betűket párosítanák, például a "H" és az "I" a második esetben. Ez javítja a lehetséges üzenetkulcsot "HPDIPZ"-ről "IPDIPZ"-re. Most már két egyező pár van egy helyett. Ez a helyesen meghatározott kapcsolat erős jele. Egy másik ígéretes kísérlet a megfelelő titkosított szövegű betűk összekapcsolása az egyszerű szöveges betűk helyett. Mint ismeretes, az áram kétszer halad át a panelen, egyszer sima szöveg formájában, egyszer a rotorok áthaladása után. Például az első esetben a lehetséges "WHHWSF" üzenetkulcs harmadik ("H") és hatodik ("F") értéke nem egyezik. Az "FH" kapcsolat nem javít a helyzeten. Másrészt a harmadik és a hatodik rejtjelezett betű ("L" és "M") összefűzése "MIÉRT"-et eredményez. Ismét egy pár azonos rejtjelezett betű egy pár azonos egyszerű szöveges betűnek felel meg, ami azt jelenti, hogy még egy panelkapcsolat megfelelően lett meghatározva. Most, amikor a "HI" és az "LM" párok csatlakoztatva vannak, a dekódolás az első esetben a "WIJWSJ", a második esetben pedig az "IPDIPD" szöveget adja, ahol az "123123" minta már nyomon követhető. A kapott betűkből kitalálható "JK" kapcsolat helyes azonosításával az első üzenet dekódoláskor is kielégíti a kívánt mintát, és a "WIKWIK" üzenetkulcs végül feltörik. Az utolsó két „DE” és „FG” kapcsolatot úgy találhatjuk meg, hogy megpróbáljuk megfejteni az üzenetet a „WIK” rotorok kezdeti helyzetével, ami után végre megtaláljuk az Enigma napi beállításait, és a többi üzenet megfejtésével. ne legyen nehéz.
A hat bomba segített a lengyeleknek folytatni az üzenetek megfejtését, miután 1938. szeptember 15-én bevezették a rotorok szabad kezdeti állapotát. 1938. december 15-én azonban új probléma merült fel. A németek két új rotort (IV. és V.) kezdtek használni. Ennek következtében a forgórészek különböző pozícióinak száma hatról (=3•2•1) hatvanra (=5•4•3) nőtt [5] . A 6•17'576=105'456 lehetséges pozíció helyett számuk megtízszereződött, és kezdett meghaladni az egymilliót. Hirtelen 60 bomba használatára volt szükség, ami jelentősen meghaladta a lengyelek képességeit.
Alig két héttel később, 1938/39 fordulóján újabb bonyodalom kezdődött, amely nemcsak mennyiségi, hanem minőségi problémákat is okozott a lengyeleknél. A németek 1939. január 1-től 5-8 kapcsolótábla-csatlakozás helyett (és ezért 10-ről 16-ra változtak) 7-10 kapcsolatot kezdtek el használni. Így a 26 Enigma-levélből csak hat-tizenkét levél maradt kapcsolat nélkül. Tekintettel arra, hogy a panelt kétszer használják az átalakítás során, ez jelentősen (kétszeresére) rontotta a panel által nem befolyásolt levél "elkapásának" esélyét, ami nagymértékben csökkentette a bombák hatékonyságát, és 1939 elejétől alig járultak hozzá. az Enigma nappali billentyűk meghatározásához. Végül az üzenetkulcs 1940. május 1-jei megkettőzésének feladásával a "bomba" ötlete teljesen használhatatlanná vált [10] [16] .
Ekkor azonban már nem léteztek "bombák": 1939 szeptemberében, Lengyelország német inváziója után , a kriptaelemzők kénytelenek voltak megsemmisíteni a gépeket és elmenekülni Varsóból [7] .
1939. július 26-27-én a Varsótól 20 km-re délre fekvő Pyryben lengyel, francia és brit kriptaelemzők találkozójára került sor [17] . Ezen a lengyelek megosztották kollégáikkal az Enigma-rejtjel támadásának módszereit, az eszköz két másolatát, valamint egy ciklométer és egy bomba rajzait. Ezen ismeretek alapján Alan Turing kifejlesztett egy új Enigma-törőgépet, a bombát . A lengyel "bombával" ellentétben működési elve nem a német üzenetátviteli protokoll sérülékenységein alapult, hanem magának az Enigmának a sebezhetőségein. A Bombe a lengyel gépekkel ellentétben nagyobb feldolgozási teljesítménnyel rendelkezett, és hatékonyabb algoritmuson dolgozott, mint a nyers erő, és még akkor is tudta dekódolni az üzeneteket, ha mind a 13 javítópanel-kapcsolatot használták [18] .
![]() |
---|
A második világháború kriptográfiája | |
---|---|
Szervezetek |
|
Személyiségek | |
Rejtjelek és titkosító eszközök | |
Kriptanalitikai eszközök |
lengyel számítógépek | |
---|---|
Nulla generáció | |
Analóg | |
Analóg-digitális |
|
Mainframe-ek | |
miniszámítógépek | |
Mikroszámítógépek |
|
Házi |
|
Személyes |
|
Vezérlő eszközök |
|