Anyhide - Hide Anything in Anything
Hide anything inside anything. Anyhide is an advanced steganography and encryption tool that conceals any data (text, files, binaries) within any carrier file (images, videos, documents, executables) using hybrid encryption with forward secrecy and plausible deniability.
Why Anyhide?
Traditional steganography modifies the carrier file and transmits it. Anyhide is different:
| Traditional Steganography | Anyhide |
|---|---|
| Modifies the carrier file | Never touches the carrier |
| Transmits the modified file | Transmits only a short code |
| Carrier can be analyzed | Carrier stays untouched |
| Hide text in images | Hide anything in anything |
Use cases:
- Hide encrypted files inside a shared video
- Conceal sensitive documents using a public PDF as carrier
- Store secrets referenced by any file both parties have
- Covert communication with plausible deniability
How It Works
Anyhide uses a pre-shared carrier model:
- Both parties have the same file (ANY file: image, video, PDF, text, etc.)
- Sender hides data by finding byte patterns in the carrier
- Only an encrypted code is transmitted - the carrier is never sent
- Receiver uses the same carrier + code to extract the hidden data
┌─────────────────────────────────────────────────────────────┐
│ SENDER RECEIVER │
│ │
│ carrier.mp4 ──┐ ┌── carrier.mp4 │
│ │ │ (same file) │
│ secret.zip ───┼──► ANYHIDE CODE ─────┼──► secret.zip │
│ │ (only this │ │
│ passphrase ───┘ is sent) └── passphrase │
│ │
│ The carrier is NEVER transmitted │
└─────────────────────────────────────────────────────────────┘
Key Features
- Any carrier: text, images, audio, video, PDFs, executables, archives
- Any payload: text messages, binary files, documents, archives
- Dual-layer encryption: Symmetric (ChaCha20) + Asymmetric (X25519)
- Forward secrecy: Past messages stay secure even if keys leak
- Message signing: Ed25519 signatures for sender authentication
- Message expiration: Auto-expiring messages
- Code splitting: Split codes for multi-channel delivery
- QR code support: Share codes via QR
- Plausible deniability: Wrong passphrase returns garbage, not an error
- Never fails: Decoder always returns something - prevents brute-force detection
Installation
From crates.io
Download Pre-built Binary
Download from GitHub Releases:
- Linux:
anyhide-linux-x86_64oranyhide-linux-aarch64 - macOS:
anyhide-macos-x86_64(Intel) oranyhide-macos-aarch64(Apple Silicon) - Windows:
anyhide-windows-x86_64.exe
Build from Source
Quick Start
1. Generate Keys
# Creates: mykeys.pub, mykeys.key, mykeys.sign.pub, mykeys.sign.key
2. Encode a Message
# Using any text file as carrier
# Output: AwNhYmNkZWZn... (send this code)
3. Decode a Message
# Output: ama park
Command Reference
Generate Keys
# Creates 4 files:
# <name>.pub - Encryption public key (share with senders)
# <name>.key - Encryption private key (keep secret)
# <name>.sign.pub - Signing public key (share with receivers)
# <name>.sign.key - Signing private key (keep secret)
Encode
)
)
Decode
)
)
)
Other Commands
Examples
Binary Files as Carrier
Use any file (video, PDF, image, executable) as carrier:
# Hide text in a shared video
# Hide a ZIP file inside a PDF
# Extract hidden file
Message Signing
# Sign message
# Verify signature
# Output: From Alice
# Signature: VALID
Message Expiration
# Message expires in 24 hours
# After expiration: returns garbage (not an error)
Code Splitting
# Split into 3 parts
# Output: part-1: xxx, part-2: yyy, part-3: zzz
# Decode with all parts in order
# Wrong order = garbage (plausible deniability)
QR Codes
# Generate code + QR in one step
# Read QR and decode
# Split QR codes
# Creates: code-1.png, code-2.png, code-3.png
Security Properties
- Four-Factor Security: Carrier + Passphrase + Private Key + Correct Version
- Never-Fail Decoder: Always produces output - no error signals for attackers
- Plausible Deniability: Wrong inputs return garbage, not errors
- Forward Secrecy: Ephemeral keys protect past messages
- Code Splitting: Wrong order = garbage (no error)
Disclaimer
Anyhide is provided for educational and legitimate privacy purposes only.
This software is a tool, and like any tool, it can be used for good or bad purposes. The authors:
- DO NOT endorse or encourage any illegal activities
- ARE NOT responsible for how this software is used
- PROVIDE this software "as is" without warranty
You are solely responsible for ensuring your use complies with all applicable laws.
Documentation
- User Manual: This README
- Architecture & Development: ARCHITECTURE.md
- Version History: CHANGELOG.md
License
MIT License - see LICENSE for details.
Version
Current version: 0.7.1 (see CHANGELOG.md)