File Encryption Tool is a Python-based GUI application designed to securely encrypt and decrypt files using password-based encryption. The application provides a simple user interface while implementing cybersecurity practices such as secure key generation, password strength validation, and activity monitoring.
The project demonstrates practical implementation of data protection concepts, encryption techniques, and secure logging practices.
- π Secure file encryption and decryption
- π Password-based key generation using SHA-256 hashing
- π‘οΈ Password strength checker
- π Secure activity logging
- π¨ Failed decryption attempt monitoring
- π File selection through graphical interface
- ποΈ Show/Hide password option
- β File validation before encryption
- π₯οΈ User-friendly Tkinter GUI
- Programming Language: Python
- GUI Framework: Tkinter
- Encryption Library: Cryptography (Fernet)
- Hashing Algorithm: SHA-256
- Libraries:
- os
- hashlib
- base64
- logging
- re
- datetime
The application generates a secure encryption key from the user password using SHA-256 hashing and uses Fernet symmetric encryption for protecting files.
The application records security events such as:
Sensitive information such as passwords and encryption keys are never stored.
Incorrect decryption attempts are recorded for security monitoring:
Learning Outcomes
Through this project, I gained practical experience in:
Symmetric encryption concepts Password-based security Cryptographic hashing Secure logging practices GUI application development Basic security monitoring concepts
Developed By
Archita Shinde
Cybersecurity Enthusiast | SOC Analyst Aspirant