Enigma Enciphering Machine 1.0
Enigma Enciphering Machine - Here is the concept behind this representation of the Enigma Machine:
The program uses
virtual "wheels" that contain all of the printable characters on the keyboard. Think of the first
wheel as the keyboard you are typing on. All of the wheels contain the same characters, but in a
random, non-repeating order.
Each time a character is pressed, the location of that
character on the one wheel is used to as the index to lift the character off of the next wheel.
Then the new character is searched for in the next wheel, and the pattern repeats itself across
each wheel. The character lifted off of the final wheel is the output.
This step is
repeated for each character in the message. Decryption simply sends the message backwards through a
similar, but reversed process.
What really makes this encryption effective is that like
the real life machine, the wheels rotate either to the left or right after each character. So the
relationship between each character shifts constantly. As a result, even repeating characters such
as "AAAAAAAAAA" are represented with garbage such as "BGPVLKHWCD".
Another great part
about an encryption scheme like this is it's flexibility. You can add more wheels, more characters
per wheel, change the order of the wheels, the directions the wheels spin, and change the starting
position of each wheel.
NOTE: Binary files require Microsoft's Visual Basic 6.0 Runtime
Library (usually pre-installed in Windows XP).
Write Review:
































