StegoTool
StegoTool is a steganography and steganalysis
application and development framework written
in Python.
It provides various pre-implemented
steganographic algorithms to embed data both in
the spatial and frequency domain of images.
These algorithms range from simple LSB
substitution to more advanced algorithms such as
F5 which manipulate DCT coefficients of JPEG
files. StegoTool also includes several
steganalysis algorithms which detect if an image
has been tampered with. All implemented
algorithms are part of a plugin infrastructure.
This makes it easy to extend StegoTool by writing
custom plugins which implement a steganographic
or steganalytic algorithm.
The GUI makes it easy to load/use plugins and
also provides further functionality such as
storage for frequently used files (media pool)
and commonly used image operations like
computing (DCT) histograms and difference images.
Data can also be encrypted before embedding
using different encryption algorithms such as RC4
and a DES variant.
Dependencies
Currently, the following dependencies have to be met in order to run StegoTool:
- Python 2.6 (or any newer Python 2 version)
- NumPy 1.5.1 (or newer)
- SciPy 0.7.0 (or newer)
- Python Imaging Library (PIL) 1.1.6 (or newer)
- matplotlib 1.0.1 (or newer)
- libjpeg 8b (or newer)
If there are no binary packages for your system for some of these libraries and
you don't want to build them from source, it may be an option to install the
Enthought Python Distribution, which includes all the above mentioned packages
(there is an academic version of the distribution).
-------------------------------------------------------------------------------
NOTE: StegoTool does not run with any version of Python 3.
-------------------------------------------------------------------------------
With these libraries StegoTool will run, but only without the graphical user
interface (with the -n option). For the GUI, the following libraries are
needed:
- Qt 4.7 (or newer)
- SIP 4.12 (or newer)
- PyQt4
To build the documentation, a recent LaTeX distribution is needed.
If the dependencies are installed, the StegoTool can be build from the
downloaded .tar.gz archive with the following commands:
tar xfvz StegoTool*.tar.gz
cd StegoTool*
python setup.py build
This will generate the LaTeX documention and build the C Extension which
interfaces with libjpeg. The StegoTool can be started then with
./StegoTool or python src/StegoTool.py
Files
StegoTool-0.1.tar.gz - gzipped tar-ball containing the StegoTool source.
Dokumentation - Dokumentation StegoTool