A secure, client-side web application for encrypting and storing critical emergency information in a static HTML file. Access your emergency data from any device with just a passphrase - no servers, no accounts, no dependencies.
- Open
src/creator/index.htmlin your web browser - Add your emergency information (backup codes, contacts, documents)
- Set a strong passphrase
- Click "Create Vault" to generate your encrypted HTML file
- Save the generated file somewhere accessible (cloud storage, USB drive, etc.)
- Access your information anytime by opening the vault file and entering your passphrase
- Client-side encryption: All encryption happens in your browser - your data never leaves your device unencrypted
- AES-256-GCM encryption: Military-grade encryption with authenticated encryption
- Strong key derivation: PBKDF2 with 100,000 iterations and SHA-256
- No external dependencies: Generated vaults work completely offline
- Integrity verification: Built-in tamper detection
- Secure memory handling: Automatic cleanup of sensitive data
- MFA backup codes and recovery information
- Emergency contact numbers and details
- Account recovery information
- Important passwords or PINs
- Medical information and emergency procedures
- Travel documents and details
- Insurance documents and legal papers
- ID photos and important screenshots
- Node.js (for running tests)
- Modern web browser (Chrome, Firefox, Safari, Edge)
# Clone the repository
git clone <repository-url>
cd emergency-info-vault
# Install dependencies
npm install
# Run tests
npm test
# Start development server
npm run serve# Run all tests
npm test
# Run tests in watch mode
npm run test:watchsrc/
├── creator/ # Vault creation interface
│ ├── index.html # Main creation interface
│ ├── app.js # Application logic
│ ├── styles.css # Styling
│ └── ...
├── lib/ # Core libraries
│ ├── encryption.js # Encryption utilities
│ ├── html-generator.js # Vault file generation
│ └── ...
└── templates/ # HTML templates
└── vault-template.html
- Chrome 60+ (Recommended)
- Firefox 57+ (Recommended)
- Safari 11+
- Edge 79+
Requires Web Crypto API, ES6+ JavaScript, and File API support.
- Algorithm: AES-256-GCM (Authenticated Encryption)
- Key Derivation: PBKDF2 with SHA-256, 100,000 iterations
- Salt: 256-bit cryptographically secure random salt
- IV: 96-bit random initialization vector
- Integrity: Built-in authentication with GCM mode
-
Use a Strong Passphrase
- At least 12 characters long
- Include uppercase, lowercase, numbers, and symbols
- Avoid dictionary words or personal information
-
Secure Storage
- Store vault files in multiple secure locations
- Keep backups in different physical locations
- Use descriptive but not obvious filenames
-
Access Security
- Only access vaults on trusted devices
- Use private/incognito browsing mode
- Always clear content when finished
- Close browser tabs completely after use
- No password recovery: If you forget your passphrase, your data is permanently inaccessible
- Browser dependency: Requires a compatible modern browser
- File integrity: Corrupted files cannot be recovered
- Not a password manager: Use dedicated password managers for daily passwords
"Browser not supported" error
- Update to a modern browser version
- Enable JavaScript if disabled
- Try Chrome or Firefox
"Incorrect passphrase" error
- Double-check passphrase (case-sensitive)
- Ensure caps lock is not enabled
- Check for extra spaces
Large file upload issues
- Reduce file sizes (10MB maximum)
- Compress images/PDFs
- Upload files individually
This project is licensed under the MIT License - see the LICENSE file for details.
This software is provided for educational and personal use. Users are responsible for their own security practices. The authors make no guarantees about the security of encrypted data and recommend professional security consultation for highly sensitive applications.
Remember: Your security is only as strong as your weakest link. Use this tool as part of a comprehensive security strategy, not as a complete solution.