thumb|Enigma maskinen Enigma var en elektromekanisk chiffermaskine, som i stort omfang blev brugt af de fleste tyske militærstyrker til både kryptering og dekryptering af meddelelser. Den var let anvendelig, og koden blev anset for at være umulig at knække, hvilket var hovedårsagen til dens udbredelse. Koden blev imidlertid løst, og fortolkning af de informationer, som kodemeddelelserne indeholdt, antages at have medvirket til at afslutte 2. verdenskrig tidligere, end det ellers ville være sket. Et eksemplar af Enigma (4-hjulet) er udstillet i Skanderborg Bunkerne i Skanderborg Dyrehave.

På Bornholms Forsvarsmuseum udstilles der en 3-hjuls Enigma

På Bletchley Park blev Enigma (3-hjulet) koden løst.

Winston Churchill advarede mod at benytte dekrypteringen ukritisk for at undgå at kendskabet til koden blev afsløret.

Da tyskerne havde mistanke om at englænderne kunne læse koderne, blev en ny Enigma (4-hjulet) udviklet. At englænderne kendte koderne var en hemmelighed helt til 1960'erne.

Den engelske kodemaskine Typex og flere amerikanske, f.eks. SIGABA eller M-134-C lignede principielt Enigma, men var meget mere sikre.

Historie Enigma blev udviklet af Arthur Scherbius i forskellige versioner helt tilbage fra 1919. Han grundlagde et firma i Berlin med henblik på at fremstille maskinen, og de første kommercielle versioner kom på markedet i 1923. Adskillige eksemplarer blev købt af den tyske marine i 1926, hæren tog maskinen i brug i 1929, og den blev nu brugt af praktisk talt alle tyske militære organisationer og store dele af nazi-hierarkiet. I den tyske marine blev den kaldt "M"-maskinen.

Forskellige versioner af Enigma blev brugt til tysk (og de fleste europæiske aksemagters) radio- og telegrafkommunikation igennem krigen, og selv vejrudsigter blev krypteret med en Enigma-maskine. Både spanierne (under borgerkrigen) og italienerne (under 2. verdenskrig) siges at have brugt den kommercielle udgave uændret til militære formål. Det var uklogt, for englænderne (og sandsynligvis andre) havde haft succes med at bryde den basale kommercielle udgave.

Anvendelse Enigma-maskinen var elektromekanisk; den brugte en kombination af elektriske og mekaniske dele. Det mekaniske bestod primært af et skrivemaskinelignende tastatur, som aktiverede elektriske kontakter såvel som en gearmekanisme. Den elektriske del bestod af et batteri, som var forbundet gennem tasterne til lamper. Når en tast blev aktiveret på tastaturet, blev en af lamperne tændt.

Hjertet af grundudgaven var mekanisk og bestod af flere forbundne kodehjul. Kodehjulene bestod af flade skiver med 26 kontakter på hver side anbragt cirkulært mod kanten af skiven. Hver kontakt på den ene side af skiven var forbundet med en anden kontakt på den anden side. For eksempel var en bestemt skives første kontakt forbundet til kontakt 14 på den anden side og den anden til kontakt 22 på den anden side og så videre. Alle skiverne, som blev leveret med en Enigma, var forbundet forskelligt, og de tyske militær/parti-modeller brugte andre forbindelser mellem kontakterne end de kommercielle modeller.

Inden i maskinen var der tre "sprækker" (i de fleste varianter) i hvilke skiverne kunne placeres. Skiverne blev anbragt i "stakke" i disse sprækker, så kontakterne på "output" siden af en skive var i kontakt med "input" kontakterne på den næste. Den tredje skive var forbundet med en reflektor (unikt for Enigma-familien blandt de forskellige skive-maskiner, der blev designet i perioden) som havde faste ledninger der fødte output fra den tredje skive tilbage til andre kontakter på den tredje skive, og derfra tilbage til den første skive, men ad en anden rute.

thumb|Enigmas elektroniske panel. Her ses tastaturet på forsiden af maskinen og lamperne, de små cirkler "over" tastaturet midt på maskinen. Yderligere ses de tre stakkede skiver øverst på maskinen med tænder, der stikker frem fra overfladen og som tillader manuel indstilling.

