The Enigma Encryption Machine is a C++ program that implements the famous Enigma encryption machine from the era of encryption machines. The program allows you to encrypt arbitrary files using the Enigma algorithm. It provides a console interface and supports various features such as file encryption, machine configuration, and state saving.
The Enigma Encryption Machine has the following dependencies:
- C++17 compiler
- CMake (minimum version 3.5)
To build the Enigma Encryption Machine, follow these steps:
- Open a terminal.
- Navigate to the root directory of the project.
- Run the following command:
make build
This command will compile the source code and create an executable file named "Enigma" in the bin
directory.
To use the Enigma Encryption Machine, follow these steps:
- Make sure you have successfully built the program.
- Open a terminal.
- Navigate to the
bin
directory. - Run the following command:
./Enigma
Replace <file_path>
in the app with the absolute path to the file you want to encrypt.
The program will encrypt the file using the Enigma algorithm and save the encrypted file as <source_file_name>_encoded
in the same directory as the source file.
If you want to contribute to the development of the Enigma Encryption Machine, follow these steps:
- Clone the GitHub repository:
git clone https://github.com/your-username/enigma.git
- Navigate to the project directory:
cd enigma
-
Make the necessary changes to the source code or add new features.
-
Build the program using the following command:
make build
- Test the program using the following command:
make tests
- If all tests pass successfully, you can commit your changes and push them to the repository:
git commit -am "Add new features"
git push
- Create a pull request on GitHub to merge your changes into the main repository.
The Enigma Encryption Machine is licensed under the MIT License. Feel free to use, modify, and distribute the code for both commercial and non-commercial purposes.