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.
- Features
- Supported Ciphers
- Installation
- Usage
- Cipher Details
- Audio Features
- Educational Content
- Contributing
- License
- 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
- π‘ 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
- π£ Hexadecimal - Base-16 representation
- π URL Encoding - Percent encoding for web
- π Base64 - Standard data encoding
- π» Binary - 8-bit binary representation
- π ROT13 - Simple letter rotation
- π VigenΓ¨re Cipher - Polyalphabetic keyword cipher
- π Rail Fence Cipher - Zigzag transposition
- π’ A1Z26 Cipher - Simple number substitution
- Python
- pip package manager
-
Clone the repository
git clone https://github.com/clueNA/Cipher-Master cd Cipher-Master
-
Install dependencies
pip install -r requirements.txt
-
Run the application
streamlit run app.py
-
Open your browser Navigate to
http://localhost:8501
-
Start converting!
streamlit
numpy
scipy
matplotlib
- Select a Cipher - Choose from the sidebar dropdown
- Enter Text - Type your message in the input area
- Convert - Click the encrypt/decrypt button
- View Results - See the converted output instantly
- 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
Encrypt with Vigenère:
Input: "HELLO WORLD"
Keyword: "CIPHER"
Output: "JINQS HMRWP"
Generate Morse Audio:
Input: "SOS"
Output: "... --- ..." + Audio file
Special ciphers that are their own inverse operation:
- Atbash - AβZ, BβY, etc.
- ROT13 - 13-position rotation
- 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
- Base64 - Email attachments, web data
- URL Encoding - Web form submissions
- Hexadecimal - Programming and debugging
- Standard Timing - ITU-T recommendations
- Adjustable Speed - 5-40 WPM range
- Custom Frequency - 300-1000 Hz tones
- Professional Quality - 44.1kHz WAV output
- Dot: 1 unit
- Dash: 3 units
- Symbol gap: 1 unit
- Letter gap: 3 units
- Word gap: 7 units
- 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
Understanding why some ciphers decode themselves:
- Mathematical properties
- Practical applications
- Historical examples
We welcome contributions! Here's how you can help:
- Create cipher functions - Follow existing patterns
- Add to main interface - Update the selectbox
- Include documentation - Add educational content
- Test thoroughly - Ensure proper encoding/decoding
- Use GitHub Issues
- Include steps to reproduce
- Provide system information
- Describe the use case
- Explain the expected behavior
- Consider educational value
Total Ciphers: 14
βββ Historical: 6
βββ Modern: 5
βββ Self-Inverse: 2
Lines of Code: ~1,000+
Educational Features: 15+
Audio Features: 5
This project is licensed under the MIT License - see the LICENSE file for details.
- clueNA - Initial work and development