A secure image steganography based on JND model

ABSTRACT


INTRODUCTION
In the last decade, with the advance of network technology, a large amount of valuable information has been transferred over the Internet. Nevertheless, the confidentiality of these data can be broken without any protection in transmission process in a public network. Hence, cryptography is employed to protect these sensitive information and steganography can be used as an extra layer of security. In general, steganography techniques conceal confidential data into multimedia contents such as digital audio, video and image. Image is the most popular cover object employed to hide valuable data. There are two reasons for this. First, the digital image is very popular on the Internet. Second, we can alter redundant information of digital image to conceal secret message bits without causing any suspicions to human vision. This come from the fact that Human Vision System (HVS) is less sensitive to small changes on an image. In image steganography, a possibility to prevent a hidden message from being discovered by statistical steganalysis is the most important requirement [1]. Consequently, there are many image steganography methods (such as [2][3][4]) are developed to transfer valuable data in a secure way. Block based data hiding [5][6][7][8][9][10][11] and channel selection rule [1,[12][13][14] are two effective image steganography approaches for minimizing distortions to the cover images.
In block-based data hiding methods, such as matrix embedding (ME), an approach based Hamming code was developed by Crandall to minimize embedding changes [8]. It hides n secret bits to a cover block of 2 − 1 bits with only one bit in the block is altered. This method is then employed by Westfield in F5 algorithm [15]. However, only one embedding solution is introduced in ME. As a result, it cannot  Nguyen) 2089 combine with channel selection rule techniques to further enhance the visual quality of the resulting images and security of the hidden messages. To obtain more embedding change solutions that can be selected to perform, Kim et al. [7] presented Modified Matrix Encoding (MME). Via this method, the introduced degradation is minimized by choosing an embedding solution that may cause less distortion to cover data. In general, MME schemes are named as MME2, MME3, etc., according to the maximum of modifications (t) which are required to hide k message bits to n cover bits [16]. For the channel selection rule approaches, these methods attempt to identify an image component's (a pixel in spatial domain or a transformed coefficient) that embedding secret bits into them cause less degradation. In channel selection rule approach for JPEG images introduced by Huang in [12], Quantization Step (QS) and magnitude of Discrete Cosine Transform (MQ), are concurrently considered with Perturbation Error (PE) to estimate an embedding distortion. The measured embedding error is utilized to determine embedding solutions to be performed in the data hiding process. Thus, the channel selection rule approaches can be combined with block-based data hiding methods (such as Hamming code based steganography techniques) [7] to improve the security of hidden data and obtain high visual quality stego-images.
For spatial images, several approaches have been presented [1,13,14,17,18] to enhance the visual quality of the stego-images and the security of a mysterious message. In two proposed methods [1,17], a dissimilarity of considered pixel and its neighbors in value is estimated. After that, a characteristic (textured or smooth) of an image region that the considered pixel belongs to is identified based on the estimated value. If the pixel lies on complex image region, secret message bits are concealed in it. Otherwise, other pixels are used.
Luo et al. [13] proposed a data hiding scheme, in which the used image regions are identified based on the size of the secret message and the difference between two adjacent pixels. At low payloads, only pixels in complex regions are selected to carry message bits while maintaining the other flat regions as they are. When more message bits need to be embedded, more textured areas can be selected adaptively for data hiding by adjusting used parameters. Unfortunately, for the used image with large flat regions and the large payload is embedded, the less noisy regions are exploited to conceal the given secret message. This leads to the reduction of possibility to against visual and statistical attack methods.
To solve the above-mentioned facts, in [18], Nguyen et al. introduced a novel scheme in which a considered pixel's value and a difference between it and its neighbors are exploited to select a suitable pixel. Via this way, a visual quality of stego-images and the security of hidden message are enhanced. Unfortunately, image texture characteristic illustrates the large difference between pixels which does not include contrast and luminance. Luminance is illustrated as brightness; how bright an object appears to the human eye. While contrast is the dismissibility in visual characteristics that makes an object can be distinguished from other objects and the background. Two factors are used in Watson's visual model [19] which is applied to create a secure steganography method (proposed in [20]).
In this paper, a novel steganography scheme is proposed. In this approach the Just Noticeable Difference (JND) value is combined with a gradient (instead of using magnitude of a pixel as in [21]) to determine a pixel which need to be changed in data hiding process. This is due to the fact that hiding secret message bits in a pixel which has a corresponding JND value (measured by an approach in [22]) is higher than an altered value of pixel will cause less visible degradation. To examine the security of embedded message, regular/singular and ensemble classifier attack methods are performed. In these experiments, to further clarify the performance of the proposed approach, besides CBL [17], EALSBMR [13] is also used.

