SecureDrive is a professional-grade, cloud-based file storage solution built with React and Firebase. It prioritizes security by implementing client-side AES-256 encryption, ensuring that your files are encrypted before they ever leave your device.
- 🔐 End-to-End Security: Files are encrypted using AES-256 encryption before being uploaded to the cloud.
- ☁️ Firebase Integration: Seamless file storage and management using Firebase Storage.
- 🔑 Unique Encryption Keys: A unique AES key is generated for every file upload.
- 📱 Responsive UI: A modern, sleek dashboard designed for all devices.
- 🛡️ Secure Authentication: Protected access with user authentication.
- ⚡ Real-time Updates: Instant feedback on upload progress and file availability.
- Frontend: React.js
- Backend/Storage: Firebase Storage
- Encryption: CryptoJS
- Styling: Vanilla CSS3 with Modern Flexbox/Grid
- Icons: FontAwesome / Material Icons
Follow these steps to get your local development environment running:
git clone https://github.com/Adarsh09675/Secured-File-Storage-System.git
cd Secured-File-Storage-Systemnpm installThe project comes pre-configured with a Firebase instance. To use your own:
- Create a project on the Firebase Console.
- Enable Storage.
- Copy your configuration and update it in
src/firebase.js.
npm startThe application will be available at http://localhost:3000.
- Login: Use the default credentials:
- Username:
aryaman - Password:
123
- Username:
- Upload: Select a file from your computer and click "Upload Securely".
- Encryption: The system will automatically generate a random AES key, encrypt the file content, and store it in Firebase.
- Access: View your securely stored files in the dashboard grid.
SecureDrive uses a "Security-First" approach:
- Client-Side Encryption: Unlike standard cloud storage, SecureDrive encrypts files on the user's browser.
- Data Privacy: Since the file is encrypted before upload, even the storage provider (Firebase) cannot read the content without the AES key.
- AES-256: Uses the Advanced Encryption Standard, trusted by governments and security experts worldwide.
Secured-File-Storage-System/
├── public/ # Static assets
├── src/
│ ├── components/ # React components (FileUpload, LoginForm, etc.)
│ ├── utils/ # Logic for AES Encryption (crypto.js)
│ ├── firebase.js # Firebase configuration
│ ├── App.js # Main application entry
│ └── index.js # React DOM rendering
├── package.json # Project dependencies
└── README.md # Project documentation
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by Adarsh
