ARCANE: A Java-based encryption and decryption system using rotor-based logic, inspired by the Enigma machine, with additional cipher layers like Caesar and Vigenère. This project allows for multi-layered encryption and secure message handling.
- Rotor-based Encryption: Inspired by Enigma, ARCANE uses customizable rotor settings for added security.
- Multi-Layered Ciphers: Supports various encryption techniques:
- Caesar Cipher: Shifts each letter by a specified number.
- Vigenère Cipher: Uses a keyword to shift each letter based on its position.
- Atbash Cipher: Mirrors the alphabet (A ↔ Z, B ↔ Y, etc.).
- ROT13 Cipher: Shifts each letter by 13 places.
- Rail Fence Cipher: Encrypts text by writing in a zigzag pattern across multiple rows.
- Multi-Step Decryption: Decrypts using the same rotor and cipher settings as encryption.
- ArcaneMachine.java: Core encryption/decryption logic, including rotor settings.
- ArcaneUI.java: Handles user inputs and displays the interface.
- CaesarCipher.java: Implements Caesar Cipher encryption and decryption.
- VigenereCipher.java: Implements Vigenère Cipher.
- AtbashCipher.java: Implements Atbash Cipher.
- ROT13Cipher.java: Implements ROT13 Cipher.
- RailFenceCipher.java: Implements Rail Fence Cipher.
- Java Development Kit (JDK): Ensure JDK is installed.
- IDE: IntelliJ, Eclipse, or any other Java IDE.
- Clone the repository:
git clone https://github.com/Agent-A345/ARCANE.git
- Open the project in your IDE.
- Build and run the project.
- Caesar Cipher: Numeric cipher key required.
- Vigenère Cipher: Word as a cipher key required (e.g., "KEY", "DOG").
- Rail Fence Cipher: Numeric cipher key required.
- Atbash Cipher: No cipher key required.
- ROT13 Cipher: No cipher key required.
- Enter a message to be encrypted.
- Enter the rotor values.
- Select the desired cipher language.
- Provide the required cipher key.
- Click on the "Encrypt" button.
- Manually decrypt the encrypted message as per the cipher language used (i.e., intermediate decryption).
- Check whether the intermediate encryption is correct.
- Enter rotor values and check the final decryption.
- Upon entering the correct rotor values, you get the original message.
- Atharva Pagar(me)
- Tanmay Mewada
- Omkar Malasne
- Abhishek Kadam
This project is licensed under the Apache License 2.0.