RESEARCH METHOD
In this section, a new image steganography scheme, which employs a novel channel selection rule to measure embedding distortion, is presented. In this approach, a corresponding embedding error of each solution (which is estimated by MME2) is calculated. Then, a solution which causes the smallest degradation to stego-image is selected to be performed in the data hiding process. As it can be seen in Figure 1, at sender's side, a secret message is hidden to the selected image by employing the proposed scheme. To send an image with a message embedded, a sender can use email services or upload it to public image sharing services, in which a stego image is kept as original. In addition, users can transfer these stego-images via social network services, such as Facebook. An uploaded image does not modify if user shares it through the upload file feature in the group's wall.
In this proposed approach, a JND value is calculated and then used to estimate embedding noise. The reason is that JND employs enhanced contract masking (CM) estimation with better edge masking (EM) and texture masking (TM) calculation [22]. Moreover, if the value of a pixel is changed with a quantity which is smaller than its corresponding JND value, the introduced distortion is invisible to HVS. To further enhance a security of hidden message, a new criterion average gradient (AG) of a pixel is utilized. It is integrated with JND value (which is calculated by a method in [22]) to measure embedding distortion. This is an improvement of new approach in comparison with proposed method in [21]. The reason is that pixel associated with large gradient value may belong to textured image regions, and those with small values may be located on flat regions. While a large value of pixel cannot indicate the complexity of the region it belongs to.

Figure 1. A JND model based steganography scheme
An embedding distortion is estimated as follows: where Ji,j is a JND value and AGi,j is an average gradient of pixel (i, j). Note that, in case the gradient value of considered pixel ( , ) equals to zero, it will be set to 10 -3 to avoid dividing by zero. Two non-negative parameters α1 and α2 are employed to examine the effect of provided factors JND and AG (which is calculated by Equation (3) in [1]) to image visual quality and security of hidden message.
To further increase the security of hidden message, the schemes of MME2 (in which two modifications are required) is utilized as an embedding method in the proposed scheme (named as JND_AGMME2). This is because MME2 provides more than one possible bit-change choices to be performed. In this proposed approach, embedding distortion is calculated (by Equation (1)) in each solution (introduced by MME2) and the one associated with the smallest error is performed to carry given message bits. To summarize, MME2 exhibits "how" to embed and the proposed channel selection rule shows "where" to hide secret message bits. Consequently, the application of the proposed approach is presented as follows.
Given a message block of k bit M = (m1, m2,…,mk) to hide in a block of cover pixels P = (p1, p2,…,pn) with n = 2 k -1 pixels. A value of k is estimated according to the size of given message and cover image. This strategy enables us to split message bits evenly spread out to stego-image. As a result, for a small number of message bits, there are more cover pixels which will be used in block P. In contrast, when an embedding rate increased, the number of pixels in the block P is reduced. Therefore, there are more employed blocks to guarantee that all given message bits are embedded.
A message block M is concealed into the block of pixels P by performing three following steps: with BL (a block contains LSBs of pixels in P) and [.] T is transpose operator. After that the pairs (, ) that satisfy      are listed. As mentioned above, there are (n -1)/2 pairs of pixels can be enumerated.
Step 2. For each pair (, ) in the enumerated list, a total corresponding embedding error is estimated by Equation (1). Assume that Eρ is the noise caused by modifying LSB of a pixel at position ρ, then we denote E(βmin, γmin) is the smallest measured embedding distortion of the pairs (of pixels) in the enumerated list.
Step 3. If Eρ < E(βmin, γmin) then pixel ρ is altered, otherwise the pair of pixels (min, min) are modified to carry M. The selected pixel is changed by the following equation (which is derived from [18]): where i is the position of a pixel in P is modified to conceal message bits. To improve the security of secret message against statistical steganalysis methods (such as Regular/Singular -RS [20]), in (3), a Matlab's function rand is used to add or subtract value of the selected pixels by 1 randomly. At the receiver side, a hidden message is extracted by performing = * ′ where BLS is a block of LSBs of stego pixels.

