An Enigma machine emulator written in C#.
The project models the Enigma I, from ~1930.
All the features the real Enigma I had. Plugboard, rotors with arbitrary order, and three available reflectors. Produces the same output as the real machine.
- Improve the settings query in Program.cs
- Make it fail safe
- Make the code prettier
- Make the machine compatible with the later Enigma models, M3 and M4.
- Expand the machine with more rotors (M3 and M4 had up to eight).
- Expand the machine with more reflectors (Beta and Gamma)
- Translate the code into JavaScript and make a web version of the machine.
Other simulators that helped in the research and when testing if the output was correct:
- http://startpad.googlecode.com/hg/labs/js/enigma/enigma-sim.html
- https://people.physik.hu-berlin.de/~palloks/js/enigma/enigma-i+m3_v16.html
- http://enigma.louisedade.co.uk/enigma.html
Technical details about the Enigma: