Project Title : Caesar Cipher Desktop Application Academic Year : 2025 – 2026 Student Name : Haluk Instructor : (Your Instructor’s Name Here)
This project is a Java Swing desktop application developed as part of the BYM 468 – Cryptography course.
It demonstrates the Caesar Cipher algorithm through three main functions:
- Encryption (Şifreleme)
- Decryption (Deşifreleme)
- Frequency Analysis / Attack (Şifre Kırma)
The program works with the Turkish alphabet and follows the exact specifications required in the course assignment.
- Full Turkish alphabet support (A–Z + Ç, Ğ, İ, Ö, Ş, Ü)
- Encrypt and decrypt text using a numeric key
- Frequency-based attack to guess possible plaintexts
- Ignores spaces and punctuation marks
- Simple and clean graphical interface (Java Swing)
- No external libraries required
src/ ├── Main.java → Application entry point ├── CaesarCipher.java → Encryption logic & attack └── CaesarCipherApp.java → GUI (Swing)
- Open the project in any Java IDE (IntelliJ, Eclipse, VS Code).
- Make sure all three files are inside the "src" folder.
- Run "Main.java".
- The GUI window will open and you can start testing.
ENCRYPTION Input Text : MERHABA DÜNYA Key : 3 Output : PĞUKEÇD GÜPDÇD
DECRYPTION Input Text : PĞUKEÇD GÜPDÇD Key : 3 Output : MERHABA DÜNYA
FREQUENCY ATTACK Input Text : PĞUKEÇD GÜPDÇD Output : Most frequent letter: D If 'A' was encoded as 'D': ... If 'E' was encoded as 'D': ... If 'İ' was encoded as 'D': ... (Shows all possible decoded texts)
Language : Java (JDK 17+) UI Framework : Swing Algorithm : Caesar Cipher (Shift Cipher) Alphabet : Turkish Alphabet (29 letters) Text Filter : Removes spaces and punctuation
- Encryption Section ............ 30 points
- Decryption Section ............ 30 points
- Frequency Analysis Section .... 40 points
- Submission Deadline ........... 10 October 2025, 23:59
Developed by: Haluk Course: BYM 468 – Cryptography Academic Year: 2025–2026