Skip to content

EnigmaX is an encryption/decryption program that uses a complex algorithm to secure your messages. With 12 unique encryption steps, it provides high-level security and can encrypt messages of any length.

License

Khosraw/EnigmaX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EnigmaX

EnigmaX is a Java program that can be used to encrypt and decrypt messages. It applies a series of encryption algorithms to the user's input, including a Caesar cipher, XOR encryption, transposition cipher, one-time pad encryption, and modulo reduction.

Getting Started

To use EnigmaX, simply clone or download the repository and open the project in an IDE of your choice. You can then run the program from the Main class.

Prerequisites

You must have Java installed on your computer in order to run this program.

How to Use

  1. When you run the program, you will be prompted to enter whether you want to encrypt or decrypt a message. Would you like to encrypt or decrypt a message?
  2. If you choose to encrypt a message, you will then be prompted to enter the message you wish to encrypt and a key. The key determines the number of positions to shift each character in the message. The greater the key, the more secure the encryption.
Enter a message to encrypt:
Hello World
Enter a key:
3
  1. The program will then display the encrypted message.
Your new decryption key is: 4931 (prime number)
Your encrypted message is:
6123640476616101295013
  1. If you choose to decrypt a message (under development), you will be prompted to enter the message you wish to decrypt and the key that was used to encrypt it.
Enter a message to decrypt:
6123640476616101295013
Enter a key:
3

The program will then display the decrypted message.

Your decrypted message is:
Hello World

Algorithm Explanation

The EnigmaX program applies a series of encryption algorithms to the user's input. The following is a brief explanation of some of these algorithms.

Caesar Cipher

The Caesar cipher is a simple substitution cipher that replaces each letter in the message with a letter that is a fixed number of positions down the alphabet. In EnigmaX, the Caesar cipher is implemented by shifting each character in the message a certain number of positions, which is determined by the key provided by the user.

XOR Encryption

XOR encryption is a simple encryption algorithm that applies the XOR (exclusive or) operator to the bits of the message and a random key. In EnigmaX, the XOR operator is applied to the binary representation of each character in the message and a key generated by the program.

Transposition Cipher

Transposition ciphers are encryption methods that involve rearranging the order of the characters in the message. In EnigmaX, the transposition cipher is implemented by shuffling the order of the bits in the binary representation of each character in the message according to a key provided by the user.

One-Time Pad Encryption

One-time pad encryption is an encryption algorithm that uses a random key that is at least as long as the message being encrypted. In EnigmaX, the one-time pad encryption is implemented by applying the XOR operator to each character in the message and a key generated by the program.

Modulo Reduction

Modulo reduction is a mathematical operation that reduces a number to its remainder after division by a given integer. In EnigmaX, the modulo reduction is applied to the ASCII value of each character in the message, using a prime number as the divisor.

Base64 Conversion

Base64 is a binary-to-text encoding scheme that represents binary data in an ASCII string format. In EnigmaX, the base64 conversion is applied to the ASCII value of each character in the message.

Many other ciphers and encryption methods were also used.

Contributing

Contributions to EnigmaX are welcome! If you find a bug or have an idea for a new feature, please create an issue or submit a pull request.

License

EnigmaX is licensed under the MIT license. See the LICENSE file for more details.

Credits

EnigmaX was created by Khosraw Azizi.

About

EnigmaX is an encryption/decryption program that uses a complex algorithm to secure your messages. With 12 unique encryption steps, it provides high-level security and can encrypt messages of any length.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages