Stenography is a process that involves hiding a message in an appropriate carrier for example an image or an audio file. The carrier can then be sent to a receiver without anyone else knowing that it contains a hidden message. This is a process, which can be used for example by civil rights organizations in repressive states to communicate their message to the outside world without their own government being aware of it. Less virtuously it can be used by terrorists to communicate with one another without anyone else’s knowledge. In both cases the objective is not to make it difficult to read the message as cryptography does, it is to hide the existence of the message in the first place possibly to protect the courier. Objective is not to prevent the message being read but to hide its existence.
The word steganography means “covered in hidden writing”. The object of steganography is to send a message through some innocuous carrier(to a receiver while preventing anyone else from knowing that a message is being sent to all. Computer based steganography allows changes to be made to what are known as digital carriers such as images or sounds.
The changes represent the hidden message, but result if successful in no discernible change to the carrier. The information may be nothing to do with the carrier sound or image or it might be information about the carrier such as the author or a digital watermarking or fingerprint.
In steganography information can be hidden in carriers such as images, audio files, text files, and video and data transmissions. When message is hidden in the carrier a stego carrier is formed for example a stego-image. Hopefully it will be perceived to be as close as possible to the original carrier or cover image by the human senses.
Images are the most widespread carrier medium. The are used for steganography in the following way. The message may firstly be encrypted. They are used for steganography in the following way. The message may firstly be encrypted. The sender embeds the secret message to be sent into a graphic file. This results in the production of what is called stego-image. Additional secret data may be needed in the hiding process e.g. a stegokey etc. This stego-image is then transmitted to the recipient.
The recipient extractor extracts the message from the carrier image. The message can only be extracted if there is a shared secret between the sender and the recipient. This could be the algorithm for extraction or a special parameter such as stegokey. A stegoanalyst or attacker may try to intercept the stego image.
To make a steganographic communication even more secure the message can be compressed and encrypted before hidden in the carrier. Cryptography and steganography can be used together. If compressed message will take up far less space in the carrier and will minimize the information to be sent. The random looking message which would result from encryption and compression would also be easier to hide than a message with a high degree of regularity. Therefore encryption and compression are recommended in conjunction with steganography.
2. THE BASIC OPERATION OF STEGANOGRAPHY
This procedure is divided into several operations.
2.2 Data chunking
2.3 Applying Steganography
2.4 Sending this chunked files
2.5 File recombination
The object file which is supposed to be proceed will be encrypted in some binary codes. This binary codes depends on the nature of the object file. This encryption is different for different files. As, example the encryption is made of text file which is absolutely different from any audio file or image files.
2.2 Data Chunking:-
In this process the encrypted file is chunked in various parts and then this file is to Be proceed for the further streganography. The aim of this step is to reduce the stenography time and increase the effectiveness of this procedure.
In this process the steganography is done on the chunked encrypted files. In this Process the binary codes of the encrypted files are to be changed by any of the method as mentioned below. Specific method changes the specific binary numbers.
2.4 Sending the chunked files:-
In this process this chunked files are supposed to be sent to the receiver and this Files will be in the hidden form. This all files are received by the receiver and then are proceed to get the original data.
2.5 File recombination:-
In this process the chunked files are supposed to be recombined to get the whole File and this procedure are done on the receiver end, so the receiver must have the stego-key or any secret information from the sender so that the receiver can get the original file.
2.6 Data Decryption:-
In this process the previously recombined file is to be decrypted so that the Receiver can get the original file which is sent from the sender. And now by entering the secret information the receiver is supposed to get the original file which is sent by the receiver. This procedure ends the whole procedure.
Thus the whole procedure is carried out by following the above steps.
Fig. 2.1: Result of using Hide and Seek for embedding M1 into C2
This is the example of the steganography procedure which is explained below: In this procedure the file which is in the binary form and it is now embedded in some form and now this file is in the hidden format and any secret information is added by the sender and if the receiver wants to get the original image then he needs to extract the embedded image with the help of the secret information provided by the sender. When the receiver will receive the file will be in the embedded form and by extracting it he can use or read the original object file which is sent by the sender. This embedding of the binary code is different for the different types of the files.
3. DIFFERENT METHODS FOR HIDING THE DATA
There are a variety of digital carriers or places where data can be hidden. Data may be embedded in files at imperceptible levels as noise. Properties of images can be manipulated including luminescence, contrast and colors [Johnson01]. In audio files small echoes or slight delays can be included or subtle signals can be masked with sounds of higher amplitude. Information can be hidden in documents by manipulating the positions of the lines or the words. Messages can be retrieved from text by taking for example the second letter of each word and using them to produce the hidden message. This is called a null cipher or open code. Information can be hidden in the layout of a document for example certain words in a piece of text can be shifted very slightly from their positions and these shifted words can then make up the hidden message. The way a language is spoken can be used to encode a message such as pauses, enunciations and throat clearing. Unused or reserved space on a disc can be used to hide information. The way operating systems store files typically results in unused space that appears to be allocated to the files. A minimum amount of space may be allocated to files but the file does not need all this space so some of it goes unused. This space can be used to hide information. Another method for hiding information in file systems is to create a hidden partition. Data may be hidden in unused space in file headers. Packets for example TCP / IP packets have headers with unused space and other features that can be manipulated to embed information.
Data can be hidden using the physical arrangement of a carrier for example the layout of code in a program or electronic circuits on a board. This process can be used to record and identify the origin of the design and cannot be removed without a substantial change to the physical layout. Spread spectrum techniques can also be used by placing an audio signal over a number of different frequencies. Random number generators are developed to allow spread spectrum radios to hop from frequency to frequency. Systems can use different frequencies at the same time. Some information is broadcast on one frequency and some on another. The message can be reassembled by combining all the information. Some types of the stenography are described below.
3.1 Image stenography:-
Image stenography has gotten more popular press in recent years than other kinds of stenography, possibly because of the flood of electronic image information available with the advent of digital cameras and high-speed internet distribution. Image stenography often involves hiding information in the naturally occurring “noise” within the image, and provides a good illustration for such techniques.
Fig. 3.1: Image Steganography
Most kinks of information contain some kind of noise. Noise cab new described as unwanted distortion of information within the signal. Within an audio signal, the concept of noise is obvious. For images, however, noise generally refers to the imperfections inherent in the process of rendering an analog picture as a digital image. For example, the values of colors in the palette for a digital image will not only not be the exact colors in the real image, and the distribution of these colors will be also be imperfect. The instantaneous measurement of photons made by a digital camera also captures the randomness inherent in their behavior, leading to a set of “imperfect” measurements which balance out to become a digital image. By changing the least significant bit(LSB) in the color representation for selected pixels, information can be hidden while often not significantly changing the visual appearance of the image; this is known as “image downloading”. The greater the number of bits used to represent colors, the less obvious the changes in palette values are in the visual representation of the final image. While changing the LSB in order to hide information is a widely used stenographic method. There are many methods for image steganography, however. For the images below, an algorithm was used that attempts to avoid statistical distortion by taking advantage of the discrete cosine transforms that are used to compress and approximate a digital image. The image is a bitmap image which is compressed to a jpeg image by the tool as the secret message is embedded.
The image with size of 1kb file embedded in its using the F5 steganography tool. Note that the distortions in the background of the second image resemble image distortions commonly seen when converting images; however, the distortion in the images is also clearly detectable by a human. This might or might not tip off an attacker, depending upon whether or not such image distortion can be expected in context. Furthermore, The statistical profile of the distortion may tell an attacker much more about the stegoobject.
There are two stages involved in breaking a steganographic system: detecting that steganography has been used and reading the embedded message. Steganalysis methods should be used by the steganographer in order to determine whether a message is secure and consequently whether a steganographic process has been successful. The goal of a stegoanalyst is to detect stego-messages, read the embedded message and prove that the message has been embedded to third parties.
Detection involves observing relationships between combinations of cover, message, stego-media and steganography tools. This can be achieved by passive observation. Active interference by the stegoanalyst involves removing the message without changing the stego-image too much (the stegoanalyst might want to conceal his existence), or removing the message without consideration to the stego-image appearance or structure. Whether a message has been hidden in an image or not the image could be manipulated to destroy a possible hidden message.
There are two necessary conditions to be fulfilled for a secure steganographic process. The key must remain unknown to the attacker and the attacker should not be familiar with the cover image. If the cover image is known, the message could then be embedded in a random way so that it is secure however it is preferable that the image is unknown. Attacks on steganography can involve detection and/or destruction of the embedded message.
A stego-only attack is when only the stego-image is available to be analyzed. A known cover attack is when the original cover image is also available. It involves comparing the original cover image with the stego-image. As explained above hiding information results in alterations to the properties of a carrier which may result in some sort of degradation to the carrier.
Original images and stego-images can be analysed by looking at color composition, luminance and pixel relationships and unusual characteristics can be detected. If a hidden message is revealed at some later date the attacker could analyze the stego-image for future attacks. This is called known message attack. The chosen stego attack is used when the steganography algorithm and the image are known.
A chosen message attack is when the stegoanalyst generates stego-images using a given steganography algorithm using a known message. The purpose is to examine the patterns produced in the stego-images that may point to the use of certain steganography algorithms.
Most steganographic algorithms embed messages by replacing carefully selected pixels bits with message bits. Any changes to the data associated with the image through embedding will change the properties of the image in some way. This process may create patterns or unusual exaggerated noise. An image with plenty of bad effects is a problem that can be detected with the human eye.
The patterns visible to the human eye could broadcast the existence of a message and point to signatures of certain methods or tools used. Human sight is trained to recognize known things. This process of analysis depends on the ability of humans to discern between normal noise and visual corruption and patterns created by steganography. It can be difficult to distinguish randomness and image contents and to distinguish LSBs and random bits by machine.
Visual attacks can involve removing the parts of the image containing the message i.e. the least significant bit of each pixel. Sometimes the least significant bits are not very random. The human eye may then distinguish whether there is a message distorting the image content.
The filtering process which can be used for this purpose involves extraction of the potential message bits based on a presumed steganographic method and then illustrating the bits on the position of their source pixels.
Fig. 4.1: Assignment function of replacement colors; colors that have an even index in the sorted palette become black, the rest becomes white.
An embedding filter presents the values pixels yield when the extraction function is applied to them. For example the embedding filter for EzStego replaces the original palette by a black and white palette. The original palette is sorted by frequency. The palette is then sorted by luminance. Every even position in the palette (0, 2, 4, 6, ….) is set to black and every uneven position in the palette is set to white. The replacement palette is now reordered into its original order. This is shown in Figure above.
If numerous comparisons can be made between the cover images and the stego-images patterns can begin to emerge. At a later stage if the cover is not available the known signature will be sufficient to indicate a message and the tool used to embed it. Some of the methods of carrying out steganography produce characteristics that act as signatures for that steganography method.
The image may not give away the existence of stenography but the palette could. Therefore steganography can be detected by examining the palette itself. In color palettes the colors are ordered from most used to least used. The changes between color values rarely change in one-bit increments in an unstegoed image. But this feature would be created by embedding in the LSBs during steganography.
Greyscale palettes do change in one bit increments but all the RGB values are the same. In monochromatic images usually two of the RGB values are the same and the third usually has a much stronger saturation of color. Therefore there are expected patterns in palettes which if adjusted could indicate the use of steganography.
If an original image contains 200 colors steganography could result in the formation of 400 colors which would be too many to store in the palette. When the image is saved as an 8-bit image it will produce a new palette with 256 colours and information hidden could be lost. This is prevented by reducing the colours initially so that space is available for new colours to be created. Adjacent colours are added which are very close to the original.
5. TOOLS OF STEGANOGRAPHY
5.1 STEGO ONE BIT:-
When images are used as the carrier in steganography they are generally manipulated by changing one or more of the bits of the byte or bytes that make up the pixels of an image. The message can be stored in the LSB of one colour of the RGB value or in the parity bit of the entire RGB value.
Hide and Seek uses GIF images and the lower order bit of each pixel. One of the methods for S-Tools involves changing the least significant bit of each of the three colours in a pixel in a 24-bit image. Changing the LSB will only change the integer value of the byte by one. This will not noticeable alter the visual appearance of a colour and hence the image itself.
Changing a more significant bit would cause a proportionately greater change in the visual appearance of a colour. The main objective of steganography is to pass a message to a receiver without an intruder even knowing that a message is being passed which means that there should be no discernable change to the carrier. This is the first method to be tested and will involve encoding some of the basic processes required for later steganographic methods to be tested also. It will involve changing the LSB of one of the colours making up the RGB value of the pixel. This should have very little effect on the appearance of the image. This process will most likely result in the formation of new colours for the palette. Therefore the image used must have a palette size of 128 pixels or less. This will allow for a doubling of the colours in the palette (the creation of a new colour for every existing colour in the palette) which is the maximum number of colours that could be produced by this method. It may be found that if the palette is ordered by luminance that there will be pairs of very similar colours.
How noticeable that is depends on the colour profile used in the image to start with. Practical methods should allow for the use of the full image size, thus the amount of data that can be hidden is proportionate to the number of pixels in the image rather than to the colours in the palette. The only restriction is then the size of the image. Using the image data for embedding is less restrictive on capacity compared to another method where data is stored in the palette itself. Using a 128 palette image should not result in too much distortion to the original image.
5.2 STEGO TWO BITS:
Using this method two LSBs of one of the colours in the RGB value of the pixels will be used to store message bits in the image. This will involve using a palette with a maximum of 64 colours allowing for the production of a possible 192 new colours,i.e. three new colours for each existing colour. Less colour will be available to represent the starting image and hence it will be more degraded than the image used in the method Stego One Bit.
The advantage of this method is that twice as much information can be stored here than in the previous method. This method could instead have used the LSB of two colours in the RGB value which would have resulted in the same amount of storage space. The starting image would still have to have a palette containing 68 colours.
5.3 STEGO THREE BITS:
Using this method three LSBs of one of the colours in the RGB value of the pixels will be used to store message bits. This will involve using a palette with a maximum of only 32 colours allowing for the production of a possible 224 new colours, three new colours for every existing colour in the image.
The data hiding capacity is 3 times the storage capacity of Stego One Bit but the image will be even more distorted than if a 128 colour palette was used.
5.4 STEGO FOUR BITS:
Using this method four LSBs of one of the colours in the RGB value of the pixels will be used to store message bits. This will involve using a palette with a maximum of only 16 colours allowing for the production of a possible 240 new colours. This is the smallest palette that could be used for an image using Jasc Paint Shop Pro.
The colours are now very restricted but an area of one particular colour in the image may have 16 variations distributed through it which could result in a certain amount of texture mitigating the effects of such a restricted palette.
5.5 STEGO COLOUR CYCLE:-
In order to make the detection of the hidden data more difficult it was decided to cycle through the colour values in each of the pixels in which to store the data. This also means that the same colour was not constantly being changed.
For example the first data bit could be stored in the LSB of the blue value of the pixel, the second data bit in the red value and the third data bit in the green value, The alpha value will be skipped and the next colour used will be blue again. This is because changing the alpha value which is generally 255 would look too suspicious unless the image used contained different transparency levels.
6. STEGANOGRAPHY SYSTEM
The best types of images to use are black and white greyscale or natural photographs with 24 bits per pixel which have been scanned in. The redundancy of the data helps to hide the presence of a secret message. A cover image should contain some randomness. It should contain some natural uncertainty or noise.
Hiding information may introduce enough visible noise to raise suspicion. Therefore the carrier or cover image must be carefully selected. Once it has been used the image should not be used again and should be destroyed. A familiar image should not be used so it is better for the steganographer to create his / her own images. Some software displays the image before and after data is hidden. This will also be done here.
The user will be someone who is familiar with the process of information hiding and will have knowledge of Information systems. Cryptography is recommended and will result in a more random looking message rather than a high degree of regularity. A cryptographic method will be included as an option prior to steganography.
The user should be able to select a plaintext message from a file, an image to be used as the carrier and then select a steganographic method, which will hide the selected message in the selected carrier image. The user will then be able to save the stegoed image in another file.
The user should also be provided with the option to encrypt the message prior to hiding it in the image. The user should be able to open an image file containing a stegoed image containing a message to be read and choose an appropriate method to unstego the message from the image. The user should then be provided with the hidden message.
A graphical user interface will be provided for the user to select the appropriate files and methods. The software provides a GUI, which will allow a user to select a file containing the message, the image in which to store the message and a file in which to store the stegoed image.
The user will also be able to select the method for steganography and for encryption if desired. The opening frame of the graphical user interface which is shown in Figure 7 contains a series of buttons one, to encrypt a message, one to decrypt a message, one for each of the seven steganography methods and one for each of the seven methods to reverse the steganography process and finally a Help button and an Exit button.
7. COMPARISON WITH CRYPTOGRAPHY
Basically, the purpose of cryptography and steganography is to provide secret communication. However, steganography is not the same as cryptography. Cryptography hides the contents of a secret message from a malicious people, whereas steganography even conceals the existence of the message. Steganography must not be confused with cryptography, where we transform the message so as to make it meaning obscure to a malicious people who intercept it. Therefore, the definition of breaking the system is different . In cryptography, the system is broken when the attacker can read the secret message. Breaking a steganographic system need the attacker to detect that steganography has been used and he is able to read the embedded message.
In cryptography, the structure of a message is scrambled to make it meaningless and unintelligible unless the decryption key is available. It makes no attempt to disguise or hide the encoded message. Basically, cryptography offers the ability of transmitting information between persons in a way that prevents a third party from reading it. Cryptography can also provide authentication for verifying the identity of someone or something.
In contras, steganography does not alter the structure of the secret message, but hides it inside a cover-image so it cannot be seen. A message in ciphertext, for instance, might arouse suspicion on the part of the recipient while an “invisible” message created with steganographic methods will not. In other word, steganography prevents an unintended recipient from suspecting that the data exists. In addition, the security of classical steganography system relies on secrecy of the data encoding system . Once the encoding system is known, the steganography system is defeated.
It is possible to combine the techniques by encrypting message using cryptography and then hiding the encrypted message using steganography. The resulting stego-image can be transmitted without revealing that secret information is being exchanged. Furthermore, even if an attacker were to defeat the steganographic technique and detect the message from the stego-object, he would still require the cryptographic decoding key to decipher the encrypted message . Table 1 shows that both technologies have counter advantages and disadvantages .
TABLE 7.1 – Advantages and disadvantages comparison.
In discussing applications of Steganography, it is instructive to note that it differs from digital watermarking in two fundamental ways.
- The first is that for full color (e.g., 24-bit) images, it has a very large embedding capacity. As described previously, our experiments with BMP images have shown capacities exceeding 50% of the original image size.
- The second difference is that Steganography is not robust to even small changes in the image. An unknowing user might acquire an embedded image. Any alteration, such as clipping, sharpening or lossy compression, would “destroy the evidence” .
- The more obvious applications of Steganography relate to secret communications. For example a person, group, or company can have a web page containing secret information meant for another. Extracting the embedded information would require software customized with the proper parameters.
- Applications of Steganography are not limited to those related to secrecy. For such applications, the presence of the embedded data may be known, and the software for extraction and embedding can be standardized to a common set of customization parameters. An example of this is a digital photo album, where information related to a photo, such as date and time taken, exposure parameters, and scene content, can be embedded in the photo itself.
9. FUTURE WORK
The objective of this paper was to demonstrate Steganography, which is based on a property of the human visual system. The most important point for this technique is that humans can not see any information in the bit-planes of a color image if it is very complex. We have discussed the following points and showed our experiments.
- We can categorize the bit-planes of a natural image as informative areas and noise-like areas by the complexity threshold.
- Humans see informative information only in a very simple binary pattern.
- We can replace complex regions with secret information in the bit-planes of a natural image without changing the image quality. This leads to our BPCS-Steganography.
- Gray coding provides a better means of identifying which regions of the higher bit planes can be embedded.
- Steganography guarantees secret Internet communication. This steganography is a very strong information security technique, especially when combined with encrypted embedded data. Furthermore, it can be applied to areas other than secret communication.
- The confidentiality of all hidden file content is guaranteed.
- Deleting hidden or non-hidden _les leads automatically to their secure destruction.
- Several layers of plausibly deniable access can be used such that lower layers can be voluntarily compromised without revealing higher ones.
- Future research will include the application to vessels other than 24-bit images, identifying and formalizing the customization parameters, and developing new applications.
In an effort to keep the total number of unique colors less than 256, S-Tools reduces the number of colors of the cover image to a minimum of 32 colors. The new “base” colors are expanded over several palette entries. Sorting the palette by its luminance, blocks of colors appear to be the same, but actually have variances of 1 bit value. The approach is the same with 8-bit color and gray-scale images. When this method is applied to gray-scale cover images, the stego-image is no longer gray-scale as the RGB byte values within a pixel may vary by one bit. This is a good illustration of the limits of the human eye. However, the manner in which the pallet entries vary are uncommon except to a few steganographic techniques.
Fig. 9.1: Cover (left) and stego-image palette (right) after S-Tools
Investigation of many images does not illustrate this pattern occurring “naturally.” Gray-scale and other monochromatic images do not follow a similar pattern but the in each step in the palette entry all the RGB values are incremented the same so the pattern does not follow this example. Nor has it been found that images containing large areas of similar colors produce this pattern. Such images contain similar colors but the variance in colors is far greater than that represented by a stego-image produced by S-Tools. Other bit-wise and transform tools share similar characteristics to S-Tools
• Audio Steganography can be problematic sometimes because of theextra high frequency information encoded in message.
• In Image steganography, greater number of bits is required than original number of bits.
• Hiding information results in alteration of carrier, results in some sort of degradation to the carrier.
As all the of the methods evaluated required either colour reduction of the original images palette or colour substitution in the stegoed image, they all had their own weaknesses as the stegoed image inevitably suffered some distortion from the steganography process. In the case of colour reduction based techniques there were strong tell-tail signs in the palette as well. Overall the colour rearrangement technique appeared to be the most resistant to detection as long as suitable images were chosen. Techniques that attempt to maximise the message size that they can store; appear to be the least resistant to detection.
• Neil F. Johnson, (1996) Applied Cryptography, Bruce schneier, Steganography, By George Manson University.
• Deborah Radcliff, (2002) Steganography: Hidden Data, by,
• The free on-line dictionary of computing.http:\\www.nightflight.com/foldoc/index.html