Getting Started
Core Documentation
Project Information
nHale is an open-source advanced steganography toolkit designed for secure message embedding, extraction, and analysis across various file formats. It is a Rust-first project, providing a lightweight, efficient, and modular implementation of steganographic algorithms. This tool is aimed at cybersecurity professionals, privacy advocates, and digital forensics experts.
- Develop a high-performance, lightweight Rust-based steganography library.
- Provide native embedding and extraction capabilities for multiple file types.
- Implement strong encryption before embedding data for enhanced security.
- Ensure robust metadata and watermarking functionalities.
- Integrate comprehensive steganalysis capabilities to detect hidden data through statistical analysis, anomaly detection, and optional machine learning-based methods.
- Maintain strict software development best practices.
- Core Engine: Rust-based steganography algorithms.
- CLI Interface: Rust-based command-line interface with comprehensive options.
- Images: PNG (fully implemented), JPG (partially implemented)
- Documents: PDF (fully implemented)
- Images: BMP, GIF
- Audio: WAV, MP3
- Video: MP4
- Embedding Module: Hides encrypted data inside PNG, JPG, and PDF files.
- Extraction Module: Recovers hidden messages from PNG, JPG, and PDF files.
- Integrity Checker Module: Ensures hidden data has not been modified (implemented for PDF).
- Encryption Module: AES-256, ChaCha20, and RSA encryption support.
- Error Correction Module: Reed-Solomon error correction for JPG steganography.
- Watermarking Module: Embeds and verifies digital watermarks.
- Enhanced Metadata Module: Advanced metadata manipulation for various file formats.
- PDF Analysis Module: Detects hidden scripts and anomalies.
- Steganalysis Module:
- File Preprocessing: Extend file parsers to extract and normalize raw data for analysis.
- Statistical & Anomaly Analysis: Analyze pixel distributions, noise levels, and DCT coefficients to detect irregularities.
- Machine Learning-Based Detection (Optional): Integrate models to provide confidence scores on hidden data presence.
- Visualization Tools: Generate histograms, noise maps, and comparison views for manual forensic inspection.
- CLI Integration & Reporting: Seamlessly integrate steganalysis commands with detailed reporting for forensic analysis.
# Clone the repository
git clone https://github.com/iron-hope-shop/nHale.git
cd nhale
# Build the project
cargo build --release
# Run the CLI
./target/release/nhale-cli --help
nhale-cli embed -i input.png -o output.png -d "Secret message"
nhale-cli extract -i output.png
nhale-cli embed -i input.png -o output.png -d "Secret message" -p "your-secure-password" -a aes256
nhale-cli embed -i input.pdf -o output.pdf -d "Secret message"
nhale-cli extract -i output.pdf
nhale-cli analyze -i suspect.png
- Rust 1.67.0 or higher
- Cargo
cargo test
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
- Rust-based LSB embedding and extraction for PNG images.
- JPG steganography with DCT coefficient modification (partially implemented).
- PDF embedding and extraction with integrity checking.
- AES-256, ChaCha20, and RSA encryption modules.
- Integrity checking and HMAC verification for PDF files.
- Reed-Solomon error correction (needs better integration with JPEG).
- Basic CLI commands and argument parsing.
- Advanced configuration options for steganography techniques.
- Improved JPEG steganography with better error correction integration.
- Complete metadata manipulation utilities.
- BMP and GIF image processing.
- Audio processing utilities (WAV, MP3).
- Video processing utilities (MP4).
- Watermarking functionality (visible and invisible).
- Batch processing capabilities.
- Enhanced CLI documentation and help.
- Performance optimization and security auditing.
- End-to-end integration tests.
- Packaging and release for various platforms.
- Steganalysis Module Integration: File preprocessing, statistical and anomaly analysis, optional machine learning-based detection, visualization tools, and detailed CLI reporting for forensic analysis.
nHale/
βββ Cargo.toml # Project dependencies and configuration
βββ Cargo.lock # Locked dependencies
βββ LICENSE # MIT license
βββ CHANGELOG.md # Version history
βββ CONTRIBUTING.md # Contribution guidelines
βββ README.md # Project documentation
βββ images/
β βββ banner.gif # Project banner image
βββ docs/
β βββ jpeg_steganography.md # JPEG steganography documentation
β βββ error_correction.md # Error correction documentation
β βββ steganography.md # General steganography documentation
βββ src/
βββ lib.rs # Core library functionality
βββ embedding.rs # Embedding module for PNG, JPG, PDF
βββ extraction.rs # Extraction module for PNG, JPG, PDF
βββ encryption.rs # Encryption (AES, ChaCha20, RSA)
βββ error_correction.rs# Error correction for lossy formats
βββ integrity.rs # Integrity checking with HMAC
βββ metadata.rs # Basic metadata handling
βββ pdf.rs # PDF steganography
βββ utils.rs # Helper functions and utilities
βββ watermarking.rs # Watermarking module
βββ bin/
βββ cli.rs # CLI implementation
βββ create_test_pdf.rs # Utility for creating test PDFs
- CHANGELOG.md for version history.