Enigma Machine
Enigma Machine
History of Computing
WW2:
Enigma Machine
Bletchley Park
The Enigma Machine
Encryption device used by the
German army since the 1920s
Type a letter on the keyboard,
read off the coded letter and send
it in morse code
Comprised a series of rotors or wheels, each with 26 contacts on either
face, linked by complex wiring
Rotors move on every key press; mapping changed over time
Rotor output went through a plugboard which swapped letters over to add
further level of encryption
The Enigma Machine
The Enigma Machine
Enigma keys were changed regularly; the key comprised
• plugboard wiring
• initial rotor positions
To send a message on an N rotor machine
• pick N letters, code them twice with the rotors in the initial position
• arrange the rotors so that the chosen letters are visible and code the rest
of the message
• send the 2N character header, then the message
Many, many key combinations were possible, but Enigma had one flaw - it
never coded a letter as itself
The Polish Work
The Polish Secret Service cracked Enigma in 1932
• a machine was delayed at Customs in 1928 and examined
• team of 3 mathematicians began training in cryptography
• in 1931 a clerk in the German MOD supplied an instruction book and
sample coded and decoded messages
The Poles developed the first “Bombes” - special purpose machines
designed to recover Enigma codes from messages
In 1938 the Germans added 2 spare rotors - choose 3 from 5
• each rotor pattern needed a separate bombe, the Polish Government
couldn’t afford it, so work stopped
1939
British, French and Polish met to plan a response to Enigma
Bletchley Park was set up with the goal of penetrating the entire German
operational command structure
• mathematicians, chess players, logicians….
• around 10,000 eventually
Enigma was powerful, but broken
because it was used to describe, in
standard phrases, events that
Bletchley Park knew had happened
How to Break Enigma
After e.g. a German attack, look for messages from appropriate
areas/operators and hope to predict message content
• individual operators were monitored and their standard phrases noted
Suppose you have a message and an expected word
fftsnancksxinczgfnzpqqserclmmacjlucmabc
entscheidungsproblem
slide the word under the message looking for positions in which no letter maps
to itself
• such positions generate hypotheses about (part of) the Enigma
mapping
Turing’s Bombes
Hypotheses were input into new Bombes invented by Turing
• arrays of drums: columns mimic Enigma rotors, one column per letter in
the expected word
• the hypothesized mapping, the menu, is input via a plugboard on the
back
• searched space of possible enigma rotor settings
Turing’s Bombes
A switch under each column closed when a setting mapped the
hypothesized to the coded character
When all the switches closed at the same time the bombe stopped and a
possible Enigma setting could be read off
If the setting was right it would decode the whole message
• clerks tested each possible setting using replica Enigmas
By 1940 Enigma was broken on a large scale, 1,000 of messages a day -
The Ultra Secret
• individual German officers’ movements were tracked
• couldn’t appear to know anything only sent via Enigma
Fish
The Germans always suspected Enigma might be broken, so High
Command used the Geheimschreiber (secret writer), known at Bletchley as
“Fish” - The Lorenz Machine
Rotor-based design, but
much more complex
How Bletchley discovered
the structure of the machine
is still a secret
Max Newman realized that
the manual method used
to solve Fish was simulating it
Heath Robinson
Lorenz coded messages by replacing each letter with a number, then
adding a key string, generated by the machine, to the coded string
• each letter is mapped to many numbers
Robinson was an electro-mechanical machine designed to help decode
Fish
• subtracted coded messages from a key tape, for all possible
key/message positions
• if after subtraction some numbers were more common than others, the
key tape showed promise
- searching for a working key tape
Heath Robinson & Colossus
Robinson worked by comparing two looped paper tapes
• read by photoelectric cells
• subtracted and statistics done by valve circuits
The machine was physically unreliable, it was the first high speed tape
reader, but worked
• demonstrated the value of statistical methods
Newman moved to the Post Office Research Centre, to work with
electronics engineer Tommy Flowers, who designed an electronic version of
the Robinson machine - The Colossus
Colossus (1943)
1500 valves, more than ever used in a single machine before
Coded messages were read in on paper tape at 5000 characters/second
Fish’s 10 rotors were simulated by thyrotron rings; rings of valves wired so
that only one
can be on at any given time
Rotating drums/tape loops
were simulated by signals
circulating thyrotron rings
Colossus
Colossus was not programmable in the modern sense, everything was
hard wired.
• programmed to a limited degree by altering the wiring via plugboards
and switches
• used interactively, operators changed the program to search for the key
tape - “playing chess with the machine”
Colossus 2 (1944) could make use of conditional jumping between
alternative programs depending on counter outputs
• had all the components of a modern computer except memory (only
had one 5 character shift array)
• showed that valve machines were feasible
• 2500 valves
The ACE
At the end of the war it was felt that a national computer project was
needed; a Mathematics Division was set up at NPL (National Physical
Laboratory)
In February 1946 Turing had put forward a complete design of a stored
program computer
• the Automatic Computing Engine or ACE
•Used subprograms
•Used Abbreviated Computer Instructions (programming language?)
NPL wouldn’t let Turing build it
Didn’t know about Colossus – didn’t think it was possible to do
Couldn’t agree a deal with the PO Research Centre or Manchester
University, negotiations with Cambridge took ages
Although a Pilot ACE was working by the middle of 1950 it did not
become fully operational until 1952.
The Pilot ACE
The Pilot ACE was in use for 6 years, doing advanced engineering and
military calculations
• minimal hardware (for the time) and hard to program, but the fastest of
the early British computers
• 800 valves
• cards used for I/O via Hollerith machines
• memory of 128 32 bit words, extended to 352 words in 1951
• instruction times were highly dependent on the position in store of the
instruction
Turing’s design was obviously original,
not inspired by Von Neumann’s work in the USA
The Pilot ACE