A novel image encryption algorithm based on hash function (PDF ...

5 downloads 9961 Views 1MB Size Report
In this paper, a novel algorithm for image encryption based on SHA-512 is proposed. ...... encryption using digital signature', Optics Communications, vol. 268 ...
A Novel Image Encryption Algorithm Based on Hash Function Seyed Mohammad Seyedzade

Reza Ebrahimi Atani

Sattar Mirzakuchaki

Department of Electrical Engineering Department of Computer Engineering Department of Electrical Engineering Iran University of Science and Technology The University of Guilan Iran University of Science and Technology Tehran, Iran Rasht, Iran Tehran, Iran [email protected] [email protected] m [email protected]

Abstract—In this paper, a novel algorithm for image encryption based on SHA-512 is proposed. The main idea of the algorithm is to use one half of image data for encryption of the other half of the image reciprocally. Distinct characteristics of the algorithm are high security, high sensitivity and high speed that can be applied for encryption of gray-level and color images. The algorithm consists of two main sections: The ſrst does preprocessing operation to shufƀe one half of image. The second uses hash function to generate a random number mask. The mask is then XORed with the other part of the image which is going to be encrypted. The aim of this work is to increase the image entropy. Both security and performance aspects of the proposed algorithm are analyzed and satisfactory results are achieved in various rounds.

I. I NTRODUCTION Development of computer networks leads to more convenient access to digital images through multimedia networks. Therefore much research has been accomplished on these images due to the lack of access to digital images by illegal users. Usually, encryption is one good way to ensure high security. Encryption is used to protect data in transit, for example data being transferred via networks (e.g. the Internet, e-commerce, cell phones, wireless intercom systems). The three most common cryptographic primitives used in image encryption are Block ciphers, pseudo-random number generators, and hash functions [1]. Chaos has been used to achieve the ſrst two primitives for more than a decade (e.g., chaos-based ciphers [2], [3] and chaos-based random number generators [4]). In mathematics, a chaotic map is a map that exhibits some sort of chaotic behavior. Chaotic maps often occur in the study of dynamical systems. Due to their attractive features such as sensitivity to initial conditions and the random-like outspreading behavior, chaotic maps are employed for various applications of data protection [5]. However, image encryption is different from text encryption due to intrinsic property of image such as bulk data volume, highly redundancy and correlation and low entropy image [6]. So far A couple of image encryption algorithms based on chaos theory are presented [7], [8]. The algorithms mostly have two main parts: permutation and diffusion. In [9], a chaos-based image encryption algorithm with variable control parameters was proposed that the main idea was to shufƀe the positions of the pixels of the plain-

image in the spatial-domain. In [10], with design a key scheme for resistance to statistic attack, differential attack and gray code attack, properties of permutation and diffusion in terms of discrete exponential chaotic maps have been improved. In [11], based on the improved standard map, a block cipher has been designed that can carefully analyze the basic properties of the discretized chaotic standard map including the parameter sensitivity and computational complexity. Wong et al. have suggested a certain diffusion effect in the substitution stage by simple sequential add-and-shift operations that leads to a longer processing time in a single round, but the overall encryption time is reduced as fewer rounds are required. Unfortunately, most chaotic maps are unstable due to the periodicity of the mapping [13], [14]. Systems based on such maps are susceptible to attacks, such as the broken system shown in [15]. In [16], Baptista proposed a cryptosystem based on the property of periodicity of chaotic system. Based on Baptista’s method, Wong [17] improve the chaotic Cryptographic scheme so that it can perform both encryption and hashing to produce the cipher text as well as the hash value for a given message. The generic block cipher algorithms, such as data encryption standard (DES), advanced encryption standard (AES), international data encryption algorithm (IDEA), etc., are not suitable to handle bulky data like digital images due to their intensive computational process [18], [19] unless accelerated by hardware implementations. Various hash algorithms are available such as MD5 (message digest 5) and SHA-2 (Secure Hash Algorithm) which hash data strings, thus changing their state from being natural to a seemingly unnatural state. A hash function is more formally deſned as the mapping of bit strings of an arbitrary ſnite length to strings of ſxed length [11]. One-time pad hash algorithms, known also as stream ciphers, were believed to be unsuitable for image encryption since they would require a key of the size of the ciphered image itself [18]. In [20] was used MD5 algorithm for generation an image signature to encrypt image. The encrypted image coupled with an error control code, i.e., Bose-Chaudhuri Hochquenghem (BCH). Hence, their technique was commented in Ref. [21] in which the secret key and the original image can be recovered efſciently by a brute force attack. Recently, a novel encryption method has been presented for

978-1-4244-9708-9/10/$26.00 ©2010 IEEE

substituting pixel values by using recursive cellular automata permutation based on a CBC-like mode. Due to CBC-like mode of the method, his speed is low and can’t be suitable for encryption. To allow parallel image encryption, the conventional CBC-like mode must be eliminated and this will cause a new problem, i.e. how to fulſll the diffusion requirement without such mode [22]. Xiaofeng Liao et al. [23] describe a fast image encryption algorithm based on selfadaptive wave transmission that uses one half of image data to encrypt the other half of the image. The process to achieve the high security will be continued. During encryption, an image is equally divided into two parts, both of which are encrypted by using wave transmission encryption with four waves whose amplitudes are determined by the other one. Since the amplitude of the wave may be too large, it is not convenient to represent it in computer due to computation complexity. In this paper, a fast image encryption algorithm is proposed. Here the aim is to use SHA-2 for construction of an encryption mask which its size is half the original image size. The mask will be used to encrypt digital image. The computer simulation results show that the proposed encryption algorithm can be easily implemented. Besides it simultaneously has high security level, high speed, and high sensitivity. The rest of the paper is organized as follows: the section 2 describes represented Hash function and its unique characteristics. In section 3, the proposed algorithm is explained. Simulation results and Security analysis are provided in Section 4. Finally, a conclusion is drawn in Section 5. II. H ASH FUNCTIONS The algorithm uses the strength of a 1D hash function algorithm, namely SHA-2 and Make a 2D mask for image encryption. A hash function (h) converts an input from an arbitrary large domain (x) into an output in a ſxed small range (the hash value y = h(x), often a subset of integers) [24]. Hash function should satisfy three features: 1) One wayness; can not be reversed. 2) Output does not reveal information on input. 3) Hard to ſnd collisions. The SHA-2 standard [25] surrogates the existing SHA-1 with adding three new hash functions, SHA-2(256), SHA2(384), and SHA-2(512), for computing a message digest. The security of SHA-256, SHA-384, and SHA-512 adjusts the security of AES with complexity of the best attack as 2128, 2192 and 2256 respectively. In Fig. 1, four investigated hash functions are compared according to functional characteristics. The SHA-2 operation can be divided into two parts: preprocessing and hash computation. Preprocessing includes padding the input message, decomposing the padded data into a number of m-bit blocks, and setting the appropriate initial values, which are used in the hash generation. The hash computation uses the padded data along with functions, constants, and word logical and algebraic operations, to iteratively generate series of hash values. The produced hash value after a given number of transformation rounds is equal to the message digest

