An Image Encryption Scheme Based on Hyperchaotic Rabinovich and Exponential Chaos Maps

: This paper proposes a new four-dimensional hyperchaotic map based on the Rabinovich system to realize chaotic encryption in higher dimension and improve the security. The chaotic sequences generated by Runge-Kutta method are combined with the chaotic sequences generated by an exponential chaos map to generate key sequences. The key sequences are used for image encryption. The security test results indicate that the new hyperchaotic system has high security and complexity. The comparison between the new hyperchaotic system and the several low-dimensional chaotic systems shows that the proposed system performs more efficiently


Introduction
In recent years, chaos [1][2][3][4] has been used widely in encryption schemes. In 1979, Rossler [5] described the first hyperchaos system. Based on some classical systems, many scholars have made new development [6,7], but even so, generating a new hyperchaotic system is still a challenge.

OPEN ACCESS
Based on the Chen system, Jia [8] constructed a four-dimensional hyperchaos by adding one dimension and changing xy to y 2 . Based on the Rossler system, Deng [9] constructed a new four dimensional hyperchaotic Rossler system by adding a feedback control. Based on the Lü system, Shen [10] added one new nonlinear term and Pang [11] added two nonlinear terms to construct the four-dimensional hyperchaos. Huang et al. constructed a four-dimensional non-linear dynamics system [12] based on the features of nonlinear parts of Qi attractor and Chen attractor. Zhang [13] constructed a Qi unified hyperchaos system by adding linear feedback control and new dimensions in the Qi chaos system. In addition, some three-dimensional chaotic systems, such as chaotic financial system [14] and Rabinovich system [15], are proposed and proved. These three-dimensional systems provide a reference and basis for future studies.
In all the chaotic systems, the hyperchaotic system has two or more than two positive Lyapunov exponents. To generate a hyperchaotic system, it needs at least four dimensions for the integer order continuous autonomous system. Chaotic sequences of hyperchaotic system are more dependent on the parameters and the initial conditions, so its dynamic behaviors are more difficult to predict and the chaos attractor is more complex. Diffusion and confusion can be carried out simultaneously in several dimensional spaces. Therefore, hyperchaotic system has a distinct advantage over low dimensional chaos.

Design and Dynamic Behavior Analysis of New Hyperchaotic System
In this section, a new hyperchaotic system is constructed and proved to be hyperchaotic. Then the dynamic behaviors of this new hyperchaotic system are presented. Finally, the exponential chaotic map is introduced. The proposed hyperchaotic system will be combined with the exponential chaotic map to design a pseudorandom number generator (PRNG) in Section 3.

Design of New Hyperchaotic System
Rabinovich system, closely associated with Lorenz chaotic system, is described as follows: The dynamic properties of this system and that of the Lorenz system are similar, but they are not topology equivalent. When a = 4, b = d = 1, 4.84 < h < h0 (where h0 (≥4.92) is the value of one of the features), the system is chaotic. By adding a new parameter w to the Rabinovich system, a new hyperchaotic system is constructed. It is:  (2) where xy is fed back into the new parameter w. The appearance of chaos attractor is controlled by the parameters.
As we know, hyperchaotic system must meet the following conditions: (1) The dimension of the phase space of an autonomous system is at least four.
(2) There are two equations at least to increase the instability of the system. The two equations have one nonlinear term at least, respectively. (3) The system has two or more than two positive Lyapunov exponents. Moreover, the sum of the four Lyapunov exponents is less than zero. (4) The Lyapunov dimension of the system is a fraction. For the proposed system, the first two conditions are satisfied obviously. Now we consider the last two conditions. When a = 4, b = −0. 5 Then the system meets the fourth condition. So the proposed system is a hyperchaotic system. Lyapunov exponent characterizes the separation rate of infinitesimally close trajectories. The bigger the Lyapunov exponent is, the faster the trajectories separate is. Moreover, the maximal Lyapunov exponent characterizes the typical dynamic speciality of a system. We have compared the Lyapunov exponents of the proposed hyperchaotic system and that of other hyperchaotic systems. The results are shown in Table 1. Obviously, the maximal Lyapunov exponent of the proposed hyperchaotic system is bigger than that of other systems. So the proposed system has better dynamic characteristics.

