A Reversible Steganography Scheme of Secret Image Sharing Based on Cellular Automata and Least Significant Bits Construction
Secret image sharing schemes have been extensively studied by far. However, there are just a few schemes that can restore both the secret image and the cover image losslessly. These schemes have one or more defects in the following aspects: (1) high computation cost; (2) overflow issue existing when modulus operation is used to restore the cover image and the secret image; (3) part of the cover image being severely modified and the stego images having worse visual quality. In this paper, we combine the methods of least significant bits construction (LSBC) and dynamic embedding with one-dimensional cellular automata to propose a new lossless scheme which solves the above issues and can resist differential attack and support parallel computing. Experimental results also show that this scheme has the merit of big embedding capacity.
Secret sharing scheme is devoted to protecting secret information from being lost, destroyed by attackers, stolen by illegal users, and so on. It was independently proposed by Shamir  and Blakley  in 1979. The former one is based on the polynomial interpolation, and the latter one is based on the intersections of some high dimensional planes in a high dimensional space.
In the early research period of secret sharing scheme, researchers focused on designing different types of secret sharing schemes for small secret data. Later, secret image sharing, which combines cryptography and image processing techniques, becomes an active research area. Suppose that a secret image sharing scheme has -threshold, where , in which a secret image is divided into shadows distributed to participants. The secret image can only be restored by or more shadows; but no one can reveal any information about the secret image with any or fewer shadows.
Visual cryptography scheme (VCS) is an important category of secret image sharing scheme, which was introduced by Naor and Shamir  in 1995. VCS has the merit of stacking-to-see property but with the disadvantages of the large pixel expansion and low visual quality of the restored image. In VCS, any participants could photocopy their shadows on transparencies and stack them on an overhead projector to decode the secret visually through human visual system without the aid of any hardware or computation. However, no one can reveal any information about the original secret with any or fewer shadows. Based on Droste  work, many researchers have made lots of efforts to do further research on VCS from multiple aspects. Some schemes focused on reducing the pixel expansion [4–7], some on improving the visual quality of the restored image [8–11], some on sharing gray and chromatic secret images [12–14], and so on. VCS’s merit is apparent from some aspects or in some application areas. But it still has the inherent defects such as pixel expansion, poor visual quality of the restored image, and meaningless shadows.
The secret image sharing scheme with Lagrange’s interpolation and steganography can solve the above three inherent defects of VCS, which is an important category of secret image sharing scheme. Until now, two most popular steganographic methods are least significant bits replacement (LSBR) and modulus operation. The shared noise-like secret data is concealed into the cover image with meaningful content. These modified cover images are called stego images. In 2004, Lin and Tsai  proposed a polynomial-based secret image sharing scheme with steganography and authentication. This scheme is lossy because it uses LSBR method to embed secret data into the cover image. Hence, the cover image cannot be recovered losslessly. And the restored secret image by this scheme may be distorted slightly. The reason for the lossy restoration of the secret image is that such kind of schemes truncate the pixel values of the secret images into the interval . In addition, quantization-based schemes, such as [16, 17], just gain the lossy secret image due to the quantization errors.
To restore the secret image losslessly, the schemes of [18–20] used two pixels to replace any pixel whose value is greater than or equal to 250. Obviously, this will lead to pixel expansion and increase the amount of secret data which will be embedded into the cover image. In 2007, Yang et al.  utilized Galois Field GF(28) instead of using modulo 251 operation to avoid the way of dividing a pixel whose value is greater than or equal to 250 into two pixels. Hence, the secret image could still be restored losslessly without pixel expansion. Hu et al.  and Li et al.  also used Galois Field GF(28) to guarantee the secret image to be restored completely.
Lossless recovery of the secret image is an important measure in secret image sharing field. Although many schemes in this field have achieved the lossless recovery of the secret image, there are just a few schemes to restore both the secret image and the cover image losslessly, such as [22, 24–27]. The schemes of [24, 26, 27] use modulus operation to embed secret data into the cover image, and the scheme of  utilizes extra Sudoku table to conceal secret data into the cover image. However, the scheme of  uses the new LSBC method to do the embedding work. Modulus operation often leads to overflow or underflow issues. The schemes of [24, 26, 27] need to do extra work to avoid the situation that the secret image and the cover image cannot be recovered completely under some circumstances; the scheme of  converts all secret pixels into the values in -ary notational system and requires that any pixel whose value is within must be skipped in order to recover the secret image and the cover image completely, where and is a prime number. Therefore, modulus operation has such kind of limitations. Additional storage is needed by the method of using Sudoku table. Another defect in the scheme of  is that it uses the two fixed least significant bits in each pixel from the cover image to embed secret data. It does not have the flexibility like modulus operation by which one or more least significant bits could be used to embed secret data with different modulus values. The scheme of  does not require extra work to adapt to some pixels with special values and needs no additional storage for Sudoku table or others. Meanwhile, it also possesses the flexibility as modulus operation. All the schemes of [22, 24–26] use polynomial evaluation and interpolation algorithm with computation complexity as high as . However, only the scheme of  and our scheme utilize cellular automata whose computation complexity is only .
Additionally, in secret image sharing field, the visual quality of stego images is also an important measure. The schemes of [24–27] embed secret data into the cover image sequentially and sometimes partial areas of the cover image are modified severely while the other areas of it are untouched. Thus the visual quality of these generated stego images will be poor with the above traditional embedding method. The scheme of  and our scheme use the method of dynamic embedding. This method will calculate the size of the cover image and the amount of the secret data to adjust the way of LSBC and embed secret data smoothly. Then the visual quality of the stego images can be improved.
The remaining part of this paper is organized as follows. Section 2 reviews the basic definitions of one-dimensional cellular automata. The proposed scheme is introduced in Section 3, and experimental results and comparisons are given in Section 4. Section 5 concludes this paper.
2. One-Dimensional Memory Cellular Automata
One-dimensional finite boolean cellular automata (CA for short) are discrete dynamical systems constructed by a finite array of identical objects called cells . The state value of each cell is 0 or 1. The evolution of CA is that the states of all cells are updated synchronously in discrete time steps according to a local transition function. The update of each cell’s state relies on variables of this function. These variables are the previous states of the cell itself and its neighbor cells. Let denote the th cell and the state of at time step . Symmetric neighborhood of radius is defined as . Thus, the local transition function of the cellular automata with radius is represented as follows:where stands for the states of the neighbor cells of at time . Additionally, periodic boundary condition is used in this paper; namely, if , then .
The configuration of one-dimensional CA at time step is defined as the vector , while denotes the initial configuration. Furthermore, the sequence is called the evolution of the th CA, and let represent the set of all possible configurations of the CA.
The global function of the CA is a linear transformation; namely, , which generates the configuration at the next time step in the evolution of the CA; that is, . If is bijective, there exists the current CA’s inverse whose global function is , and the current CA is called reversible. In such CAs, the reverse evolution is possible .
The local transition function of linear cellular automata (LCA) with radius is defined as follows:where for each . Since has neighbor cells, there exist LCAs. Each LCA can be specified by an integer called rule number which is defined as follows:where is in the interval . Then is defined to represent the local transition function of the CA with rule number .
The CA considered above is memoryless. For example, the updated state of a cell at time step only depends on its neighbor configuration at time step . However, one can consider cellular automata for which the state of each cell at time depends on the states of its neighbor cells at time as well as . This kind of CA is called memory cellular automata (MCA). In fact, there also exists a special type of MCA called the th order linear MCA (LMCA) whose local transition function is expressed as follows:where . Since the arithmetic operation is performed in , (4) takes the way of modulo 2. initial configurations are needed to evolve the th order LMCA.
If equals in (4), then it is easy to construct a reversible LMCA. Here, the local transition function of the th order reversible LMCA is defined as follows:And its inverse CA is another th order LMCA with the following local transition function:For the proof of this kind of reversible LMCA, please refer to .
3. The Proposed Scheme
In this part, we will elaborate this new reversible steganography scheme of secret image sharing, which is based on cellular automata and LSBC. LSBC is a method to construct a new digit number by a few bits from different pixels, which will be used to join polynomial computations, evolutions of cellular automata, or other computations. Figure 1 shows an example of the way to construct a new digital number. This scheme includes three phases: (1) setup phase: the dealer determines the initial configurations, constructs the reversible LMCA, and determines the related parameters about dynamic embedding; (2) sharing and embedding phase: the dealer evolves the LMCA to generate shared bits and embeds them into the cover image to form the stego images; (3) recovering phase: shared bits are retrieved from the stego images and used as the initial configurations of the reverse LMCA. Then the secret image and the cover image are restored by evolving the reverse LMCA. Moreover, it is supposed that the bit depth of the involved cover images and secret image is 8 in this paper.
3.1. Setup Phase
In this phase, the dealer constructs the th order reversible LMCA according to the following steps.(1)Since the bit depth of each secret pixel is 8, the dealer determines that the radius of the symmetric neighborhood of the LMCA is in the interval [1, 3], and the cell sum in each configuration is 8.(2)Select and publish random numbers , where for . These numbers are produced by secure cryptographic pseudorandom number generators. For details about it, please refer to .(3)The constructed reversible LMCA is as follows:where , and is the local transition function of the LMCA with rule number , .
Additionally, the dealer will determine the values of CIPNL and CIPNH according to the size values of the cover image and the secret image, and the threshold value . For details about the calculation of CIPNL and CIPNH, please refer to . We define the total times of using CIPNL pixels and that of CIPNH pixels to construct as and , respectively. If is bigger, more pixels will be used to construct each time and every pixel of this block will suffer from less modification. Then the visual quality of stego images can improve. For details about the calculation of and , please refer to .
3.2. Sharing and Embedding Phase
Firstly, the dealer calculates the number of the secret pixel blocks. Let us define it as PBN, which has the following form:
Each block contains secret pixels. If the last block does not have pixels, it will be padded with 0. Secret data derived from a secret pixel block will be embedded into a pixel block from the cover image. Hence, the dealer needs to retrieve PBN pixel blocks from the cover image, with each block containing CIPNL or CIPNH pixels. The pixel blocks from the cover image could be defined as , . For each , LSBC method will be used to extract least significant bits from pixels of it to construct . This will be used as the initial configuration . Other configurations of the LMCA are filled by the secret pixels. Then the evolutions of the LMCA will generate shares corresponding to participants. Each share has the same size as . Finally, the dealer will embed the secret shares back to the pixel blocks of the cover image. After processing all the pixels of the secret image, stego images will be generated and the dealer will distribute one stego image to each participant. Figure 2 shows the flow chart of the sharing and embedding phase. Detailed description of this process is formulated as follows.(1)Divide the secret image into PBN blocks with each block containing pixels.(2)Repeat Step (2.1) to Step (2.4) for .(2.1)Use LSBC to retrieve least significant bits from to construct , and use as the initial configuration of the LMCA.(2.2)Take the pixels of the th secret pixel block as the initial configurations of the LMCA.(2.3)With the initial configurations , the evolutions of the ()th LMCA are calculated to generate , which correspond to secret shares .(2.4)Divide into multiple parts of bits and put them back to . In other words, all the bit positions in , where the bits to construct come from, are filled with new bits in this step. This modified block will be used to construct .(3)If some pixels in are not modified, namely, that the embedding capacity of has not been fully utilized, then assign them to stego images s directly.(4)The dealer distributes the meaningful stego image to the participant , .
In Step (2.3), for simplicity, this scheme evolves times on the basis of initial configurations. Obviously, more evolution steps can be added into the evolution of the LMCA.
3.3. Recovering Phase
Cellular automata scheme requires that at least stego images are sequential when recovering the secret image and the cover image. Figure 3 shows the flow chart of the recovering phase. Suppose that stego images are collected (); the steps to recover the secret image and the cover image are as follows.(1)Get PBN pixel blocks from every stego image with each block containing CIPNL or CIPNH pixels. Define these blocks as , .(2)Repeat Step (2.1) to Step (2.3) for .(2.1)Use LSBC method to extract shared bits from of each stego image to form a configuration of the reverse LMCA, and then initial configurations can be retrieved.(2.2)Calculate evolutions of the reverse LMCA by (6) and gain , namely, the of the original LMCA.(2.3)Divide into multiple parts of bits and put them back to of the stego image. Use to construct the th pixel block of the secret image.(3)After Step (2), the secret image can be recovered losslessly. If there are idle pixels in the stego images, then assign the idle pixels of one stego image to the cover image CI, which happens when not all the capacity of CI is used for secret data embedding. Then CI can also be restored losslessly.
4. Experimental Results and Comparisons
We will evaluate this scheme from different aspects such as the visual quality of stego images, embedding capacity, embedding ways, and other features. Comparisons will be made with the previous schemes that can restore both the cover image and the secret image losslessly. These comparisons will show that our scheme has many better features among the previous schemes. Two popular ways to evaluate the quality of stego images are peak-signal to noise rate (PSNR) and structural similarity (SSIM) . PSNR is represented as follows:The mean square error (MSE) of an image with pixels is defined aswhere is the original pixel value from the cover image and is the processed pixel value of a stego image.
SSIM evaluates the quality of stego images in terms of human visual system and structural similarity. The big values of SSIM indicate that the fidelity of stego images is approximate to the original cover images . For details about the way to get SSIM values, please refer to .
4.1. Evaluation on the Quality of Stego Images
The visual quality of stego images is related with the security of this scheme in some extent. When this quality is too low, stego images are easy to be suspected by vicious attackers.
Table 1 shows the quality values of the stego images generated from various cover images of Figure 5 and the secret image of Figure 4 with , , and . It is easy to know that . Therefore, eight pixels of are used to construct every time in sharing and embedding phase. Obviously, no more than one least significant bit of each pixel of CI will be changed. Hence, CI is modified slightly in sharing and embedding phase. The average PSNR values of stego image 1, stego image 2, and stego image 3 are 51.145, 51.143, and 51.138, respectively.
To describe the visual quality of stego images more precisely, Figure 6 contains enlarged partial areas of two cover images, and enlarged partial areas of their first stego images respectively. From visual perception, the difference between the enlarged part of one cover image and the corresponding part of its stego image is indistinguishable. Therefore, this scheme can embed a secret image into a cover image effectively and generate stego images with relatively high quality.
(a) Boat (original)
(b) A stego image from (a), PSNR = 51.135 dB
(c) Splash (original)
(d) A stego image from (c), PSNR = 51.152 dB
4.2. Analysis of the Embeddable Capacity, Embedding Ways, and Other Features
In this paper, one-dimensional memory cellular automata is used and each group of () secret pixels could be seen as being embedded into each eight-bit number . If increases (resp., decreases), more (resp., less) pixels will be embedded into each time. Hence, factor affects the embeddable secret capacity. Suppose that the number of pixels to construct is ; if becomes smaller, then will be constructed from fewer pixels and the value of each affected pixel of stego images will change more. Hence, the visual quality of stego images will become worse. Meanwhile, a smaller value of brings larger embeddable secret capacity. On the contrary, a bigger value of brings the better visual quality of stego images and smaller embeddable secret capacity. One can find that there is a tradeoff between the embeddable secret capacity and the visual quality of stego images. Therefore, factors and affect the embeddable capacity whose value is , . Let us define a secret image sharing scheme with steganography which can restore both the secret image and the cover image losslessly as a perfect reversible scheme. From Table 2, one can find that this scheme and  have the biggest value of maximum capacity among the perfect reversible schemes. The schemes of [26, 27] will have the same maximum capacity as this scheme and  only when . However, modulus operation often leads to overflow or other issues. Therefore, the schemes using LSBC can have the full maximum capacity.
To describe an embedding way, there are two factors, which are the method to conceal secret data into a cover image, namely, steganography method, and the method to spread secret data over a cover image, namely, embedding method. Table 2 shows the steganography methods used by different perfect reversible schemes. The threshold value is 4 for  and 3 for other schemes in Table 2. Modulus operation is more popular while LSBC can make a scheme have a bigger value of maximum capacity and other better features. For embedding methods, we can have two definitions which are static embedding and dynamic embedding. Static embedding is the method to modify part of a cover image severely to embed secret data. However, dynamic embedding will consider the whole capacity and try to disperse secret data over all the cover image to make the whole extent of modifications to the cover image as low as possible. Besides, if part of a stego image is modified severely, it may attract attackers’ attention. Hence, dynamic embedding can help improve the visual quality and security of stego images. Both this scheme and  use dynamic embedding. Besides, if all the schemes embed the same amount of secret data, the schemes with larger embedding capacity will generate stego images with better visual quality relatively. Therefore, these two schemes can generate stego images with better visual quality and security.
Furthermore, some other defects in the schemes using modulus operation need to be discussed here. Firstly, Wu et al.  pointed out that their scheme and the scheme of  cannot implement the (6,6)-threshold case directly. This is caused by the characteristics of modulus operation and the design of their schemes. If these two schemes want to implement the (6,6)-threshold case, they need extra storage space and special work. Secondly, the modulus value is not independent in the schemes of [24, 27] but is affected by the threshold value . For example, the schemes of [26, 27] have the same capacity with the same , but they generate stego images with different visual quality while equals 3. The reason is that can be 3 in  and the optimal value of is 16 in . It is impossible for  to have as 3 or any value less than 16 when equals 3 and no extra special work is added. However,  can generate the stego images with the best visual quality when equals 3. The smaller the value of , the less the modification on each pixel of the cover image. If the capacity of one scheme is enough to embed a secret image, then it is best to let the value of be as small as possible. Therefore, the visual quality of the stego images generated by  is much better than that by  even if they appear to have the same capacity. Moreover, is not independent and its optimal value is 7 when equals 4 in . The capacity of  is enough to embed a secret image with the size into a cover image with the size when equals 4, no matter what the value of is. However, cannot be 3 or 5 due to the design of the scheme and the characteristics of modulus operation. Hence, the visual quality of the stego images generated by the schemes of [22, 25, 26] and our scheme is much better than that by  even with a smaller value of . Our scheme does not have the two defects above. From Table 2, we can see that our scheme can generate stego images with better visual quality than all the previous schemes of [24, 26, 27] using modulus operation. In order to know the differences between LSBC and modulus operation better, Table 3 shows the features of them. One can find that LSBC has better characteristics in many aspects.
Lastly, other interesting features of this scheme have also been studied. The first one is that this scheme is one of the fastest schemes that can restore both the secret image and the cover image losslessly in the world by far. Cellular automata have very low computation complexity and support parallel computing. This scheme can run faster when using parallel computing. In other words, this scheme can make better use of multicore computer after a slight modification. Besides, LSBC mainly uses logical shift operations and has lower computation complexity than that of modulus operation. The second one is that this scheme can resist differential attack. Cellular automata has the characteristic of resisting differential attack. Generally, if one small change in the original secret image causes a significant change in each generated share with respect to diffusion and confusion, then any differential attack is useless. Our scheme is sensitive with respect to minor changes in the original secret image. The third one is that this scheme can protect the secret image effectively if stego images are obtained by a hacker, or even if more than stego images are gained by him/her. For the latter case, if there are no continuous stego images, this will not meet the requirement of cellular automata to conduct the reverse evolutions, which requires that at least stego images for restoring the secret image should be continuous. Then, this hacker cannot get any information about the secret image. Generally, in recovering phase, any or fewer shadows cannot provide sufficient information to restore the original secret image. For the proof of this feature, please refer to Section 3.2 in the scheme of .
It is important to restore both the secret image and the cover image losslessly in some situations, such as the artistic, medical, and legal domains. There are already some excellent schemes that can achieve this purpose. The new scheme proposed in this paper avoids the defects existing in some previous perfect reversible schemes and has the better features of low computation complexity, resisting differential attack, parallel computing, relatively larger value of maximum capacity, better visual quality of stego images, dynamic embedding, and so on.
|:||The threshold of this scheme|
|:||The number of the participants|
|:||Radius of neighborhood for the LMCA|
|:||Number of cells in a configuration of the LMCA|
|:||The cover image|
|SI:||The secret image|
|:||The shares to be distributed to the participant|
|:||The stego image corresponding to|
|:||The width and height of CI, respectively|
|:||The width and height of SI, respectively|
|:||The number generated by LSBC and its length is 8 bits|
|:||The size of a smaller pixel block of CI, and the block is used to construct|
|:||The size of a bigger pixel block of CI, and the block is used to construct , CIPNL ≤ CIPNH.|
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
This research was supported by the National Science Foundation of China under Grants nos. 61272173 and 61401060.
G. R. Blakley, “Safeguarding cryptographic keys,” in Proceeding of the National Computer Conference, vol. 48 of AFIPS Conference Proceedings, pp. 313–317, 1979.View at: Google Scholar
M. Naor and A. Shamir, “Visual cryptography,” in Cryptology-Eurocrypt '94, vol. 950 of Lecture Notes in Computer Science, pp. 1–12, Springer, Berlin, Germany, 1995.View at: Google Scholar
A. Aho and J. Hopcroft, Design and Analysis of Computer Algorithms, Pearson Education India, 1974.
A. Menezes, P. van Oorschot, and S. Vanstone, Handbook of Applied Cryptography, CRC Press, Boca Raton, Fla, USA, 1997.