Fig. 1.

Functional characteristics of four investigated hash function

[26]. With regard to property 1, using SHA-2 will provide high security for proposed algorithm. Property 2 and 3 ensure input sensitivity. We use SHA-2 properties to increase the performance of proposed algorithm. III. T HE PROPOSED ALGORITHM A. Architecture of substitution - diffusion type hash-based image cryptosystem The architecture of substitution-diffusion type SHA-2(512) based image cryptosystem is shown in Fig. 2. There are four stages in this type of SHA-2 based image cryptosystem. Two ſrst stages have two processes for substitution and diffusion and the two last stages have only diffusion process. In the substitution process, one four of the image pixels are replaced according to the S-box of AES [27], which are expressed in hexadecimal form in Fig. 3. The function of the diffusion process is to modify the pixel value sequentially so that a tiny change in one pixel is spread out to many pixels, hopefully the whole image. To decorrelate the relationship between adjacent pixels, the substitution process is performed times, where is usually larger than 1. Diffusion process is then followed by the substitution process. The whole substitution-diffusion process repeats for times in order to achieve a satisfactory level of security. In this paper, with no loss generality, we assume that source image is an image. For a larger image, we can divide it into blocks of size then the input image is divided into equal four sub images(namely Se.1, Se.2, Se.3 and Se.4 images) .In order to better understand the structure, First Equivalent description of the cryptosystem will be presented and then the cores of each stage is introduced. 1) Equivalent description of the cryptosystem: Equivalent description of Fig.1 structure is as follows: (i) Substitute the sub-image Se.x according to S-box of AES (Sbox(Se.x)): Substitute a quarter of the image pixels according to the S-box of AES. (ii) The mean of columns of each row in Se.x sub-image (M CR(Se.x)): For Se.x sub-image, XOR all the gray level values of row i, where x = 1, 2, 3, 4 and i = 1, 2, · · · , 128. As a result, a matrix of size 128 × 1 is obtained. For a mask, concatenate the matrix horizontally 128 times.

