How does the Enigma applet work?

This page describes how to use the Enigma Applet. The source code is provided as-is. Any questions on the operation of the >applet can be directed to Russell Schwager at

To encrypt a message using the enigma applet, push the keys on the keyboard. Clicking on the key will light up the encrypted letter on the display. The last 20 original letters and the encrypted letters are displayed to the right of the keyboard.

The applet allows for several parameters to be changed at any point in the operation of the machine. To change the setting of a rotor, click the up or down arrow to the right of each rotor. Pushing the up button will rotate the rotor once. Pushing the down arrow will push back the rotor once. To completely change the rotor, pick a rotor from the drop down box in the dark gray controls section at the bottom of the applet. To change the initial position of a rotor, select a position from the drop down box in the dark gray controls section at the bottom of the applet. To add a connection to the plug board, drag the mouse from one of the white circles in the plug board to another one. If the connection is made, a red line will appear between the two circles. Hitting the reset button on the controls section at the bottom of the applet will reset the state of machine to its default settings.

Here is an encoded message using the default settings:


Try and decode the message.

I have found that the applet sometimes behaves strangely under Microsoft Explorer running under Windows 95. I would recommend using Netscape 3.0 or higher to run this applet. This applet was developed using Microsoft J++ and was tested under Windows 95 and the MacOs.

Back to the Enigma Applet.

Russell Schwager - - 1997-2003