A Novel Chaos-Based Stream Cipher for Image Encryption

In this paper, we introduce a novel chaos-based image encryption scheme. We perform our scheme using both the binary form and decimal form of chaotic maps. We also use two chaotic maps; one generates the initial values of the other. Thus, we utilize the best two properties of chaos ergodicity and sensitivity to the initial value. We increase the security of the cipher by introducing a reverse order round to resist cryptanalysis attacks.


INTRODUCTION
In recent years, the transmission of digital images over communication media has developed greatly. The problem of security in storage and transmission of confidential visual information is therefore growing in importance, and requires solutions for many applications. Recently, a number of chaos-based image encryption systems and random number generation algorithms based on discrete chaos were proposed [1,3,7,[9][10][11][12][13], but security is generally not high enough. In fact, many chaos-based cryptography schemes have shortcomings. In this paper, we introduce a new scheme to encrypt an image. Its idea is to generate from one initial condition several chaotic initial conditions by the first chaotic map, e.g., Logistic map, for another chaotic map, e.g., PWLCM. Then, we use the resultant chaotic sequences of the second map in both forms, the binary form and the real number form, and apply it to diffuse and confuse the image. Also, we use a delay operation to increase the security.

ENCRYPTION SCHEME
In this section, we briefly discuss our proposed method to encrypt any colored image. Let us begin with the key design and then introduce the encryption process and decryption process to recover the plain image.

Key Design:
The key is the basic part in the encryption-decryption processes. We set it to be composed of three real numbers between 0 and 1 (each part is 64 bits). As we will discuss below, we will use two different maps; one generates the initial conditions for the other. Hence, these three numbers will be chosen to be linearly mapped into the intervals identifying the initial condition x0, the parameter p1 for the first map and the second map parameter p2. It is to be noted that we are concerned only with the parameters' intervals causing the chaotic behavior. Here we will use the Logistic map firstly and apply it for the PWLC map where 0< x0 <1, 3.56994567…< p1 <4 and 0< p2 <0.5 (please refer to their bifurcation diagrams in [2]). Therefore, the total key length is 192 bits (3 times 64 bits).
Let the colored image has M×N pixels. Fig. 1 shows the encryption scheme diagram. To encrypt the image, we proceed as follows: 1) Take the initial condition and run the first map N times.
2) Use each of the N outputs as an initial value to the second map and run it up to M iterates. So we get S an M×N matrix of chaotic real numbers.
3) Now, we start with diffusion. We will take the horizontal form of S to be horzS. Multiply it first by M andconsidering the integer part only and calculate "q1" vector by picking up the first different M integer numbers and then by N for the rest of horzS to calculate "q2" vector by the same way. 5) Return to S and change its decimal form to binary form for 24 bits. For example, let S(i,j)=0.123456789012345 then its digital form will be e=000111111001101011011101. Divide e into 3 bytes e1, e2 and e3. Put e3 in E1(i,j), e2 in E2(i,j) and e1 in E3(i,j). We get a chaotic digital image E.
6) The delay element: we will use the P image and E image in a horizontal form and apply the pixels encryption delay by this way (it is similar to that in [3], but we will add Reverse order round in the next step): C"(i)= E(i)  (P(i) + C"(i-1)) mod 256.

Fig. 1: Encryption scheme
Decryption: It is easy to decrypt the cipher image. We can reverse these steps and get the original image as follows: 1) The inputs to the decryption are the cipher image C and the key. So we begin by extracting q1, q2 and the chaotic image E by using the key.
2) Apply the next formula: 3) Repeat step 2 with the reverse of C" instead of C to get the P image as follows, 4) Use q1 and q2 to get the plain image.

EVALUATION CRITERIA
1) H Hi is st to og gr ra am m o of f t th he e c ci ip ph he er r: : It illustrates how characters/pixels in a text/image are distributed by graphing the number of characters/pixels at intensity level. To avoid statistical attacks, the histogram of encrypted should be different from original plaintext and fairly uniform.

2) C
Co or rr re el la at ti io on n c co oe ef ff fi ic ci ie en nt t: : it describes the relation between two sequences values x, y by the formula: where C is the encrypted image and C" is the encrypted image after one pixel change in the plain image. If NPCR is over 99% and UACI is near 33.4% then the encryption method can resist differential attacks efficiently.

6) NIST tests:
The National Institute of Standards and Technology (NIST) introduced the NIST Statistical Tests [8].
NIST tests are a group of different tests, we will perform 13 of them to investigate the randomness of the encrypted image.

ANALYSIS
We perform this scheme on Lena image of size 256×256 (as shown in Fig. 1). We apply the previous tests discussed in the previous section. Table 1 and Table 2 show the plain and cipher images analysis, respictively. The cipher image performed analysis shows that its pixels are truely uncorrelated and demonstrates very high entropy values compared to that of the plain image results. In Table 2, The entropy test is more than 7.99, which indicates highly randomized unpredictable values between 0 and 255 for the cipher images. The Histograms of Fig. 2 indicate also the uniform distribution of the pixel values. Pixel correlation coefficients for horizontal, vertical, and diagonal representations were around 0.0l3, implying that the encryption process produces ciphers with extremely low correlation between neighboring pixels (see also Fig. 3). The differential attack results show great independence between the two cipher images slightly different in their plain images; the NPCR was 99.6369 and its UACI was 33.4572.  In addition, Table 3 shows the NIST results where all the thirteen tests have been passed successfully. Test 1: If we take k0 = 0.232323000000001 instead of k0 = 0.232323, the decrypted images will be as shown in Figure  4(a).

Test 2:
If we take k1 = 0.95349424804071 instead of k1 =0.95349424804070, the decrypted images are as shown in Figure 4(b).

Test 3:
If we take k2 = 0.92000000000001 instead of k2 = 0.92, the decrypted images are as shown in Figure 4(c).   Table 4 shows the MSE and entropy results of the three mentioned tests for the Lena wrong decrypted image. It is clear from the results that the key is very sensitive for a very small change and that the key space is 10 42 . Now, we can compare our results to other references for colored Lena image of size 256 × 256 as follows:   Table 5 shows that our proposed scheme is good as other encryption methods in correlation and differential attack results.