What is Steganography and How it Works

Steganography is the art of hiding information in plain sight by embedding it in a file such as a picture. Steganography hides the traces of communication, you can think of this method as data hidden within another data.

Steganography (pronounced STEHG-uh-NAH-gruhf-ee, from Greek steganos, or “covered,” and graphie, or “writing”) is the hiding of a secret message within an ordinary message and the extraction of it at its destination.

For example, the use of invisible ink, pencil impressions on the handwritten characters, and small pin punctures are steganographic techniques used to prevent suspicion about the existence of the information.

Note there is a difference between steganography and cryptography, in cryptography you can tell that a message has been encrypted, but you need the proper key to decode the message while in steganography, the message itself is not encrypted, but it is difficult to detect the presence of the message.

Some of the advantages of steganography over cryptography:

  • The main advantage of steganography over cryptography is that the intended secret message does not attract attention to itself as an object of scrutiny.
  • Normally, messages encrypted with cryptography arouse interest to break them and also may in themselves be incriminating in countries where encryption is illegal.
  • Though it’s easier to extract hidden messages, steganography is more discrete than cryptography.

Examples of steganography

example of text steganography

[Example of text steganography]

example of lsb method

[Example of LSB method]

Steganography techniques involve the use of a cover carrier, the secret message, stego key, and stego carrier. Examples of stego carriers include text, audio, image, and video.

Stego carrier is generated using the cover carrier and embedded message. Finally, a stego key is used to enhance the security of the hidden data by requiring a password to extract the message.

Types of steganography

Image steganography

This is a technique used to hide a secret message inside an image. For example, hiding a secret bit inside the LSB of the cover image. With this method, it is recommended to use a lossless compression format to prevent data loss during transformations.

For example, when using a 24 bits color image, a bit of each of the red, green, and blue color components can be used, so a total of 3 bits can be stored in each pixel in this way we can use the more secret bit to hide data in it.

In image steganography images files like BMP, PNG, JPEG, TIFF, and GIF are used to hide data. Some of the techniques used to achieve confidentiality include LSB and spread spectrum. Spatial domain embedding steganography algorithm is used to modify the least significant bit layer of images.

This technique works perfectly because the least significant bits in an image are assumed to be random noise and changing them have no effect on the image. To distribute the bits evenly, the message bits are permuted before embedding. Thus, only half of the LSB is changed.

Most steganography software tools based on LSB embedding hide information by changing LSB of pixels randomly, others modify pixels in certain areas of images, and others increment or decrement the pixel value of the last bit.

Transform domain is yet another steganography technique which works by hiding messages in significant areas of a cover image which makes them more robust to attacks, such as compression, cropping, and image processing.

For more information on this technique, check out the use of redundancies in the discrete cosine transformation (DCT) domain, which is used in JPEG compression.

Steganography images

Steganography images

[Can you tell the difference between the first and second tree]

Steganography images

[How data is hidden inside an image]

Audio steganography

Secret data is embedded using a key in a digital cover file to produce a stego file, in such a way that an observer cannot detect the existence of the hidden message. On the receiving end, the stego file is processed to extract the hidden message.

Most audio steganography schemes are based on the modification of least significant bits (LSB) of the audio samples in the temporal domain or transform domain. These schemes use LSB technique together with other techniques like error diffusion, minimum error replacement (MER), and temporal masking effect.

Other methods embed covert messages in the LSB of wavelet transform and, in the integer, transform. All these methods work by raising payload or the maximum amount of the transformation to be embedded and preventing degradation of the audio quality.

Wave format is mostly used since the reading of the bits of data is easier and the compression is good while at the same time keeping distortion of data very minimum. There are many methods in audio steganography.

For example, the LSB coding technique is used to change the least significant bit while at the same time not creating audible changes to the sounds. You can also encode messages using inaudible frequencies.

Secondly, instead of breaking a signal down into individual samples, the parity coding method breaks a signal down into separate regions of samples and encodes each bit from the secret message in a sample region’s parity bit.

If the parity bit of a selected region does not match the secret bit to be encoded, the process flips the LSB of one of the samples in the region. This gives the sender options in encoding the secret bit, and the signal can be changed in a more unobtrusive way.

