Skip to content

Subhan-Haider/Security-Vault

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

60 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation


โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ•—    โ–ˆโ–ˆโ•—   โ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•—   โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—
โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•โ•šโ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ•โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘  โ•šโ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘    โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘  โ•šโ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•
โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•‘    โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   
โ•šโ•โ•โ•โ•โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•”โ•โ•โ•  โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•‘    โ•šโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   
โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘     โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ• โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘   
โ•šโ•โ•โ•โ•โ•โ•โ•   โ•šโ•โ•   โ•šโ•โ•โ•โ•โ•โ•โ•โ•šโ•โ•  โ•šโ•โ•โ•šโ•โ•โ•โ•โ•โ•โ•โ•šโ•โ•   โ•šโ•โ•  โ•šโ•โ•      โ•šโ•โ•โ•โ•  โ•šโ•โ•  โ•šโ•โ• โ•šโ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ•โ•โ•šโ•โ•   

๐Ÿ” Your secrets, disguised as math.


Kotlin React AES-256 Hilt License


Stealth Vault is disguised as a fully functional scientific calculator.
Enter the secret PIN and press = โ€” and a hardware-encrypted private vault opens.
Nobody will ever know what's hiding behind the numbers.



๐Ÿ“Œ Table of Contents


โœจ Overview

Stealth Vault is a multi-platform privacy ecosystem. On the surface, it's an elegant calculator app. Underneath, it's a hardened encrypted sandbox for your most sensitive files, photos, videos, and app data.

This monorepo contains two applications:

Platform Directory Description
๐Ÿ“ฑ Android /app Native Kotlin app with hardware-backed AES-256 encryption, intruder detection, app locking, and a decoy PIN system
๐Ÿ’ป Web /web React + TypeScript companion โ€” same decoy calculator UI, auto-lock, glassmorphism design, and Framer Motion animations

๐ŸŒŸ Features


๐Ÿงฎ ย  Decoy Calculator โ€” The Perfect Cover

Looks and behaves exactly like a real scientific calculator.

What it does How
Full math expressions exp4j (Android) / Function() eval (Web)
Scientific functions sin, cos, log, โˆš, xยฒ, ฯ€, e
Memory operations MC, MR, M+, Mโˆ’
Calculation history Tap the clock icon to reveal past results
Swipe to delete Swipe left/right on the display to backspace
Haptic feedback Tactile response on every button press
Secret unlock trigger Enter PIN โ†’ press = โ†’ vault opens silently

๐Ÿ” ย  Hardware-Grade Encryption

Your files are invisible to the OS and encrypted at rest.

User PIN  โ”€โ”€โ–บ  Android KeyStore (HSM)  โ”€โ”€โ–บ  AES-256-GCM Key Derivation
                                                      โ”‚
                                                      โ–ผ
                               Encrypted Blob  โ—„โ”€โ”€  File / Photo / Video
                               (stored in app private dir โ€” invisible to file explorers)
  • ๐Ÿ”‘ Keys are sealed in Android KeyStore โ€” never exposed to memory unless actively decrypting
  • ๐Ÿ—„๏ธ Vault metadata stored in Room DB + SQLCipher (database-level encryption)
  • ๐Ÿšซ Vault files are stripped from Android Gallery and all OS scanners immediately on import

๐Ÿ“ฑ ย  App Locker with Fake Crash Screen

Lock any installed app. Confuse anyone who tries to open it.

  • Runs as a background accessibility service, monitoring foreground app changes
  • When a locked app is opened by an intruder, the screen is replaced with a convincing "Application has stopped" crash dialog
  • You bypass the overlay with a secret gesture known only to you

๐Ÿ•ต๏ธ ย  Anti-Intruder Protocols

Feature Description
๐Ÿ“ธ Intruder Selfie CameraX silently snaps a front photo on every wrong PIN
๐Ÿชค Decoy PIN A second PIN that opens a clean, empty decoy vault
๐Ÿ’ฅ Emergency Wipe After 5 failed attempts, all vault data is permanently erased
โฑ๏ธ Auto-Lock (Web) Web app locks after 3 minutes of inactivity

๐Ÿ› ๏ธ Tech Stack


๐Ÿ“ฑ Android App

Layer Technology
Language Kotlin
Architecture MVVM + Clean Architecture
UI Material Design 3, Jetpack Nav
Encryption AES-256-GCM, Android KeyStore
Database Room DB + SQLCipher
Dependency Injection Hilt
Camera CameraX
CI/CD GitHub Actions

๐Ÿ’ป Web Companion

Layer Technology
Language TypeScript
Framework React 18
Build Tool Vite
Animations Framer Motion
Icons Lucide React
Styling Vanilla CSS (HSL variables)
Design Glassmorphism, Dark Mode
Lock Custom useAutoLock hook

๐Ÿ“ Project Structure

