DEM (Data Encryption Module) is a secure desktop-based file encryption system built using Python.
The application implements AES-256-GCM authenticated encryption, role-based access control (RBAC), real-time folder monitoring, audit logging, and secure password-based key derivation through a modern CustomTkinter GUI.
Designed as a practical cybersecurity project, DEM focuses on secure file protection while maintaining usability and performance.
- AES-256-GCM authenticated encryption
- PBKDF2-SHA256 key derivation
- Role-Based Access Control (Admin/User)
- Automatic folder watchdog monitoring
- Tamper-evident audit logging
- Secure session management
- Chunked file encryption for large files
- SQLite-based encrypted file registry
- Modern dark-mode GUI using CustomTkinter
- Ownership-based decryption enforcement
| Component | Technology |
|---|---|
| Language | Python 3.10+ |
| GUI Framework | CustomTkinter |
| Encryption | AES-256-GCM |
| Key Derivation | PBKDF2-HMAC-SHA256 |
| Database | SQLite3 |
| Monitoring | watchdog |
| Cryptography Library | PyCA cryptography |
Data_Encryption_Module/
│
├── auth/ # Authentication & RBAC
├── core/ # Encryption & decryption logic
├── gui/ # GUI components
├── storage/ # Database & audit logging
├── watchdog_monitor/ # Real-time folder monitoring
├── main.py # Application entry point
├── requirements.txt
└── README.md
DEM uses:
- AES-256-GCM for authenticated encryption
- PBKDF2-HMAC-SHA256 for secure key derivation
- 600,000 PBKDF2 iterations
- Unique random salt and nonce per file
This ensures:
- Confidentiality
- Integrity protection
- Resistance against brute-force attacks
- Protection against nonce reuse
- Admin and User roles
- Ownership-based decryption restrictions
- Admin-only management controls
All important operations are logged:
- Encryption
- Decryption
- Watchdog events
- Administrative actions
Automatically encrypts newly added files in monitored directories using real-time filesystem monitoring.
git clone https://github.com/Zaeem-Alpha/Data-Encryption-Module.git
cd Data-Encryption-Modulepip install -r requirements.txtpython main.pyUsername: admin
Password: admin123
- Multi-factor authentication
- Secure encrypted session storage
- Password recovery mechanism
- Secure cloud backup support
- Dark/light theme switching
- Executable packaging for Windows/Linux/macOS
This project was developed for educational and practical cybersecurity learning purposes, focusing on applied cryptography, secure authentication systems, and secure software design principles.
M. Zaeem Bilal
Cybersecurity Student | Aspiring Offensive Security Specialist
This project is licensed under the MIT License.