Dissipation and Existence of Hyperchaotic Attractor
In Equation (2), when a = 4, b = −0.5, d = 1, h = 8.1 and c = −2.24, there is . That is, the system is a dissipative system. For the volume element of which initial volume is V0. When t→∞, it exponentially converges to 0 with the rate, a + b + d − c, along the system track. That is, the track curve of the system will eventually be fixed to an attractor. When a = 4, b = −0.5, d = 1, h = 8.1, c = −2.2 and the initial value is [0.8, 0.3, 10.1, 4.5], two dimensional phase planes of the chaotic attractors of the hyperchaotic Rabinovich system is shown in Figure 1.
It is shown that the proposed Rabinovich map has clear strange attractor in two-dimensional planes. Numerical simulation proves the existence of the chaotic attractor. The x-y-z phase planes of the chaotic attractors of the proposed Rabinovich system is shown in Figure 2a. The x-y-w phase planes of the chaotic attractors are shown in Figure 2b. From Figures 1 and 2, we can see the strange attractors of the proposed system clearly.
, we can find the equilibrium points of the system. In the equilibrium point P0(0,0,0,0), Jacobi matrix is: The eigenvalues of the Jacobi matrix are −2.2, −1, 76.775 and −80.275. If there is at least one eigenvalue of the Jacobi matrix of which the real part is greater than 0, then the equilibrium state is unstable. Calculations shows that the equilibrium point P0(0,0,0,0) is unstable. For the remaining eight equilibrium points, each equilibrium point has at least one eigenvalue of which the real part is greater than 0. Therefore, the equilibrium points are all unstable.

Non-periodic Flow
Using fourth-order Runge-Kutta method, we can get the chaotic sequences of the proposed system with step size 0.01. When a = 4, b = −0.5, d = 1, h = 8.1 and c = −2.2, we can get time responses of the four variables. The four variables of the proposed system change with time t are shown in Figure 3. As can be seen from this figure, each variable changes on a certain range over time. Obviously, the change of variable shows a disorderly and unsystematic characteristic, not a periodic characteristic.
Theoretical analysis and numerical simulation show that the proposed system has the following characteristics: qualified dimensionality is greater than or equal to 4; there are two equations at least which have at least one nonlinear term; it has dissipative structure and two positive Lyapunov exponents; equilibrium points are unstable; strange attractors can be observed clearly on three dimensional phase planes. Therefore, the proposed system is a hyperchaotic system.

Exponential Chaos Algorithm
A low-dimensional chaotic map is just a simple iteration. Its iterative process is too singular, with less initial values and parameters. It has a stable periodic window, but the chaotic sequence generation speed is faster than in a hyperchaotic system, so we combine the proposed hyperchaotic map and the one-dimensional exponential chaos map together to generate key-stream sequences to get better performance. The exponential chaos map [17] is shown as follows: where the variable x∈[0, 1] and the parameter index is an arbitrary real number greater than 1.
Let index = 200, x0 = 0.05 and the iteration number be 10,000. The chaotic sequence values generated by the exponential chaotic map are shown in Figure 4. Moreover, the sequence is even-distributed in the interval [0, 1]. The histogram of the sequence distribution is shown in Figure 5.

Design of Pseudo-random Sequence Based on Hyperchaotic Map
In order to improve encryption security, the pseudo-random sequence is designed affected by plaintext: (1) Chaotic sequences preprocessing Let the four chaotic sequences obtained by the hyperchaotic map be {xn}, {yn}, {zn} and {wn}, respectively. The sensitivity of chaotic trajectories to the initial conditions is the typical characteristic of chaos. It is also a cause of applying chaos to encryption, but some values at the beginning don't meet the sensitivity to the initial conditions, so to get better randomness, the previous N0 numbers of the four sequences are discarded. The new sequences are denoted still as {xn}, {yn}, {zn} and {wn}, respectively. Here we set N0 = 100.
where zmax denotes the maximum value and the minimum value of the sequence {zn}, respectively. The sequence obtained in this stage is denoted by {z′n}.
(4) Exponential chaos processing The values in the sequence {z′n} are put into the exponential chaos map in Equation (5). Here we set the parameter index = 200 in Equation (5). This parameter, index, is used as a key. The iteration number, itera, of each value in the sequence {zn} is: where ( ) ceil ⋅ is the rounded up function.
At this point, we get a pseudo-random sequence, Rand. The size of this sequence is M × N. And this sequence values in [0, 1]. The generation process of the pseudo-random sequence, Rand, is shown in Figure 6:

Encryption Algorithm
Image encryption schemes are usually implemented in two steps: the first step is image scrambling, and the second step is pixel substitution. Image scrambling is carried out in the spatial domain. An image can be described by the position and the pixel value. Image scrambling is to change the position relationship between the pixels in the image. It changes the image from an original digital image into a noise-polluted image. Pixel substitution is implemented by XOR or other operation with other sequence or matrix to change original image pixel value.
(1) Image scrambling In image scrambling stage, the chaotic sequence used in scrambling is selected from the pseudo-random sequence Rand generated by the pseudo-random sequence generator. The selected chaotic sequences used to sort are the same sequences, so the selection rule is important. To improve the security, the selection rule is designed to relate to the plain image. The first value, csd1, selected from the chaotic sequence used to scramble the rows of the image is obtained as follows: 1 mod[ (1,1) 100, ( ( / 2), ( / 2))] 5 csd P P ceil M ceil N = × + where P(i, j) denotes the pixel value of the plain image at the position (i, j) and ( ) ceil ⋅ indicates the rounded up function.
The first value, csd2, selected from the chaotic sequence used to scramble the columns of the images is obtained as follows: Both csd1 and csd2 are used as the keys. To make the receiver able to decrypt the cipher image, csd1 and csd2 must be sent to the receiver. After scrambling, we get the resulting image M.
(2) Pixel value substitution (A) Pseudo-random sequence pretreatment The pseudo-random sequence generator produces a pseudo-random sequence Rand. The values in the sequence belong to the interval [0, 1]. Then the pseudo-random sequence Rand is transformed into a new sequence RandImage used in pixel substitution: In Equation (9), ( ) fix ⋅ indicates the truncating toward zero.