Fig. 2.

Fig. 3.

The Overall architecture of substitution-diffusion type SHA-2(512) based image cryptosystem

S-box: substitution values for byte xy (in hexadecimal format)

(iii) The mean of rows of each column in Se.x sub-image (M RC(Se.x)): For Se.x sub-image, XOR all the gray level values of column i, where x = 1, 2, 3, 4 and i = 1, 2, · · · , 128. As a result, a matrix of size 1 × 128 is obtained. For a 128 × 128 mask, concatenate the matrix vertically 128 times. (iv) Sub-images Hashing (Hash(Se.x, Se.y)): Sub-images Se.x and Se.y forms a matrix of size 128 × 256 called M . Each row of M is divided into four sub arrays with size of 124 bytes. In addition, four 8-bit keys will be appended to each of these sub arrays. Four sub arrays (SA derived from row i in M and its appending keys are shown as below: SA1 = [M (i, 1 : 124), Key(1), Key(2), Key(3), Key(4)] SA2 = [M (i, 51 : 174), Key(5), Key(4), Key(7), Key(8)] SA3 = [M (i, 100 : 223), Key(9), Key(10), Key(11), Key(12)] SA4 = [M (i, 132 : 255), Key(13), Key(14), Key(15), Key(16)]

The output of hash function for each sub array is 64 bytes. Hence the hash function’s output for the row i will be 256 bytes. This way hash function for matrix M with 128 rows will create the mask of size 128 × 256. (v) Substitute the sub-image Se.x according to Inverse Sbox of AES (InvSbox (Se.x)): Substitute quarter of

image’s pixels according to the Inverse S-box of AES. Remark: InvSbox (Se.x) is used in the decryption process. 2) Introducing the cores of each stage: Based on discussion in 3.1.1, the substitution process is realized solely by permutation of all the pixels by Sbox(Se.x), where x = 1, 2, 3, 4. In the diffusion process, the masks of M CR(Se.x), M RC(Se.x) and Hash(Se.x, Se.y) are mapped to sub-image Se.x. Detailed descriptions for Mapping of masks to subimages are covered in section 3.2. Fig.1 shows that each stage has 2 core processes that run simultaneously. Each core in stages 1 and 2 consists of both substitution and diffusion process whereas each core in stage 3 and 4 includes only diffusion process. Hash functions are used in both stages in the above structure for cryptosystem. Considering the sensitivity of the hash function to the input value, it can be concluded that our proposed structure has high sensitivity in encryption process. B. Encryption The equivalent descriptions in section 3.1.1 are used to specify the proposed cryptosystem structure. The width and length of the image must be multiple of 256, otherwise they should be adjusted. In this algorithm a 128-bit key is used. First, the image is segmented into sub-images of 128 × 128 pixels. Then the upper half part of the image is encrypted using the information of the lower half part. Similarly the lower half part will be encrypted by using the information of the upper half part. Remark: In each step sub-image Se.xnew is considered as Se.xold for its next step .The detailed encryption algorithm is described as follows: Step 1. First choose secret keys key(1), key(2), ..., key(16) randomly for the input of hash function as described in Section 3.1.1. After that substitute sub-images Se.1old and

