https://github.com/cluena/cipher-master
A comprehensive cryptography application built with Streamlit and Python
https://github.com/cluena/cipher-master
cipher cipher-algorithms python streamlit
Last synced: 2 months ago
JSON representation
A comprehensive cryptography application built with Streamlit and Python
- Host: GitHub
- URL: https://github.com/cluena/cipher-master
- Owner: clueNA
- License: mit
- Created: 2025-07-18T13:11:14.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-07-18T13:57:33.000Z (3 months ago)
- Last Synced: 2025-07-18T18:00:49.083Z (3 months ago)
- Topics: cipher, cipher-algorithms, python, streamlit
- Language: Python
- Homepage: https://cipher-master.streamlit.app/
- Size: 24.4 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# π Cipher Master
A comprehensive cryptography application built with Streamlit that implements 14 different ciphers and encoding methods, featuring interactive audio generation, timing visualizations, and detailed educational content.



## π Live Demo
[](https://cipher-master.streamlit.app/)## π Table of Contents
- [Features](#-features)
- [Supported Ciphers](#-supported-ciphers)
- [Installation](#-installation)
- [Usage](#-usage)
- [Cipher Details](#-cipher-details)
- [Audio Features](#-audio-features)
- [Educational Content](#-educational-content)
- [Contributing](#-contributing)
- [License](#-license)## β¨ Features
- **14 Different Ciphers** - From ancient to modern cryptographic methods
- **Interactive Audio Generation** - Morse code with adjustable WPM and frequency
- **Visual Timing Diagrams** - Matplotlib-powered Morse code visualization
- **Educational Explanations** - Learn how each cipher works
- **Real-time Conversion** - Instant encryption/decryption
- **Audio Download** - Export Morse code as WAV files
- **Responsive Design** - Clean, intuitive web interface
- **Error Handling** - Graceful handling of invalid inputs## π Supported Ciphers
### Historical Ciphers (6)
- **π‘ Morse Code** - Telegraph communication with audio playback
- **ποΈ Caesar Cipher** - Classic Roman shift cipher
- **β¬ Playfair Cipher** - Victorian-era digraph substitution
- **π Polybius Square** - Ancient Greek coordinate cipher
- **π· Pigpen Cipher** - Masonic symbolic cipher
- **π Atbash Cipher** - Biblical alphabet reversal### Modern Encodings (5)
- **π£ Hexadecimal** - Base-16 representation
- **π URL Encoding** - Percent encoding for web
- **π Base64** - Standard data encoding
- **π» Binary** - 8-bit binary representation
- **π ROT13** - Simple letter rotation### Advanced Ciphers (3)
- **π VigenΓ¨re Cipher** - Polyalphabetic keyword cipher
- **π Rail Fence Cipher** - Zigzag transposition
- **π’ A1Z26 Cipher** - Simple number substitution## π Installation
### Prerequisites
- Python
- pip package manager### Quick Start
1. **Clone the repository**
```bash
git clone https://github.com/clueNA/Cipher-Master
cd Cipher-Master
```2. **Install dependencies**
```bash
pip install -r requirements.txt
```3. **Run the application**
```bash
streamlit run app.py
```4. **Open your browser**
Navigate to `http://localhost:8501`5. **Start converting!**
### Dependencies
```
streamlit
numpy
scipy
matplotlib
```## π― Usage
### Basic Operation
1. **Select a Cipher** - Choose from the sidebar dropdown
2. **Enter Text** - Type your message in the input area
3. **Convert** - Click the encrypt/decrypt button
4. **View Results** - See the converted output instantly### Morse Code Special Features
- **Audio Settings** - Adjust WPM (5-40) and frequency (300-1000 Hz)
- **Audio Playback** - Listen to your Morse code
- **Download Audio** - Save as WAV file
- **Timing Diagram** - Visual representation of dots, dashes, and gaps### Example Workflows
**Encrypt with Vigenère:**
```
Input: "HELLO WORLD"
Keyword: "CIPHER"
Output: "JINQS HMRWP"
```**Generate Morse Audio:**
```
Input: "SOS"
Output: "... --- ..." + Audio file
```## π Cipher Details
### Self-Inverse Ciphers
Special ciphers that are their own inverse operation:- **Atbash** - AβZ, BβY, etc.
- **ROT13** - 13-position rotation### Historical Significance
- **Polybius Square** - Used in ancient Greece (~150 BC)
- **Caesar Cipher** - Named after Julius Caesar
- **Playfair Cipher** - Used in WWI and WWII
- **Morse Code** - Revolutionized long-distance communication### Modern Applications
- **Base64** - Email attachments, web data
- **URL Encoding** - Web form submissions
- **Hexadecimal** - Programming and debugging## π΅ Audio Features
### Morse Code Audio Generation
- **Standard Timing** - ITU-T recommendations
- **Adjustable Speed** - 5-40 WPM range
- **Custom Frequency** - 300-1000 Hz tones
- **Professional Quality** - 44.1kHz WAV output### Timing Specifications
- Dot: 1 unit
- Dash: 3 units
- Symbol gap: 1 unit
- Letter gap: 3 units
- Word gap: 7 units## π Educational Content
### Interactive Learning
- **How-to Guides** - Step-by-step cipher explanations
- **Visual Examples** - Rail fence patterns, Playfair grids
- **Reference Tables** - Quick lookup for all ciphers
- **Historical Context** - Learn the origins and uses### Self-Inverse Explanation
Understanding why some ciphers decode themselves:
- Mathematical properties
- Practical applications
- Historical examples## π€ Contributing
We welcome contributions! Here's how you can help:
### Adding New Ciphers
1. **Create cipher functions** - Follow existing patterns
2. **Add to main interface** - Update the selectbox
3. **Include documentation** - Add educational content
4. **Test thoroughly** - Ensure proper encoding/decoding### Bug Reports
- Use GitHub Issues
- Include steps to reproduce
- Provide system information### Feature Requests
- Describe the use case
- Explain the expected behavior
- Consider educational value## π Statistics
```
Total Ciphers: 14
βββ Historical: 6
βββ Modern: 5
βββ Self-Inverse: 2Lines of Code: ~1,000+
Educational Features: 15+
Audio Features: 5
```## π License
This project is licensed under the MIT License - see the LICENSE file for details.
## π₯ Authors
- **clueNA** - Initial work and development