An implementation of the Paper Enigma machine in Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Python Paper Enigma

Partially implements paper Enigma found here:

The original motivation to writing this was to be able to generate the Rejewski characteristics quickly. I've neglected a few things to focus on this goal, for example:

  • the adjacent rotors don't automatically shift after the cycle is completed.

Example usage:

>>> from enigma import Enigma
>>> e = Enigma()
>>> e.encrypt('ATTACK AT DAWN')