This is a beautiful program that lets you put information (any kind of it) into BMP images. More, you hide information inside the image, with a (little or big) loss of data (you can decide it).
This program runs under Windows 95 (or higher) in a MS-DOS Prompt window (maybe, I'll develop a GUI for it, but its duty is so easy that it's not worth to).
The same program encodes and decodes data into the image.
StegoBMP InBMP OutBMP datafile BitsXColor
| Parameter | meaning |
InBMP |
The bitmap (any color depth) where you want to put data.
If you use an image where StegoBMP has already put data into,
BitsXColor is ignored. |
OutBMP |
Bitmap (24 bit) created by StegoBMP to store data |
datafile |
Information you want to put into the BMP. Size varies according to BitsXColor |
BitsXColor |
The number of bits (1 to 8) of each color that will be used to store data, starting form LSB |
StegoBMP InBMP datafile
| Parameter | meaning |
InBMP |
The bitmap where you previously stored data |
datafile |
Where to save extracted data |
StegoBMP will print out how much information is
sored into the bitmap.
StegoBMP InBMP
| Parameter | meaning |
InBMP |
A bitmap where you previously stored data |
StegoBMP takes each bit of your datafile and puts
it into color values of the Bitmap. According to BitsXColor it
puts more or less bits into each color-byte (there are 3 color-bytes for each
pixel) starting from LSB.
StegoBMP tries to compress
data before encoding into the image, using the ZLib library.
BitsXColor |
Pixels X Byte | rate | max variation per color |
1 |
2.66 |
12.5% |
+/- 1 |
2 |
1.33 |
25.0% |
+/- 3 |
3 |
0.88 |
37.5% |
+/- 7 |
4 |
0.66 |
50.0% |
+/- 15 |
5 |
0.53 |
62.5% |
+/- 31 |
6 |
0.44 |
75.0% |
+/- 63 |
7 |
0.38 |
87.5% |
+/- 127 |
8 (Image is lost!) |
0.33 |
100.0% |
+/- 255 |
You should try with different values for BitsXColor
for each image and data couple.
There exists now a version for Linux which is quite different, and it is not compatible with Win9x images.
Stego can work with many image formats, but it needs
that the image is stored without loss of data in a 24 bit format (true colors).
So the best format is PNG.
It doesn't ask you for BitsXColor because it uses subsequent bits until
it reachs the end of input datafile. Try it without parameters for an explanation.
| Download | |
| EXE and Source for Win9x (Delphi 6) | StegoBMP.zip (87 kB) |
| Source for Linux | stego.tar.gz (3 kB) |
You can find a lot of interesting information about steganography at OutGuess.