A Java-based implementation of the Caesar Cipher encryption technique with a graphical user interface, frequency analysis, and brute-force decryption capabilities.
The main interface provides input fields for message and shift value, along with encryption/decryption options
Example of encrypting text with a custom shift value
Successful decryption of an encrypted message
- π Encryption and decryption using custom shift values
- π Support for both uppercase and lowercase letters
- π Frequency analysis for cipher cracking
- πͺ Brute-force decryption method
- π₯οΈ User-friendly GUI interface
- π’ Support for numeric characters
- π Dynamic shift calculation based on passwords
EnhancedCaesarCipherGUI: Main GUI class using Java Swingencrypt(): Message encryption with custom shiftsdecrypt(): Message decryption functionalityfindShiftByFrequency(): Frequency analysis implementationcrackCipherBruteForce(): Brute-force decryption method
- Encryption/Decryption: O(n)
- Frequency Analysis: O(n)
- Brute-Force Cracking: O(n)
- Password-based Shift: O(m)
- π Input fields for message and shift value
- π Encrypt/Decrypt buttons
- π¨ Cipher cracking options
- π Results display area
- π¨ Clean, intuitive interface
- Clone the repository
- Compile the Java files
- Run
EnhancedCaesarCipherGUI.java - Enter your message and shift value
- Choose desired operation (encrypt/decrypt/crack)
This project serves as an excellent introduction to:
- Basic cryptography concepts
- GUI development in Java
- Algorithm implementation
- Frequency analysis techniques
- Java Development Kit (JDK)
- Java Swing Library
John Anugrah Peter (23215206)
Developed for BDA202-3N: JAVA
B.Sc.(Data Science & Artificial Intelligence)
School of Sciences
Academic Year: 2024-25