Når en tast blev anslået på tastaturet, blev strømmen fra batteriet, der gik til det skrevne bogstav, tilledt bogstavets position på den første skive. Derfra ville den via skivens ledningssystem gå til en anden plads på skivens anden side. Derfra ville den gå over på den næste skive til endnu en ny plads, fordi denne skive måske var drejet. Derfra ville strømmen gå til den anden side af skive 2 og så videre. Når strømmen havde bevæget sig igennem skivesystemet og tilbage, ville et andet bogstav end det skrevne lyse op i lamperækkerne – og således erstatte et bogstav med et andet. Det svarer til princippet i alle substitutions-chiffer-systemer.

Fordi skiverne ændrede stilling ved hvert anslag på tastaturet, ville det samme bogstav få en ny værdi, når det blev skrevet næste gang. Når 26 bogstaver var blevet anslået, blev skiven i den næste sprække drejet af et tandhjul. Substitutionsalfabetet skiftede således med ethvert ukodet bogstav.

Endnu bedre var det, at på grund af den "tilfældige" ledningsføring på skiverne, varierede den nøjagtige rækkefølge af disse substitueringsalfabeter afhængigt af deres udgangsposition, deres rækkefølge og hvilke skiver, der var installeret i maskinen. Disse indstillinger kaldtes udgangsindstillingerne og blev distribueret i bøger en gang månedligt til at begynde med.

Maskinen var symmetrisk sådan at forstå, at dechifreringen foregik på samme måde som krypteringen: den krypterede tekst og sekvensen af de oplyste lamper svarede til klarteksten. Det virkede imidlertid kun, hvis den dechifrerende maskine var konfigureret på samme måde som den krypterende (skivesekvens, ledningernes placering, ringindstillinger og udgangsindstillinger); disse skiftede med jævne mellemrum (først månedligt, senere ugentligt, efterhånden dagligt og i visse tilfælde endnu oftere nær krigens afslutning) og blev specificeret i nøgleskemaer, som blev distribueret til enigmabrugerne.

Britisk brug af afkodede meddelelser For at sikre sig mod opdagelse, blev udtrykket "fortrolig kilde" ofte brugt over for de officerer der skulle håndtere de operationer som blev iværksat på basis af informationer tilgået fra dekrypteringen. Ofte fik operative officerer blot en ordre om at være patruljemæssigt tilstede, så afsløring af fjenden altid virkede som om det beroede på en "tilfældighed". Selv de af tyskerne tilfangetagne officerer kunne ved forhør ikke give andet indtryk.

Ved få tilfælde vovede englænderne lidt mere på grund af vigtigheden. Alle olieafskibninger fra Italien til det tyske Afrikakorps blev massivt nedkæmpet alene på basis af afkodede meddelelser. Senere opfattede englænderne de seks af tyskerne specialfremstillede forsyningsubåde (Type XIV - Milchkühe) så strategisk vigtige at nedkæmpe, at de satte alt over styr for at få dem sænket. Angiveligt fordi englænderne allerede sænkede mange tyske ubåde, fik tyskerne ikke mistanke om at tabet af disse ubåde var andet end sædvanligt "sort uheld".

Englænderne vovede en enkelt gang at orientere en russisk agent om det forestående tyske angreb ved Kursk.

Basal Dekryptering Cifre kan behandles på adskillige måder, og ved udbruddet af første verdenskrig var de fleste kodebrydende afdelinger så gode, at de fleste koder kunne brydes. På den anden side afhang de fleste af teknikkerne af adgang til tilstrækkelige mængder tekster, der var krypteret med en bestemt nøgle, ud fra hvilke mønstre kunne bestemmes med megen statistik og hårdt arbejde.

I den frekvens-analytiske teknik tælles bogstaver og bogstavmønstre. Da visse bogstaver optræder meget hyppigere end andre, vil optællingerne sædvanligvis afsløre information om sandsynlige substitutioner i koden. Kodebryderne ser efter vigtige bogstaver og kombinationer. På engelsk er E, T, A, O, I, N og S lette at identificere såvel som NG, ST og andre lignende kombinationer. Når de første bogstaver er fundet, er budskabet delvist dechifreret, og det afslører flere informationer om andre sandsynlige substitutioner.

