10-10-2012, 03:51 PM
A Reversible Data Hiding Method for Encrypted Images
A Reversible Data.pdf (Size: 6.97 MB / Downloads: 145)
ABSTRACT
Since several years, the protection of multimedia data is becoming very important. The protection of this multimedia
data can be done with encryption or data hiding algorithms. To decrease the transmission time, the data
compression is necessary. Since few years, a new problem is trying to combine in a single step, compression,
encryption and data hiding. So far, few solutions have been proposed to combine image encryption and compression
for example. Nowadays, a new challenge consists to embed data in encrypted images. Since the entropy
of encrypted image is maximal, the embedding step, considered like noise, is not possible by using standard data
hiding algorithms. A new idea is to apply reversible data hiding algorithms on encrypted images by wishing
to remove the embedded data before the image decryption. Recent reversible data hiding methods have been
proposed with high capacity, but these methods are not applicable on encrypted images. In this paper we propose
an analysis of the local standard deviation of the marked encrypted images in order to remove the embedded
data during the decryption step. We have applied our method on various images, and we show and analyze the
obtained results.
INTRODUCTION
The amount of digital images has increased rapidly on the Internet. Image security becomes increasingly important
for many applications, e.g., confidential transmission, video surveillance, military and medical applications.
For example, the necessity of fast and secure diagnosis is vital in the medical world.1, 2 Nowadays, the transmission
of images is a daily routine and it is necessary to find an efficient way to transmit them over networks. To
decrease the transmission time, the data compression is necessary. The protection of this multimedia data can
be done with encryption or data hiding algorithms. Since few years, a problem is to try to combine compression,
encryption and data hiding in a single step. For example, some solutions was proposed in3 to combine image
encryption and compression. Two main groups of technologies have been developed for this purpose. The first
one is based on content protection through encryption. There are several methods to encrypt binary images or
gray level images.3–6 In this group, proper decryption of data requires a key. The second group bases the protection
on digital watermarking or data hiding, aimed at secretly embedding a message into the data.7, 8 These
two technologies can be used complementary9, 10 and mutually commutative.11 Sinha and Singh proposed a
technique to encrypt an image for secure image transmission.12 In their approach the digital signature of the
original image is added to the encoded version of the original image. The encoding of the image is done using an
appropriate error control code. At the receiver end, after the decryption of the image, the digital signature can
be used to verify the authenticity of the image. Encryption and watermarking algorithms rely on the Kerckhoffs
principle13: all the details of the algorithm are known, and only the key to encrypt and decrypt the data should
be secret.
PROPOSED METHOD
Image encryption
The use of computer networks for data transmissions has created the need of security. Many robust message
encryption techniques have been developed to supply this demand. The encryption process can be symmetric,
asymmetric or hybrid17 and can be applied to blocks or streams.18–20 Several asymmetric algorithms use long
keys to ensure the confidentiality because a part of the key is known. These algorithms are not appropriate
enough to be applied to images because they require a high computational complexity. In the case of block
encryption methods applied to images, one can encounter three inconveniences. The first one is when we have
homogeneous zones (regions with the same color), all blocks in these zones are encrypted in the same manner.
The second problem is that block encryption methods are not robust to noise. Indeed, because of the large
size of the blocks (which is at least of 128 bits) the encryption algorithms per block, symmetric or asymmetric,
cannot be robust to noise. The third problem is data integrity. The combination of encryption and data-hiding
can solve these types of problems.
The Advanced Encryption Standard (AES) algorithm consists of a set of processing steps repeated for a
number of iterations called rounds.21 The number of rounds depends on the size of the key and the size of the
data block. The number of rounds is 9 for example, if both the block and the key are 128 bits long. Given a
sequence {X1,X2, ...,Xn} of bit plaintext blocks, each Xi is encrypted with the same secret key k producing the
ciphertext blocks {Y1, Y2, ..., Yn}, as described in the scheme from Fig. 1.
To encipher a data block Xi in AES you first perform an AddRoundKey step by XORing a subkey with the
block. The incoming data and the key are added together in the first AddRoundKey step. Afterwards, it follows
the round operation. Each regular round operation involves four steps. In the SubBytes step, each byte of the
block is replaced by its substitute in a substitution box (S-Box). In cryptography, an S-box is a basic component
of symmetric key algorithms used to obscure the relationship between the plaintext and the ciphertext. The
next one is the ShiftRows step where the rows are cyclically shifted over different offsets. The next step is the
MixColumns, where each column is multiplied with a matrix over the Gallois Field, denoted as GF(28). The last
step of the round operation is another AddRoundKey. It is a simple XOR with the actual data and the subkey
for the current round. Before producing the final ciphered data Yi, the AES performs an extra final routine that
is composed of (SubBytes, ShiftRows and AddRoundKey) steps, as shown in Fig. 1
EXPERIMENTAL RESULTS
We have applied our method on various gray level images and we show the results of the proposed method
applied on a medical image (1024 × 1024 pixels) illustrated in Fig. 4.a and the image of Baboon (512 × 512
pixels), Fig. 7.a. We have encrypted the original image Fig. 4.a by using the AES algorithm in ECB mode to get
the encrypted image illustrated in Fig. 4.b. The size of the blocks is 16 pixels (128 bits). From this encrypted
image we have then embedded 65536 bits to get the marked and encrypted image illustrated in Fig. 4.c. The
image difference between the Fig. 4.b and c is illustrated in the Fig. 4.d. We can see the pixels where we have
substituted one bit with the message. The PSNR of the marked and encrypted image illustrated in Fig. 4.c
equals to 66.13 dB.
CONCLUSION
In conclusion, with our proposed reversible data hiding method for encrypted images we are able to embed data
in encrypted images and then to decrypt the image and to rebuild the original image by removing the hidden
data. In this paper, we detailed all the steps of the proposed method and we illustrated the method with schemes.
We presented and analyzed various results by showing the plots of the local standard deviations.
In the proposed method, the embedding factor is 1 bit for 16 pixels. This small value of the embedding factor
is only is to have to choose between two values for each block during the decryption. For the future, we are
thinking to improve this method by increasing the payload but also the complexity.