A CLI tool for embedding and extracting files in images using steganography
Project description
StegBox
StegBox is a versatile and robust CLI tool designed for embedding and extracting files in images using steganography. With StegBox, you can securely hide any type of file within an image, ensuring that your sensitive information remains concealed until needed.
Features
- Embed Files: Effortlessly hide various file types within an image.
- Password Protection: Secure your embedded files with a strong password.
- File Extraction: Retrieve and extract hidden files using the correct password.
- Cross-Platform: Works seamlessly on various operating systems, including Ubuntu.
Installation
To install StegBox, use the following command:
pip install stegbox
Usage
Embedding a File
To embed a file into an image:
stegbox embed -i input_image.png -f file_to_embed.txt -p your_password
If you don't provide a password in the command, you will be prompted to enter it:
stegbox embed -i input_image.png -f file_to_embed.txt
Extracting a File
To extract a file from an image:
stegbox extract -i output_image.png -p your_password
If you don't provide a password in the command, you will be prompted to enter it:
stegbox extract -i output_image.png
How It Works
StegBox uses steganography to hide files within the least significant bits of an image's pixels. The process involves the following steps:
- Read the Image: Load the image into memory.
- Read the File: Load the file to be embedded.
- Password Hashing: Hash the password using SHA-256 for security.
- Combine Data: Combine the hashed password, file name, and file data into a single bit array.
- Embed Data: Embed the bit array into the image's pixel data.
- Save Image: Save the modified image with the embedded file.
- Extract Data: Extract the embedded file using the correct password.
Contributing
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch). - Make your changes.
- Commit your changes (
git commit -m 'Add new feature'). - Push to the branch (
git push origin feature-branch). - Create a new Pull Request.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Contact
For any questions or feedback, feel free to reach out:
Author: Hasib
Email: hasib69780@gmail.com
GitHub: hasib9797
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file stegbox-1.0.tar.gz.
File metadata
- Download URL: stegbox-1.0.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2954bd56917244290f2d1581ca535bca757b1d1bc8c59f41302b92289c376e9d
|
|
| MD5 |
4d963ba7d7255133df98bccd2f8f2d35
|
|
| BLAKE2b-256 |
7c62c0126a574735698a63caee674f61d5bdc279079f790c0e005dfccb62574f
|
File details
Details for the file stegbox-1.0-py3-none-any.whl.
File metadata
- Download URL: stegbox-1.0-py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d03e40f65a3a28579cd8291ad2144a5a82f509c1b0d1214674b31a0ff789068c
|
|
| MD5 |
393408b796fca5e36d4acd6ad6451cac
|
|
| BLAKE2b-256 |
18897be9bf0ec3cd4bd7b9492e411c565abdd9903eba1296937a87512df83450
|