(B) Pixel value substitution process
We also need the custom key MC used to encrypt the pixel values at the position ) 1 , 1 ( in the scrambled image M, from which the new value generated is used in diffusion. Equation (11) shows that: (1) ( (1,1) Image (1) ) mod 256 In Equation (11), is a pixel value of each sub-block after scrambling at the position (1,1).
, the converting Equation (12) is as follows: is a pixel value of the image M in the i-th position after scrambling which is sorted to a one-dimensional array based on the order of row and line. The resulting array C is arranged into a matrix which is the final cipher-image.

Decryption Algorithm
All the keys are plugged into the proposed hyperchaotic system and the exponential chaos map to get the sequence Rand used in scrambling and the sequence RandImage used in substitution.
According to the encryption algorithm, the decryption algorithm is shown below: (1,1) ( (1) Image(1)) mod 256, 1 ( , ) ( ( ) ( 1) Image( )) mod 256, 2 where ) (i C is a pixel value of cipher-image in the i-th position after scrambling which is sorted to a one-dimensional array based on the order of row and line. By taking this step, we can get the image M after scrambling. Next, the padding out plain image is obtained by making M and pseudo-random sequence Rand used in scrambling to sort in reverse order. According to the size of the original image, we get rid of the redundant pixels to get the plain image.

Encryption Test and Security Analysis
The following tests are realized by MATLAB software on an Intel Core 2 Duo 2.4 GHz PC.

Encryption Test
The first original image as shown in Figure 7a in experiment is the well-known Lena image. The size of the image is 256 × 256, the grayscale is L = 256. The encryption result is displayed as Figure 7b.
The second original image is the Jokul image, as shown in Figure 8a. Its size is 900 × 960, the grayscale is L = 256. The encryption result is displayed as Figure 8b. From the encryption results as shown in Figure 7b and Figure 8b, we cannot obtain any information about the plain-images. That is, the algorithm passes the subjective test. The appraisal method of image encryption consists of a subjective test and an objective measuring test. Here, we use the subjective test to measure the encryption effect.

Security Tests
(1) Histogram analysis The histograms of the encrypted images are shown in Figure 9a and Figure 9b, respectively. From the results, we can see that the pixel distribution of the cipher-images is fairly uniform, which can greatly reduce the correlation between the pixel values. In 2003, the United States National Institute of Standards and Technology issued "Special Publication 800-22" (SP 800-22) for cryptographic random and pseudorandom number statistical tests. This is one of the most extensively inspection standards by far. It is well-known that NIST SP 800-22 tests are applied for 0-1 sequences, so the cipher-image can be regarded as a binary data stream file. Thus the cipher-image is tested as 0-1 sequences. The test results of the cipher-image of Lena are shown in Table 2. As can be seen from Table 2, the cipher-text sequence can pass all the tests. It can be said that the cipher-text sequence is a pseudo-random sequence. The randomness of the cipher-image is good.

(3) Key space analysis
The key space for a good encryption scheme should be big enough to resist brute-force attacks. From Figures 3-7, the point sequence in each dimension will eventually return to a safe range and this range is the suggested range of initial value. The range of the sequence {xn} is about [−10, 10], the range of the sequence {yn} is about [−6, 6], the range of the sequence {zn} is about [4,20], the range of the sequence {wn} is about [0,8]. We assume the key spaces of the four variables are K1, K2, K3 and K4, respectively. Then the total key space of this hyperchaotic system is K1* K2* K3* K4. In addition, there are other two key parameters, namely, csd1 and csd2 used in scrambling, the custom key MC and the parameter index in the exponential chaos map. The custom key MC is a positive integer. The parameter index is greater than 1, so the key space of the proposed scheme is big enough to resist the brute-force attacks.

(4) Differential attack analysis
The attacker may seek to observe variations of the ciphertext in the tiny variations of the plaintext to find the correlation between the plaintext and the ciphertext. If a tiny change in the original image can lead to a great change in the cipher image, then the algorithm can effectively resist these differential attacks. Generally, the Number of Pixels Change Rate (NPCR) and the Unified Average Changing Intensity (UACI) can be used to describe the ability to resist the differential attack. Their definitions are as follows: where W and H are the width and height of the image, respectively. C1(i, j) and C2(i, j) are the corresponding pixels of two images. If C1(i, j) = C2(i, j), then D(i, j) = 0, otherwise D(i, j) = 1. The ideal values of NPCR and UACI are 99.61% and 33.46%, respectively. A pixel is selected randomly from the original image. The corresponding ciphertexts of this new plain image and the original image can be obtained by the proposed algorithm, respectively. In this way, 500 tests are implemented and the corresponding values of NPCR and UACI can be obtained. Thus we can get the average values of NPCR and UACI. The results are shown in Table 3. From Table 3, we can see that the values of NPCR and UACI are close to the ideal values. It means that one bit difference of the plain image can diffuse to the whole cipher image, and we can conclude that the algorithm can resist differential attacks.

(5) Key sensitivity analysis
A secure encryption scheme should be sensitive to the key. Very tiny differences between the initial values will lead to the completely different cipher-images. In this test, the chaotic sequences of the proposed system are obtained by the fourth-order Runge-Kutta algorithm with step size 0.01. The results are shown in Figure 10. Figure 10(a) and Figure 10 Figure 10c shows the decrypted result of C1 with the right key K1. Figure 10d shows the decrypted result of C1 with the wrong key K2. In spite of tiny difference between K1 and K2, C1 cannot be decrypted correctly.
To evaluate the key sensitivity further, we test the values of NPCR and UACI between C1 and C2, respectively. As an example, Table 4 shows the test results of the image "Lena". Based on the above analysis, it can be concluded that the proposed encryption scheme is sensitive to the key.
(6) Information entropy analysis Image information entropy can measure the distribution of image gray values. The more uniform the gray value distribution is, the bigger the information entropy is. The less information of the original image can be obtained from the gray value distribution of the cipher-image by the attacker, the higher security the encryption algorithm has. Image information entropy is defined as: where pi is the probability of the gray value. The ideal value of the cipher information entropy is 8. The information entropy of the cipher-image for Lena generated by the proposed algorithm is 7.9893. The information entropy of the cipher-image for Jokul generated by the proposed algorithm is 7.9920. They are both close to the ideal value, so to the ciphertext attackers, the cipherimage pixels are statistically independent of each other, so it is difficult to decrypt the cipertext.

Analysis of Chaotic Maps with Others
The maximum Lyapunov exponent of Rabinovich system is 0.1459, while the maximum Lyapunov exponent of the new hyperchaotic Rabinovich system is 1.090046. The bigger the Lyapunov exponent is, the faster the trajectories separate and the wider the corresponding separatrix of the chaotic region is, so the dynamic behaviors of the new system are better than that of the original system.
In our design, the total number of target points of chaotic map is 256 × 256. The following experiment is processed on computer with 2.7 GHz CPU, 2 GB memory with Windows XP operation system. We generate 256 × 256 points sequences using the proposed hyperchaotic system, the Logistic map and the cube map, respectively. The run times are shown in Table 5. 3.1520 Table 5 shows that the speed of the proposed map is faster than several low-dimensional chaotic systems. Appling the chaotic sequence generated by the proposed system to encrypt images is more efficient.

Conclusions
In this paper, we construct a new four-dimensional hyperchaotic system by adding a nonlinear term to the Rabinovich system. Then we analyze the basic dynamic characteristics of the proposed system. The chaotic sequences of the proposed system are generated by the Runge-Kutta method. These sequences are put into the exponential chaos map to generate the key sequence. A selection rule related to the plain image is designed to select the different sub-segment from the key sequence. The key sequence is associated with the plaintext to scramble and diffuse the pixels of the plain image. The security analysis, including histogram, randomness, information entropy and key sensitive, shows that the proposed system has good security and complexity. Moreover, the key space is big enough to resist the brute-force attack. The comparison with several low-dimensional chaotic systems shows that the system has more efficiency.