Se.2old according to Sbox(Se.1old ) and Sbox(Se.2old ). Next calculate M CR(Se.4old ), M CR(Se.3old ), M RC(Se.4old), M RC(Se.3old ) and Hash(Se.3old, Se.4old )). The new sub-images Se.1new and Se.2new are obtained according to:

Se.1new

=

Sbox(Se.1old ) ⊕ M CR(Se.4old ) ⊕

(1)

Se.2new

=

M RC(Se.4old ) ⊕ Hash(Se.3old , Se.4old ) Sbox(Se.2old ) ⊕ M CR(Se.3old ) ⊕

(2)

M RC(Se.3old ) ⊕ Hash(Se.3old , Se.4old )

Remark: Columns from 129 to 256 and columns from 1 to 128 of the hash mask are used in XOR operation of formula 1 and 2 respectively. Step 2. Substitute sub-images Se.3old and Se.4old according to Sbox(Se.3old ) and Sbox(Se.4old ). Then calculate M CR(Se.1old), M CR(Se.2old ), M RC(Se.1old), M RC(Se.2old ) and Hash(Se.1old, Se.2old )). The new sub images Se.3new and Se.4new are obtained according to: Se.3new

=

Sbox(Se.3old ) ⊕ M CR(Se.2old ) ⊕ M RC(Se.2old ) ⊕ Hash(Se.1old , Se.2old )

(3)

Se.4new

=

Sbox(Se.4old ) ⊕ M CR(Se.1old ) ⊕ M RC(Se.1old ) ⊕ Hash(Se.1old , Se.1old )

(4)

Step 4. Calculate M CR(Se.4old ), M CR(Se.3old ), M RC(Se.4old), M RC(Se.3old ) and Hash(Se.3old, Se.4old ). The new sub-images Se.1new and Se.2new are obtained according to: Se.1new

=

Se.2new

=

InvSbox(Se.1old ⊕ M CR(Se.4old ) ⊕ (11) M RC(Se.4old ) ⊕ Hash(Se.3old , Se.4old )) InvSbox(Se.2old ⊕ M CR(Se.3old ) ⊕

(12)

M RC(Se.3old ) ⊕ Hash(Se.3old , Se.4old ))

Remark: Columns from 129 to 256 and columns from 1 to 128 of the hash mask are used in XOR operation of formula 11 and 12 respectively. Step 5. Repeat the above steps R times with ſxed keys to obtain decrypted image output.

Remark: Columns from 1 to 128 and columns from 129 to 256 of the hash mask are used in XOR operation of formula 3 and 4 respectively. Step 3. Calculate M CR(Se.1old), M CR(Se.4old), M RC(Se.1old ) and M RC(Se.4old ). The new sub-images Se.2new and Se.3new are obtained according to: Se.2new

=

Se.2old ⊕ M CR(Se.4old ) ⊕ M RC(Se.1old )

(5)

Se.3new

=

Se.3old ⊕ M CR(Se.1old ) ⊕ M RC(Se.4old )

(6)

Step 4. Calculate M CR(Se.2old), M CR(Se.3old), M RC(Se.2old ) and M RC(Se.3old ). The new sub-images Se.1new and Se.4new are obtained according to: Se.1new

=

Se.1old ⊕ M CR(Se.3old ) ⊕ M RC(Se.2old )

(7)

Se.4new

=

Se.4old ⊕ M CR(Se.2old ) ⊕ M RC(Se.3old )

(8)

Step 5. Repeat the above steps R times with ſxed keys to satisfy the security requirements. C. Decryption The decryption scheme of our cryptosystem is shown in Fig. 4. The decryption procedure is similar to that of the encryption but the orders are reversed and InvSbox is used instead of Sbox. The detailed decryption algorithm is described as follows: Step 1 and Step 2. These steps are the same as step 4 and step 3 in encryption process respectively. Step 3. According to the approach described in Section 3.1.1 this step uses secret keys key(1), key(2), ..., key(16) for hash function input. Calculate M CR(Se.1old), M CR(Se.2old ), M RC(Se.1old ), M RC(Se.1old) and Hash(Se.1old, Se.2old ). By using InvSbox new sub-images Se.3new and Se.4new are obtained according to: Se.3new Se.4new

=