EXPERIMENTAL RESULTS AND PERFORMANCE ANALYSIS
This section describes the experimental results and compares the algorithm performance of the proposed approach with other previous approaches. In the experiments, a public image database, Break Our Watermarking System (BOWS) is employed as test image database. This image library contains 10,000 natural gray-scale images, each of whose sizes are all 512 x 512 pixels with different characteristics. To use in the experiments, the PGM images in BOWS were converted to BMP image file format via imwrite function of Matlab. In the following experiments, the message with various embedding payloads ranging from 0.05 to 0.40 bpp with a step of 0.05 bpp is concealed into cover images by the proposed approach JND_AGMME2 and three existing methods (AG_MME, the techniques presented in [1], EALSBMR [13] and CBL [17]). The employed messages are generated randomly to make the ratio of bit 1 and 0 is balanced. This plays an important role to avoid creating uniform regions in stego-images. It is because in the proposed approach, the cover pixels are determined also based on the value of message bits.

Embedding capacity and visual quality discussion
For available embedding capacity, the proposed scheme exploits MME2 as an embedding method. Hence, it offers the same embedding capacity as the previous based MME2 methods. In this perceptual quality experiment, the images from BOWS are divided into five segments. Then generated message with payload in the range of [0.05 -0.40] bpp is embedded into these divided segments. Later, the images with message embedded are analyzed for Peak signal-to-noise ratio (PSNR) to examine visual quality. Generally, the higher PSNR value, the lesser is the degradation in stego-images [24]. Average PSNR values, which were measured from cover images and their corresponding stego-images produced by the proposed approach (JND_AGMME2) with different embedding rates of secret message, were presented in Table 1. From Table 1, it is observed that the obtained average PSNR values of stego-images when the two parameters 1, 2 > 0 are higher than those of stego-images produced by the proposed approach with other values of 1 and 2 for most of the embedding capacities. In these cases, both criteria JND and AG are utilized to estimate embedding noise (by (4)). In the possible embedding solutions (yielded by MME2), the one associating with the smallest distortion (embedding noise) is altered in the embedding process. As demonstrated results in Table 2, the proposed scheme offers better stego-image quality than those of the three previous methods (AG_MME2, EALSBMR, and CBL). This enhancement is obtained by integrating JND with AG of the considered pixel to estimate the embedding distortion caused by the data hiding process. For example, at small embedding rates (from 0.05 to 0.20 bpp), the visual quality of stegoimages produced by the proposed approach extremely outperforms the other methods (CBL and EALSBMR). The reason is that at low embedding rate, according to the principle of the proposed approach there are more 2092 pixels utilized to embed the same as number of secret message bits in comparison with the cases which high embedding rates are used. This strategy supports to obtain more modification solutions can be performed in data hiding. As a result, the high perceptual quality is achieved.
PSNR metric only takes into account the difference between an original and modified pixels not degradation in structure of an image. Therefore, to examine the degradations in structural information introduced by data hiding to stego-images, a structural similarity index (SSIM) [25], an effective method in measuring the similarity between two images (original and modified), is utilized. In SSIM, three factors loss of correlation, luminance distortion, and contrast distortion, are employed. Therefore, it is suitable to measure structural degradations of stego-images produced by the proposed approach. The higher SSIM value is, the small distortion in the structural information of stego-image is.  Table 3 reveal that the SSIM values of stego-images produced by the proposed scheme JND_AGMME2 are higher than those of the previous method AG_MME2 for high embedding rates (from 0.35 to 0.40 bpp) when both of the two parameters 1, 2 > 0. This performing can be archived because JND_AGMME2 compares embedding distortion caused by one-modification solutions with that of two modifications required solutions to select an optimal solution (a solution introduced the smallest noise). Moreover, in the proposed scheme, employing JND in embedding distortion measurement is an effective way to maintance the structure of stego-images. From Table 3, for the embedding payload from 0.05 to 0.20 bpp, the stego-images created by the proposed method illustrates a higher degradation in structural information than those of CBL. The reason for this is that, in CBL, to reduce the number of required embedding changes, a preprocess was performed. It sets LSBs of all image pixels to zero. Hence, if a secret bit is zero, no modification is applied. When the payloads were set to the range of [0.25 -0.40] bpp, the number of required changes has increased to hide a secret message. Therefore, the stego-images of CBL cannot maintain a low distortion in terms of structure. Hence, Table 3 shows that SSIM values of stego-images generated by CBL are smaller than those values of stego-images produced by JND_AGMME2 for all payloads. In comparison with EALSBMR, JND_AGMME2 maintenances a better quality in structural of stego-images under various of used embedding rates. This result is because EALSBMR uses the difference of the considered pixel and its neighbor to determine whether the considered pixel located on complex regions or not. If an absolute difference is higher than a predefined threshold T, then the two considering consecutive pixels are used to conceal secret message bits. Unfortunately, after embedding this approach need to readjust the value of stego pixels to guarantee the difference between the two pixels is higher than threshold T. As a result, the change in structural of the stego images created by EALSBMR is higher than that of the proposed approach.

