Printer Friendly

A frequency domain manipulation based approach towards steganographic embedding in digital images for covert communication.



Steganography is the process of discreetly hiding data in a given host carrier for the purpose of enhancing value or subliminally communicating information. Steganography is possible through the existence of covert channels. The host carrier may be any message or information source that contains redundancy or irrelevancy [1, 7, 10, 11]. For instance, digital images are often used to embed covert information; the limited capability of human vision allows data hiding or watermarking of this type of media. The host carrier can also be an element or mechanism of a covert communication channel such as a network packet or protocol. A secure steganographic system is shown in Figure 1, which depicts step by step process of hiding process of concealed message on a cover medium.


Steganography is therefore about concealing the existence of the message when secret information is hidden into an innocent cover data. The simplest example usually referred to, is the usage of the low order two or three bits of each pixel in a digital image for the secret data to be communicated. The last two or three bits are less likely to affect the content of the cover image and will conceal the existence of the secret content [9], [12]. This scenario would, therefore, facilitate the smuggling of information from one point to another.

Inherent features

Steganography simply takes one piece of information and hides it within another. Computer files such as images and audio-files contain unused spaces or insignificant data. Steganography takes advantage of these spaces by replacing them with information that is required to hide. The files can then be exchanged without anyone knowing what really lies inside of them [3, 7, 10, 11]. A shared image might contain vitally important geo-information about the desired position over the world. Steganography and watermarking can also be used together to place a hidden trademark in images, music files, and software.

Some of the features of Steganography and Watermarking are listed as follows:

* A secure permutation key giving exceptional levels of security is used.

* There is no need for additional metadata.

* File formats are unaltered and there is no increase to object data file size.

* Digital watermarks do not affect print workflows in any way.

* File transfer times remain unchanged.

* Watermarking can support a host of standard and proprietary formats.

* Embedded messages can survive high levels of data compression.

* To prove copyright ownership.

* To identify different copies of a document.

Science of Steganography

The science of steganography avails covert channels in order to have secret information transfer. Data is interleaved into a cover signal mainly for two purposes.

Covert Communication

The data is hidden such that it is imperceptible to the casual observer. Thus, the two parties can secretly communicate with each other without a third party knowing that the communication is actually taking place. A relationship of covert communication with the two major data hiding techniques steganography and watermarking is shown in Figure 2.

The process of embedding data into another data for covert communication is called steganography.


Copyright Protection

Any relevant data such as data pertaining to the rightful owner of the file, the user to which it has been sold, the distributor through which the trade was made can be embedded into the cover signal. Now the data is interleaved such that the embedded data cannot be destroyed without destroying the cover signal. Thus, the embedded data will act as a copyright of the audio-visual cover signal.

The process of using steganography for copyrighting processes by adding a feature of robustness against attacks is called watermarking.

Each unit of the cover signal, whether a pixel or a single quantized sample, is represented in digital format in terms of bytes. Any change in the least significant bit (LSB) or the least 2-3 bits will not cause any perceivable change to the cover signal.

The Characteristic Problem

The study of this subject in the open scientific literature may be traced to Simmons [4], who in 1983 formulated it as the prisoner's problem: Alice and Bob are in jail, and wish to hatch an escape plan. All their communications pass through the warden, Wendy. If Wendy sees any encrypted messages, he will frustrate their plan by putting them into solitary confinement. So they must find some way of hiding their ciphertext in an innocuous looking covertext. As in the related field of cryptography, we assume that the mechanism in use is known to the warden, and so the security must rely solely on a secret key. Figure 3 illustrates the A-W-B problem, where Alice is sending a secret message to Bob through Willy.


So the general model is that Alice embeds information by tweaking some bits of some transform of the covertext. The transform enables her to get at one or more bits which are redundant in the sense that tweaking them cannot be detected easily or at all. To a first approximation, we will expect that such transforms will be similar to those used for compression, and that there are many low-bandwidth stego channels arising from redundancy whose elimination, by compression or otherwise, is uneconomic for normal users of the cover system. We will not expect to find many high bandwidth channels, as these would normally correspond to redundancy that could economically be removed.

Using Image as a Solution

Images are spatial signals of two dimensions. They contain only color information in x and y directions. Thus a covert signal can be substituted by distributing its bits uniformly over the entire carrier image in such a way, that it does not introduce detectable noise or pattern. JPEG format is the most suitable image carriers. Due to their compression scheme, a covert signal can easily be substituted by increasing the quantization threshold by a small number leading to more image compression, buying as a small space in each block to hold covert signal bits [10].

Requirements Specification

Secrets can be hidden inside all sorts of cover information: text, images, audio, video, data packets etc. Most steganographic utilities nowadays, hide information inside images, as this is relatively easy to implement. The most important property of a cover source is the amount of data that can be stored inside it, without changing the noticeable properties of the cover medium [2, 11].

The view is that cryptographic techniques provide security but their disadvantage is that some form of secret communication is taking place is known. Steganographic techniques overcome this disadvantage. Further, cryptography can be used in conjunction with steganography to provide one higher level of security [10].

The common methods used to hide secret message involves the usage of the least-significant bit or LSB, masking, filtering and transformations on the cover image. These techniques can be used with varying degrees of success on different types of image files [6, 11].

Implementing steganography analysis requires following requirements

* Simple covert communication

* Covert communication with security feature using Symmetric key algorithm and random number generator.

* Covert communication with message integrity.

* Copyright Protection

* Advertisement

To embed a bit strings into an image file, one can either choose the pixel domain or the frequency domain of the image. In the pixel domain, one uses the fact that slight changes to some of the pixel values are normally not to be detected. Hence, one encrypts and randomizes the bit string by a bitwise exclusive or with a key string, and then embeds it by performing a bitwise exclusive or with the lowermost bit of selected pixel values. Only a small percentage of the pixels can be chosen (less than 5%), because otherwise the lowermost bits of the pixels would look much more random than in an ordinary image file, and the existence of an embedded message would be revealed (so-called LSB-Test) [6]. While this restricts the capacity of an image with respect to embedded messages size [8]. One of today's wide-spread image formats is JPG, or more correctly the Joint Photographic Experts Group (JPEG), Joint File Interchange Format (JFIF) [5].

Proposed Algorithm

We hereby propose two algorithms for hiding and retrieving data. Our algorithm uses JPEG image as cover medium into which the data is going to be hidden and the output is a BMP image containing secret message. We used JPEG to BMP conversion for the proposed scheme. The proposed algorithms are based on certain assumptions which are as follows:

* The algorithm is based on the assumption that network is ideal i.e. What Is Sent Is What Is Received (WISIWIR).

* Support for only few image and audio formats.

* Cannot hide binary files.

* The password (key) should be known to both sender and receiver

Algorithm for hiding in frequency domain

Algorithm freq_hide ()

// Input: JPEG cover file into which data is to be hidden

// Secret file that is to be hidden

// Output: steganographic image in BMP format containing message

// This algorithm hides a message inside a BMP file, obtained by applying jpeg-tobmp function to the cover file.

Divide the BMP image into 8 * 8 blocks

Convert each RGB block to its corresponding YCbCr representation

Apply DCT to each of these 8 * 8 blocks


data left to embed do

get an 8 * 8 luminance block of the image

get next LSB from message


all coefficients in the block are not exhausted


get next DCT coefficient from the block if DCT > 0


replace DCT LSB with message bit

Apply IDCT to each of these blocks

Convert each YCbCr block to its corresponding RGB representation

Algorithm for extracting from frequency domain

Algorithm freq_extract ()

// Input: steganographic image in BMP format containing message

// Output: Secret file obtained after extraction

// This algorithm extracts data from the frequency domain of the steganographic image

Divide the BMP image into 8 * 8 blocks

Convert each RGB block to its corresponding YCbCr representation

Apply DCT to each of these 8 * 8 blocks


data left to extract


Get an 8 * 8 luminance block of the image


all coefficients in the block are not read


get next DCT coefficient from the block if DCT > 0


extract the message bit from DCT LSB

Combine 8 LSBs to form a character

Write this character into the secret file

Formulas Used

RGB to YCbCr Conversion Formula

Y = 0.299*R + 0.587*G + 0.114*B

Cb = 0.1687*R - (0.3313*G) + 0.5*B + 128

Cr = 0.5*R - (0.4187*G) - (0.0813*B) +128


R, G and B represent the Red, Green and Blue components of the 24-bit color Image.

Y represents the Luminance component

Cb and Cr represent the two colour components (Chrominance)

YCbCr to RGB Conversion Formula

R = (Y + 1.402 * (Q - 128))

G = (Y - ( 0.34414 * (1 - 128)) - (0.71414 * (Q - 128 )))

B = (Y + 1.772 * ( 1 - 128))


R, G and B represent the Red, Green and Blue components of the 24-bit color


Y represents the Luminance component

Cb and Cr represent the two color components (Chrominance).

Header Format

BMP Header Format

The used BMP header is 54 bytes long. The header in tabulated form is shown in Table 1.


This paper gives two novel algorithmic approaches for hiding and retrieving data using the frequency domain of digital images. The proposed algorithms takes images in JPEG format as the cover medium and by using data hiding techniques, gives the output image in the form of BMP format. The various formulas used for conversion are mentioned in section 3. Some of the methods and data structures are also described in section 6.1, which are in future can be used for implementation the proposed work.

Future Aspects

The future work includes implementation of the proposed algorithms and making the algorithm compatible with other image formats. Also the future work includes making algorithm compatible with binary files. Some of the data structures which we will use to implement the above proposed algorithms are described below in brief.

Methods and Data Structure Used

Array Filename_extension-A character array that stores the extension of the secret file.

Array filesize-An integer array that stores the size of the secret file.

Pad_bits-A bit-field of length 3. It indicates the number of bits that have been padded to the secret file to make the filesize a multiple of eight.

Encryption-A bit field of length 1. It indicates whether the secret file has been encrypted before hiding into the cover file. If

0--File encrypted

1--File not encrypted

No_of_bits-A bit field of length 2. It determines the number of bits used/byte of the cover file for data hiding. If

* one bit used/byte

* two bits used/byte

* three bits used/byte

random-A bit field of length 1. It determines whether data is hidden sequentially or randomly in the file. The remaining 9 bits are used for padding.


[1] Vishal Bharti, Itu Snigdh, "Practical Development and Deployment of Covert Communication in IPv4", Journal of Theoretical and Applied Information Technology, Vol: 4 No.6 (June2008) pp. 466-473,

[2] F. Gonul Toz, H.M. Palancioglu b, E. Besdok b, "Hidden Communication in Frequency Domain for Information Exchange"

[3] F.A.P. Petitcolas, R.J. Anderson, and M.G. Kuhn, "Information Hiding--A Survey," Proc. IEEE, vol. 87, no. 7, 1999, pp. 1062-1078.

[4] GJ Simmons, "The Prisoners' Problem and the Subliminal Channel", Proceedings of CRYPTO '83, Plenum Press (1984) pp 51-67

[5] John Miano, "Compressed Image File Formats: JPEG, PNG, GIF, XBM, BMP", Addison-Wesley, 1999.

[6] K. Solanki, N. Jacobsen, S. Chandrasekaran, U. Madhow, and B. S. Manjunath, "High-volume data hiding in images: Introducing Perceptual criteria into Quantization based Embedding," in Proc. ICASSP, Orlando, FL, USA, May 2002.

[7] R.J. Anderson and F.A.P. Petitcolas, "On the Limits of Steganography," Journal of Selected Areas in Comm., vol. 16, no. 4, 1998, pp. 474-481.

[8] S. Katzenbeisser and F. Petitcolas, "Information Hiding Techniques for Steganography and Digital Watermarking", Artech House, 1999.

[9] Donovan Artz, "Digital Steganography: Hiding Data within Data", IEEE Internet Computing June 2001, May

[10] Vishal Bharti, "Development and Deployment of Covert Communication in IPv4", International Conference on Communication, Convergence, and Broadband -Networking, IEEE, Bangalore 17-19 July, 2008 [Selected Paper]

[11] Vishal Bharti, "A Novel Algorithm Based Design Scheme for Embedding Secret Message onto a Steganographic Channel", Contemporary Engineering Sciences Journal, HIKARI, 2008 [Selected Paper]

[12] Whitepaper on "Hide and Seek: An Introduction to Steganography", IEEE Computer Society, 2003

Vishal Bharti (1) and Kamna Solanki (2)

(1) Department of CSE/IT, BRCM CET, Bahal, Bhiwani, INDIA E-mail:

(2) Department of Engineering & Technology, M.D. University, Rohtak, INDIA E-mail:
Table 1: 54 Bytes BMP Header Format

Offset    Description                                   Size(Bytes)

0         Header file                                   2
2         File size(little endian)                      4
6         Reserved space 1                              2
8         Reserved space 2                              2
10        Offset address for start of data              4
14        Information header structure                  4
18        Image Width                                   4
22        Image Height                                  4
26        No of graphics planes                         2
28        No of bits per pixel                          2
30        Compression type                              4
34        Image data size(Bytes)                        4
38        Horizontal pixel per meter                    4
42        Vertical pixels per meter                     4
46        No of colors used in bitmap                   4
50        No of colors that are important for bitmap    4
COPYRIGHT 2009 Research India Publications
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2009 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Author:Bharti, Vishal; Solanki, Kamna
Publication:International Journal of Applied Engineering Research
Article Type:Report
Geographic Code:1USA
Date:Aug 1, 2009
Previous Article:Modeling surface finish in low cost cylindrical grinding.
Next Article:Case frame generation for Sanskrit language--a knowledge representation tool.

Related Articles
A picture hides a thousand words.
REVIEW: Information Hiding.
REVIEW: Information Hiding.
The renovation of the digital watermarking technique.
Detection of stego anomalies in images exploiting the content independent statistical footprints of the steganograms.
Content based image-in-image watermarking using DCT and SVD.

Terms of use | Privacy policy | Copyright © 2019 Farlex, Inc. | Feedback | For webmasters