Copyright © 2015 Nick Klose under the GNU General Public License, Version 2.
This software is a personal steganography project, which encodes alphanumeric messages in regular images. The messages are encoded by making slight modifications to the colour values of specific pixels. A single pixel can encode a single character, and the selected "spacing" value determines how many pixels are skipped before the next character is encoded. The messages can then be decrypted by a recipient using the same software, as long as the recipient knows what pixel spacing was used in the original encoding.
- sample.jpg is a free image from Wikimedia Commons
On Windows, simply open Steganography.exe
to use the software.
To run the program through Python on Windows or another platform, you will need to install the software's dependencies separately. See the Required Packages section for more info on this. Once you have the dependencies installed, you can run the GUI version with python steganography.py
or the command-line version with python steganography-nogui.py
.
- Open the program
- Click Load Image, then select a valid image file to encode your message into. Any PIL-supported image should work.
- Type your message into the text box at the bottom, or use the Load Text File button to use an existing text file. The file extension is ignored.
- Select the Spacing value using the spin box at the top-left. This determines how many pixels are skipped before encoding the next pixel. Note that an 8-character prefix will automatically be appended to your message, which marks how long the message is.
- Verify that the message will fit into your selected image. If it doesn't fit, you will need to (a) use an image with more pixels, (b) lower your spacing value, or (c) shorten your message.
- Click Process, then select the location and name for your encoded image.
- Select the Decode Image radio button at the top-left.
- Click Load Image, then select your encoded image.
- Set the Spacing value to the same number used in the original encoding.
- Click Process. The encoded message will appear in the text box at the bottom.
Python 2.7 (32-bit) is required to run this software.
The software requires either PIL
(Copyright © 1997-2011 by Secret Labs AB & Fredrik Lundh) or Pillow
(Copyright (c) 1995-2015 Fredrik Lundh and Contributors, Alex Clark and Contributors).
The GUI version of the software also requires PyQt4
for Python 2.7, which is Copyright © 2015 Riverbank Computing Limited.
Python
DownloadPIL
DownloadPyQt4
Download
Follow these instructions to install the required packages:
- Run
sudo apt-get update
to get the latest package lists - Install
pip
andPyQt4
withsudo apt-get install python-pip python-qt4
- Install other required packages with
apt-get build-dep python-imaging libjpeg8 libjpeg62-dev libfreetype6 libfreetype6-dev
- Install Pillow with
pip install Pillow