STEGHIDE

Steganography is the practice of concealing a file, message, image, or video within another file, message, image, or video.
In digital steganography, electronic communications may include steganographic coding inside of a transport layer, such as a document file, image file, program or protocol. Media files are ideal for steganographic transmission because of their large size.
Steghide:
Steghide is a steganography program that is able to hide data in various kinds of image- and audio-files. The color- respectivly sample-frequencies are not changed thus making the embedding resistant against first-order statistical tests.

       Features include the compression of the embedded data, encryption of the embedded data  and  automatic  integrity  checking  using  a checksum.  The JPEG, BMP, WAV and AU file formats are supported for use as cover file. There are no restrictions on the format of the secret data.

       Steghide uses a graph-theoretic approach to steganography. You do not need to know anything about graph theory to  use  steghide  and you  can  safely  skip the rest of this paragraph if you are not interested in the technical details. The embedding algorithm roughly works as follows: At first, the secret data is compressed and encrypted. Then a sequence of positions of pixels in the cover file is created  based on a pseudo-random number generator initialized with the passphrase (the secret data will be embedded in the pixels at these positions). Of these positions those that do not need to be changed (because they already contain the correct value by  chance) are  sorted  out. Then a graph-theoretic matching algorithm finds pairs of positions such that exchanging their values has the effect of embedding the corresponding part of the secret data. If the algorithm cannot find any more such pairs all exchanges  are  actually performed. The  pixels at the remaining positions (the positions that are not part of such a pair) are also modified to contain the embedded data (but this is done by overwriting them, not by exchanging them with other pixels).  The fact that (most of)  the  embedding  is done by exchanging pixel values implies that the first-order statistics (i.e. the number of times a color occurs in the picture) is not changed. For audio files the algorithm is the same, except that audio samples are used instead of pixels.

       The default encryption algorithm is Rijndael with a key size of 128 bits (which is AES - the advanced  encryption  standard)  in  the cipher  block chaining mode. If you do not trust this combination for whatever reason feel free to choose another algorithm/mode combination (information about all possible algorithms and modes is displayed by the encinfo command).  The checksum is calculated using the CRC32 algorithm.

Features:

  • compression of embedded data
  • encryption of embedded data
  • embedding of a checksum to verify the integrity of the extraced data
  • support for JPEG, BMP, WAV and AU files


Experiment: