|
History
of the Enigma Machine
About
1918, Albert Scherbius took his
idea
of the "rotating rotors" in a cipher machine to
the German military. They weren't interested in his ideas
at that point in time so Scherbius took his idea to a German
company called Gewerkschaft Securitas. That company bought
his patents. The first Enigma machine was produced in the
early 1920's. It was an electrical enciphering machine which
provided "better" encryptions of messages than
other machines at the time because of the rotating rotors.
The
German Navy started buying Enigma machines in 1925 and they
started to modify it. The German Army soon followed suit
and they also modified the machine. Some of the modifications
included adding or deleting some keys, the addition of the
plug board and using more than three rotors.
The
Germans placed a lot of confidence in the security of the
Enigma machine because they thought that the probability
of breaking a message would be too great for their enemies.
They did have certain procedures on the operation of the
machine. The Germans had manuals that the operator used to
set the parameters of the machine for each day.
Contrary
to the belief of the Germans, the Enigma machine was not
secure. The number of possible encryptions was quite large
but Polish mathematicians worked on breaking the systems.
They obtained several Enigma machines and code books from
captured U-boats. Through the confiscated Enigma machines,
and some developed machines, the mathematicians were able
to break the codes. When Poland was invaded by the Germans,
the mathematicians provided the British and the Americans
with their work. The Germans resorted to more sophisticated
Enigma machines using four rotors but by 1943, the codes
were broken with some consistency.
|
|
How
does the Enigma work?
The
Enigma machine was a simple cipher machine. It had several
components: a plug board, a light board, a keyboard, a set
of rotors, and a reflector (half rotor). The original machine
looked a lot like a typewriter.
The machine has several variable settings that affect the operation of
the machine. The user must select three rotors from a set of rotors to
be used in the machine. A rotor contains one-to-one mappings of all the
letters. Some Enigma machines had more than 3 rotors which just added
to the number of possible encryption combinations. The other variable
element in the machine is the plug board. The plug board allowed for
pairs of letters to be remapped before the encryption process started
and after it ended.
When
a key is pressed, an electrical current is sent through the
machine. The current first passes through the plug board,
then through the three rotors, through the reflector which
reverses the current, back through the three rotors, back
through the plug board and then the encrypted letter is lit
on the display. After the display is lit up, the rotors rotate.
The rotors rotate similar to an odometer where the right
most rotor must complete one revolution before the middle
rotor rotated one position and so on.
As
the current passes through each component in the Enigma machine,
the letter gets remapped to another letter. The plug board
performed the first remapping. If there is a connection between
two letters, the letters are remapped to each other. For
example if there is a connection between "A" and "F", "A" would
get remapped to "F" and "F" would get
remapped to "A". If this isn't a connection for
a particular letter, the letter doesn’t get remapped. After
the plug board, the letters are remapped through the rotors.
Each rotor contains one-to-one mappings of letters but since
the rotors rotate on each key press, the mappings of the
rotors change on every key press. Once the current passes
through the rotors, it goes into the reflector. The reflector
is very similar to a rotor except that it doesn't rotate
so the one-to-one mappings are always the same. The whole
encryption process for a single letter contains a minimum
of 7 remappings (the current passes through the rotors twice)
and a maximum of 9 remappings (if the letter has a connection
in the plug board).
In
order to decrypt a message, the receiver must have the encrypted
message, and know which rotors were used, the connections
on the plug board and the initial settings of the rotors.
To decrypt a message, the receiver would set up the machine
identically to the way the sender initially had it and would
type in the encrypted message. The output of typing in the
encrypted message would be the original message. Without
the knowledge of the state of the machine when the original
message was typed in, it is extremely difficult to decode
a message.
|