Simpel frekvensanalyse beror på, at et givet bogstav altid erstatter et andet i koden: hvis det ikke er tilfældet, bliver situationen mere indviklet. I mange år forsøgte kryptograferne at skjule frekvenserne ved at bruge flere forskellige substitutioner for de almindelige bogstaver, men denne metode er ude af stand til helt at skjule mønstre i substitutioner for almindelige bogstaver. Sådanne koder blev brudt allerede i 1500-tallet.

En metode til at vanskeliggøre frekvensanalyse er at bruge forskellige erstatninger for hvert eneste bogstav og ikke bare de almindeligste. Dette vil normalt være en meget tidskrævende proces, som kræver, at parterne udveksler deres substitutionsmønstre, før de sender kodede meddelelser til hinanden. I 1400-tallet blev en ny teknik opfundet, som nu kendes som polyalfabetisk kode, og som giver en simpel teknik til at fremstille en myriade af substitutionsmønstre. De to parter skulle udveksle en "nøgle" og derefter følge en simpel teknik, som fremstillede mange substitutionsalfabeter, og dermed mange forskellige substitutioner for hvert af meddelelsens bogstaver.

Det tog flere hundrede år at bryde disse koder med sikkerhed; de ny teknikker beroede på statistik (koincidens tælling for eksempel) for at kunne bestemme, hvilken nøgle der var brugt til krypteringen af et budskab. Disse teknikker blev brugt til at finde repeterende mønstre i kodeteksten, hvilket kunne give en ide om, hvor lang nøglen var. Når længden af nøglen er kendt, bliver kodebudskabet i realiteten en serie budskaber, som hver har en længde, der er lig med nøglens længde, og nu anvendes normal frekvensanalyse. Babbage, Kaisiski, og Friedman har gjort mest for at udvikle disse teknikker.

Kodebrugerne fik ikke alene at vide, at de skulle bruge en forskellig substitution for hvert bogstav, men også at de skulle bruge meget lange nøgler, således at begge ovennævnte løsningsmetoder ville mislykkes (eller i det mindste blive langt sværere). Men det er et vanskeligt arrangement; en meget lang nøgle varer lang tid at udveksle, og risikoen for fejltagelser bliver større. Den ultimative kode af denne type ville være en, hvor en meget lang nøgle kunne genereres fra et simpelt mønster, således at der blev dannet en kode med så mange substitutionsalfabeter, at frekvenstælling og statistiske angreb på koden ville være praktisk umulige.

Enigmas brug af multiple skiver medførte en simpel metode til at bestemme hvilket substitutionsalfabet, der skulle bruges til en vilkårlig klartekst ved kryptering, og hvilket tilsvarende bogstav der anvendtes ved dekryptering. På den måde var Enigma lig de polyalfabetiske krypteringer. På den anden side havde Enigma ulig det polyalfabetiske system ingen iøjnefaldende nøglelængde, idet skiverne genererede et nyt substitutionsalfabet, hver gang en tast blev aktiveret, og hele sekvensen af substitutionsalfabeter kunne ændres ved at rotere en eller flere af skiverne, ændre rækkefølgen af dem osv. før en ny kryptering. Enigma havde et bibliotek på 26 x 26 x 26 = 17576 substitutionsalfabeter for en given kombination og rækkefølge af skiver. Herudover var rækkefølgen af alfabeter forskellig, hvis skiverne startede i position ABC, frem for i rækkefølgen ACB. Hvis længden af budskabet ikke var længere end 17576 anslag, ville der ikke være nogen gentagelse af noget substitutionsalfabet. Og alligevel kunne denne nøgle uden besvær kommunikeres til en anden bruger efter ganske få oplysninger: skivenummer, skiverækkefølge, ringposition, og udgangsposition. thumb|Heinz Guderian i Slaget om Frankrig, med en Enigma-maskine. Bemærk, at en soldat indtaster tekst, mens en anden skriver resultaterne ned.

Kodningsmetodologi thumb|Rotor fra Enigma En kodebryder kunne selvfølgelig, hvis han havde adgang til indstillingerne, sætte sin Enigmamaskine på samme indstilling og afkode budskabet. Der kunne sendes kodebøger med indstillinger , men de kunne opsnappes. I stedet opfandt tyskerne et snedigt system, der kombinerede de to muligheder.