SecureStego is a robust and user-friendly steganography suite that allows you to securely embed and extract secret messages within video, image, and audio files.
It employs AES-GCM encryption for confidentiality and offers both a Command-Line Interface (CLI) and a Graphical User Interface (GUI) for ease of use.
- Multi-Media Support: Hide/extract messages in
.wav
audio files.png
,.bmp
image files.mp4
,.avi
,.mkv
video files
- Strong Encryption: Uses PBKDF2HMAC + AES-GCM for secure password-based encryption.
- Command-Line Interface (CLI): Scriptable and automation-friendly.
- Graphical User Interface (GUI): Built with Streamlit, intuitive for all users.
- Least Significant Bit (LSB) Steganography: Embeds data by modifying the least significant bits of media content.
- Technologies used: Python, Streamlit, OpenCV, PyDub, NumPy
- Encryption: Secret message is encrypted with a user-provided password.
- Conversion: Encrypted data converted to binary + delimiter
1111111111111110
. - Embedding: Binary string hidden inside media’s least significant bits (pixels for images/videos, samples for audio).
- Extraction: Reverse process to reconstruct and decrypt the hidden message.
- Python 3.x
- Clone the repository:
git clone https://github.com/DevPatel1106/SecureStego.git
cd SecureStego
- Install dependencies:
pip install -r requirements.txt
- Command-Line Interface (CLI) a. Embed a message:
python stego_cli.py embed --input <input_file> --output <output_file> --message <secret_message> --password <your_password>
- Example:
python stego_cli.py embed --input cover_image.png --output stego_image.png --message "This is a secret message" --password mypassword123
b. Extract a message:
python stego_cli.py extract --input <stego_file> --password <your_password>
- Example:
python stego_cli.py extract --input stego_image.png --password mypassword123
- Graphical User Interface (GUI)
- Run the Streamlit app:
streamlit run stego_gui.py
This will open a browser window where you can interact with the application.
-
audio_stego.py – Embed/extract data from WAV audio.
-
image_stego.py – LSB steganography for PNG & BMP images.
-
video_stego.py – Embedding & extraction for video files.
-
encryption.py – AES-GCM encryption/decryption.
-
stego_cli.py – Command-line interface.
-
stego_gui.py – Streamlit-based graphical UI.
-
requirements.txt – Python dependencies.