Abstract: Steganography is the technique of hiding information inside other information. It provides data security. Image steganography can be implemented in both, the spatial and transform domain. In this study, transform domain steganography has been adopted. A cover image is transformed to the frequency domain using Integer Wavelet Transform (IWT) and a secret image is embedded in it using Least Significant Bit (LSB) substitution. The secret data is embedded only in high frequency sub-bands of the frequency domain transform of the cover image. Both adaptive and non-adaptive embedding techniques are employed and the results are compared. Also, random traversing for embedding the secret data is implemented for higher security. Haar and (5/3) IWT based algorithms are used. The Peak Signal to Noise Ratio (PSNR) values and payload capacity are obtained and compared for above algorithms.
INTRODUCTION
With the susceptibility of electronic information to attack and malicious distortion, a need for security of electronic data has become imperative. Steganography conceals secret information within some cover media. This aids in hiding the very existence of sensitive information from malicious users. Steganography can be applied to various fields such as text, image, audio and video. Text steganography is the oldest form of information hiding. Essentially, a secret message was hidden in an otherwise harmless message. For example, every nth letter of a sentence or paragraph spelled out a message. However, text steganography greatly limits the type and amount of information that can be concealed. Image steganography hides information within an image called the cover image. The hidden information can be another image, text or any other type of data (Amirtharajan and Rayappan, 2013; Amirtharajan et al., 2013a-j; Cheddad et al., 2010).
Image steganography can be carried out either in the spatial domain (image domain) (Amirtharajan and Rayappan, 2013; Amirtharajan et al., 2013a-j; Chan and Cheng, 2004; Cheddad et al., 2010; Dey et al., 2011; Janakiraman et al., 2013, 2014a, b; Nithyanandam et al., 2011) or in the transform (frequency) domain (Le Gall and Tabatabai, 1988; El-Safy et al., 2009; Peng et al., 2012; Nag et al., 2010, 2011; Thanikaiselvan et al., 2011, 2012a, b, c, 2013a, b; Wong et al., 2007). Numerous systems exist for both methods for communication information security (Praveenkumar et al., 2014a-l, 2012a, b, 2013a, b; Rajagopalan et al., 2014a-d; Ramalingam et al., 2014a, b). Transform domain steganography provides higher security and better hiding capabilities with less degradation to the cover image. Spatial domain steganography can usually be detected by statistical means if a large number of pixels of the image have been modified to contain secret information. Dey et al. (2011) and Nag et al. (2010) and (2011) have used a transform based scheme. The former has observed PSNR values below 30 dB which makes the encoding vulnerable to steganalysis attacks. Nag et al. (2010, 2011) and Nithyanandam et al. (2011) have employed Huffman coding procedure for added security.
A common and effective method for information hiding proposed by Chan and Cheng (2004) is simple and easy to use yet highly efficient. The LSB substitution has been adopted in this study too, following Chan and Cheng (2004). Thanikaiselvan et al. (2012b) proposed a random traversing method which echoed the movements of a knight on a chess board without effecting image quality and enhancing security. Adaptive steganography has been explored by (El-Safy et al., 2009; Peng et al., 2012). El Safy et als method is effective while being low in complexity. This study uses modified basic adaptive scheme to implement adaptive steganography. Transform domain steganography (Ramalingam et al., 2014a, b; Thanikaiselvan et al., 2011, 2012b,c, 2013a, b) provides high security. The DCT (Discrete Cosine Transform) based steganography is quite common (Fazli et al., 2010; Kumar et al., 2010; Sarita and Choudhary, 2012).
In this study, transform domain steganography techniques are proposed and their efficiency and suitability is compared for use in steganography. The transformations that are compared are Haar integer wavelet transform and (5/3) integer wavelet transform. Both adaptive and non-adaptive techniques to embed the secret information are also compared. Additionally, random traversing and block-coding have also been adopted. The embedding is done by LSB substitution. Block-coding helps to increase security.
MATERIALS AND METHODS
(5/3) Integer wavelet transform: Wavelets are basis functions used to represent signals. Integer Wavelet Transforms (IWT) are the wavelet transforms that map integers to integers. Every sub-band or wavelet transformation is connected with filters of finite length which can be obtained as integer wavelet succeeded by lifting steps. The integer wavelet divides the signal into even and odd samples. A wavelet transform that maps integers to integers can be obtained by combining the lifting steps and rounding off. Didier Le Gall and Tabatabai (1988) developed a new and efficient sub-band coding of digital images. Out of the two solutions provided for the design of symmetric short tap filters, the second one produces visually pleasant and smooth outputs. This filter has unequal lengths for the high pass and low pass coefficients 5 and 3, respectively. Thus, the name (5/3) filter is obtained.
Let d(n) contain the odd samples and s(n) contain the even samples. The odd samples are replaced by Eq. 1 (prediction step) and then the even samples are replaced by Eq. 2 (updating step):
(1) |
(2) |
The even samples s(n) give the high frequency wavelet coefficients and odd samples d(n) give the low frequency wavelet coefficients.
Fig. 1: | Transform domain sub-bands |
The wavelet transform creates 4 sub-bands as shown in the Fig. 1. Secret information is embedded in the HH (High High), HL (High Low) and LH (Low High) bands. The low frequency LL (Low Low) bands contain the approximations.
The inverse of this transformation is reversible. It is easily implemented by inverting the Eq. 1 and 2 by making the d(n) and s(n) on the right hand side of the equations and following the above steps in reverse, for example, instead of splitting there will be merging.
This process was adapted for 2 dimensional samples by following the usual procedure, that is, the above equations were first applied to the image matrix row wise, treating them as 1-D samples and then the result was subjected to the equations column wise. This gave us the final transformed matrix with 4 sub-bands.
Haar transform: The Haar wavelet is a sequence of rescaled "square-shaped" functions which together form a wavelet family or basis.
The image matrix is separated into even and odd columns basis and F-high (High frequency components) and F-low (low frequency components) are found using the following equation:
(3) |
(4) |
L-even, L-odd, H-even, H-odd matrix is developed:
(5) |
(6) |
(7) |
(8) |
First level decomposition of the image can be obtained through the following equations:
(9) |
(10) |
(11) |
(12) |
where, HH1 is the diagonal co-efficients, HL1 is the horizontal co-efficients, LH1 is the vertical co-efficients and LL1 is the approximation coefficients.
Adaptive embedding: In this study, the information is embedded using both methods adaptive and non-adaptive and their results are compared. Non adaptive embedding refers to the process where a fixed number of message bits (either 1, 2, 3 or 4) are embedded in each coefficient. In adaptive embedding, on the other hand, each coefficient is analyzed and depending on its value the number of bits that can be substituted is determined. The equation which determines the number of bits as suggested by El-Safy et al. (2009), is given below:
(13) |
where, L is the number of bits to be embedded, k is the minimum number of bits to be embedded and Co is the transform domain coefficient.
In this study, the above equation is slightly modified for comparison. In Eq. 13, assuming k = 1 and L = 4 if Co is greater than equal 24 and so on. The modification proposed is that instead of 24 following equation uses 26:
(14) |
This modification increases the PSNR value and improves the image quality. However, the payload capacity is significantly affected. Proposed work entitled the adaptive scheme implementing Eq. 13 as adap1 and the one implementing Eq. 14 as adap3. This is because, taking the example of the last case, in Eq. 13 one LSB bit is replaced if the coefficient is of two bits or less. This leaves, at most, one MSB (Most Significant Bit) untouched, thus the name adap1. In Eq. 14, one LSB is replaced if the coefficient value is of four bits or less, thus leaving a maximum of three MSB untouched and hence adap3.
Random traversing: A random traversing algorithm has been adopted to enhance security of the hidden information. Randomness has been employed in 2 stages. In the first stage, the blocks in which the image was divided are chosen randomly. For example, consider an image with dimensions 512x512. Assume that, it is divided into blocks of size 128x128. This implies that the image is divided into 16 blocks each of size 128x128. The first stage of random traversing randomizes the sequence of the blocks before embedding, so that the hidden information is spread all over the final image in a random fashion.
The second stage involves randomization of the coefficients within a particular block. A block consists of the 4 transform domain sub-bands; HH, HL, LH and LL. Embedding is done in 3 of those sub-bands excluding LL. Hence, the second stage random traversing randomizes the sequence of coefficients that are selected for embedding within a particular block. This random pattern, however, remains constant for every block. Both random patterns are stored separately and these serve as the keys with which the information can be extracted. Without these keys extraction of information will result in meaningless or incorrect data. Consequently the receiver needs to possess the keys beforehand in order to unlock or decrypt the information.
PROPOSED ALGORITHM
Embedding process: The embedding process refers to the hiding of the secret information in the cover image and the steps that precede it for the preparation of the cover image.
Embedding has been done by LSB substitution using the equation given below. This formula was suggested by Chan and Cheng (2004). It is simple yet efficient:
(15) |
where, C is the transform domain coefficient, m is the segment of the secret information (in base 10) to be embedded in this coefficient and k denotes the number of bits to be replaced.
The steps are enumerated below:
• | Step 1: Read the cover image |
• | Step 2: Split it into blocks. The block sizes can be any of 8x8, 16x16, 32x32, 64x64, 128x128, 256x256 or 512x512 |
• | Step 3: Transform each block using IWT. (Haar or (5/3)) |
• | Step 4: Prepare the keys for random traversing. The keys are the random patterns according to which the blocks are traversed and also the random order in which the blocks are selected |
• | Step 5: For adaptive embedding, run the analysis to determine number of bits for each coefficient |
• | Step 6: Read secret message or information in binary |
• | Step 7: Traverse the blocks according to the keys and insert the information using Eq. 15; adaptively or non-adaptively as the case may be using Eq. 13-14, respectively |
• | Step 8: Once all the information has been inserted by LSB substitution, perform inverse IWT on each block to transform the image back to spatial domain |
• | Step 9: The image now carries the secret information hidden safely inside and can now be used for transmission or other purposes. This image is called the stego image |
Extraction process: The process to extract the data is almost same as that for embedding. Extraction is implemented by the following Eq. 16:
(16) |
where, the variables denote the same values as in Eq. 15.
The steps followed in the extraction process are:
• | Step 1: Read the stego image |
• | Step 2: Split it into blocks. The block sizes can be any of 8x8, 16x16, 32x32, 64x64, 128x128, 256x256 or 512x512 |
• | Step 3: Transform each block using IWT (Haar or (5/3)) |
• | Step 4: It is assumed that the keys used to determine the traversing pattern are available with the receiver. Traverse the blocks using the keys |
• | Step 5: Apply Eq. 16 on each coefficient. k is fixed if it is non-adaptive and for adaptive it is obtained through Eq. 13-14. This gives us the hidden message |
RESULTS AND DISCUSSION
The main feature of steganography is that the stego image should hold up to visual scrutiny. However, mathematical methods also exist to compare the performance or quality of the embedding algorithm. The PSNR and MSE (Mean Square Error) are widely used in steganographic algorithms for this purpose. The PSNR stands for peak signal to noise ratio. It is the ratio of the square of the maximum value that the signal is allowed to have to the noise MSE. The MSE is a cumulative squared error between the original image and stego image:
(17) |
(18) |
where, I denotes the original image, K denotes the stego image and n and m are the image dimensions.
The performance and capacity of (5/3) IWT and Haar transform are compared in adaptive and non-adaptive schemes with varying block sizes. The PSNR values and embedding capacities have been recorded. They have been organized into 2 main categories, those obtained by (5/3) IWT and those obtained by Haar transform. Under these two headings, they have been further divided into non-adaptive and adaptive embedding. Within each of these types, classifications exist based on the number of bits embedded; 1 bit, 2 bit etc., for non-adaptive and adap1 and adap3 for adaptive. The results obtained are given below with Lena image used as a sample and shown in Fig. 2. The image is compared before and after embedding the secret information.
The PSNR values of all different types of steganography explored in this project are recorded below. All images have dimensions 512x512. Globe is the only RGB color image, all others are grayscale. It is clear from the tables that block sizes have negligible effect on PSNR values. Also, the variation of PSNR value between different images under any one particular type of steganography is very little. Table 1 and 2 record the PSNR values of non-adaptive embedding and Table 3-6 record the PSNR values as well embedding capacity of adaptive embedding.
For easier comparison of the PSNR values and number of bits embedded, figure were plotted with the values from the tables above for the Lena image. From the approximately straight lines of all configurations, it is clear that block sizes have very little influence on PSNR values. Analyzing Fig. 3, for 1 bit LSB embedding for non-adaptive (5/3) IWT system gives the best PSNR and adap1 (5/3) IWT gives the lowest. The 1 bit non-adaptive embedding and adap3 with Haar transform take the second and third places respectively. They are followed by 2 bit with (5/3) IWT and 2 bit with Haar IWT. Below the 40dB threshold, in this order, are 3 bit with (5/3) IWT, adap1 with Haar, 3 bit with Haar, adap3 (5/3) with IWT and adap1 with (5/3) IWT. The 4 bit LSB substitution has been excluded from the figure as the PSNR values are below 35 and hence, the method loses significance as a strong security measure.
Fig. 2(a-g): | (a) Original Lena image, (b) Haar transform
with non-adaptive embedding (1 bit), (c) (5/3) IWT with non-adaptive embedding
(1 bit), (d) Haar transform adaptive with ‘adap1’, (e) (5/3)
adaptive with ‘adap1’, (f) Haar transform adaptive with ‘adap3’
and (g) (5/3) adaptive with‘adap3’ |
Table 1: | PSNR (dB) values of non-adaptive embedding with (5/3) IWT |
Table 2: | PSNR (dB) values of non-adaptive embedding with Haar transform |
Table 3: | PSNR (dB) values of adaptive embedding (adap1) with (5/3) IWT |
Table 4: | PSNR (dB) values of adaptive embedding (adap1) with Haar transform |
Table 5: | PSNR (dB) values of adaptive embedding (adap3) with (5/3) IWT |
On analysis of Fig. 4, it is quite obvious that in non-adaptive embedding, the embedding capacity does not vary based on block size or transform technique.
Table 6: | PSNR (dB) values of adaptive embedding (adap3) with haar transform |
Fig. 3: | Comparison of PSNR values (with sample image lena) |
Fig. 4: | Comparison of payload capacity |
Payload capacity also remains constant in the case of adaptive embedding with Haar transform. However, for adaptive embedding with (5/3) IWT it varies with block size. This difference between the 2 transform techniques is due to the reason that Haar transform calculations involve the current value whereas (5/3) IWT calculations require previous and next values too. Therefore, with varying block sizes these previous and next values change, thus giving different coefficients associated with each block size. However, for block sizes greater than 64, the capacity becomes almost constant. Of course, adap1 has higher capacity than adap3 by virtue of their natures. Also, it is quite clear that (5/3) IWT provides higher embedding capacity than Haar transform for adaptive embedding.
Table 7: | Comparative analysis |
Steganalysis: Steganalysis is the blind extraction of secret data in stego images. This proposed method is highly secured and robust against blind steganalysis or attacks. This method has been done in transform domain method. Therefore, secret data cannot be extracted from the spatial domain. There are three keys used for embedding (Key 1, 2 and 3) these keys impart high randomness for embedding. Following number of iterations are required to extract the hidden information from the stego image generated by the proposed method with block size of nxn. Complexity of the extraction based on the block size only.
Generalized Total number of Iterations (GTI):
(19) |
For example 16x16 (n = 16) block is considered and substituted for the above equation, then the total number of Iterations (TI):
TI = (1024!*3!*64!*4*64*3)*1024
Where:
1024! | = | Possible order of traversal among 1024 number of 16x16 sized blocks |
3! | = | Gives the possible order of the subbands into which the data is embedded |
64! | = | Represents different random traversing on a subband |
4 | = | Represents the maximum bit length. |
64 | = | Represents the total number of co-efficients in each subband |
3 | = | Represents the total number of subbands |
1024 | = | Represents the total number of 16×16 blocks |
The proposed methodology is compared with the existing techniques and the TI values are tabulated in Table 7. Thus the large difference observed in the total number of iterations required for the proposed technique and the existing technique clearly elucidate the enhanced data security against blind attacks.
CONCLUSION
In this study, secret information embedded inside an image using 2 different transform techniques, namely Haar transform and (5/3) IWT with adaptive and non-adaptive technique. The results of the combinations of all 4 configurations were observed, recorded and compared. If PSNR value is important to the user then (5/3) IWT is the better choice for non-adaptive embedding and for adaptive, it is haar transform. If payload capacity is more important than PSNR values, then the reverse is true for adaptive embedding. The advantage of (5/3) transform over Haar transform is its relatively simple equations which reduce computation time and complexity. The only disadvantage that (5/3) IWT faces is its dependence on next and previous values which varies the transform domain output when the block sizes are varied. Haar transform on the other hand, gives uniform output for all block sizes. For future study, other transform methods, like (9/7) IWT can be compared with Haar transform and (5/3) IWT.