With this package you're able to encode/decode Enigma messages. It currently supports

  • five different rotors of which three are used
  • three different reflectors
  • a plugboard

Not supported

  • Difference between ring setting and rotor position. Currently it's only rotor position


Enigma.jl is an official Julia package so you can easily install it using:

] add Enigma

Or if you want to hack a bit probably develop it

] dev Enigma

Info:] is used in the Julia REPL to get into package mode.

This documentation is done in several parts.

If you have some questions please feel free to ask me by making an issue.

You might be interested in the process of how I coded this: Checkout the full process on my blog opensourc.es