InvSbox(Se.3old ⊕ M CR(Se.2old ) ⊕

=

M RC(Se.2old ) ⊕ Hash(Se.1old , Se.2old )) InvSbox(Se.4old ⊕ M CR(Se.1old ) ⊕ (10)

(9)

M RC(Se.1old ) ⊕ Hash(Se.1old , Se.2old ))

Remark: Columns from 1 to 128 and columns from 129 to 256 of the hash mask are used in XOR operation of formula 9 and 10 respectively.

Fig. 4.

Decryption process

D. application of the algorithm for color images A color image is composed of three main components, i.e. R, G and B. The matrixes R, G and B of the color image are encrypted in parallel and similar to the encryption of graylevel image. Decryption process of matrixes R, G and B is similar to the purposed decryption process in section 3.2. E. Parallel mode and its requirement for image encryption Processing speed improvements and parallel image encryption, need elimination of the conventional CBC-like mode. However, this will cause a new problem, i.e. how to provide the diffusion requirement without such mode. Besides, parallel image encryption has some additional requirements [22]: (1) Computational load balancing: Slowest Processing Element (PE) determines the total time of a parallel image encryption scheme, therefore other PEs has to wait until such PE ſnishes its operation. (2) Communication load balancing (3) Critical area management: Reading and writing the same area of memory by different PEs may cause unexpected

program execution. Hence it is necessary to use some parallel techniques to manage critical areas. The proposed algorithm structure satisſes the above requirements. As it is shown in Fig. 5, the image is equally divided into 4 parts. Each of these parts is encrypted by one single PE. All of the four PEs do their encryption simultaneously. Then two distinct pairs of PEs are selected and each one uses one half of image data for encryption of the other half of the image. Generated masks in each PEs will enable our algorithm to satisfy the diffusion requirements.

Fig. 6. The plain, cipher, and decrypted images. (a) Plain-image Lena, (b) cipher image, 2-round, (c) the decrypted image, (d) Plain-image Pepper, (e) cipher image, 2-round (f) the decrypted image

Fig. 5.

Parallel computation mode for image encryption

IV. P ERFORMANCE AND SECURITY ANALYSIS We have done several tests to check the security of the proposed cryptosystem. Statistical tests include histogram analysis and calculation of correlation coefſcients of adjacent pixels. We have done our experimental analysis for the proposed encryption scheme on the USC-SIPI image database. In this paper we have selected one gray level image ’Lena’ and one color image ’Pepper’ with 256×256 pixels as the sample plain images. Their plain, cipher and decrypted images are shown in Fig 6. 1) Histogram: Image histogram is a very important feature in image analysis. From Fig. 6 it is obvious that the histograms of the encrypted image are nearly uniform and signiſcantly different from the histograms of the original image. Hence it does not provide any clue to employ any statistical analysis attack on the encryption image. Histograms of the plain and the cipher images are depicted in Fig. 7 by choosing two rounds (R=2). 2) Correlation analysis of two adjacent pixels: We have analyzed the correlation between two vertically adjacent pixels, two horizontally adjacent pixels, and two diagonally adjacent pixels in an image. 2000 pairs of two adjacent (in vertical, horizontal, and diagonal direction) pixels from plain-image and ciphered image were randomly selected and the correlation coefſcients were calculated by using the following equations: N 1  Cov(x, y)|  , E= rxy =  xi N i=1 D(x) D(y)

D(x) =

Cov(x, y) =

N 1  (xi − E(x))2 N i=1

N 1  (xi − E(x))(yi − E(x)) N i=1

Fig. 7. (a) Histogram of the plain-image Lena (b) histogram of the plainimage Pepper- R (c) histogram of the plainimage Pepper- G (d) histogram of the Pepper- B (e) histogram of the cipher image Lena (f) histogram of the cipher - image Pepper- R (g) histogram of the cipher -image Pepper- G (h) histogram of the cipher -image Pepper- B.

x and y represent gray level values of two adjacent pixels. Table I is the horizomtal, vertical and diagonal relevance of adjacent elements in image before and after encryption. Fig 8 shows the results of correlation analysis. Fig 8 show signiſcant reduction in relevance of adjacent elements.

(13)

(14)

(15)

