cryovault 1.0.0
A high-security, command-line personal vault for Windows with advanced encryption and file protection features.
Requires Python: >=3.8
Keywords: encryption, security, vault, file-encryption, privacy, cryptography, windows, cli, file-protection

CryoVault
==========

A high-security, command-line personal vault for Windows with advanced encryption and file protection features.

## Features

### 🔐 Multi-Layer Encryption
- **AES-256-GCM**: Primary encryption for file content
- **ChaCha20-Poly1305**: Alternative encryption for algorithm diversity
- **ECC P-521**: Hybrid encryption with elliptic curve keys
- **RSA-4096**: Traditional asymmetric encryption
- **HMAC-SHA512**: Integrity verification for all metadata
- **PBKDF2/Argon2**: Strong password-based key derivation
- **Windows DPAPI**: OS-level key protection

### 🛡️ Advanced File Protection
- **Windows notifications**: Real-time desktop alerts for security events
- **Delete warnings**: Visual confirmation with security logo
- **Yes/No prompts**: Prevents accidental data loss
- **Vault file detection**: Identifies CryoVault-related files before deletion
- **Folder encryption**: Complete directory structure protection
- **File monitoring**: Background protection for vault files

### 🎭 Maximum Obfuscation
- **Mixed file extensions**: `.cryo`, `.dat`, `.bin`, `.tmp`, `.cache`
- **Random subdirectories**: Hides file structure from attackers
- **Realistic junk files**: 5-8 files with metadata-like structures
- **Filename obfuscation**: Salted hashes with random variations
- **Plausible deniability**: No one can identify real encrypted files

## Installation

```bash
# Basic installation
pip install -r requirements.txt

# For Windows toast notifications (optional)
pip install win10toast>=0.9
```

## Quick Start

```bash
# Create new vault
cryovault create "D:\MySecureVault"

# Unlock vault
cryovault unlock "MySecureVault"

# Check status
cryovault status

# List all vaults
cryovault list

# Delete vault
cryovault delete "MySecureVault"

# Get help
cryovault help
```

For detailed usage examples with temporary paths and multiple vaults, see `how to use.txt`.

## Security Model

- **Zero-knowledge architecture**: Master keys never written to disk
- **Defense in depth**: Multiple independent encryption layers
- **Secure memory management**: Multi-pass wiping (zeros → random → zeros)
- **Tamper evidence**: Encrypted logs and metadata with integrity protection
- **Plausible deniability**: Junk files and obfuscated filenames
- **Windows integration**: DPAPI protection and desktop notifications

## Advanced Options

```bash
# Custom vault locations
python -m cryovault.cli --vault-path "C:\Path\To\Vault" init

# Custom security settings
python -m cryovault.cli init --max-attempts 10

# Extended auto-lock timeout
python -m cryovault.cli unlock --timeout 3600

# Help and examples
python -m cryovault.cli help
```

## Windows Integration

CryoVault provides native Windows security features:
- **Desktop notifications** for file deletion warnings
- **Toast alerts** for security events
- **MessageBox dialogs** for critical confirmations
- **DPAPI integration** for OS-level key protection

## File Formats

- **Encrypted files**: Mixed extensions (`.cryo`, `.dat`, `.bin`, `.tmp`, `.cache`)
- **Folder metadata**: Encrypted directory structures
- **Junk files**: Realistic-looking decoy data
- **Configuration**: JSON metadata with HMAC protection