The Enigma machine is any one of a family of related electro-mechanical rotor machines used to generate ciphers for the encryption and decryption of secret messages. The Enigma was used commercially from the early 1920s on, and was also adopted by the military and governmental services of a number of nations—most famously by Nazi Germany before and during World War II. A variety of different models of Enigma were produced, but the German military model, the Wehrmacht Enigma, is the version most commonly discussed.
The machine has gained notoriety because Allied cryptologists were able to decrypt a large number of messages that had been enciphered on the machine. Decryption was made possible in 1932 by Polish cryptographers Marian Rejewski, Jerzy Różycki and Henryk Zygalski from Cipher Bureau. In mid-1939 reconstruction and decryption methods were delivered from Poland to Britain and France. The intelligence gained through this source, codenamed ULTRA, was a significant aid to the Allied war effort. The exact influence of ULTRA is debated, but a typical assessment is that the end of the European war was hastened by two years because of the decryption of German ciphers.
Although the Enigma cipher has cryptographic weaknesses, in practice it was only in combination with other significant factors (mistakes by operators, procedural flaws, an occasional captured machine or codebook) that Allied codebreakers were able to decipher messages.
Like other rotor machines, the Enigma machine is a combination of mechanical and electrical systems. The mechanical mechanism consists of a keyboard; a set of rotating disks called rotors arranged adjacently along a spindle; and a stepping mechanism to turn one or more of the rotors with each key press. The exact mechanism varies, but the most common form is for the right-hand rotor to step once with every key stroke, and occasionally the motion of neighbouring rotors is triggered. The continual movement of the rotors results in a different cryptographic transformation after each key press.
The mechanical parts act in such a way as to form a varying electrical circuit—the actual encipherment of a letter is performed electrically. When a key is pressed, the circuit is completed; current flows through the various components and ultimately lights one of many different lamps, indicating the output letter. For example, when encrypting a message starting ANX..., the operator would first press the A key, and the Z lamp might light; Z would be the first letter of the ciphertext. The operator would then proceed to encipher N in the same fashion, and so on.
To explain the Enigma, we use the wiring diagram on the left. To simplify the example, only four components of each are shown. In reality, there are 26 lamps, keys, plugs and wirings inside the rotors. The current flows from the battery (1) through the depressed bi-directional letter-switch (2) to the plugboard (3). The plugboard allows rewiring the connections between keyboard (2) and fixed entry wheel (4). Next, the current proceeds through the—unused, so closed—plug (3) via the entry wheel (4) through the wirings of the three (Wehrmacht Enigma) or four (Kriegsmarine M4 or Abwehr variant) rotors (5) and enters the reflector (6). The reflector returns the current, via a different path, back through the rotors (5) and entry wheel (4), and proceeds through plug 'S' connected with a cable (8) to plug 'D', and another bi-directional switch (9) to light-up the lamp.
The continual changing of electrical paths through the unit because of the rotation of the rotors (which cause the pin contacts to change with each letter typed) implements the polyalphabetic encryption which provided Enigma's high security.
The rotors (alternatively wheels or drums—Walzen in German) form the heart of an Enigma machine. Approximately 10 cm in diameter, each rotor is a disc made of hard rubber or bakelite with a series of brass spring-loaded pins on one face arranged in a circle; on the other side are a corresponding number of circular electrical contacts. The pins and contacts represent the alphabet—typically the 26 letters A–Z (this will be assumed for the rest of the description). When placed side-by-side, the pins of one rotor rest against the contacts of the neighbouring rotor, forming an electrical connection. Inside the body of the rotor, a set of 26 wires connects each pin on one side to a contact on the other in a complex pattern. The wiring differs for every rotor.
By itself, a rotor performs only a very simple type of encryption—a simple substitution cipher. For example, the pin corresponding to the letter E might be wired to the contact for letter T on the opposite face. The complexity comes from the use of several rotors in series—usually three or four—and the regular movement of the rotors; this provides a much stronger type of encryption.
When placed in the machine, a rotor can be set to one of 26 positions. It can be turned by hand using a grooved finger-wheel which protrudes from the internal cover when closed, as shown in Figure 2. So that the operator knows the position, each rotor has an alphabet tyre (or letter ring) attached around the outside of the disk, with 26 letters or numbers; one of these can be seen through a window, indicating the position of the rotor to the operator. In early Enigma models, the alphabet ring is fixed; a complication introduced in later versions is the facility to adjust the alphabet ring relative to the core wiring. The position of the ring is known as the Ringstellung ("ring setting").
The rotors each contain a notch (sometimes multiple notches), used to control the stepping of the rotors. In the military versions the notches are located on the alphabet ring.
The Army and Air Force Enigmas came equipped with several rotors; when first issued there were only three. On 15 December 1938 this changed to five, from which three were chosen for insertion in the machine. These were marked with Roman numerals to distinguish them: I, II, III, IV and V, all with single notches located at different points on the alphabet ring. This must have been intended as a security measure, but ultimately allowed the Polish Clock Method and British Banburismus attacks.
The Naval version of the Wehrmacht Enigma had always been issued with more rotors than the other services: at first, six, then seven and finally eight. The additional rotors were named VI, VII and VIII, all with different wiring, and had two notches cut into them at N and A, resulting in a more frequent turnover.
The four-rotor Naval Enigma (M4) machine accommodated an extra rotor in the same space as the three-rotor version. This was accomplished by replacing the original reflector with a thinner reflector and adding a special fourth rotor. The fourth rotor can be one of two types, "Beta" or "Gamma", and never steps, but it can be manually placed in any of the 26 positions.
To avoid merely implementing a simple (and easily breakable) substitution cipher, some rotors turned with consecutive presses of a key. This ensured the cryptographic substitution would be different at each position, producing a formidable polyalphabetic substitution cipher.
The most common arrangement used a ratchet and pawl mechanism. Each rotor had a ratchet with 26 teeth; a group of pawls engage the teeth of the ratchet. The pawls pushed forward in unison with each keypress on the machine. If a pawl engaged the teeth of a ratchet, that rotor advanced by one step.
In the Wehrmacht Enigma, each rotor had an adjustable notched ring. The five basic rotors (I–V) had one notch each, while the additional naval rotors VI, VII and VIII had two notches. At a certain point, a rotor's notch eventually aligned with the pawl, allowing it to engage the ratchet of the next rotor with the subsequent key press. When a pawl was not aligned with the notch, it simply slid over the surface of the ring without engaging the ratchet. In a single-notch rotor system, the second rotor advanced one position every 26 advances of the first rotor. Similarly, the third rotor advanced one position for every 26 advances of the second rotor. The second rotor also advanced at the same time as the third rotor, meaning the second rotor can step twice on subsequent key presses—"double stepping"—resulting in a reduced period.
This double stepping caused the rotors to deviate from a normal odometer. A double step occurred as follows: the first rotor stepped, and took the second rotor one step further. If the second rotor moved by this step into its own notch-position, the third pawl drops down. On the next step this pawl would push the ratchet of the third rotor and advance it, but pushed into the second rotor's notch, advancing the second rotor a second time in a row.
With three wheels and only single notches in the first and second wheels, the machine had a period of 26 × 25 × 26 = 16,900 (not 26 × 26 × 26 because of the double stepping of the second rotor.) Historically, messages were limited to a couple of hundred letters, and so there was very little risk of repeating any position within a single message.
To make room for the naval fourth rotors "Beta" and "Gamma", introduced in 1942, the reflector was changed, by making it much thinner and the special thin fourth rotor was placed against it. No changes were made to rest of the mechanism. Since there were only three pawls, the fourth rotor never stepped, but could be manually set into one of its 26 positions.
When pressing a key, the rotors stepped before the electrical circuit is connected.
In the commercial Enigma model C, the reflector could be inserted in one of two different positions. In Model D the reflector could be set in 26 possible positions, although it did not move during encryption. In the Abwehr Enigma, the reflector stepped during encryption in a manner like the other wheels.
In the German Army and Air Force Enigma, the reflector was fixed and did not rotate; there were four versions. The original version was marked A, and was replaced by Umkehrwalze B on 1 November 1937. A third version, Umkehrwalze C was used briefly in 1940, possibly by mistake, and was solved by Hut 6. The fourth version, first observed on 2 January 1944 had a rewireable reflector, called Umkehrwalze D, allowing the Enigma operator to alter the connections as part of the key settings.
The plugboard (Steckerbrett in German) permitted variable wiring that could be reconfigured by the operator (visible on the front panel of Figure 1; some of the patch cords can be seen in the lid). It was introduced on German Army versions in 1930 and was soon adopted by the Navy as well. The plugboard contributed a great deal to the strength of the machine's encryption: more than an extra rotor would have done. Enigma without a plugboard—"unsteckered" Enigma—can be solved relatively straightforwardly using hand methods; these techniques are generally defeated by the addition of a plugboard, and Allied cryptanalysts resorted to special machines to solve it.
A cable placed onto the plugboard connected letters up in pairs, for example, E and Q might be a "steckered" pair. The effect was to swap those letters before and after the main rotor scrambling unit. For example, when an operator presses E, the signal was diverted to Q before entering the rotors. Several such steckered pairs, up to 13, might be used at one time.
Current flowed from the keyboard through the plugboard, and proceeded to the entry-rotor or Eintrittswalze. Each letter on the plugboard had two jacks. Inserting a plug disconnected the upper jack (from the keyboard) and the lower jack (to the entry-rotor) of that letter. The plug at the other end of the crosswired cable was inserted into another letter's jacks, thus switching the connections of the two letters.
A feature that was used on the M4 Enigma was the "Schreibmax", a little printer which could print the 26 letters on a small paper ribbon. This did away with the need for a second operator to read the lamps and write the letters down. The Schreibmax was placed on top of the Enigma machine and was connected to the lamp panel. To install the printer, the lamp cover and all lightbulbs had to be removed. Besides its convenience, it could improve operational security; the printer could be installed remotely such that the signal officer operating the machine no longer had to see the decrypted plaintext information.
Another accessory was the remote lamp panel. If the machine was equipped with an extra panel, the wooden case of the Enigma was wider and could store the extra panel. There was a lamp panel version that could be connected afterwards, but that required, just as with the Schreibmax, that the lamp panel and lightbulbs be removed. The remote panel made it possible for a person to read the decrypted plaintext without the operator seeing it.
In 1944 the Luftwaffe introduced an extra plugboard switch, called the Uhr (clock). There was a little box, containing a switch with 40 positions. It replaced the default plugs. After connecting the plugs, as determined in the daily key sheet, the operator turned the switch into one of the 40 positions, each position producing a different combination of plug wiring. Most of these plug connections were, unlike the default plugs, not pair-wise. In one switch position, the Uhr did nothing simply emulating the 9 stecker wires with plugs.
After each key press, the rotors turn, changing the transformation. For example, if the right hand rotor is rotated positions, the transformation becomes , where is the cyclic permutation mapping A to B, B to C, and so forth. Similarly, the middle and left-hand rotors can be represented as and rotations of and . The encryption transformation can then be described as
In German military usage, communications were divided up into a number of different networks, all using different settings for their Enigma machines. These communication nets were termed keys at Bletchley Park, and were assigned codenames, such as Red, Chaffinch and Shark. Each unit operating on a network was assigned a settings list for its Enigma for a period of time. For a message to be correctly encrypted and decrypted, both sender and receiver had to set up their Enigma in the same way; the rotor selection and order, the starting position and the plugboard connections must be identical. All these settings (together the key in modern terms) must have been established beforehand, and were distributed in codebooks.
An Enigma machine's initial state, the cryptographic key, has several aspects:
Enigma was designed to be secure even if the rotor wiring was known to an opponent, although in practice there was considerable effort to keep the wiring secret. If the wiring is secret, the total number of possible configurations has been calculated to be around 10114 (approximately 380 bits); with known wiring and other operational constraints, this is reduced to around 1023 (76 bits). Users of Enigma were confident of its security because of the large number of possibilities; it was not then feasible for an adversary to even begin to try every possible configuration in a brute force attack.
One of the earliest indicator procedures was used by Polish cryptanalysts to make the initial breaks into the Enigma. The procedure was for the operator to set up his machine in accordance with his settings list, which included a global initial position for the rotors (Grundstellung—"ground setting"), AOH, perhaps. The operator turned his rotors until AOH was visible through the rotor windows. At that point, the operator chose his own, arbitrary, starting position for that particular message. An operator might select EIN, and this became the message settings for that encryption session. The operator then typed EIN into the machine, twice, to allow for detection of transmission errors. The results were an encrypted indicator—the EIN typed twice might turn into XHTLOA, which would be transmitted along with the message. Finally, the operator then spun the rotors to his message settings, EIN in this example, and typed the plaintext of the message.
At the receiving end, the operation was reversed. The operator set the machine to the initial settings and typed in the first six letters of the message (XHTLOA). In this example, EINEIN emerged on the lamps. By moving his rotors to EIN, the receiving operator then typed in the rest of the ciphertext, deciphering the message.
The weakness in this indicator scheme came from two factors. First, use of a global ground setting—this was later changed so the operator selected his initial position to encrypt the indicator, and sent the initial position in the clear. The second problem was the repetition of the indicator, which was a serious security flaw. The message setting was encoded twice, resulting in a relation between first and fourth, second and fifth, and third and sixth character. This security problem enabled the Polish Cipher Bureau to break into the pre-war Enigma system as early as 1932. However, from 1940 on, the Germans changed the procedures to increase the security.
During World War II codebooks were used only to set up the rotors and ring settings. For each message, the operator selected a random start position, let's say WZA, and random message key, perhaps SXT. He moved the rotors to the WZA start position and encoded the message key SXT. Assume the result was UHL. He then set up the message key SXT as the start position and encrypted the message. Next, he transmitted the start position WZA, the encoded message key UHL and then the ciphertext. The receiver set up the start position according the first trigram, WZA and decoded the second trigram, UHL, to obtain the SXT message setting. Next, he used this SXT message setting as the start position to decrypt the message. This way, each ground setting was different and the new procedure avoided the security flaw of double encoded message settings.
This procedure was used by Wehrmacht and Luftwaffe only. The Kriegsmarine procedures on sending messages with the Enigma were far more complex and elaborate. Prior to encryption with the Enigma, the message was encoded using the Kurzsignalheft code book. The Kurzsignalheft contained tables to convert sentences into four-letter groups. A great many choices were included, e.g. logistic matters such as refueling and rendezvous with supply ships, positions and grid lists, harbor names, countries, weapons, weather conditions, enemy positions and ships, date and time tables. Another codebook contained the Kenngruppen and Spruchschlüssel: the key identification and message key. More details on Kurzsignale on German U-Boats
The Wehrmacht and the Luftwaffe transmitted messages in groups of five characters. The Kriegsmarine, using the four rotor Enigma, had four-character groups. Frequently used names or words were to be varied as much as possible. Words like Minensuchboot (minesweeper) could be written as MINENSUCHBOOT, MINBOOT, MMMBOOT or MMM354. To make cryptanalysis harder, more than 250 characters in one message were forbidden. Longer messages were divided in several parts, each using its own message key. For more details see Tony Sale's translations of "General Procedure and "Officer and Staff procedure".
On 23 February 1918 German engineer Arthur Scherbius applied for a patent for a cipher machine using rotors and, with E. Richard Ritter, founded the firm of Scherbius & Ritter. They approached the German Navy and Foreign Office with their design, but neither was interested. They then assigned the patent rights to Gewerkschaft Securitas, who founded the Chiffriermaschinen Aktien-Gesellschaft (Cipher Machines Stock Corporation) on 9 July 1923; Scherbius and Ritter were on the board of directors.
Chiffriermaschinen AG began advertising a rotor machine—Enigma model A—which was exhibited at the Congress of the International Postal Union in 1923 and 1924. The machine was heavy and bulky, incorporating a typewriter. It measured 65×45×35 cm and weighed about 50 kg. A model B was introduced, and was of a similar construction. While bearing the Enigma name, both models A and B were quite unlike later versions: they differed in physical size and shape, but also cryptographically, in that they lacked the reflector.
The reflector—an idea suggested by Scherbius's colleague Willi Korn—was first introduced in the Enigma C (1926) model. The reflector is a key feature of the Enigma machines.
Model C was smaller and more portable than its predecessors. It lacked a typewriter, relying instead on the operator reading the lamps; hence the alternative name of "glowlamp Enigma" to distinguish from models A and B. The Enigma C quickly became extinct, giving way to the Enigma D (1927). This version was widely used, with examples going to Sweden, the Netherlands, United Kingdom, Japan, Italy, Spain, United States, and Poland.
By 15 July 1928, the German Army (Reichswehr) had introduced their own version of the Enigma—the Enigma G, revised to the Enigma I by June 1930. Enigma I is also known as the Wehrmacht, or Services Enigma, and was used extensively by the German military services and other government organisations (such as the railways), both before and during World War II. The major difference between Enigma I and commercial Enigma models was the addition of a plugboard to swap pairs of letters, greatly increasing the cryptographic strength of the machine. Other differences included the use of a fixed reflector, and the relocation of the stepping notches from the rotor body to the movable letter rings. The machine measured 28×34×15 cm (11"×13.5"×6") and weighed around 12 kg (26 lbs).
By 1930, the Army had suggested that the Navy adopt their machine, citing the benefits of increased security (with the plugboard) and easier interservice communications. The Navy eventually agreed and in 1934 brought into service the Navy version of the Army Enigma, designated Funkschlüssel M or M3. While the Army used only three rotors at that time, for greater security the Navy specified a choice of three from a possible five.
In December 1938, the Army issued two extra rotors so that the three rotors were chosen from a set of five. In 1938, the Navy added two more rotors, and then another in 1939 to allow a choice of three rotors from a set of eight. In August 1935, the Air Force also introduced the Wehrmacht Enigma for their communications. A four-rotor Enigma was introduced by the Navy for U-boat traffic on 1 February 1942, called M4 (the network was known as Triton, or Shark to the Allies). The extra rotor was fitted in the same space by splitting the reflector into a combination of a thin reflector and a thin fourth rotor.
There was also a large, eight-rotor printing model, the Enigma II. During 1933, Polish codebreakers detected that it was in use for high-level military communications, but that it was soon withdrawn from use after it was found to be unreliable and jam frequently.
The Abwehr used the Enigma G (the Abwehr Enigma). This Enigma variant was a four-wheel unsteckered machine with multiple notches on the rotors. This model was equipped with a counter which incremented upon each key press, and so is also known as the counter machine or the Zählwerk Enigma.
Other countries also used Enigma machines. The Italian Navy adopted the commercial Enigma as "Navy Cipher D"; the Spanish also used commercial Enigma during their Civil War. British codebreakers succeeded in breaking these machines, which lacked a plugboard. The Swiss used a version of Enigma called model K or Swiss K for military and diplomatic use, which was very similar to the commercial Enigma D. The machine was broken by a number of parties, including Poland, France, Britain and the United States (the latter codenamed it INDIGO). An Enigma T model (codenamed Tirpitz) was manufactured for use by the Japanese.
The Enigma wasn't perfect, especially after the Allies got hold of it, thus allowing the Allies to decode the German messages, which proved vital in the Battle of the Atlantic.
It has been estimated that 100,000 Enigma machines were constructed. After the end of the Second World War, the Allies sold captured Enigma machines, still widely considered secure, to a number of developing countries.
The effort to break the Enigma was not disclosed until the 1970s. Since then, interest in the Enigma machine has grown considerably and a number of Enigmas are on public display in museums in the U.S. and Europe. The Deutsches Museum in Munich has both the three and four-wheel German military variants, as well as several older civilian versions. A functional Enigma is on display in the NSA's National Cryptologic Museum at Fort Meade, Maryland, where visitors can try their hand at encrypting messages and deciphering code. The Armémuseum in Stockholm in Sweden currently has an Enigma on display. There are also examples at the Computer History Museum in the United States, at Bletchley Park in the United Kingdom, at Polish Army Museum in Poland at the Australian War Memorial, and in foyer of the Defence Signals Directorate, both located at Canberra in Australia, as well as a number of other locations in Germany, the U.S., the UK and elsewhere. The now-defunct San Diego Computer Museum had an Enigma in its collection, which has since been given to the San Diego State University Library. A number are also in private hands. Occasionally, Enigma machines are sold at auction; prices of US$20,000 are not unusual.
Replicas of the machine are available in various forms, including an exact reconstructed copy of the Naval M4 model, an Enigma implemented in electronics (Enigma-E), various computer software simulators and paper-and-scissors analogues.
A rare Abwehr Enigma machine, designated G312, was stolen from the Bletchley Park museum on 1 April 2000. In September, a man identifying himself as "The Master" sent a note demanding £25,000 and threatened to destroy the machine if the ransom was not paid. In early October 2000, Bletchley Park officials announced that they would pay the ransom but the stated deadline passed with no word from the blackmailer. Shortly afterwards the machine was sent anonymously to BBC journalist Jeremy Paxman, but three rotors were missing. In November 2000, an antiques dealer named Dennis Yates was arrested after telephoning The Sunday Times to arrange the return of the missing parts. The Enigma machine was returned to Bletchley Park after the incident. In October 2001, Yates was sentenced to ten months in prison after admitting handling the stolen machine and demanding ransom for its return, although he maintained that he was acting as an intermediary for a third party. Yates was released from prison after serving three months.
The Enigma was influential in the field of cipher machine design, and a number of other rotor machines are derived from it. The British Typex was originally derived from the Enigma patents; Typex even includes features from the patent descriptions that were omitted from the actual Enigma machine. Owing to the need for secrecy about its cipher systems, no royalties were paid for the use of the patents by the British government. A Japanese Enigma clone was codenamed GREEN by American cryptographers. Little used, it contained four rotors mounted vertically. In the U.S., cryptologist William Friedman designed the M-325, a machine similar to Enigma in logical operation, although not in construction.
A unique rotor machine was constructed in 2002 by Netherlands-based Tatjana van Vark. This unusual device was inspired by Enigma but makes use of 40-point rotors, allowing letters, numbers and some punctuation to be used; each rotor contains 509 parts.
The play, Breaking the Code, by Hugh Whitemore is about the life and death of Alan Turing, who was the central force in breaking the Enigma in Britain during World War II. Turing was played by Derek Jacobi, who also played Turing in a 1996 television adaptation of the play. The television adaptation is generally available (though currently only on VHS). Although it is a drama and thus takes artistic license, it is nonetheless a fundamentally accurate account. It contains a two-minute, stutteringly-nervous speech by Jacobi that comes very close to encapsulating the entire Enigma codebreaking effort.
Robert Harris' 1996 novel Enigma is set against the backdrop of World War II Bletchley Park and cryptologists working to read Naval Enigma in Hut 8. The book, with significant changes in the story, was made into the 2001 film, Enigma, directed by Michael Apted and starring Kate Winslet and Dougray Scott; the film has been criticized for many historical inaccuracies and neglecting the role of Biuro Szyfrów in breaking the Enigma code. An earlier Polish film dealing with the Polish aspects of the subject was the 1979 Sekret Enigmy (The Enigma Secret).
The 1989 Doctor Who story The Curse of Fenric features British cryptographers, including a character based on Alan Turing, using a similar device called ULTIMA that is ultimately used to decrypt ancient Viking runes and unleash a plague of vampires.
An interactive fiction game Jigsaw by Graham Nelson contains a puzzle in which the player must decrypt a message with a simplified version of the Enigma. The puzzle is generally accepted as the most annoying in the game, which is perhaps some measure of how hard it was to decrypt messages produced by the original machine(s).
Jonathan Mostow's 2000 film U-571 describes a fictional patrol by American submariners who have hijacked a German submarine to obtain an Enigma machine. The machine used in the film was an authentic Enigma obtained from a collector. The historical liberties taken are large, for the Polish breaks into Enigma (beginning in December 1932) did not require a captured machine, the Royal Navy captured several Enigmas or parts before the U.S. entered the war, and the U.S. capture of a U-boat occurred only days before D-Day in 1944. The film caused considerable protests when it was released in Britain, since it effectively transferred the exploits of the real life HMS Bulldog to a fictional American boat.
Wolfgang Petersen's 1981 film Das Boot includes an Enigma machine which is evidently a four-rotor Kriegsmarine variant. It appears in many scenes which probably capture well the flavour of day-to-day Enigma use aboard a World War II U-Boat.
The Beast, the online puzzle-solving alternate reality game (ARG) created by a team at Microsoft to promote the Steven Spielberg film A.I.: Artificial Intelligence, required players to use an online Enigma simulator to solve one of the puzzles.