Fig. 8. Correlation analysis of two horizontally adjacent pixels in (a) Plain Lena image, (b) Plain-image Pepper- R, (c) Plain-image Pepper- G, (d) Plainimage Pepper- B, (e) cipher image Lena, (f) cipher image Pepper- R, (g) cipher image Pepper- G; (h) cipher image Pepper -B ;obtained using the proposed scheme.

TABLE I C ORRELATION COEFFICIENTS OF PLAIN IMAGE AND CIPHERED IMAGE . Plain Image Scan Direction Horizontal Vertical Diagonal

Lena Cipher Image

0.9491 0.9768 0.9304

-0.0006 -0.0030 0.0061

Pepper Plain Image Cipher Image R G B R G B 0.9604 0.9778 0.9561 0.0069 -0.0019 -0.0015 0.9674 0.9796 0.9573 0.0024 0.0033 0.0096 0.9327 0.9608 0.9195 0.0001 0.0067 -0.0024

TABLE II P ERFORMANCE ANALYSIS OF THE PROPOSED METHOD WITH RECENT METHODS USING L ENA IMAGE AND P EPPER IMAGE CORRELATION COEFFICIENTS , RANGING FROM ’1’ HIGHLY CORRELATED TO ’-1’ HIGHLY UNCORRELATED , OF PAIRS OF ADJACENT PIXELS IN DIFFERENT DIRECTIONS . Scan Direction Plain-Image Lena Proposed Ref. [10] Ref. [11] Ref. [12] Ref. [23] Plain-Image Pepper Proposed Ref. [29] Ref. [30]

Horizontal 0.9506031 -0.0006 -0.04005 0.00534 0.00681 0.01270 0.9681485 0.00401 0.00070 0.01183

Vertical 0.9761479 -0.0030 0.08158 0.00846 0.00782 -0.01900 0.9616387 0.00863 0.00216 0.00016

Diagonal 0.9254270 0.0061 -0.00471 0.00355 0.00323 -0.00120 0.9396524 0.00253 0.01488 0.01480

The comparison given in Table II shows that the proposed method outperforms other reported methods in the paper. The encrypted version under this scheme has the highest performance in the horizontal, diagonal and vertical directions. V. C ONCLUSION In this paper, a novel algorithm for image encryption based on SHA-512 is presented. The proposed algorithm combines good permutation and diffusion properties in four steps per round. Due to elimination of CBC-like mode in the proposed algorithm, the image encryption can be implemented parallel. The decryption procedure is similar to that of the encryption but in the reversed order. R EFERENCES [1] B. Preneel, V. Rijmen and A. Bosselears, Recent developments in the design of conventional cryptographic algorithm, LNCS, Springer-Verlag, Vol. 1528, pp. 105-130, 1998. [2] T. Habutsu, Y. Nishio, I. Sasase and S. Mori, A secret key cryptosystem by iterating a chaotic map, Eurocrypt’91, Brighton, U.K., pp. 127-140, Apr. 1991. [3] G. Jakimoski and L. Kocarev, Chaos and cryptography: Blocken Cryption ciphers based on chaotic maps, IEEE Trans. Circuits Sys. I, Fundam. Theory Appl., vol. 48, no. 2, pp. 163-169, Feb. 2001. [4] T. Stojanovski and L. Kocarev, Chaos-based random number generatorsPartI: Analysis, IEEE Trans. Circuits Sys. I, Fundam. Theory Appl, vol. 48, no. 3, pp. 281-288, Mar. 2001. [5] Y. Wang, X. Liao, D. Xiao and K. W. Wong, ”One-way hash function construction based on 2D coupled map lattices,” Information Sciences, vol. 178, no. 5, pp. 1391-1406, Mar. 2008 [6] L. S. Chen and G. X. Zheng, Multimedia Security Handbook, CRC Press, 2005, p.133. [7] Fridrich, Symmetric ciphers based on two dimensional chaotic maps, Int. J. Bifurcat Chaos, vol. 8, pp. 1259-84, 1998 [8] J. Cheng and J. I. Guo, A New Chaotic Key-Based Design for Image Encryption and Decryption, Proceedings IEEE International Conference on Circuits and Systems, vol. 4, pp. 49-52, May. 2000.

