Skip to content

This is a Java Swing desktop application developed as part of the BYM 468 – Cryptography course. The project demonstrates the Caesar Cipher algorithm.

Notifications You must be signed in to change notification settings

rraeichpx/Caesar-Cipher-Algorithm-JavaGUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

============================================================ BYM 468 – CRYPTOGRAPHY COURSE PROJECT

Project Title : Caesar Cipher Desktop Application Academic Year : 2025 – 2026 Student Name : Haluk Instructor : (Your Instructor’s Name Here)


📘 PROJECT DESCRIPTION

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:

  1. Encryption (Şifreleme)
  2. Decryption (Deşifreleme)
  3. Frequency Analysis / Attack (Şifre Kırma)

The program works with the Turkish alphabet and follows the exact specifications required in the course assignment.


🧩 FEATURES

  • 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

🧱 PROJECT STRUCTURE

src/ ├── Main.java → Application entry point ├── CaesarCipher.java → Encryption logic & attack └── CaesarCipherApp.java → GUI (Swing)


⚙️ HOW TO RUN

  1. Open the project in any Java IDE (IntelliJ, Eclipse, VS Code).
  2. Make sure all three files are inside the "src" folder.
  3. Run "Main.java".
  4. The GUI window will open and you can start testing.

💡 EXAMPLES

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)


🧮 TECHNICAL DETAILS

Language : Java (JDK 17+) UI Framework : Swing Algorithm : Caesar Cipher (Shift Cipher) Alphabet : Turkish Alphabet (29 letters) Text Filter : Removes spaces and punctuation


🏫 COURSE REQUIREMENTS (Evaluation)

  • Encryption Section ............ 30 points
  • Decryption Section ............ 30 points
  • Frequency Analysis Section .... 40 points
  • Submission Deadline ........... 10 October 2025, 23:59

👨‍💻 AUTHOR

Developed by: Haluk Course: BYM 468 – Cryptography Academic Year: 2025–2026

============================================================ END OF DOCUMENT

About

This is a Java Swing desktop application developed as part of the BYM 468 – Cryptography course. The project demonstrates the Caesar Cipher algorithm.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages