Enigma D, which has three rotor slots and no plugboard. The reflector can be set to any positions.
Enigma I 'Wehrmacht', which has three rotor slots.
Enigma M3, which has three rotor slots.
Enigma M4, which has four rotor slots. The fourth rotor never rotates.
Swiss K, which has three rotor slots and no plugboard. The reflector can be set to any positions.
Predefined existent reflectors.
A convenience function to make an entry wheel from a substitution.
Predefined the simplest entry wheel which does not substitute.
Predefined entry wheel: QWE... -> ABC...
A convenience function to make a plugboard from a substitution.
Predefined the simplest plugboard which does not substitute.
A convenience function to make a reflector from a substitution.
Predefined existent reflectors.
Predefined existent reflectors.
A convenience function to make a rotor with no turnover notches from a forward substitution. If ringSetting is 'C', it corresponds to "C-03".
A convenience function to make a rotor with one turnover notch from a forward substitution. If turnover is 'B', the next rotor steps when this rotor steps from B to C. If ringSetting is 'C', it corresponds to "C-03".
A convenience function to make a rotor with two turnover notches from a forward substitution. If turnover1 is 'B' and turnover2 is 'Z', the next rotor steps when this rotor steps from B to C and from Z to A. If ringSetting is 'C', it corresponds to "C-03".
Predefined existent rotors. Because these rotors have no turnover notches, they are generally set side by side with a reflector.
Predefined existent rotors.
Currently machines with the double-stepping mechanism are available.
A library for simulating the Enigma machines.