Skip to main content

🔐 StegoVault

Advanced Steganography & Encryption Toolkit

Hide secrets inside images with military-grade encryption and anti-detection features.


✨ Features

🔒 Military-Grade Security

  • AES-256 encryption for embedded data
  • End-to-end encrypted file transfers
  • Secure temporary file handling

🖼️ Multiple Embedding Modes

  • Pixel-level LSB (Least Significant Bit) embedding
  • Frequency domain techniques
  • Adaptive capacity detection
  • Automatic format selection (PNG, BMP, TIFF)

📦 Multi-File Support

  • Embed multiple files as compressed archives
  • Preserve directory structures
  • Intelligent file packing

🔍 Advanced Detection & Analysis

  • Steganalysis with RS analysis
  • Chi-square histogram testing
  • Risk scoring (0-100 scale)
  • Detailed statistical analysis

🛡️ Anti-Detection Features

  • Histogram preservation
  • Histogram matching
  • Robustness enhancement
  • Adaptive embedding patterns

🌐 Multiple Interfaces

  • CLI - Command-line interface with full feature set
  • GUI - PyQt5-based graphical interface
  • Web - Flask-powered browser interface

⚡ Performance

  • Efficient data compression (zlib)
  • Progress tracking
  • Batch operations support
  • Memory-efficient processing

🚀 Quick Start

Installation

# Clone repository
git clone https://github.com/yourusername/StegoVault.git
cd StegoVault

# Create virtual environment (recommended)
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

Basic Usage

# Embed a secret file
python3 bin/stegovault embed secret.txt carrier.png --password "strong_password" --compression

# Extract the hidden file
python3 bin/stegovault extract carrier.png --password "strong_password" --output recovered.txt

# Analyze image for steganography
python3 bin/stegovault detect carrier.png --verbose

# Get image information
python3 bin/stegovault info carrier.png

# Check embedding capacity
python3 bin/stegovault capacity carrier.png

Advanced Usage

# Archive multiple files
python3 bin/stegovault embed-archive doc1.pdf doc2.txt image.jpg archive.png \
  --password "secret" --compression

# Extract archive
python3 bin/stegovault extract-archive archive.png --output ./recovered --password "secret"

# GUI Application
python3 bin/stegovault-gui

# Web Interface (http://localhost:5000)
python3 bin/stegovault-web

📚 Documentation


🏗️ Project Structure

StegoVault/
├── bin/                          # Executable entry points
│   ├── stegovault               # CLI interface
│   ├── stegovault-gui           # GUI launcher
│   └── stegovault-web           # Web server
│
├── src/stegovault/              # Main package (16 modules)
│   ├── core.py                  # Core engine
│   ├── crypto.py                # AES-256 encryption
│   ├── steganalysis.py          # Detection algorithms
│   ├── archive.py               # Archive support
│   ├── ui/                      # User interfaces
│   │   ├── gui/                 # PyQt5 GUI
│   │   └── web/                 # Flask web app
│   └── ...
│
├── docs/                        # Documentation (3 guides)
├── examples/                    # Example scripts (3 working examples)
├── tests/                       # Test suite (8 tests)
├── .vscode/                     # VS Code configuration
├── README.md                    # This file
├── requirements.txt             # Dependencies
└── setup.py                     # Package configuration

🔧 System Requirements

  • Python: 3.7 or higher
  • OS: macOS, Linux, or Windows
  • Disk Space: 200MB (including dependencies)
  • RAM: 512MB minimum (1GB+ recommended)

📦 Dependencies

Core dependencies (see requirements.txt for details):

  • Pillow - Image processing
  • pycryptodome - Cryptography
  • Flask - Web interface
  • PyQt5 - GUI framework (optional)
  • numpy - Numerical computations

✅ Testing

# Run full test suite
bash run_tests.sh

# Run specific tests with pytest
pytest tests/ -v

# Generate coverage report
pytest tests/ --cov=src/stegovault

Test Coverage: 8 comprehensive tests covering:

  • File embedding and extraction
  • Archive creation and extraction
  • Image capacity calculation
  • Steganography detection
  • Metadata handling
  • Privacy protection

🔐 Security Features

Encryption

  • AES-256-CBC in authenticated mode
  • Secure key derivation (PBKDF2)
  • Per-file random initialization vectors

Data Integrity

  • SHA-256 checksums for verification
  • CRC32 for quick integrity checks
  • Metadata authentication

Robustness

  • Redundancy encoding
  • Error correction capabilities
  • Format-specific optimizations

Privacy

  • No external network calls
  • Local processing only
  • Secure temporary file handling
  • Memory cleanup after operations

📖 Examples

Example 1: Basic File Embedding

# Embed and extract a single file
python3 examples/example1_basic_embedding.py

Example 2: Multi-File Archives

# Create and extract file archives
python3 examples/example2_archive_embedding.py

Example 3: Detection & Analysis

# Analyze images for hidden content
python3 examples/example3_detection_analysis.py

🤝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines on:

  • Code style and standards
  • Submitting pull requests
  • Reporting issues
  • Development workflow

📄 License

This project is licensed under the MIT License - see LICENSE file for details.


⚠️ Disclaimer

Important: This tool is for educational and legitimate purposes only. Users are responsible for complying with all applicable laws and regulations regarding data privacy, cryptography, and steganography in their jurisdiction.

Never use this tool for:

  • Illegal activities
  • Privacy violations
  • Unauthorized surveillance
  • Any unlawful purpose

🙋 Support & Questions


🎯 Roadmap

  • GPU acceleration for analysis
  • Additional embedding modes (DCT, DWT)
  • Cloud integration
  • Mobile app support
  • Plugin system for custom algorithms
  • Batch processing GUI

👨‍💻 Author

StegoVault is maintained by the open-source community.


📚 References & Resources


Made with ❤️ for secure data hiding and privacy protection

Metadata

Release files for stegovault 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stegovault 2.0.0
File Size Uploaded Provenance Actions
stegovault-2.0.0.tar.gz 66.0 kB Without provenance Details for stegovault-2.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for stegovault 2.0.0
File Interpreter ABI Platform Actions
stegovault-2.0.0-py3-none-any.whl Python 3 none any Details for stegovault-2.0.0-py3-none-any.whl

Total release size: 124.7 kB

Release files / stegovault-2.0.0.tar.gz

Download URL stegovault-2.0.0.tar.gz
Size 66.0 kB
Tags Source
SHA-256 checksum
How to use checksums
a37ba2a54b8b2d6221b6c6f9a44001b72675b884bb7b5053decc6ce722b8de1f
BLAKE2b-256 checksum
How to use checksums
d707f2e5241f261d1df8f38f54dc78a9d176a6bd86a7e494dc500e90fe64835b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.0

Release files / stegovault-2.0.0-py3-none-any.whl

Download URL stegovault-2.0.0-py3-none-any.whl
Size 58.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
65dc718ea246b73c27318922ce5897eed6c3843adcd80072b6bc186f45b42531
BLAKE2b-256 checksum
How to use checksums
ab722d44e624a0bf64c8db09363ccf3430f72273637e484d86ab6e9c3e38af59
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.0

Security for stegovault 2.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page