Hybrid encryption-based file storage system
Why Choose This Project?
Data security in cloud storage is a major concern. Hybrid encryption (combining symmetric encryption for speed and asymmetric encryption for secure key exchange) provides a strong balance between performance and security. This project ensures that sensitive files stored in the cloud are protected with multiple layers of cryptographic mechanisms, making it ideal for students exploring cloud security, cryptography, and secure storage solutions.
What You Get
-
Secure file upload and retrieval system
-
Hybrid encryption using AES (symmetric) + RSA (asymmetric)
-
Encrypted file storage in the cloud
-
Key management system for encryption/decryption
-
User authentication and access control
-
Web dashboard for file management
-
Logs of file access for auditing
Key Features
| Feature | Description |
|---|---|
| Hybrid Encryption | Encrypt files using AES for speed; secure AES keys with RSA public/private key pairs. |
| Secure File Upload | Files are encrypted before being stored in the cloud. |
| User Authentication | Role-based login using IAM or JWT for secure access. |
| Cloud Storage | Store encrypted files in S3, Azure Blob, or GCP Cloud Storage. |
| Key Management | Manage encryption keys securely using AWS KMS / custom key vault. |
| Decryption on Demand | Files are decrypted only when an authorized user requests them. |
| Access Logs | Track who uploaded, accessed, or downloaded files. |
| Scalability | Handle multiple users and large files with efficient storage. |
Technology Stack
| Layer | Tools/Technologies |
|---|---|
| Frontend | HTML, CSS, JavaScript, React/Angular |
| Backend | Node.js / Spring Boot / Django |
| Encryption | AES-256 (symmetric), RSA-2048 (asymmetric) |
| Key Management | AWS KMS / HashiCorp Vault / Custom Key Service |
| Storage | AWS S3 / Azure Blob / GCP Cloud Storage |
| Authentication | JWT / OAuth 2.0 / IAM |
| Database | MySQL / PostgreSQL (for metadata and logs) |
| Deployment | Docker, Kubernetes (optional) |
Cloud Services Used
| Service | Purpose |
|---|---|
| AWS S3 / Azure Blob / GCP Storage | Encrypted file storage |
| AWS KMS / Key Vault | Key generation and secure management |
| IAM / Cloud Identity | Role-based access control |
| CloudWatch / Stackdriver | Monitoring file access and activities |
| Lambda / Cloud Functions (optional) | Serverless encryption/decryption processing |
Working Flow
-
User Authentication
-
User logs into the platform via secure authentication (JWT / IAM).
-
-
File Upload
-
The file is encrypted using AES (fast symmetric encryption).
-
The AES key is encrypted with the user’s RSA public key.
-
Both the encrypted file and the encrypted AES key are stored in the cloud.
-
-
File Storage
-
Encrypted files are stored in cloud storage (S3/Blob/GCS).
-
Metadata and logs are stored in a database.
-
-
File Access (Download/Decrypt)
-
Authorized user requests a file.
-
The encrypted AES key is retrieved and decrypted using the user’s RSA private key.
-
The decrypted AES key is used to decrypt the file on demand.
-
-
Monitoring & Logs
-
Every upload/download is logged for auditing.
-
Admin can monitor suspicious access patterns.
-
Security Features
-
Hybrid Encryption: AES (performance) + RSA (secure key exchange)
-
Role-Based Access Control: Users, Admins, Auditors
-
Key Management: Centralized KMS integration
-
Audit Logs: Complete tracking of file activity
-
Transport Security: HTTPS for all file transfers
Visualization Options
-
Admin Dashboard: Monitor file uploads, access logs, and key status
-
User Dashboard: Upload/download encrypted files
-
Graphs/Charts:
-
File access trends over time
-
Storage usage visualization
-
Suspicious activity alerts
-