Enigma-chifferet var ett fältchiffer som användes av tyskarna under andra världskriget. Enigma är en av de mest kända krypteringsmaskinerna i historien. Den första Enigma-maskinen uppfanns av en tysk ingenjör vid namn Arthur Scherbius i slutet av första världskriget. Den har använts kommersiellt sedan början av 1920-talet och användes även av militären och statliga tjänster i ett antal länder, inklusive Tyskland, före och under andra världskriget för att överföra kodade meddelanden. Många olika Enigma-modeller har producerats, men den tyska militärmodellen och det tyska "Enigma"-chifferet är de mest kända och diskuterade.
Cracking the Enigma-chiffer under andra världskriget
Vissa historiker tror att brytningen av Enigma-chifferet var den viktigaste segern för de allierade makterna under andra världskriget. Enigma-maskinen möjliggjorde miljarder sätt att koda meddelanden, vilket gjorde det otroligt svårt för andra länder att bryta tyska koder under andra världskriget. Ett tag verkade koden osårbar. Sedan Alan Turing ochandra forskare utnyttjade flera brister i implementeringen av Enigma-koden och fick tillgång till tyska kodböcker, så att de kunde skapa en maskin som heter Bombe. Hon hjälpte till att bryta de svåraste versionerna av Enigma. Polen 2007 gav ut ett mynt för att hedra 75-årsdagen av att ha brutit Enigma-chifferet - 2 złoty från nordligt guld. I mitten finns Polens vapen, och i en cirkel finns en Enigma-hjul-relle.
Meningen av att bryta chifferet för allierade
Vissa historiker tror att Enigma-hacket var den enskilt viktigaste segern för de allierade makterna under andra världskriget. Med hjälp av informationen som de dechiffrerade från tyskarna kunde de allierade förhindra många attacker. Men för att undvika misstankar om att de hittat ett sätt att dechiffrera meddelandena var de allierade tvungna att tillåta vissa attacker, trots att de hade kunskapen att stoppa dem. Detta beskrivs i filmen "The Imitation Game", som släpptes 2014.
Maskin "Enigma": beskrivning, komponenter
Enigma-maskinen består av flera delar, inklusive tangentbordet, kortet, rotorerna och interna elektroniska kretsar. Vissa av dem har ytterligare funktioner. Kodade meddelanden var en uppsättning bokstäver som förvandlades till en tydlig mening när de dechiffrerades. Enigma-maskiner använder en form av substitutionskryptering. Substitutionskryptering är ett enkelt sätt att koda meddelanden, men sådana koder är ganska lätta att bryta. Men Enigma-maskinen är designad så att rätt rotor avanceraren position direkt efter att du tryckt på enter-tangenten. Således börjar krypteringen av bokstäverna faktiskt medan rotorerna är i positionen före AAA. Vanligtvis är denna position AAZ.
Hur Enigma-chifferet fungerar
Ett enkelt exempel på ett substitutionskrypteringsschema är Caesar-chifferet. Det består i att ändra platsen för varje bokstav i alfabetet. Till exempel, när den förskjuts med 3 platser, kommer bokstaven A att ta platsen för G. Men Enigma-maskinchifferet var utan tvekan mycket kraftfullare än det enkla Caesar-chifferet. De använder en form av substitutionschiffer, men varje gång en bokstav matchades mot en annan ändrades hela kodningsschemat. Varianter av Enigma-chiffer - på bilden nedan.
Efter att ha tryckt på varje knapp rör sig rotorerna och riktar strömmen i en annan väg till en annan öppen bokstav. För den första tangenttryckningen genereras således en kodning och för den andra tangenttryckningen en annan. Detta ökar antalet möjliga kodnings alternativ avsevärt, eftersom varje gång en tangent trycks på Enigma-maskinen, roterar rotorerna och koden ändras.
Principen för Enigma-maskinen
När en tangent trycks ned på tangentbordet, flyttas en eller flera rotorer för att bilda en ny rotorkonfiguration som kommer att koda en bokstav som en annan. Ström flyter genom maskinen och en lampa på lampkortet tänds för att indikera utgående bokstav. Ett exempel på ett Enigma-chiffer såg ut så här: om P-tangenten trycks ned och Enigma-maskinen kodar denna bokstav som A, pålamppanelen kommer att lysa A. Varje månad fick Enigma-operatörer kodböcker som angav vilka inställningar som skulle användas varje dag.
Krypteringsschema
Kretsen liknade en gammaldags telefonpatchpanel som har tio ledningar, med två ändar i varje ledning som kan kopplas in i ett uttag. Varje kontaktkabel kan koppla ihop två bokstäver genom att ansluta ena änden av kabeln till en bokstavsöppning och den andra änden till den andra bokstaven. De två bokstäverna i paret kommer att bytas, så om B är ansluten till G, blir G B och B blir G. Detta ger ett extra lager av kryptering för militären.
Meddelandekodning
Varje maskinrotor har 2626 siffror eller bokstäver. Enigma-maskinen kan använda tre rotorer åt gången, men dessa kan ändras från fem uppsättningar, vilket resulterar i tusentals möjliga konfigurationer. "Nyckeln" till Enigma-chifferet består av flera element: rotorerna och deras ordning, deras initiala positioner och förskjutningsschemat. Om vi antar att rotorerna rör sig från vänster till höger, och bokstaven A ska krypteras, så är varje rotor i sin ursprungliga position - AAA, när bokstaven A är krypterad. När rotorerna rör sig från vänster till höger kommer tecknet A att gå igenom den tredje först. Varje rotor utför en ersättningsoperation. Därför, efter att tecknet A passerat genom den tredje, kommer det ut som B. Nu matas bokstaven B in genom den andra rotorn, där den ersätts med J, och i den första ändras J till Z. Efter att Enigma-chifferet passerargenom alla rotorerna går den till deflektorn och går igenom ytterligare en enkel byte.
Nyckel för att dekryptera meddelanden
Efter att ha lämnat reflektorn skickas meddelandet genom rotorerna i motsatt riktning, med omvänd ersättning tillämpad. Efter det kommer symbolen A att förvandlas till U. Varje rotor, på fälgen, har ett alfabet, så att operatören kan ställa in en viss sekvens. Till exempel kan operatören rotera den första rotorn för att visa D, rotera den andra för att visa K och rotera den tredje luckan för att visa P. Med den första uppsättningen av tre siffror eller bokstäver visade på avsändarens maskin när han började skriva meddelandet, kan mottagaren avkoda den genom att ställa in dess identiska Enigma-maskin till de ursprungliga avsändarinställningarna.
Nackdelar med Enigmas krypteringsmetod
Den största nackdelen med Enigma-chifferet var att bokstaven aldrig kunde kodas som den är. Med andra ord kommer A aldrig att kodas som A. Detta var ett stort fel i Enigma-koden eftersom den gav en bit information som kunde användas för att dekryptera meddelanden. Om avkodare kunde gissa ordet eller frasen som sannolikt skulle förekomma i meddelandet, skulle denna information hjälpa dem att dechiffrera koden. Eftersom tyskarna alltid skickade vädermeddelandet i början och vanligtvis inkluderade en fras med sin traditionella hälsning i slutet av meddelandet, fann man fraser som ungefäravkodare att riva upp.
Alan Turing och Gordon Welchmans bil
Alan Turing och Gordon Welchman utvecklade en maskin som heter Bombe som använde elektriska kretsar för att dechiffrera ett Enigma-kodat meddelande på mindre än 20 minuter. Bombe-maskinen försökte fastställa rotorinställningarna och Enigma-maskinens kretsar som användes för att skicka ett givet kodat meddelande. Det brittiska standardfordonet Bombe var i huvudsak 36 Enigma-fordon kopplade samman. Således modellerade hon flera Enigma-maskiner på en gång.
Hur bomben såg ut
De flesta Enigma-maskiner hade tre rotorer, och var och en av Enigma-simulatorerna i Bombe hade tre trummor, en för varje rotor. Bombes trummor var färgkodade för att matcha rotorn de simulerade. Trummorna var arrangerade så att toppen av de tre simulerade Enigmas vänstra rotor, den mellersta simulerade mittrotorn och den nedre simulerade den högra rotorn. För varje fullständig rotation av de övre hjulen ökades de mellersta hjulen med en position, samma sak hände med de mittersta och nedre hjulen, vilket gav det totala antalet positioner till 17 576 positioner för Enigma-maskinen med 3 rotorer.
Dekoderarbete
För varje rotorkonfiguration, vid varje varv av trummorna, gjorde Bombe-maskinen ett antagande om kretsuppsättningen, till exempel att A är ansluten till Z. Om antagandet visade sig vara falskt, avvisade maskinen den och använde den inte igen och spenderade inte tid på att kontrolleranågon av dessa senare. Bombe-maskinen ändrade rotorpositionerna och valde en ny gissning och upprepar denna process tills ett tillfredsställande inställningsarrangemang visas. Om maskinen "gissade" att A var ansluten till Z, så förstod den att B måste vara ansluten till E, och så vidare. Om testet inte resulterade i en motsägelse, skulle maskinen stanna och avkodaren skulle använda den valda konfigurationen som nyckel till meddelandet.