Simulation and Cryptanalysis of the German Enigma Machine

Meghan Emilio '04
Senior Project
Advisor: Professor Ralph Morelli



Abstract

Commonly referred to as Enigma, the German Enigma Machine is a three rotor, poly-alphabetic encryption machine that was widely used in military and commercial applications up to the 1950s. Enigma has historical importance as it was used by both the German Navy and Army during World War II, and the breaking of Enigma code by the Allies was credited as a turning point in the war. This project is a study of the ability for modern day computers to break Enigma messages. First, a computer simulation of an Enigma machine was created. Then the simulation was used to build a computer program to break Enigma messages. This program was tested on data of varying size for effectiveness and efficiency. The program was able to break Enigma messages of substantial length with great effectiveness and relative efficiency, thereby showing the ability of computers to break Enigma. These findings imply that Enigma is an inadequate form of encryption for the present day.

Presentations

Index of Coincidence Presentation
2004 Traveler's Competition Final Power Point Presentation
2004 Trinity College Science Symposium Power Point Presentation

Applet

Web Based Applet

Source Code

EnigmaApplet.java
Enigma.java
Analyzer.java
IC.java