Python implementation of the enigma machine
Python implementation of the enigma machine
This is a Python implementation of Prof. Mike Pound’s Java based project as featured on the Computerphile YouTube channel: https://github.com/mikepound/enigma
To run the program from the command line use python enigma.py. This will initialize the enigma machine with default settings for you to test.
To try out additional options, use python enigma.py --help to get the full range of user configurable settings. As a basic example, you can set rotors, rotor positions, ring settings, reflector, and the plugboard using the appropriate command line flags:
python enigma.py -rot "II V III" -pos "7 4 19" -ring "12 2 20" -plug "AF TV KO BL RW" -ref B
Pay attention to the quoting as it’s necessary for parsing the entered strings into lists for the