Security analysis
a. Regular/singular attack As a rule, employing the LSB of pixels to conceal secret message bits causes the statistical changes of images. However, this distortion is invisible to HVS and LSB Enhancement is ineffective in discovering a hidden message if the given message is embedded into edge pixels. Hence, in this subsection, to reliably and accurately determine the existence of a mysterious message hidden by the proposed approach, Regular/Singular steganalysis introduced by Fridrich et al. is employed [23].
In this test, a discrimination function and a flipping operation are used to identify three groups of pixels Regular (R), Singular (S) and Unchanged (U). In general, the identification of these groups express on how the flipping changes the value of discrimination function [26]. To evaluate the size of secret message, the relative number of two groups is measured for the cover image and stego-image. The obtained results are represented in RS diagram with four-dimensional RS features (RM, R-M, SM, S-M) and M is flipping mask. As a rule, if a suspected stego image contains a secret message, the difference (in value) between features in the pair (RM, R-M) and (SM, S-M) becomes larger when the embedding rate is increased [23].
To examine the security against RS steganalysis method of stego-images by the JND_AGMME2 and AG_MME2, the value of two groups in pairs (RM versus R-M, SM versus S-M) were plotted in Figure 2.
As it can be seen in Figure 2(a), it is obviously the higher data embedded, the larger dissimilarity of these groups is. Contrary to AG_MME2, the relation of two groups in pairs in RS diagram (Figure 2(a)) is steady unchanged even a large amount of message is hidden into stego-images by JND_AGMME2. This means that JND_AGMME2 is robust to RS steganalysis. It can be observed that the randomly change of pixels in value to carry message bits supports to remain the difference between these two groups in pairs as same as in cover images. b. Security against ensemble classifier In this subsection, we conduct an experiment to clarify the security against Ensemble Classifier (an universal steganalysis based on feature set) [27] of the proposed approach. In this experiment, feature set (including 1183 features) was extracted from each stego-image in divided segments by content-selective residuals (CSR) [28] extractor, to be used in Ensemble classification. Out-of-bag (OOB) value is the testing error introduced by Ensemble Classifier. Typically, the large OOB value indicates that the steganography techniques can achieve a high security against Ensemble Classifier. Based on demonstrated results in Figure 3, the security of JND_AGMME2 is significantly superior to three existing approaches (AG_MME2, EALSBMR, and CBL) with payload is in the range of [0.05 -0.40] bpp and various values of the two used parameters (1, 2). The reason is that in JND_AGMME2 two factors were utilized in data hiding error measurement. For the first criterion JND, the modifications with a changed value (of pixel) which is smaller than the estimated JND value will cause less statistical noise than that of others. The high value of the second criterion AG illustrates that the considered pixel locates in a complex region of image. That is obviously employing JND and AG supports to reduce the possibility to be detected by Ensemble Classifier (illustrated as high OOB errors). From the Table 4, it can be seen that with various values of the two used parameters, the stego-images are produced with different security levels (illustrated by OOB errors). The security against Ensemble Classifier is higher when the two parameters are non-zero. In other words, the possibility to detect the existence of hidden message embedded by the proposed approach with the combination of gradient and JND by Ensemble Classifier steganalyzer is reduced.

CONCLUSION
This paper proposed a secure channel selection rule-based steganography approach in spatial domain. Two factors JND and AG are combined to estimate embedding degradation since JND reveals the minimum visible threshold of HVS. While AG supports to identify the texture characteristic of image region which the considered pixel belongs to. Therefore, the security of stego-images, produced by the new scheme, against statistical steganalysis methods is enhanced. In the experiments conducted, although CSR (the feature extractor with 1183 features) is employed instead for SPAM (including 686 features) in Ensemble Classifier, the security of the proposed approach still overcomes the previous approaches. In addition, RS analysis fails to detect the existence of mystery message embedded into stego-images by the proposed approach. The proposed approach also offers high perceptual quality images proved by obtained experimental results.