Skip to content

UttamSingh809/Secure-Vault

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SecureVault

A next-generation vault to securely encrypt, store, and share files with zero-knowledge privacy.

Python Version Live Demo GitHub Repo

↘  Share SecureVault with your friends ↙

Share on X Share on Telegram Share on WhatsApp Share on Reddit

🎯 Motivation

In most traditional cloud storage systems, data security is entirely managed by the service provider. Encryption, if used, is typically server-side, meaning the provider controls key generation, storage, and decryption. This creates a trust imbalance: users must rely completely on the provider to protect their data, with no guarantee against access by administrators, insiders, or hackers.

Since files may be stored decrypted or encrypted with server-held keys, users lose control over their privacy. This poses serious risks in sensitive areas like healthcare, finance, and education—where breaches can lead to identity theft or misuse.

This model undermines core principles of confidentiality and digital autonomy, highlighting the need to rethink how cryptographic trust is distributed in modern applications.

✨ Features

  • 🔒End-to-End AES-256 Encryption: Files are encrypted using AES-256 before being stored — only you can decrypt them.
  • 🗝️PBKDF2 Key Derivation: No one can access your file without the correct password — not even the server admin.
  • 🛡️SHA-256 Integrity Check: Tampering detection with file hash comparison during decryption.
  • 📁Private Uploads: Files stored securely in a non-public uploads/ directory.
  • 📝Intrusion Logging: All access attempts logged with IP, username, action, and status.
  • 💻Web-Based UI: Clean, responsive interface for all devices.
  • 🌐Easy Hosting: Deployable on PythonAnywhere or your own server.
  • 🧂Salted Encryption Uses a fixed salt (KEY_SALT) to protect against rainbow table attacks.
  • 🧪 Input Validation Rejects empty uploads and passwords shorter than 4 characters.

⚡️ Quick Start

Note

Try the live demo: uttam.pythonanywhere.com

1. Clone the Repository

git clone https://github.com/UttamSingh809/Secure-Vault.git
cd Secure-Vault

2. Install Dependencies

pip install flask pycryptodome 

3. Run SecureVault Locally

python app.py

Visit http://localhost:5000 in your browser.

🛠️ Tech Stack

  • Backend: Python 3.10, Flask
  • Encryption: PyCryptodome
  • Frontend: HTML, CSS
  • Hosting: PythonAnywhere
  • Version Control: GitHub

About

A next-generation vault to securely encrypt, store, and share files with zero-knowledge privacy.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors