High Capacity Image Steganography using Wavelet-Based Fusion M. Fahmy Tolba, M. Al-Said Ghonemy, Ismail Abdoul-Hameed Taha, Amal Said Khalifa Faculty of Computer & Information Sciences Ain Shams University Abassia, Cairo, Egypt
[email protected]
Abstract –Digital Steganography exploits the use of a host data to hide a piece of information in such a way that it is imperceptible to a human observer. This paper presents a cover-screw algorithm based on what is called the wavelet based fusion. In this method the wavelet decomposition of both the cover image and the secret message are merged into a single fused result using an embedding strength factor (α). The algorithm also applies a preprocessing step on the cover image to shrink the range of the pixels components in order to guarantee that the embedded message will be recovered with acceptable accuracy. Experimental results showed the high invisibility of the proposed model as well as the large hiding capacity it provides.
Keywords: Steganography, cover-image, stegoimage, cover-screw scheme. 1. INTRODUCTION The appearance of the Internet is considered to be one of the major events of the last years; information become available on-line, all users who have a computer can easily connect to the Internet and search for the information they want to find [1]. This increasing dependency on digital media has created a strong need to create new techniques for protecting these materials from illegal usage. One of those techniques that have been in practical use for a very long time is Encryption. The basic service that cryptography offers is the ability of transmitting information between persons in a way that prevents a third party from reading it [2]. Although, encryption protects content during the transmission of the data from the sender to receiver, after receipt and subsequent decryption, the data is no longer protected and is in the clear. That what makes steganography compliments encryption. Digital Steganography exploits the use of a host (container) data to hide or embed a piece of information that is hidden directly in media content, in such a way that it is imperceptible to a human observer, but easily detected by a computer. The principal advantage of this is that the
content is inseparable from the hidden message [3]. Generally, an image steganographic system consist mainly of two modules: the embedding module and the extraction module. At the sender terminal the message is embedded in a digital image by the stegosystem encoder which usually uses a key. The resulting stego-image is then transmitted over a channel to the receiver where it is processed by the stegosystem decoder using the same key to extract the secret message[1]. Usually if the channel was monitored by someone who is allowed to modify the information flow between the two parties, he is called an active warden; but if he can only observe it he is called a passive warden. In general, the terminologies used in this paper agreed with those in [4]. Concerning the extraction of the data inserted, the schemes can be classified as follows: cover escrow schemes and blind schemes. Schemes where the original cover signal is needed to reveal the hidden information are known as cover escrow. Blind, or oblivious, schemes allow direct extraction of the embedded data from the modified signal without knowledge of the original cover. 2. EARLIER WORK ON IMAGE STEGANOGRAPHY The scientific study of steganography began in 1983 when Simmons stated the prisoner's problem [5]. During the past few years, there has been a lot of research on developing techniques for the purpose of placing data in still images. Some techniques are more suited to dealing with small amounts of data, while others to large amounts. Some techniques are highly resistant to geometric modifications, while others are more resistant to non-geometric modifications, e.g., filtering. In this section, we will present some of these methods that explore both of these areas [6]. Hence, we can generally say that the Current methods for the embedding of messages into image covers fall into two main categories: High bitrate data hiding and low bit-rate data hiding. We
mean here by bit-rate, the amount of data that can be embedded as a portion of the size of the cover image. High bit-rate methods are usually designed to have minimal impact upon the perception of the host image, but they do not tend to be immune to image modifications. In return, there is an expectation that relatively large amounts of data are able to be encoded. All high bit-rate methods can be made more robust through the use of error-correction coding, at the expense of data rate. So, high bit-rate codes are only appropriate where it is reasonable to expect that a great deal of control will be maintained over the images. The most common and simplest form of high bitrate encoding is the least significant bit insertion (LSB)[6]. This method embeds the message into one or more least significant bits of some selected pixels. Not every pixel may be is suitable for being changed. Changing the values of some pixels may result in a degradation of the quality of the original object. There are algorithms that can decide if a pixel may be changed by checking the variance in luminosity of the surrounding pixels that may be neither very low nor very high. [7]. The advantages of the LSB method include the ease of implementation and the high message payload. Other techniques include embedding the message by modulating coefficients in a transform domain [7], such as the Discrete-Cosine Transform (DCT), Discrete Fourier Transform, or Wavelet Transform. The transformation can be applied to the image as a whole or to its subparts. The embedding process is done by modifying some coefficients, which are selected according to the type of protection needed; i.e. if we want our message to be imperceptible then the high range of frequency spectrum is chosen, but if we want our message to be robust then the low range of frequency spectrum is selected. Usually, the coefficients to be modified belong to the medium range of frequency spectrum, so that a tradeoff between perceptual invisibility and robustness is achieved [1]. Another technique depends on the introduction of high-frequency, low-amplitude noise and the use of direct sequence spread spectrum coding. This method combines techniques from spread spectrum communication, error-control coding, image processing. The fundamental concept is that the data is embedded in the noise, which is added to the original image. Because the noise is low power and the decoding process is not perfect, a low-bit error-correcting code is incorporated [1]. On the other hand, with low bit-rate encoding, we expect a high level of robustness in return for low bandwidth. The emphasis is on resistance to
attempts of data removal by a third party. One technique that is referred to as Patch-work is based on a pseudorandom statistical process. Patchwork invisibly embeds in a host image a specific statistic, one that has a Gaussian distribution. Two sets of pixels, or patches, of the image are chosen, then the algorithm works by modifying the same factor in both patches. Hence, this unique statistic indicates the presence or absence of a signature [6] A second method for low bit-rate data hiding in images is Texture Block Coding. This method is implemented by copying a region from a random texture pattern found in a picture to an area that has similar texture. Simple autocorrelation is used to expose the hidden information. Several techniques for data hiding in multimedia can be found in [6]. 3. THE WAVELET TRANSFORM The wavelet domain is growing up very quickly. A lot of mathematical papers and practical trials are published every month. Wavelets have been effectively utilized as a powerful tool in many diverse fields, including approximation theory; signal processing, physics, astronomy, and image processing [8]. A one dimensional discrete wavelet transform is a repeated filter bank algorithm [9]. The input is convolved with a high pass filter and a low pass filter. The result of the latter convolution is a smoothed version of the input, while the high frequency part is captured by the first convolution. The reconstruction involves a convolution with the syntheses filters and the results of these convolutions are added. In two dimensions, we first apply one step of the one dimensional transform to all rows. Then, we repeat the same for all columns. In the next step, we proceed with the coefficients that result from a convolution in both directions. These steps result in four classes of coefficients: the (HH) coefficients represent diagonal features of the image, whereas (HG and GH) reflect vertical and horizontal information. At the coarsest level, we also keep low pass coefficients (LL). We can do the same decomposition on the LL quadrant up to log2(min (height, width)). Research into human perception indicates that the retina of the eye splits an image into several frequency channels each spanning a bandwidth of approximately one octave. The signals in these channels are processed independently. Similarly, in a multiresolution decomposition, the image is separated into bands of approximately equal bandwidth on a logarithmic scale [10, 11]. It is therefore expected that use of the discrete wavelet transform will allow the independent processing of the resulting components without significant
perceptible interaction between them, and hence make the process of imperceptible embedding more effective. 4. THE PROPOSED MODEL A large number of techniques have been proposed in the literature over the last few years to exploit the characteristics of the Human Visual System (HVS) for more effective data hiding. From this point of view, Digital Wavelet Transform (DWT) is a very attractive tool given its intrinsic similarity to the theoretical model of HVS perception [12]. The main idea of the proposed algorithm is called wavelet based fusion. It involves merging of the wavelet decomposition of the normalized versions of both the cover image and the secret image into a single fused result. In a normalized image the pixel components take on values that span a range between 0.0 and 1.0 instead of the integer range of [0, 255]. Hence, the corresponding wavelet coefficients will also range between 0.0 and 1.0. Before the embedding process takes place we need first to apply a pre-processing step on the cover image. This step actually involves shrinking the range of the pixel color components in order to avoid any range violation due to the embedding process. This ensures that the embedded message will be recovered correctly. The extraction process involves subtracting the original cover image from the stego image in the wavelet domain to get the coefficients of the secret message. Then the embedded message is retrieved by applying IDWT. 5. DATA EMBEDDING The main idea of the proposed algorithm is called the wavelet based fusion. Fusion or more specifically, data fusion refers to the processing and synergistic combination of information from various knowledge sources and sensors to provide a better understanding of the situation under consideration [10]. As we can see in figure 1 the fusion process takes place in the wavelet domain between the DWT of the secret data and the DWT of the cover image. To be more specific we mean by the "secret data" another image. That is, the proposed algorithm takes advantage of the format similarity between the cover and the message. However, we know that the ordinary wavelet filters have floating point coefficients. i.e., when
the input data consist of sequences of integers (as in the case for images), the resulting filtered outputs no longer consist of integers. This may result in imperfect reconstruction of the transformed image. This made us think about a floating point representation of the image. So, we applied a normalization operation on the cover image, i.e. the pixel components takes on values between 0.0 and 1.0 instead of the integer range of 0-255 and hence the corresponding wavelet coefficients will range between 0.0 and 1.0. This normalization operation applies on the cover image as well as the secret image. The step concerning the wavelet-based fusion, actually merges the wavelet decomposition of both the cover image and the secret message into a single fused result using the following equation:
f ` ( x, y) f ( x, y) g ( xm , ym )
(1) Where f’ is the modified DWT coefficient, f is the original DWT coefficient, g is the message coefficient, and α is the embedding strength (ranges from 0.0 to 1.0). As you can notice, this operation may cause the resultant embedded coefficients to go out of the original normalized range. This may happen only when the color component of the pixel is either 0.0 or 1.0. That is, according to equation (1), if it happens that the value of f was 1, then the value of the embedded coefficient (f’) will go out of range depending on the sign of the coefficient g, and vice versa. Hence, we need first to adjust the cover’s normalized pixels before the embedding process takes place. This adjustment depends on the value of α. It actually involves shrinking the range of the pixels to be [α, 1- α] instead of [0, 1]. And so, we can guarantee that the reconstructed pixels from the fused coefficients would not go out of range and hence the secret image will be recovered correctly. Since, the cover image is in true-color format, we apply the 2D DWT on each color plane (Red, Green and Blue) separately. On the other hand, the secret image is grey scale, so we apply the 2D DWT transform on the normalized pixels directly. We have chosen to apply the 2D Haar Transform on both images. However, the scheme can be applied using any other wavelet family. We also propose a new idea of key composition. That is instead of handling the key as an input parameter, the key is composed from the concatenation of the dimensions of the secret message coefficient matrices. And hence in the extraction process the key would be used instead of embedding a header in the stego-image.
One thing is left to be considered. That is, we need to decide on the order by which the coefficients will be selected for embedding. We have employed the pseudorandom permutation as a secure selection scheme. The idea behind the permutation is that the permutation generator uses the stego key and produces as output different sequences of the set {1, 2, 3, …., length(Cover)} [1]. To build such a generator, Luby and Rackoff [13] proposed a pseudorandom function generator that has been proved to be computationally feasible and secure, that is nobody can guess the generated random sequence without knowing the secret key. This ensures that only recipients who know the corresponding secret key will be able to extract the message from a stego-object [7].
Figure 1: Block diagram for embedding an Image message in a True Colored Image using Wavelet fusion
6. DATA EXTRACTION As shown in figure 2, the extraction process reverses the embedding operation starting form applying the DWT on each color plane of the stego image, then selecting the embedded coefficients using the permutation scheme based on the same stego key composed during the embedding process. The next step involves extracting the embedded message coefficients from fused normalized coefficients by subtracting the original cover image from the stego image in the wavelet domain. Furthermore, the extracted normalized coefficients are transformed into image format by applying IDWT. These steps are depicted in figure 2.
Figure 2: Block diagram for extracting an Image message from a True Colored Image using Wavelet fusion
Obviously, the algorithm discussed above is a cove-screw scheme since the extraction process requires the cover image to get the message coefficients by subtracting the original DWT coefficients from the modified stego coefficients. 7. HIDING CAPACITY In dada hiding the main objective is to provide the maximum possible payload. Fundamentally, data payload of a steganographic scheme can be defined as the amount of information [3] it can hide within the cover media. As with any method of storing data, this can be expressed as a number of bits, which indicates the max message size that might be inserted into an image. If we assumed that the colored image contains XY pixels, then every sub-band of its wavelet transform will contain 3*(XY/4) coefficients. Since, the proposed algorithm can hide a byte per each DWT coefficient of the cover image. Furthermore, we can use all of the four sub-bands for embedding. This means that every coefficient can hide a whole grey-scale pixel. So, we can express the data payload as follows: Data Payload = (3XY) bytes (2) 3 XY
Payload percentage = 3 XY
* 100 100%
(3)
Notice that the given payload is expressed in bytes, i.e. for a true-color image we can embed another image of the same size and format. However, since we are embedding a gray-scale image the capacity offered by this algorithm can reach three times the original image size in terms of pixels.
Usually the invisibility of the hidden message (sometimes called the visual quality of the stegoimage) is measured in terms of the Signal-to-Noise Ratio (SNR) presented in equation (4), where p(x,y) represents a pixel, whose coordinates are (x,y) in ~ the original image, and p ( x, y) represents the same pixel in the distorted image.
SNR
2
( x, y )
x, y
p( x, y) ~p( x, y)
2
Table 1 shows the measured SNR for the images obtained from the two LSB methods as well as the proposed method using two cover images: Lena and Maraho. Each image is (512x512) in size as shown in Figure 3(a) and 3(b). In addition, we used a bomb image (400x300) as a secret image. It is shown in figure 3(c). The table also shows the maximum embedding capacity provided by each algorithm measured in bits per pixel (BpP). According to the results listed in table 1, we can see that the adaptive LSB method proposed in [14] provides an embedding capacity a little bit more than 4 bits per pixel, while our proposed method (by analogy) can embed up to 8 bits per pixel. Furthermore, the proposed method provides the best performance for both images with a very large difference. Method
Capacity
Lena
Maraho
Fixed 4LSB
4 BpP
18.65
26.929
Adaptive LSB
4.03 BpP
24.45
22.667
Proposed method
8 BpP
73.58
82.696
Table1: Experimental results of embedding using different methods
8. EXPERIMENTAL RESULTS
p
each pixel of the cover image and the embedding capacity is 50% of the cover-image size. On the other hand, the variable-sized embedding method the number of embedded LSBs depends on the local characteristics of the pixels to provide a higher capacity while keeping a better invisibility [14]. Unfortunately, those methods were developed for gray-scale images. So, we had to apply our method also on gray-scale images, although the proposed algorithm is developed mainly for colored images.
(4)
x, y
To evaluate the performance of the proposed algorithm, several simulations have been performed in order to compare its performance with other existing schemes. Two types of LSB insertion methods were used, fixed size and variable size. The former embeds the same number of bits in
9. CONCLUSIONS This paper presents a cover-screw steganographic scheme that is based on the idea of merging wavelet decomposition of both the cover image and the secret message are into a single fused result using an embedding strength factor (α). The presented algorithm applies an adjustment operation on the normalized cover pixels to guarantee that the message will be recovered with acceptable accuracy even with a small value of α. Experimental results showed that applying the idea of the wavelet-based fusion provides a better performance than any existing method. In addition, the proposed algorithm can embed a gray-scale image that is three times in size the original colored image in terms of pixels.
7. REFERENCES [1] Richard Popa, An Analysis of Steganographic Techniques, a working report for Faculty of Automatics and Computers- Department of Computer Science and Software Engineering at University of Timisoara, 1998. [2] Neil F. Johnson and Sushil Jajodia, Steganography: Seeing the Unseen, IEEE Computer, February 1998, pp 26-34. [3] Matt L. Miller Ingemar J. Cox, Jean-Paul M.G. Linnartz, A review of watermarking principles and practices, Published in “Digital Signal Processing in Multimedia Systems, Ed. K. K, Parhi and T. Nishitani, Marcell Dekker Inc., 461-485, (1999). [4] Birgit Pfitzmann, Information Hiding Terminology, First Workshop of Information Hiding Proceedings, Cambridge, U.K. May 30 June 1, 1996. Lecture Notes in Computer Science, Vol.1174, pp 347-350. Springer-Verlag (1996). [5] G.J. Simmons, The Prisoner's Problem and the Subliminal Channel, In: Proceedings of CRYPTO '83. 1984. [6] Walter Bender, Daniel Gruhl, Norishige Morimoto, Anthony Lu, Techniques for Data Hiding , IBM Systems Journal, Vol. 35, No. 3&4. Vol. 35 No. 3, 1996. [7] Eugene T. Lin , Edward J. Delp , A Review of Data Hiding in Digital Images, In the Proceedings of the Image processing, Image Quality, and Image Capture Conference (PICS) , 1999. [8] Iddo Drori Dani Lischinski, Wavelet Warping, School of Computer Science and Engineering, The Hebrew University of Jerusalem, Israel. [9] Maarten Jansen, Geert Uytterhoeven, Adhemar Bultheel, Image de-noising by integer wavelet transforms and generalized cross validation, Report TW 264, Katholieke Universiteit Leuven, Department of Computer Science, August 1997. [10] Deepa Kundur and Dimitrios Hatzinakos, A robust digital image watermarking method using wavelet-based fusion, In International Conference on Image Processing (ICIP), USA, October 1997. [11] Deepa Kundur and Dimitrios Hatzinakos, Digital watermarking using multiresolution wavelet decomposition, International Conference on Acoustic, Speech and Signal Processing (ICASP), volume 5, pages 2969--2972, USA, May 1998. [12] M. Barni, F. Bartolini, V. Cappellini, A. Lippi, A. Piva, A DWT-based technique for spatiofrequency masking of digital signatures, Proceedings of the SPIE/IS&T International 20 Conference on Security and Watermarking of Multimedia Contents, vol. 3657, San Jose, CA, January 25 - 27, 1999. [13] Moni Naor, Omer Reingold, On the construction of Pseudo Random Permutations : Luby- Rancoff Revisited, Jornal of Cryptography, vol. 12, no. 1, 1999, pp. 29-66.
[14] Yeuan-Kuen Lee and Ling-Hwei Chen, A High Capacity Image Steganographic Model, accepted by IEEE Proceedings Vision, Image and Signal Processing, 2000.
(a) Lena image (512x512)
(b) Maraho image (512x512)
(c) bomb image (400x300) Figure 3: The original gray-scale images used in experiments