Security-Vault/
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ฑ app/                              โ† Android application
โ”‚   โ””โ”€โ”€ src/main/
โ”‚       โ”œโ”€โ”€ java/com/stealthvault/app/
โ”‚       โ”‚   โ”œโ”€โ”€ data/
โ”‚       โ”‚   โ”‚   โ”œโ”€โ”€ local/              โ† Room DB entities, DAOs, preferences
โ”‚       โ”‚   โ”‚   โ”œโ”€โ”€ repository/         โ† VaultRepository (file ops + encryption)
โ”‚       โ”‚   โ”‚   โ””โ”€โ”€ security/           โ† AES-256-GCM crypto engine
โ”‚       โ”‚   โ”œโ”€โ”€ di/                     โ† Hilt dependency injection modules
โ”‚       โ”‚   โ”œโ”€โ”€ service/                โ† App lock service, emergency wipe
โ”‚       โ”‚   โ”œโ”€โ”€ ui/
โ”‚       โ”‚   โ”‚   โ”œโ”€โ”€ fake/               โ† Decoy Calculator Activity
โ”‚       โ”‚   โ”‚   โ”œโ”€โ”€ lock/               โ† PIN lock screen
โ”‚       โ”‚   โ”‚   โ”œโ”€โ”€ vault/              โ† Main vault fragments + ViewModel
โ”‚       โ”‚   โ”‚   โ””โ”€โ”€ settings/           โ† Decoy PIN, wipe config, preferences
โ”‚       โ”‚   โ””โ”€โ”€ utils/                  โ† Sensor security, helpers
โ”‚       โ””โ”€โ”€ res/                        โ† Layouts, drawables, themes
โ”‚
โ”œโ”€โ”€ ๐Ÿ’ป web/                              โ† React + TS web companion
โ”‚   โ””โ”€โ”€ src/
โ”‚       โ”œโ”€โ”€ components/
โ”‚       โ”‚   โ”œโ”€โ”€ DecoyCalculator.tsx     โ† Full calculator UI + stealth trigger
โ”‚       โ”‚   โ””โ”€โ”€ Sidebar.tsx             โ† Vault navigation sidebar
โ”‚       โ”œโ”€โ”€ hooks/
โ”‚       โ”‚   โ””โ”€โ”€ useAutoLock.ts          โ† Inactivity auto-lock hook
โ”‚       โ”œโ”€โ”€ App.tsx                     โ† Root app (lock/unlock state)
โ”‚       โ””โ”€โ”€ index.css                   โ† HSL design tokens + glassmorphism
โ”‚
โ””โ”€โ”€ โš™๏ธ  build.gradle.kts                 โ† Root Gradle configuration

๐Ÿš€ Getting Started

๐Ÿ“ฑ Android

Requirements: Android Studio Jellyfish+, JDK 17, Android SDK 34+

# 1. Clone the repo
git clone https://github.com/Subhan-Haider/Security-Vault.git

# 2. Open in Android Studio โ†’ File > Open โ†’ select the repo root
# 3. Wait for Gradle sync to complete

# 4. Build the debug APK
./gradlew assembleDebug

# Output โ†’ app/build/outputs/apk/debug/app-debug.apk

๐Ÿ’ป Web Companion

Requirements: Node.js 18+, npm

# 1. Enter the web directory
cd web

# 2. Install dependencies
npm install

# 3. Launch the dev server
npm run dev

# 4. Open in browser
#    http://localhost:5173
#
#    Enter PIN: 1337  โ†’  press =  โ†’  vault unlocks

๐Ÿ›ก๏ธ Security Architecture

Stealth Vault uses defense-in-depth โ€” multiple independent security layers:

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                 LAYER 1 โ€” OBSCURITY              โ”‚
โ”‚   Calculator disguise, no visible vault UI       โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                 LAYER 2 โ€” ACCESS CONTROL         โ”‚
โ”‚   PIN verification, Decoy PIN, Auto-lock         โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                 LAYER 3 โ€” ENCRYPTION             โ”‚
โ”‚   AES-256-GCM keys inside Android KeyStore HSM   โ”‚
โ”‚   SQLCipher encrypted database                   โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                 LAYER 4 โ€” ANTI-FORENSICS         โ”‚
โ”‚   Files hidden from OS, metadata stripped        โ”‚
โ”‚   Intruder selfie, Emergency wipe on 5 failures  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

โš–๏ธ License

ยฉ 2026 Subhan Haider โ€” All Rights Reserved

This project is released under a Custom Proprietary License.

Restriction
๐Ÿšซ No publishing to any app store (Google Play, Apple App Store, etc.)
๐Ÿšซ No redistribution or sharing with third parties
๐Ÿšซ No modification or creation of derivative works
๐Ÿšซ No commercial use of any kind
โœ… Personal viewing and private study is permitted

See the full LICENSE for details.



Built with ๐Ÿ” by Subhan Haider

About

Security Vault - The ultimate secure gallery and photo vault to hide and protect your private photos, videos, and files with advanced encryption.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors