I’ve just released the first version of JEnigma, a java API to implement the Enigma cipher. It’s a simple piece of code which is easy to use to create a virtual enigma machine, with any combination of rotors, plugboard and reflector. It’s mainly been written as an exercise out of a personal interest in classic ciphers. However, anyone wishing to write an enigma implementation or perform any cryptanalysis on enigma ciphers are likely to find this useful.
It could do with some more work, but I was keen to start getting some of these projects published. Later versions will implement the enigma’s ring and provide better support for the historical versions. I might also consider adding some features aimed at cryptanalysis.