I went to a lecture by Dr. Mark Baldwin yesterday on the Enigma encryption machine used by Germany during World War 2 and the work of Bletchley Park in breaking the Enigma codes. The successful breaking of the codes has been stated as having shortened the war by around two years.
If you are not familiar with the Enigma encryption machines, they used a combination of rotors which encrypted and decrypted letters, had 26 keys for data entry, illuminated letters to provide the output and used a number of plugs which could further strengthen the encryption.
What fascinated me were a number of common factors which provide lessons that are still very relevant today:
- The balance of complexity and simplicity
- Development of process
- Overcoming the impossible
Complexity and simplicity
Due to the various ways that the Enigma machine could be set up, it is believed that the total number of possible encryption combinations is 3×10114 which is a significantly more than the estimated number of atoms in the known universe (1080 atoms). Additionally, the rotors were wired so that the same machine could decrypt as well as encrypt messages. The overall design of the machine allowed for very sophisticated encryption to be utilised. Other areas of the machine were admirably simple – the electrical connections inside the machine were simple, with no branches in the wiring and the machines used common batteries and bulbs. Encrypted messages were written down and sent in plain text through Morse code to use simple, readily available communication technology. The machines only had 26 keys – the upper case letters of the alphabet and the rotors and plugs were all clearly marked for ease of use. This resulted in the Enigma machine being able to be correctly operated by someone with few technical skills.
How many complex computer programmes of today can boast of such simplicity for users?
More complexity, simplicity and development of a process
The Germans believed that the code was unbreakable. However, three Polish mathematicians managed to break the codes through a combination of mathematical analysis, logical guesses and stolen information. Weeks before the German invasion of Poland, the Polish passed on this information to the French and British. At Bletchley Park a small team of brilliant mathematicians (including Alan Turing, Gordon Welchman and Tommy Flowers) refined the process for code breaking, developed the ‘Bombe’ to test codes and devised an overall process for gathering intercept data, decrypting it, filtering information and passing relevant information to intelligence teams. As the Enigma codes changed each day, the codes in turn had to be broken each day. The process and techniques developed at Bletchley Park enabled a team of up to 9,000 staff to decrypt around 100,000 messages per month and generate usable intelligence from the messages.
Can today’s business intelligence solutions process such volumes of information through complex processing and generate summarised usable intelligence as effectively?
Do complex business processes today operate as effectively as this with large numbers of users and where individual users cannot see the ‘big picture’?
Overcoming the impossible
Despite some clues that the Allies may have been able to break the Enigma codes, the Germans believed implicitly that they were impossible to break. However, through some luck and a lot of determination and detailed mathematical analysis the huge number of code combinations was reduced to such a level that the Bombe machines were realistically able to test encryption keys within a 24 hour period in order to break the codes.
How often is something not attempted because it is viewed as impossible?
How many systems are viewed as fool-proof/unbreakable and turn out not to be so?