Lastly, in the phase coding technique, message bits are encoded as phase shifts in the phase spectrum of a digital signal, achieving an inaudible encoding in terms of signal-to-perceived noise ratio.

Phase coding technique relies on the fact that the phase components of sound are not as perceptible to the human ear as noise is. Spread Spectrum method is used to spread secret information across the audio signal’s frequency spectrum as much as possible.

The Spread Spectrum method spreads the secret message over the sound files frequency spectrum, using a code that is independent of the actual signal.

Video steganography

Since video files are made up images and sound most of the steganography techniques on images and audio can also be applied to video files too.

The main advantage of video steganography over image and audio steganography is that in video large amount of data can be hidden inside since it’s a moving stream of images and sounds.

Steganography methods

  • PVD and LSB replacement method – uses grayscale image carrier format and supports the text.
  • Audio steganography – uses MP3 and WAV audio signals carrier format and supports the text.
  • Text steganography – uses color image (audio/video) carrier format and supports the text.
  • LSB matching revisited – uses grayscale image carrier format and supports the text.
  • LSB Substitution – uses grayscale image carrier format and supports the text.
  • Random insertion LSB – uses grayscale image carrier format and supports the text.
  • Text steganography – uses SMS carrier format and supports the text.
  • LSB-based audio steganography – uses an audio signal carrier format and supports the text.
  • Spatial LSB domain technique – use grayscale image carrier format and supports the text.
  • Image steganography – uses RGB color image carrier format and supports the text.
  • Audio steganography – uses advanced audio coding (AAC), MPEG-2, MPEG-4 carrier formats and supports the text.
  • Audio wave steganography – uses audio/video carrier format and supports the text.
  • Adaptive LSB substitution – uses grayscale image carrier format and supports the text.
  • Video steganography – uses AVI videos carrier format and supports the text.
  • LSB insertion method on video images – uses video file carrier format and supports video files.
  • Video in video steganography – uses video file carrier format and supports video file.
  • Video steganography – use FLV file carrier format and supports the text.

Steganalysis techniques

Types of Steganalysis techniques to detect steganography:

  • Steganography-only attack: For analysis, we use steganography medium in this type of attack.
  • Known carrier attack: For these types of attacks we use steganography media and carrier for analysis.
  • Known message attack: The name itself shows that known message is attacked; here the known message is nothing but a hidden message.
  • Chosen steganography attack: In chosen steganography algorithm the algorithm used and the steganography mediums are known.
  • Chosen message attack: We use a known message and algorithm for creating steganography media
  • Known steganography attack: The known products are carrier, steganography algorithm and medium.

Steganography tools

Here are steganography software tools that help in data hiding:

  • Xiao steganography – This is a free software that can be used to hide secret files in BMP images or in WAV files.
  • Image steganography – Is a free software for hiding information in image files. You can hide text message or files inside an image file.
  • Steghide – is an open source steganography software that lets you hide your secret file in an image or audio file.
  • Crypture – is a command line tool that can be used to hide sensitive data inside a BMP image file. Note that the BMP file should be 8 times larger than the data file which you want to hide inside the BMP file.
  • SteganographX Plus – is a small tool that lets you hide your confidential data inside a BMP image.
  • rSteg – is a Java-based tool that lets you hide textual data inside an image.
  • SSuite Picsel – is a free portable application to hide text inside an image file. It uses an image file as a key to protecting your hidden text inside an image.
  • Our secret – this tool is also used to hide sensitive information in a file.
  • Camouflage – is a steganography tool that lets you hide any type of file inside of a file.
  • OpenStego – with this tool you can attach any kind of secret message file in an image file. One can hide images in BMP, GIF, JPEG, JPG, PNG, and WBMP.
  • SteganPEG – lets one hide any kind of file into a JPG image file. You simply attach any file and give the password to hide inside a JPG file.
  • Hide N Send – is a utility which lets one hide any kind of file behind a JPG image file. The best thing about this tool is that it also supports hashing and encryption.

Now I want to hear from you.

What do you think of steganography?

Or maybe I missed an important aspect of steganography.

Either way, let me know by leaving a comment below.


Please enter your comment!
Please enter your name here