Computer scientist: Theory vital to understand and use technology

How Alan Turing defeated the German "Enigma" machine

November 20, 2012

Computer science professor John Dooley
Knox College computer science professor explains details of the "Enigma" machine

Focus too strongly on technology, and you might miss the fundamental principles that govern how technology operates. That's one of the lessons for both students and engineering professionals from the British success at cracking the secret cipher machine, known as "Enigma," used by the German military during World War 2, according to Knox College professor John Dooley. Dooley spoke to the annual meeting of the Iowa-Illinois chapter of Institute of Electrical and Electronic Engineers (IEEE), held this fall at Knox.

In his keynote lecture, Dooley explained how the fiendishly complex Enigma machine, used by the German military to encode secret messages before and during World War 2, was solved by a team of British code-breakers that included a quirky genius, Alan Turing. It's appropriate to focus on Turing this year, as 2012 is the centenary of Turing's birth, Dooley said.

Aided by key mechanical details provided by Polish intelligence agents before the war, and a better understanding of the theories involved in the technology, Dooley said, Turing and his colleagues eventually knew more about the Enigma device than did its German builders or operators. "We need to understand why that was such a hard job," Dooley said.

The Enigma machinery used a series of rotating cylinders -- think "Captain Midnight Decoder Rings" -- to turn a readable message into a series of seemingly random letters.

The system is known as "polyalphabetic substitution," Dooley said. Every letter of a message was replaced with a different letter, and the next time the same letter was used in the original, it would be replaced with a different letter. The first occurrence of "a" in the original text might be substituted by the letter "c" in the coded text, and the next time "a" was used in the original, it might be replaced by the letter "r."

Computer science professor John DooleyBy sending the message through a series of rotors, the Germans could scramble an original text into millions of letter combinations -- literally an unbreakable code in pre-computer era, Dooley said. But Turing discovered several flaws with the Enigma machine and its operation which enabled the British to break the code.

Because every occurrence of a letter was substituted with a different letter -- "a" would never be coded as "a" -- Dooley said, patterns were easier to discover. In addition, the German military tended to follow rigid language rules in its messages, which also revealed patterns that helped decipher coded messages.

Finally, Dooley said, the way that the German linked the series of rotating cylinders meant that the actual number of letter combinations was much smaller than the theoretical number of combinations. It's as if you had a combination lock that only had ten positions, but you thought that painting 100 numbers on the dial made it ten times harder to open.

As a child, Dooley said, Turing showed sparks of genius early -- easily solving mathematical and mechanical problems -- and he was often bored and unchallenged by the curriculum. After the war, Turing returned to work on problems that had interested him before the war in the field of theoretical computer science. Among his projects was the design for a machine that could respond to questions in a way that would be indistinguishable from a real human -- what is now called the "Turing Test," in the field of artificial intelligence.

A member of the Knox faculty since 2001, Dooley holds the William and Marilyn Ingersoll Chair in Computer Science. His research interests include software development and cryptology, including secret codes in literature. His publications include "Software Development and Professional Practice," published in 2011 by APress Inc., as well as one of the most comprehensive bibliographies of literary works in which secret codes are used.

Computer science professor John Dooley