Image encryption algorithm based on cascaded chaotic map and improved Zigzag transform

IET Image ProcessingVolume 16, Issue 14 p. 3863-3875 ORIGINAL RESEARCHOpen Access Image encryption algorithm based on cascaded chaotic map and improved Zigzag transform Jiming Zheng, Corresponding Author Jiming Zheng [email protected] orcid.org/0000-0002-6237-0168 School of Science, Chongqing University of Posts and Telecommunications, Chongqing, China Correspondence Jiming Zheng, School of Science, Chongqing University of Posts and Telecommunications, Chongqing 400065, China. Email: [email protected]Search for more papers by this authorTianyi Lv, Tianyi Lv orcid.org/0000-0001-5380-6321 College of Computer Science and Technology, Chongqing University of Posts and Telecommunications, Chongqing, ChinaSearch for more papers by this author Jiming Zheng, Corresponding Author Jiming Zheng [email protected] orcid.org/0000-0002-6237-0168 School of Science, Chongqing University of Posts and Telecommunications, Chongqing, China Correspondence Jiming Zheng, School of Science, Chongqing University of Posts and Telecommunications, Chongqing 400065, China. Email: [email protected]Search for more papers by this authorTianyi Lv, Tianyi Lv orcid.org/0000-0001-5380-6321 College of Computer Science and Technology, Chongqing University of Posts and Telecommunications, Chongqing, ChinaSearch for more papers by this author First published: 09 August 2022 https://doi.org/10.1049/ipr2.12600AboutSectionsPDF ToolsRequest permissionExport citationAdd to favoritesTrack citation ShareShare Give accessShare full text accessShare full-text accessPlease review our Terms and Conditions of Use and check box below to share full-text version of article.I have read and accept the Wiley Online Library Terms and Conditions of UseShareable LinkUse the link below to share a full-text version of this article with your friends and colleagues. Learn more.Copy URL Share a linkShare onFacebookTwitterLinkedInRedditWechat Abstract In this paper, an image encryption algorithm based on cascaded chaotic map and improved Zigzag transform is proposed. Firstly, a cascade chaotic system is improved to make its chaotic sequence evenly distributed and improve its parameter range. The purpose is to obtain high random chaotic sequence and make the ciphertext image more secure. Secondly, the improved Zigzag transform is used to scramble the image. Compared with the standard Zigzag transform, the improved Zigzag transform can fully scramble all the pixels and improve the randomness of the ciphertext image. Thirdly, a wave-shaped diffusion algorithm is designed, its characteristic is that it can alternate between different row and column for diffusion. The combination of SHA256 algorithm and plain image makes the cipher image better resist the select plaintext attack. Simulation results show that the algorithm has fast encryption efficiency, high security and can effectively resist various attacks. 1 INTRODUCTION In recent years, with the development of mobile Internet, more and more data information is produced and transmitted through the network. Among these data information, digital image has been widely used because of its intuitive and vivid content, and can carry a large amount of data. Digital images frequently contain a lot of personal privacy information and confidential information. However, in the process of transmission, digital images may be obtained illegally, or even modify the original information. Therefore, it is necessary to ensure the safe transmission of digital images. Image encryption is an effective means to protect image information [1]. The principle of image encryption is to turn a meaningful image into an unreadable state, and its content can only be reconstructed by legitimate recipients. Traditional encryption algorithms, such as advanced encryption standard (AES), data encryption standard (DES) and rivest-shamir-adlemanalgorithm (RSA), are generally suitable for text data encryption. When encrypting image data with strong correlation and high redundancy of adjacent pixels, the effect is not ideal [2, 3]. In order to protect digital images, some new approaches have been proposed: one-time keys methods [4, 5], bit-level permutation techniques [6], DNA rule-based schemes [7, 8], chaos theory [9], compressed sensing [10], optical transformation [11] etc. The method based on one-time key has no additional input parameters to control the encryption process except pure image and input key, which limits a wide range of applications [12]. The advantage of bit-level scrambling is that it can change the position and value of pixels at the same time. Because of the large number of processing units of bit-level arrangement, its computational complexity is much higher than that of pixel-level arrangement [13]. Because DNA molecules have the characteristics of huge parallelism and large amount of stored information, many researchers have proposed image encryption methods based on DNA coding. The principle of image encryption based on DNA coding is to encode and decode the DNA sequence through the base pairing principle to complete the scrambling and diffusion operation. However, the DNA coding process undoubtedly increases the encryption time and reduces the efficiency [14]. In image encryption algorithms based on mathematical models, complex mathematical calculations are usually used to obtain ciphertext images. Reference [15] points out that such methods are easy to be cracked by quantum computing. Chaos has the characteristics of pseudo randomness, ergodicity and high sensitivity to initial conditions and parameters, it is very similar to scrambling, diffusion and key in modern cryptography. The chaotic image encryption scheme is considered to have great potential [16, 17]. The research on image encryption based on chaos began in 1998, Fridrich [18] applied the chaotic system to image encryption for the first time. Since then, image encryption based on chaos has become a hot research field. According to the dimension of the chaotic map, the chaotic systems can be divided into two categories: one-dimensional chaotic map and high-dimensional chaotic map. The one-dimensional chaotic system has the advantages of simple structure and high implementation efficiency, and is widely used. Arif et al. [19] used S-box to complete the scrambling and diffusion operations, and used Logistic map to generate chaotic sequences. The algorithm has large key space and short time-consuming. In order to improve the sensitivity and randomness of chaotic systems, Mansouri et al. [20] proposed a new 1D Sine map, which uses the chaotic sequence generated by Sine map to operate row by row and column by column in the process of scrambling and diffusion. The one-dimensional chaotic system has the advantages of high encryption efficiency, but its disadvantages include limited parameter range, uneven sequence distribution and low security level. In [21], the stable distribution of chaotic state generated by the iteration Logistic map is used to illustrate the insecurity of image encryption scheme using logistic map. The structure of high-dimensional chaotic system is complex, the trajectory is difficult to predict, and the key space is larger. In the scrambling stage, Karawia et al [22] used the Logistic map to scramble pixels at the bit level, and in the diffusion stage, they used the 2D non-invertible chaotic map and XOR operation to change the value of pixel points. Chen et al. [23] designed a two-dimensional cubic iterativechaotic map with infinite collapse (ICMIC) modulation mapping (2D-CIMM) for image encryption, which makes the algorithm have high complexity. At the same time, using the hash value of the original image to the initial value of 2D-CIMM mapping increases the sensitivity of image encryption algorithm to plaintext. Although the high-dimensional chaotic system has many advantages, it increases the complexity of the encryption process and the difficulty of implementation, resulting in a long encryption time [24]. Cascaded chaotic system is also a hot research direction in the field of image encryption. Cascaded chaos can solve the disadvantages of uneven distribution, small chaotic interval and key space and weak randomness of one-dimensional chaotic sequence. Kwok et al. [25] proposed a fast image encryption system using a stream cipher structure, whose core is to concatenate Tent and high-dimensional Cat mapping, which can generate highly random key streams. Cao et al. [26] proposed a cascade chaotic system using the Logistic map and the ICMIC map. Compared with the original maps, the chaotic range is larger and the complexity is higher. Lan et al. [27] proposed an integrated chaotic system, which can improve the chaotic range and complexity of the original map by cascading, non-linear combination and switching of three one-dimensional chaotic maps, but there are still some problems such as uneven distribution of chaotic sequences and low chaotic complexity. Zigzag transform is a scanning scrambling method [28]. In the field of image encryption, it is usually used to scramble the position of pixels. The principle of Zigzag transformation is that the elements in the matrix are scanned according to the "Z" shape, and then storing the scanned elements in a one-bit array. Finally, the one-bit array is arranged in a row first manner to obtain a 2D matrix. However, the standard Zigzag transform could only be applied to square matrixes, and the positions of some elements do not change, which is easy to be cracked by illegal users. An improved Zigzag transform is proposed in [29], which is used to overcome the disadvantage of the standard Zigzag transform. In order to obtain better security, many algorithms perform scrambling and diffusion operations multiple times, which increases the time overhead. This paper designs a wavy diffusion algorithm, which is executed alternately between different rows and columns, which effectively improves the complexity of the encryption algorithm and does not need to be executed many times. Based on the above analysis, this paper improves a cascaded chaotic map (Logistic-Logistic-Tent (LLT) map) proposed in [27] to overcome the shortcomings of the original chaotic map. The initial values and parameters of chaotic map are obtained from the SHA256 hash value and original image, so the key is related to the plain image and can effectively resist known plaintext attack. The plain image is scrambled by improved Zigzag transform, and then combining improved cascaded chaotic map, a new diffusion order and XOR operation are used to change the pixels value. Simulation results show that the proposed encryption scheme has good security and can effectively resist a variety of common attacks. The rest of the paper is organized as follows. Section 2 introduces the cascaded chaotic map. Section 3 introduces Zigzag transform. Section 4 describes the encryption algorithm. Section 5 shows the simulation results and the security analysis of our proposed encryption scheme. Finally, Section 6 summarizes this paper. 2 CASCADED CHAOTIC SYSTEM The following introduces two one-dimensional chaotic maps (seed maps) used to generate chaotic systems and their chaotic characteristics, as well as the improved chaotic map. Logistic map One-dimensional logistic chaotic map is a typical non-linear dynamic discrete system. It is defined as [30] x n + 1 = α x n ( 1 − x n ) \begin{equation}{x_{n + 1}} = \alpha {x_n}(1 - {x_n})\end{equation} (1)where x n ∈ ( 0 , 1 ) ${x_n} \in (0,1)$ and the system parameter α ∈ ( 0 , 4 ] $\alpha \in (0,4]$ . When α ∈ ( 3.5699456 , 4 ] $\alpha \in (3.5699456,4]$ , the logistic map has chaotic characteristics. As can be seen from Figure 1, the chaotic range of logistic map is limited, and the sequence distribution is uneven. When the Lyapunov exponent (LE) value is positive, the chaotic map has chaotic characteristics, and the larger the value, the better the chaotic performance. As shown in Figure 1b, when the parameter α < 0.9 $\alpha < 0.9$ , the Logistic map has no chaotic behaviour (the LE value is less than 0). FIGURE 1Open in figure viewerPowerPoint Logistic map Tent map One-dimensional Tent mapping is a piecewise linear mapping. It is defined as follows [31]: x n + 1 = 2 β x n 0 ≤ x n < 0.5 2 β ( 1 − x n ) 0.5 ≤ x n ≤ 1 \begin{equation} {x_{n + 1}} = \left\{ \def\eqcellsep{&}\begin{array}{ll} 2\beta {x_n} &0 \le {x_n} < 0.5\\[6pt] 2\beta (1 - {x_n}) & 0.5 \le {x_n} \le 1 \end{array} \right. \end{equation} (2)where β is the parameter and β ∈ [ 0 , 1 ] $\beta \in [0,1]$ , x n ∈ [ 0 , 1 ] ${x_n} \in [0,1]$ . Figure 2 shows the bifurcation diagram and LE diagram of Tent map. The analysis shows that both Logistic and Tent map have the problems of uneven distribution of chaotic sequences and limited chaotic range. FIGURE 2Open in figure viewerPowerPoint Tent map Improved NLLT map In order to avoid the shortage of chaotic image encryption using a single one-dimensional chaotic map, a cascaded chaotic map generated by Logistic and Tent map is proposed as follows [27]: x n + 1 = ( 4 μ ( 4 μ x n ( 1 − x n ) ) ( 1 − 4 μ x n ( 1 − x n ) ) + ( 2 − 2 μ ) x n ) mod 1 0 ≤ x n < 0.5 ( 4 μ ( 4 μ x n ( 1 − x n ) ) ( 1 − 4 μ x n ( 1 − x n ) ) + ( 2 − 2 μ ) ( 1 − x n ) ) mod 1 0.5 ≤ x n ≤ 1 \begin{equation} {x_{n + 1}} = \left\{ \def\eqcellsep{&}\begin{array}{l} (4\mu (4\mu {x_n}(1 - {x_n}))(1 - 4\mu {x_n}(1 - {x_n}))\\[5pt] \quad +\ (2 - 2\mu ){x_n})\bmod \;1\quad 0 \le {x_n} < 0.5\\[5pt] (4\mu (4\mu {x_n}(1 - {x_n}))(1 - 4\mu {x_n}(1 - {x_n}))\\[5pt] \quad +\ (2 - 2\mu )(1 - {x_n}))\bmod \;1\quad 0.5 \le {x_n} \le 1 \end{array} \right.\end{equation} (3)where the parameter μ ∈ [ 0 , 1 ] $\mu \in [0,1]$ . It can be seen from Figure 3 that the chaotic range of LLT map is small, the sequence distribution is uneven, and there is no chaotic behaviour in the range of [0.7, 0.9] (LE value is less than 0). This paper presents an improved LLT map, called NLLT map. It is defined as x n + 1 = ( 4 μ ( 4 μ x n ( 1 − x n ) ) ( 1 − 4 μ x n ( 1 − x n ) ) + ( 2 − 2 μ ) x n ) × 2 h mod 1 0 ≤ x n < 0.5 ( 4 μ ( 4 μ x n ( 1 − x n ) ) ( 1 − 4 μ x n ( 1 − x n ) ) + ( 2 − 2 μ ) ( 1 − x n ) ) × 2 h mod 1 0.5 ≤ x n ≤ 1 \begin{eqnarray} {x_{n + 1}} = \left\{ \def\eqcellsep{&}\begin{array}{l} (4\mu (4\mu {x_n}(1 - {x_n}))(1 - 4\mu {x_n}(1 - {x_n}))\\[5pt] \quad +\ (2 - 2\mu ){x_n}) \times {2^h}\bmod \;1\quad 0 \le {x_n} < 0.5\\[5pt] (4\mu (4\mu {x_n}(1 - {x_n}))(1 - 4\mu {x_n}(1 - {x_n})) + (2 - 2\mu )\\[5pt] (1 - {x_n})) \times {2^h}\bmod \;1\quad 0.5 \le {x_n} \le 1 \end{array} \right.\nonumber\\ \end{eqnarray} (4)where the parameter μ ∈ [ 0 , 1 ] $\mu \in [0,1]$ and the state variable x n ∈ [ 0 , 1 ] ${x_n} \in [0,1]$ . The 2h multiplier makes the distribution of state variables in phase space better [32]. In this paper, h is set as part of the key and 8 ≤ h ≤ 20 $8 \le h \le 20$ . FIGURE 3Open in figure viewerPowerPoint LLT map As shown in Figure 4, the chaotic sequence of the NLLT map is uniformly distributed and has a wide range of parameters, and the LE value is larger than that of the LLT map, indicating that its chaotic characteristics are more obvious and the degree of chaos is higher. FIGURE 4Open in figure viewerPowerPoint NLLT map NIST test In this paper, the national institute of standards and technology (NIST) test tool is used to test the randomness of the chaotic sequences generated by the improved cascade chaotic system. The NIST test tool contains 15 test items, and 15 corresponding P values are generated during the testing process. When the P value is greater than the default value of 0.01, it indicates that the sequence is random. Table 1 shows the NIST test results for NLLT map and LLT map. TABLE 1. NIST test results NLLT LLT Serial number Test items P value Test results P value Test results 1 Frequency 0.6822 Success 0.9748 Success 2 Block frequency 0.9775 Success 0.2889 Success 3 Cumulative sums 0.7247 Success 0.9696 Success 4 Runs 0.8941 Success 0.5134 Success 5 Longest run of ones 0.3228 Success 0.7432 Success 6 Rank 0.2362 Success 0.5509 Success 7 Discrete Fourier transform 0.4612 Success 0.1766 Success 8 Non-periodic template matchings 0.9999 Success 0.9999 Success 9 Overlapping template matchings 0.0168 Success 0.2545 Success 10 Universal 0.9985 Success 0.9964 Success 11 Approximate entropy 0.6448 Success 0.0740 Success 12 Random excursions 0.0395 Success 0.0022 Fall 13 Random excursion variant 0.3746 Success 0.0333 Success 14 Serial 0.2799 Success 0.0781 Success 15 Linear complexity 0.3914 Success 0.0004 Fall As can be seen from Table 1, the NIST test results of the NLLT map are all 'Success', while there are two 'Fall' in the LLT map, and nine test results in NLLT are higher than LLT, indicating that the pseudo-random sequence generated by the NLLT map has good random performance. 3 ZIGZAG TRANSFORM Standard Zigzag transform The Zigzag transform can scramble the pixels in the image. And Figure 5 shows the schematic diagram of the Zigzag scan. Starting from the first position in the upper left corner of Figure 5a, scan the 'Z' shape to get a one-dimensional matrix (c), and then convert (c) into a two-dimensional matrix (b). However, from the results it can be seen that the positions of some pixels will never change. Obviously, this method is not suitable for pixels scrambling. FIGURE 5Open in figure viewerPowerPoint Standard Zigzag transform Improved Zigzag transform In order to get a better scrambling effect, the standard Zigzag transform is improved. The improved Zigzag transform is scanned from the lower right corner, and the scanned matrix is shown in Figure 6. As can be seen, the positions of all the elements have changed. FIGURE 6Open in figure viewerPowerPoint Improved Zigzag transform 4 ENCRYPTION PROCESS Using the improved NLLT map, this section introduces a new image encryption scheme. It mainly includes two processes: scrambling and diffusion. The diagram of the encryption process is shown in Figure 7. FIGURE 7Open in figure viewerPowerPoint The flowchart of the proposed image encryption algorithm Initial values and parameters of chaotic system generated by SHA256 The SHA256 algorithm can convert the digital image information into a 256-bit binary string. When any small change occurs in the digital image, the string will change greatly. The initial values and parameters of the chaotic system can be obtained by using the binary string, which can associate the chaotic system with the image and increase the security. First, obtain the 256-bit hash value K of image to be encrypted by using the SHA256 algorithm, and then divide the hash K into 8-bit groups ( K i ${K_i}$ ), its expression is as follows: K = { K 1 , K 2 , … , K 32 } , subject to K i = { k i , 1 , k i , 2 , k i , 3 , k i , 4 , k i , 5 , k i , 6 , k i , 7 , k i , 8 } \begin{eqnarray} K &=& \{ {K_1},{K_2}, \ldots ,{K_{32}}\} ,\;{\rm{subject\ to}}\;{K_i}\nonumber\\ &=& \{ {k_{i,1}},{k_{i,2}},{k_{i,3}},{k_{i,4}},{k_{i,5}},{k_{i,6}},{k_{i,7}},{k_{i,8}}\} \end{eqnarray} (5)where in K i , j ${K_{i,j}}$ , i stands for the character number and j is the bit number in K i ${K_i}$ . Then generate the initial value x0 and parameter r of the chaotic system by K: x 1 = K 1 ⊕ K 2 ⊕ … ⊕ K 8 r 1 = K 9 ⊕ K 10 ⊕ … ⊕ K 16 x 2 = K 17 ⊕ K 18 ⊕ … ⊕ K 24 r 2 = K 25 ⊕ K 26 ⊕ … ⊕ K 32 \begin{equation} \left\{ \def\eqcellsep{&}\begin{array}{l} {x_1} = {K_1} \oplus {K_2} \oplus \ldots \oplus {K_8}\\[3pt] {r_1} = {K_9} \oplus {K_{10}} \oplus \ldots \oplus {K_{16}}\\[3pt] {x_2} = {K_{17}} \oplus {K_{18}} \oplus \ldots \oplus {K_{24}}\\[3pt] {r_2} = {K_{25}} \oplus {K_{26}} \oplus \ldots \oplus {K_{32}} \end{array} \right. \end{equation} (6) x 0 = ( ( x 1 + x 2 ) / 256 + U ) mod 1 \begin{equation}{x_0} = (({x_1} + {x_2})/256 + U)\bmod 1\end{equation} (7) r = ( ( r 1 + r 2 ) / 256 + V ) mod 1 \begin{equation}r = (({r_1} + {r_2})/256 + V)\bmod 1\end{equation} (8)where ⊕ represents XOR operation, U and V represent two user keys. Encryption algorithm Encryption algorithms mainly include scrambling and diffusion. Image scrambling can distribute pixels randomly in any location, which can effectively reduce the high correlation between them. Diffusion means that one pixel in the plaintext affects multiple pixels in the ciphertext, which can conceal the statistical characteristics of the ciphertext. The encryption steps in this paper are as follows: Step 1: Obtain the plaintext image G with the size of M × N $M \times N$ . x0 and r are obtained by using image G and SHA-256 algorithm. Iterate the NLLT chaotic map M × N + N 1 $M \times N + {N_1}$ times, and the first N1 term is discarded to eliminate the transient effect, and the chaos sequence X = { x 1 , x 2 , … , x M × N } $X = \{ {x_1},{x_2}, \ldots ,{x_{M \times N}}\} $ is obtained. Step 2: Obtain the integer sequence X ′ = { x 1 ′ , x 2 ′ , … , x M × N ′ } $X^{\prime} = \{ x{^{\prime}_1},x{^{\prime}_2}, \ldots ,x{^{\prime}_{M \times N}}\} $ : X ′ ( i ) = ( f l o o r ( X ( i ) ∗ 256 ) ) mod 256 \begin{equation}X^{\prime}(i) = (floor(X(i)*256))\bmod 256\end{equation} (9) Step 3: Scramble the image G using improved Zigzag transform and get 1D matrix P = { p 1 , p 2 , … , p M × N } $P = \{ {p_1},{p_2}, \ldots ,{p_{M \times N}}\} $ . Step 4: Obtain 1D matrix D and get cipher image Q by reshaping D to 2D matrix: D ( i ) = X ′ ( i ) ⊕ P ( i ) i = 0 D ( i ) = { [ X ′ ( i ) + P ( i ) ] ⊕ 256 } ⊕ X ′ ( i − 1 ) ⊕ D ( i − 1 ) i ≥ 1 \begin{equation} \left\{ \def\eqcellsep{&}\begin{array}{l} D(i) = X^{\prime}(i) \oplus P(i)\quad i = 0\quad \\[12pt] D(i) = \{ [X^{\prime}(i) + P(i)] \oplus 256\} \oplus X^{\prime}(i - 1)\\[12pt] \oplus D(i - 1)\quad i \ge 1 \end{array} \right. \end{equation} (10) The diagram of the diffusion sequence is shown in Figure 8. Figure 8a shows the scanning sequence of pixel diffusion in this chapter, Figure 8b shows the original image matrix, and Figure 8c shows the pixel diffusion sequence used in this chapter. In matrix (b), each data value in the matrix represents the diffusion order of the grid pixel point in which it is located. The number 1 represents the first one to diffuse, and the number 36 represents the last one to diffuse. Matrix (b) can be regarded as a scrambled image. The position of each pixel is determined after scrambling. If the pixel-by-pixel XOR method is used, it can be directly diffused in the order from 1 to 36. In order to make the structure of the diffusion algorithm more complex and ensure that the ciphertext image is more difficult to crack, a new diffusion sequence is designed. As can be seen from matrix (c), according to the order indicated by the arrow in matrix (a), the diffusion order has changed, and the method of diffusion one by one is no longer adopted. Its diffusion route is similar to a form of wave. First, the pixels represented by numbers 1 to 18 are diffused in order, and then the pixels represented by numbers 19 to 36 are diffused from the beginning. FIGURE 8Open in figure viewerPowerPoint Schematic of the diffusion sequence 5 SIMULATION EXPERIMENT AND SECURITY ANALYSIS This part shows the experimental results of our proposed encryption algorithm. The test images include Lena, Peppers, Couple, and Cameraman, all are 8-bit greyscale images of 256 × 256. Figure 9 shows the results of encryption and decryption experiments. FIGURE 9Open in figure viewerPowerPoint Encrypted and decrypted images (From top to bottom, left to right for plaintext, ciphertext and decrypted images, respectively) Histogram analysis The uniform pixel distribution can make the cipher image better hide the statistical characteristics of the plain image. From Figure 10 we could see that the encrypted image histogram is more uniform and can better resist statistical attacks. FIGURE 10Open in figure viewerPowerPoint Histogram analysis. (a–d) Plain image. (e–h) Cipher image Key space analysis The key space size is the key for cipher images to withstand violent cracking. Encryption algorithms should have a larger key space than 2100 for higher security [33]. The keys used in this paper include h = 8 $h = 8$ , N 1 = 800 ${N_1} = 800$ , U = 0.5643 $U = 0.5643$ , V = 0.6532 $V = 0.6532$ . Assuming that our computer has a calculation accuracy of 10−14, the key space of the proposed algorithm is 1056, which is much greater than 2100. Enough key space makes the algorithm in this paper safe for violent cracking. Key sensitivity analysis Secure encryption algorithms should be highly sensitive to keys. In the process of image decryption, if there is a slight change in the key used, the wrong plaintext image will be obtained. In this paper, we first make minor modifications to the three keys, and then use them to decrypt the image to yest key sensitivity of the algorithm. The experimental results are shown in Figure 11. Even if the key is slightly changed, the correct plain image cannot be obtained. FIGURE 11Open in figure viewerPowerPoint Key sensitivity analysis. (a) Decrypted with true key. (b) Decrypted with wrong key parameter U = 0.564300001. (c) Decrypted with wrong key parameter V = 0.653200001. (d) Decrypted with wrong key parameter h = 9 Information entropy analysis Shannon information entropy has been widely used to evaluate instability or unpredictability. The better the effect of the ciphertext image, the more random the distribution of grey value, and the greater the information entropy of the image. For a greyscale image whose data range is [0,255], the value of the maximum information entropy is 8. The calculation formula of Shannon's information entropy is as follows: H ( m ) = ∑ i = 0 2 N − 1 p ( m i ) log 2 1 p ( m i ) \begin{equation}H(m) = \sum_{i = 0}^{{2^N} - 1} {p({m_i}){{\log }_2}\frac{1}{{p({m_i})}}} \end{equation} (11)where N is the total number of samples (N is 8 in the greyscale image), m represents a collection of pixels, m i ${m_i}$ is the ith possible value in m, p ( m i ) $p({m_i})$ is the probability of the symbol m i ${m_i}$ . Firstly, the information entropy of the plaintext image is calculated, and then the ciphertext image is analyzed by using the algorithm in this paper and the methods proposed in [7], [19], [22], and [26]. The experimental results are given in Table 2. It can be seen that the information entropy of the cipher image is very close to the ideal value of 8. TABLE 2. Information entropy Image Plain Ref. [7] Ref. [19] Ref. [22] Ref. [26] Proposed Lena 7.5683 7.9976 7.9993 7.9973 7.9970 7.9976 Peppers 7.5251 7.9980 7.9993 7.9969 7.9974 7.9980 Cameraman 7.0097 7.9971 7.9969 7.9968 7.9974 7.9971 Analysis of the ability to resist differential attacks Image encryption system should be highly sensitive to plaintext, that is, slight changes in plaintext images will bring about great changes in ciphertext images. Differential attack is an effective attack method. Differential attack is to make small changes to the original image, encrypt it according to the same encryption algorithm, and then analyze and compare the images before and after encryption to find the relationship between them for the purpose of cracking. Therefore, a good ability to resist differential attacks is what all excellent image encryption algorithms should have. Generally, pixel rate of change (NPCR) and uniform average intensity of change (UACI) are used to test the ability of encryption algorithms to resist differential attacks. For greyscale images, the expected values of NPCR and UACI are N P C R = 99.6094 % $NPCR = 99.6094\% $ and U A C I = 33.4635 % $UACI = 33.4635\% $ . They are defined as follows: N P C R = 1 M × N ∑ i = 1 M ∑ j = 1 N G ( i , j ) × 100 % \begin{equation}NPCR = \frac{1}{{M \times N}}\sum_{i = 1}^M {\sum_{j = 1}^N {G(i,j) \times 100\% } } \end{equation} (12) U A C I = 1 M × N ∑ i = 1 M ∑ j = 1 N | G 1 ( i , j ) − G 2 ( i , j ) | 255 × 100 % \begin{equation}UACI = \frac{1}{{M \times N}}\sum_{i = 1}^M {\sum_{j = 1}^N {\frac{{|{G_1}(i,j) - {G_2}(i,j)|}}{{255}} \times 100\% } } \end{equation} (13) G ( i , j ) 0 i f G 1 ( i , j ) = G 2 ( i , j ) 1 i f G 1 ( i , j ) ≠ G 2 ( i , j ) \begin{equation}G(i,j)\left\{ \def\eqcellsep{&}\begin{array}{l} 0\quad if\,{G_1}(i,j) = {G_2}(i,j)\\[6pt] 1\quad if\,{G_1}(i,j) \ne {G_2}(i,j) \end{array} \right.\end{equation} (14)where G1 represents the ciphertext image corresponding to the original image, G2 represents the ciphertext image after changing a pixel of the original image, G ( i , j ) $G(i,j)$ represents the pixel value at the ( i , j ) $(i,j)$ position in the image G, and M and N represent the length and width of the image respectively. Table 3 shows the experimental results of differential analysis between our algorithm and other algorithms in the literature. Acco