[9] Z. H. Guan, F. Huang and W. Guan, Chaos-based image encryption algorithm, Phys. Lett. A, vol. 346, pp. 153-157, Oct. 2005. [10] L. Zhang, X. Liao and X. Wang, An image encryption approach based on chaotic maps, Chaos, Solitons & Fractals, vol. 24, Issue 3, pp. 759765, May 2005 [11] S. Lian, J. Sun, Z. q. Wang, A block cipher based on a suitable use of the chaotic standard map, Chaos, Solitons and Fractals, Vol. 26, pp. 117-129, Oct. 2005. [12] K. W. Wong, B. S. H. Kwok and W. S. Law, A fast image encryption scheme based on chaotic standard map, Phys. Lett. A, Vol. 372, 26452652, April 2008 [13] D. C. Lou and C. H. Sung, A steganographic scheme for secure communications based on the chaos and Euler theorem, IEEE Trans. Multimedia, vol. 6, pp. 501-509, June 2004. [14] F. Huang and Y. Feng, Security analysis of image encryption based on two dimensional chaotic maps and improved algorithm, Journal of Frontiers of Electrical and Electronic Engineering in China, vol. 4, no. 1, pp.5-9, Mar. 2009. [15] C. Cokal and E. Solak, Cryptanalysis of a chaos-based image encryption algorithm, Phys. Lett. A, vol. 373, pp. 1357, Mar. 2009. [16] M. S. Baptista, Cryptography with chaos, Phys. Lett. A, vol. 240, no. 1-2, pp. 50-54, Mar. 1998. [17] K. W. Wong, A combined chaotic cryptographic and hashing scheme, Phys. Lett. A, vol. 307, pp. 292-298, Feb. 2003. [18] K. Usman, H. Juzoji, I. Nakajima, S. Soegidjoko, M. Ramdhani, T. Hori and S. Igi, Medical Image Encryption Based on Pixel arrangement and Random Permutation for Transmission Security, in Proc. IEEE Conf. eHealth Networking, Application and services, pp. 244-247, June 2007. [19] M. Zeghid, M. Machhout, L. Khriji, A. Baganne and R. Tourki, A Modiſed AES Based Algorithm for Image Encryption, International Journal of Computer Science and Engineering, vol.1, no.1, pp. 70-75, 2007. [20] A. Sinha and K. Singh, A technique for image encryption using digital signature, Optics Communications, vol. 218, no. 4-6, Apr. 2003. [21] L. H. Encinas and A. P. Domnguez, Comment on ’A technique for image encryption using digital signature’, Optics Communications, vol. 268, no. 2, pp. 261-265, December 2006. [22] R. J. Chen and J. L. Lai, Image security system using recursive cellular automata substitution, Pattern Recognition, vol. 40, pp. 1621-1631, May 2007. [23] X. Liao, S. Lai and Q. Zhou, A novel image encryption algorithm based on self-adaptive wave transmission, Signal Processing, vol. 90, pp. 27142722, Sept. 2010. [24] A. J. Menezes, P. C. Van Oorschot and S. A. Vanstone, Handbook of Applied Cryptography, CRC Press, Chapter 5, pp. 175, 1996. [25] SHA-2 Standard, National Institute of Standards and Technology (NIST), Secure Hash Standard, FIPSPUB 180-2, www.itl.nist.gov/ſpspubs/ſp180-2.htm, 2002. [26] R. Glabb, L. Imbert and G. Jullien, Multi-mode operator for SHA-2 hash functions, Journal of Systems Architecture , vol. 53, no. 2-3, pp. 127-138, 2007 [27] Announcing the advanced encryption standard (AES), Federal Information Processing Standards Publication 197, 2001.2. [28] USC-SIPI image database [Online].Available: http://sipi.usc.edu/database/ [29] Y. Wang, K. Wong, X. Liao and G. Chen, A new chaos-based fast image encryption algorithm, Appl Soft ComputJ. [30] S. Mazloom and A. M. Eftekhari-Moghadam, Color image encryption based on coupled nonlinear chaotic map, Chaos, Solitons Fractals, vol. 42, no. 3, pp. 1745-1754, Nov. 2009.