Steganography is a cryptographic technique that is used to hide data in other form of data. eg: we can hide text in images or hide text into audio/video files without altering the actual format of data.
The file that is used ti hide the data and which contains the hidden data is called carrier file. for eg: if we hide a text in image file then our image file is carrier file and text file is hidden file.
Steganography basically used following types of techniques to hide the data:
1. Least significant Bit Insertion (LSB)
2. Filtering & Masking
3. Algorithm Transformation
1. LSB:
In this Least significant bit of every byte of carrier file is replaced by the bit of hidden message. Which means the suppose data that we wan to hide is in the following binary:
11110000 -----------> (eq. 1)
now let us suppose the that carrier file is in following binary :
10101010 11001100 10110000 11110101 01010110 00011111 10010101 11101111
now when we apply stegnography the LSB of every byte(in bold) of carrier file will be replaced by each bit of data that we want to hide( eq marked as 1). Resulting data would be as following after applying stegnography:
10101011 11001101 10110001 11110101 01010110 00011110 10010100 11101110
u can see that every LSB of Result(in bold) is exactly matching the each bit of hidden data marked as eq 1.
Thus by such replacements the data is hidden to a file. This replacements doesnt causes much difference between original carrier file and steganographed file. for eg: in case of images, the difference caused by this replacements is not visible to human eye.
2. Masking and filtering
This method basically uses the luminance of images for hiding data. The luminous of carrier file is decreased in order to hide data. This decrease in luminousity is not detected by human eye. Less the variance in luminous of image less will be the chance of being caught.
3. Algorithmic Transformation
In this technique the mathematical transformation technique is used to hide data. eg: JPEG images use Discrete Cosine Transform(DCT) technique for compression.
so in order to hide data in JPEG:
1. we first need to calculate DCT of image & find all coefficient below a specific threshold.
2. Replace these bits with bits of data that we wanna hide.
3. Take the inverse transform & store the regular image.
Most of the software that are used for steganography use LSB insertion technique.
Some use Blank spaces and TAB spaces in word document to hide data.
Some software use the color difference, which means that there is little difference in color depth of carrier file and steganographed file.
Some s/w apply encryption before steganography, it is cool because even if someone catches ur data and even if he/she decrypts the data he/she will not be able to find the hidden data due to steganography
0 comments: