Classical-Crypto-GUI-Toolkit is a Python-based desktop application for experimenting with classical ciphers and cryptanalysis.
It is designed for students, security enthusiasts, and developers who want to learn or demonstrate classical encryption techniques using an intuitive graphical interface.
All operations are local, ensuring full offline use and privacy.
For users who prefer terminal-based interaction:
π A CLI version provides similar functionality through command-line commands.
π CLI Repository: Classical-Crypto-CLI-Toolkit
- Learning-focused β ideal for beginners exploring cryptography
- GUI-centric β built using CustomTkinter for clarity and usability
- Modular architecture β separates cipher logic from interface layer
This toolkit is educational, yet fully functional, with each cipher and attack implemented independently.
- Caesar Cipher β shift-based substitution
- Playfair Cipher β digraph-based substitution
- Rail Fence Cipher β zig-zag transposition cipher
- Row Column Cipher β columnar transposition cipher
- Caesar Brute Force Attack β tries all possible shifts
- Rail Fence Brute Force Attack β tries multiple rail values
classical-crypto-gui-toolkit/
β
βββ LICENSE
βββ main.py
βββ README.md
βββ requirements.txt
β
βββ core/
β βββ __init__.py
β βββ utils.py
β βββ ciphers/
β β βββ __init__.py
β β βββ caesar.py
β β βββ playfair.py
β β βββ rail_fence.py
β β βββ row_column.py
β β
β βββ attacks/
β βββ __init__.py
β βββ caesar_brute.py
β βββ rail_fence_brute.py
β
βββ gui/
βββ __init__.py
βββ app.py
βββ main_window.py
βββ theme.py
βββ validators.py
β
βββ components/
β βββ __init__.py
β βββ action_buttons.py
β βββ base_attack_frame.py
β βββ base_cipher_frame.py
β βββ sidebar.py
β βββ text_area.py
β
βββ panels/
βββ __init__.py
βββ about_panel.py
βββ attack_panel.py
βββ cipher_panel.py
β
βββ attacks/
β βββ __init__.py
β βββ caesar_attack_panel.py
β βββ railfence_attack_panel.py
β
βββ ciphers/
βββ __init__.py
βββ caesar_panel.py
βββ playfair_panel.py
βββ rail_fence_panel.py
βββ row_column_panel.pyCore cryptographic logic is strictly separated from the GUI layer for maintainability and clarity.
git clone https://github.com/ShakalBhau0001/classical-crypto-gui-toolkit.git
cd classical-crypto-gui-toolkitpip install -r requirements.txtpython main.pyThe application provides:
- Sidebar navigation between Cipher, Attack, and About panels
- Dedicated panels for each cipher
- Brute-force attack interfaces with result display
- Clear separation between input and output text areas
Designed to be beginner-friendly and easy to extend.
customtkinter
cryptographyThis toolkit is educational and research-focused.
It uses classical ciphers and is not suitable for modern secure communication.
- Additional classical cipher implementations
- Frequency analysis tools
- Export results functionality
- Standalone executable packaging
Developer: Shakal Bhau
GitHub: ShakalBhau0001
βClassical ciphers teach discipline before modern encryption.β
If you like this project, consider giving it a β on GitHub!












