Skip to content

Urbi5g/Encryption-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Markdown

πŸ” Modern Encryption & Cryptography Tool

A professional, interactive Desktop Application built with Python and ttkbootstrap that combines classic/educational ciphers with modern, industry-standard authenticated encryption. This project is designed for both learning cryptography fundamentals and performing secure file encryption.


πŸš€ Features

1. Text Encryption (Educational & Classic)

  • Caesar Cipher: A classic substitution cipher with adjustable shifts.
  • RC4 (ARC4): Stream cipher implementation utilizing dynamic key generation (SHA-1 KDF over random 16-byte keys/IVs) and encoded in Base64 for easy transit.
  • Note: These algorithms are implemented primarily for academic demonstration and historical reference.

2. File Encryption (Production Grade - Optimized with Chunking)

  • AES-GCM (Authenticated Encryption): Uses 256-bit AES in Galois/Counter Mode to ensure both confidentiality and integrity/authenticity of any file type (PDFs, Images, Videos, Documents).
  • Memory-Efficient Chunking: Processes large files and high-definition videos in small chunks (64KB), preventing MemoryError and keeping RAM usage minimal regardless of file size.
  • PBKDF2 Key Derivation: Derives a strong 32-byte cryptographic key from user passwords using PBKDF2HMAC with SHA-256 and 200,000 iterations to resist brute-force attacks.
  • Cryptographic Salts & Nonces: Employs cryptographically secure pseudo-random numbers (os.urandom) for unique salts and nonces per encryption session.

3. Modern User Interface

  • Built using ttkbootstrap with a clean, responsive "superhero" dark theme.
  • Interactive UI elements: dynamic status bar, secure password masking options, quick text swap capabilities, and smooth hover effects on control components.

πŸ› οΈ Installation & Setup

  1. Clone the Repository:
   git clone [https://github.com/Urbi5g/modern-encryption-tool.git](https://github.com/Urbi5g/modern-encryption-tool.git)
   cd modern-encryption-tool
Install Dependencies:
Make sure you have Python 3.8+ installed. Install the required cryptographic and GUI packages using:

Bash
   pip install -r requirements.txt
Run the Application:

Bash
   python main.py
πŸ“¦ Project Structure
Plaintext
β”œβ”€β”€ main.py             # Main Application Script (GUI & Logic)
β”œβ”€β”€ requirements.txt    # Project Dependencies
└── README.md           # Project Documentation
⚠️ Security Disclaimer
The Caesar and RC4 implementations in this repository are intended strictly for educational and research purposes. RC4 and Caesar are cryptographically broken and should never be used to protect sensitive production data. For real-world security needs, use the AES-GCM file encryption feature provided in the tool.

πŸ“„ License
This project is open-source and available under the MIT License.

About

A modern, interactive Desktop Application that combines educational/classic ciphers (Caesar, RC4) with memory-efficient production-grade encryption (AES-GCM with chunking).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages