
I became interested in cryptography after reading Neil Stephenson’s Cryptonomicon. From that book, and later The Imitation Game, I learned how the need to communicate cryptically, and the need to decode the encrypted communications of the enemy really drove the early advancements in computing by pioneers such as Alan Turing.
One of my early experiments with programming was to create an emulator of the German Enigma machine. What was the Enigma machine? It was a mechanical computer that the Germans used during World War II to encrypt their communications. Each day, the German U-boat captains would place a series of rotating drums in the Enigma in a pre-specified way. This created a substitution code that allowed them to decrypt messages from headquarters.
You can find and play with my Enigma emulator here, or see the code at my BitBucket repository.
