Skip to content

A recreation of an engima machine used for encoding messages by Nazi Germany during World War II

Notifications You must be signed in to change notification settings

matthewsaunders/enigma-machine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Engima Machine

This repo is an interactive recreation of an enigma machine, the WWII era machine used by Nazi Germany to encode and decode messages.

Enigma machine simulator

How to use this simulator

To run the engima machine, follow this procedure.

  1. Download this repository to your local machine.
  2. From the root directory, build and run the repo.
    $> yarn start
    
  3. Navigate in your browser to http://localhost:3000/

How enigma works

At a high level, an enigma machine would route a letter from the keyboard input through the machine and would illuminate the lightboard with the encoded letter. The secret to the enigma's effectiveness was that the encoding changed after every letter.

Letter signal routing

The path of a letter as it is routed through the machine is:

  1. Keyboard input
  2. Plugboard
  3. Fast rotor
  4. Medium rotor
  5. Slow rotor
  6. Reflector
  7. Slow rotor
  8. Medium rotor
  9. Fast rotor
  10. Plugboard
  11. Lightboard

For a detailed breakdown of how an engima machine worked, watch this video. How did the Enigma Machine work?

To Do

  • General
    • Add button to reset machine configuration
    • Save / load configuration using local state
  • Rotors
    • Allow user to change rotors
  • Plugboard
    • Allow users to remove letter mappings

About

A recreation of an engima machine used for encoding messages by Nazi Germany during World War II

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published