Loading web-font TeX/Main/Regular
Color Image Compression-Encryption Using Fractional-Order Hyperchaotic System and DNA Coding | IEEE Journals & Magazine | IEEE Xplore

Color Image Compression-Encryption Using Fractional-Order Hyperchaotic System and DNA Coding


Color image compression-encryption algorithm based on fractional-order hyperchaotic system and DNA coding.

Abstract:

Recently, many encryption algorithms based on fractional-order chaotic system have been proposed to solve the problem of image encryption. In this paper, we propose a nov...Show More

Abstract:

Recently, many encryption algorithms based on fractional-order chaotic system have been proposed to solve the problem of image encryption. In this paper, we propose a novel color image compression-encryption algorithm based on fractional-order hyperchaotic system and DNA coding. In the data compression stage, the data of R, G, and B channels of the color image are converted to the frequency domain by two-dimensional discrete cosine transform (DCT), and then the amount of encrypted data is reduced by the quantization process. We design a data processing algorithm to ensure that the data after DCT is compatible with DNA coding data format. In the encryption stage, the processes of DNA encoding and decoding, DNA operation, and pixel scrambling are all controlled by the corresponding chaotic sequences, which are generated by the chaotic system. The original image is used to calculate the initial state of the chaotic system, which improves the performance of the algorithm against the chosen-plaintext attack significantly. Experimental results and security analysis illustrate that the proposed algorithm has excellent compression and security performance. It can not only reconstruct the original image well under the condition of low compression ratio, but also provide high security to resist various attacks. Besides, experimental results also indicate that the algorithm proposed can be applied to the fields of color image compression, encryption, and transmission.
Color image compression-encryption algorithm based on fractional-order hyperchaotic system and DNA coding.
Published in: IEEE Access ( Volume: 8)
Page(s): 163524 - 163540
Date of Publication: 07 September 2020
Electronic ISSN: 2169-3536

Funding Agency:


CCBY - IEEE is not the copyright holder of this material. Please follow the instructions via https://creativecommons.org/licenses/by/4.0/ to obtain full-text articles and stipulations in the API documentation.
SECTION I.

Introduction

One of the important signs of the information age is that people can realize information sharing without the limitation of time and space. The transmitted data also transits from the original text data to the multimedia data, and the color image is an important part of the multimedia data. Although classical cryptography can encrypt one-dimensional (1D) data well [1], it is not suitable for two-dimensional (2D) data such as image [2]–​[3]. And because of the larger amount of information carried by color image, it is necessary to design a compression-encryption algorithm which can transmit it efficiently and safely.

Since Lorenz discovered the first chaotic attractor in 1963 [4], the research on the chaotic system has taken root and flourished. Because the state of the chaotic system is disordered and the generated chaotic sequence is highly sensitive to the initial value of the system [5], there are more and more complex chaotic systems [6], synchronization control methods between chaotic systems [7], and image encryption algorithm based on the chaos [8]–​[11] have been proposed. Hua et al. used a 2D Logistic-adjusted-Sine map to encrypt images [9]. In [10], Pak et al. used the combination of the 1D chaotic map to encrypt color images. Zhang et al. introduced the unified image encryption algorithm based on chaos and cubic S-Box [11]. However, the trajectory of the low-dimensional chaotic system is simple and can be predicted to a certain extent, and its key space is small. Therefore, high dimensional chaotic systems have been applied to more and more encryption algorithms [12]–​[19]. A new approach of image encryption based on 3D chaotic map is proposed through Hossain et al. [12]. Zhang et al. proposed a color image encryption algorithm based on the spatiotemporal chaos of the nonlinear coupled map lattices and genetic operations [13]. Ye et al. designed a block chaotic image encryption scheme based on self-adaptive modelling [17]. Yang et al. used Qi hyperchaotic system and singular value decomposition in YCbCr color space to encrypt color images [18]. Although the image encryption algorithm designed by high-dimensional chaotic system improves its security performance greatly, it is not involved in image compression.

Due to the high correlation and redundancy of image pixels, how to compress the image for transmission has become an urgent problem. To solve this problem, many related algorithms are proposed [20]–​[26]. Chai et al. used block compressive sensing (CS) and elementary cellular automata to encrypt and compress images [20]. Li et al. introduced joint image encryption and compression schemes based on 16\times16 DCT [21]. Gong et al. designed an image compression-encryption scheme by combining the hyperchaotic system with discrete fractional random transform [25].

DNA coding has the characteristics of high parallelism, low power consumption and high information density [27]. The application of DNA coding and DNA computing based on the chaotic system can further enhance the effect of pixel scrambling and confusion, and improve the security and parallelism of the algorithm [28]–​[40]. Liu et al. proposed an RGB image encryption algorithm based on DNA encoding and chaos maps [28]. A novel chaotic image encryption scheme based on DNA sequence operations is proposed through Wang et al. [29]. Wang et al. proposed a novel color image encryption scheme based on DNA permutation and the Lorenz system [31]. Wu et al. used a 2D Hénon-Sine map and DNA approach to encrypt images [33]. Liu et al. presented an image encryption scheme based on the hyperchaotic system and DNA with fixed secret keys [38].

With the deepening of research, people find that there are a lot of fractional dimensions in reality, and fractional dimensions can describe natural phenomena preferably compared with the traditional integer-order chaotic system [41]. Besides, the fractional-order chaotic system has the characteristics of nonlocality, high nonlinearity, and can greatly enhance the key space [42], which makes the research on it become a new trend. Although the solution of fractional-order differential equation is more complex than that of integer order, many papers have proposed based on the Adomian decomposition method (ADM) to solve this problem [43]–​[47], which can effectively reduce the calculation time. Then, more efficient image encryption schemes based on the fractional-order chaotic system have been proposed [48]–​[59]. Yang et al. designed an image compression-encryption scheme based on fractional-order hyperchaotic systems combined with 2D compressed sensing and DNA encoding [49]. In [55], the authors proposed a three-dimensional fractional-order discrete Hopfield neural network and applied it to image encryption. In [56], Ismail et al. presented a lossless image encryption algorithm based on edge detection and generalized chaotic maps for key generation. Generalized chaotic maps are used to design pseudo-random number key generator. In [58], the authors proposed an image compression-encryption scheme based on set partitioning in hierarchical trees coding-decoding algorithm and synchronization of chaotic maps with non-integer order. Although the image encryption algorithm based on the chaotic system develops rapidly, not all algorithms based on this principle are secure. For example, image encryption algorithms [10], [28] and [33] are all proved to be able to be cracked by chosen-plaintext attack [60]–​[62], because these encryption algorithms are not sensitive to changes of plaintext. Among the recently proposed algorithms, the fractional-order chaotic system is not used in the algorithm [38] and DNA computing is not used in the algorithm [42]. In addition, algorithm [48] only uses DNA addition and subtraction to encrypt images and algorithm [49] can only encrypt the gray image.

According to the above analysis, we design a new image compression-encryption algorithm to overcome these shortcomings, which has the following contributions. First of all, our algorithm can encrypt color images of any size effectively and can compress the image according to different quantization matrix. Secondly, we calculate the initial value of the chaotic system through different bit-planes of the image, which makes the initial value of the chaotic system highly sensitive to the plaintext and improves the performance of the encryption algorithm against the chosen-plaintext attack. Thirdly, we use four kinds of DNA operations (add, subtract, XOR, XNOR) to further confuse image pixels, and these four operations and DNA coding are controlled by chaotic sequence, which greatly enhances its security performance. At last, we give the calculation process of using the Adomain algorithm to solve the fractional-order hyperchaotic Chen system in detail, and take the initial state of the fractional chaotic system as the key, which greatly improves the key space of the system.

The rest of this paper is arranged as follows. Section 2 introduces the preliminaries about the fractional-order hyperchaotic Chen system, the Adomian decomposition method, the solution of fractional-order hyperchaotic Chen system and DNA coding and operations. Section 3 describes the image compression-encryption algorithm based on fractional-order hyperchaotic Chen system and DCT in detail. Section 4 deals with the experimental simulation and security analysis. Finally, a brief conclusion is drawn in Section 5.

SECTION II.

Preliminaries

A. Fractional-Order Hyperchaotic Chen System

In 1999, Chen first proposed Chen chaotic system [63]. Then the hyperchaotic Chen system is proposed, which is defined as follows [64]:\begin{align*} \begin{cases} \dot {x_{1}} = a(x_{2} - x_{1}) + x_{4}\\ \dot {x_{2}} = bx_{1} + x_{1}x_{3} + cx_{2}\\ \dot {x_{3}} = x_{1}x_{2} - dx_{3}\\ \dot {x_{4}} = x_{2}x_{3} + rx_{4}, \end{cases}\tag{1}\end{align*}

View SourceRight-click on figure for MathML and additional features. where \dot {x_{i}} are the derivative of system state variable x_{i}(i=1,2,3,4) . a, b, c, d and r are positive parameters. When a = 35, b = 3, c = 12, d = 7, r \in (0.1085,0.1798] , the system of Eq. (1) is hyperchaotic.

In this paper, the Adomian decomposition method is used to solve the fractional differential equation, which uses Caputo differential operator. Caputo fractional differential is defined as follows [65]:\begin{align*}&\hspace {-1.8pc}{ ^{*}}{D_{t}^{q}}f(t) \\=&\begin{cases} 0 \dfrac {1}{\Gamma (m-q)}\int _{0}^{t} \dfrac {f(m)(\tau)}{(t - \tau)^{q + 1 - m}} d\tau, & m - 1 < q < m\\ \dfrac {d^{m}}{dt^{m}}f(t), & q = m, \end{cases}\tag{2}\end{align*}

View SourceRight-click on figure for MathML and additional features. where { ^{*}}{D_{t}^{q}} is the Caputo differential operator and \Gamma (x) is the gamma function.

According to the definition of fractional-order system, the fractional-order hyperchaotic Chen system can be described as \begin{align*} \begin{cases} { ^{*}}{D_{t_{0}}^{q}}x_{1} = a(x_{2} - x_{1}) + x_{4}\\ { ^{*}}{D{t_{0}}^{q}}x_{2} = bx_{1} - x_{1}x_{3} + cx_{2}\\ { ^{*}}{D_{t_{0}}^{q}}x_{3} = x_{1}x_{2} - dx_{3}\\ { ^{*}}{D_{t_{0}}^{q}}x_{4} = x_{2}x_{3} + rx_{4}, \end{cases}\tag{3}\end{align*}

View SourceRight-click on figure for MathML and additional features. where q is the fractional-order. When a = 35, b = 3, c = 12, d = 7, r = 0.5, q = 0.95 , the system is hyperchaotic.

B. Adomian Decomposition Method

For a given fractional-order system { ^{*}}{_{t_{0}}^{q}}{D}x(t) = f(x(t)) + g(t) , Where x(t) = [x_{1}(t), x_{2}(t), \cdots, x_{n}(t)] is the given function variable. G(t) = [g_{1}(t), g_{2}(t), \cdots, g_{n}(t)] is an autonomous system, representing some constants. f is a function containing linear and nonlinear parts [40]. Therefore, any fractional chaotic system can be classified according to the above components. The form of decomposition is as follows [66]:\begin{align*} \begin{cases} { ^{*}}{D_{t_{0}}^{q}}x(t) = Lx(t) + Nx(t) + g(t)\\ x^{(k)}(t_{0}^{+}) = b_{k}, k \in [{0, m - 1}]\\ m \in N, m - 1 < q \leq m, \end{cases}\tag{4}\end{align*}

View SourceRight-click on figure for MathML and additional features. where L and N represent the linear part and the nonlinear part of the system respectively, and b_{k} is the initial value. Applying J_{t_{0}}^{q} to both sides of the Eq. (4) at the same time, the following equation can be obtained [67]:\begin{equation*} x = J_{t_{0}}^{q} Lx + J_{t_{0}}^{q} Nx + J_{t_{0}}^{q} g + \Phi,\tag{5}\end{equation*}
View SourceRight-click on figure for MathML and additional features.
where \Phi =\sum _{k = 1}^{m - 1}b_{k}\frac {(t - t_{0})^{k}}{k!} is the initial value condition of the system, and J_{t_{0}}^{q} = \frac {(t-t_{0})^{q}}{\Gamma (q+1)} represent the integral operator of order q . The properties of the integral operator J_{t_{0}}^{q} are as follows [45]:\begin{align*} \begin{cases} J_{t_{0}}^{q}(t-t_{0})^{\gamma } = \dfrac {\Gamma (\gamma +1)}{\Gamma (\gamma +1+q)}(t-t_{0})^{\gamma +q}\\ J_{t_{0}}^{q}C = \dfrac {C}{\Gamma (q+1)}(t-t_{0})^{q} \\ J_{t_{0}}^{q} J_{t_{0}}^{r} x(t)= J_{t_{0}}^{q+r}x(t), \end{cases}\tag{6}\end{align*}
View SourceRight-click on figure for MathML and additional features.
where t \in [t_{0},t_{1}] , q \geq 0 , r \geq 0 , \gamma > -1 .

The nonlinear part is decomposed by Adomian decomposition algorithm as follows \begin{align*} \begin{cases} A_{j}^{i} = \dfrac {1}{i!} \left[{\dfrac {d^{i}}{d\lambda ^{i}} N(v_{j}^{i}(\lambda))}\right]_{\lambda = 0}\\ v_{j}^{i} = \displaystyle \sum \limits _{k = 0}^{i} (\lambda)^{k} x_{j}^{k}, \end{cases}\tag{7}\end{align*}

View SourceRight-click on figure for MathML and additional features. where i \in [0, + \infty), j \in [1], [n] .

Then the nonlinear term in Eq. (7) can be expressed as [68]\begin{equation*} Nx = \sum _{i = 0}^{+ \infty } A^{i} (x^{0}, x^{1}, \cdots,x^{i}).\tag{8}\end{equation*}

View SourceRight-click on figure for MathML and additional features.

Take Eq. (8) into Eq. (5), and the solution of the equation is as follows \begin{align*}&\hspace {-.5pc} x = \sum _{i = 0}^{+ \infty } x^{i} = J_{t_{0}}^{q} L \sum _{i = 0}^{+ \infty } x^{i} \\&\qquad\qquad\; \displaystyle { + J_{t_{0}}^{q} L \sum _{i = 0}^{+ \infty } A^{i} (x^{0}, x^{1}, \cdots, x^{i}) + J_{t_{0}}^{q} g + \Phi. } \tag{9}\end{align*}

View SourceRight-click on figure for MathML and additional features.

The iterative relationship of the solution of Eq. (10) is as follows \begin{align*} \begin{cases} x^{0} = J_{t_{0}}^{q} g + \Phi \\ x^{1} = J_{t_{0}}^{q} L x^{0} + J_{t_{0}}^{q} A^{0} (x^{0})\\ x^{2} = J_{t_{0}}^{q} L x^{1} + J_{t_{0}}^{q} A^{1} (x^{0}, x^{1})\\ \cdots \\ x^{i} = J_{t_{0}}^{q} L x^{i - 1} + J_{t_{0}}^{q} A^{i - 1} (x^{0}, x^{1}, \cdots, x^{i - 1}).\\ \cdots \\ \end{cases}\tag{10}\end{align*}

View SourceRight-click on figure for MathML and additional features.

C. Solution of Fractional-Order Hyperchaotic Chen System

Firstly, the fractional-order hyperchaotic Chen system Eq. (3) is decomposed into linear part L_{x_{i}} , nonlinear part N_{x_{i}} and autonomous system g_{i} according to the Adomian algorithm. Substituting the values of a, b, c, d and r into the equation. The decomposition results are as follows \begin{align*} \begin{bmatrix} L_{x_{1}} \\ L_{x_{2}} \\ L_{x_{3}} \\ L_{x_{4}} \end{bmatrix} = \begin{bmatrix} 35(x_{2} - x_{1}) + x_{4} \\ 7x_{1} + 12x_{2} \\ -3x_{3} \\ 0.5x_{4} \end{bmatrix}, \begin{bmatrix} N_{x_{1}} \\ N_{x_{2}} \\ N_{x_{3}} \\ N_{x_{4}} \end{bmatrix} = \begin{bmatrix} 0 \\ -x_{1}x_{3} \\ x_{1}x_{2} \\ x_{2}x_{3} \end{bmatrix},\tag{11}\end{align*}

View SourceRight-click on figure for MathML and additional features. where the autonomous system g_{i} = 0 . The nonlinear terms in the system are decomposed according to Eq. (7), and the before six terms of the decomposition coefficient are \begin{align*}&\begin{cases} A_{-x_{1}x_{3}}^{0} = A_{2}^{0} = -x_{1}^{0}x_{3}^{0}\\ A_{-x_{1}x_{3}}^{1} = A_{2}^{1} = -x_{1}^{1} x_{3}^{0}-x_{1}^{0} x_{3}^{1}\\ A_{-x_{1}x_{3}}^{2} = A_{2}^{2} = -x_{1}^{2} x_{3}^{0}-x_{1}^{1} x_{3}^{1}-x_{1}^{0} x_{3}^{2}\\ A_{-x_{1}x_{3}}^{3} = A_{2}^{3} = -x_{1}^{3} x_{3}^{0}-x_{1}^{2} x_{3}^{1}-x_{1}^{1} x_{3}^{2}-x_{1}^{0} x_{3}^{3}\\ A_{-x_{1}x_{3}}^{4} = A_{2}^{4} = -x_{1}^{4} x_{3}^{0}-x_{1}^{3} x_{3}^{1}-x_{1}^{2} x_{3}^{2}-x_{1}^{1} x_{3}^{3}\\ -x_{1}^{0} x_{3}^{4}\\ A_{-x_{1}x_{3}}^{5} = A_{2}^{5} = -x_{1}^{5} x_{3}^{0}-x_{1}^{4} x_{3}^{1}-x_{1}^{3} x_{3}^{2}-x_{1}^{2} x_{3}^{3}\\ -x_{1}^{1} x_{3}^{4}-x_{1}^{0} x_{3}^{5},\end{cases} \tag{12}\\&\begin{cases} A_{x_{1}x_{2}}^{0} = A_{3}^{0} = x_{1}^{0} x_{2}^{0}\\[-1pt] A_{x_{1}x_{2}}^{1} = A_{3}^{1} = x_{1}^{1} x_{2}^{0}+x_{1}^{0} x_{2}^{1}\\[-1pt] A_{x_{1}x_{2}}^{2} = A_{3}^{2} = x_{1}^{2} x_{2}^{0}+x_{1}^{1} x_{2}^{1}+x_{1}^{0} x_{2}^{2}\\[-1pt] A_{x_{1}x_{2}}^{3} = A_{3}^{3} = x_{1}^{3} x_{2}^{0}+x_{1}^{2} x_{2}^{1}+x_{1}^{1} x_{2}^{2}+x_{1}^{0} x_{2}^{3}\\[-1pt] A_{x_{1}x_{2}}^{4} = A_{3}^{4} = x_{1}^{4} x_{2}^{0}+x_{1}^{3} x_{2}^{1}+x_{1}^{2} x_{2}^{2}+x_{1}^{1} x_{2}^{3}\\[-1pt] +x_{1}^{0} x_{2}^{4}\\[-1pt] A_{x_{1}x_{2}}^{5} = A_{3}^{5} = x_{1}^{5} x_{2}^{0}+x_{1}^{4} x_{2}^{1}+x_{1}^{3} x_{2}^{2}+x_{1}^{2} x_{2}^{3}\\[-1pt] +x_{1}^{1} x_{2}^{4}+x_{1}^{0} x_{2}^{5},\end{cases} \tag{13}\\[-1pt]&\begin{cases} A_{x_{2}x_{3}}^{0} = A_{4}^{0} = x_{2}^{0} x_{3}^{0}\\[-1pt] A_{x_{2}x_{3}}^{1} = A_{4}^{1} = x_{2}^{1} x_{3}^{0}+x_{2}^{0} x_{3}^{1}\\[-1pt] A_{x_{2}x_{3}}^{2} = A_{4}^{2} = x_{2}^{2} x_{3}^{0}+x_{2}^{1} x_{3}^{1}+x_{2}^{0} x_{3}^{2}\\[-1pt] A_{x_{2}x_{3}}^{3} = x_{2}^{3} x_{3}^{0}+x_{2}^{2} x_{3}^{1}+x_{2}^{1} x_{3}^{2}+x_{2}^{0} x_{3}^{3}\\[-1pt] A_{x_{2}x_{3}}^{4} = A_{4}^{4} = x_{2}^{4} x_{3}^{0}+x_{2}^{3} x_{3}^{1}+x_{2}^{2} x_{3}^{2}+x_{2}^{1} x_{3}^{3}\\[-1pt] +x_{2}^{0} x_{3}^{4}\\[-1pt] A_{x_{2}x_{3}}^{5} = A_{4}^{5} = x_{2}^{5} x_{3}^{0}+x_{2}^{4} x_{3}^{1}+x_{2}^{3} x_{3}^{2}+x_{2}^{2} x_{3}^{3}\\[-1pt] +x_{2}^{1} x_{3}^{4}+x_{2}^{0} x_{3}^{5}.\\[-1pt] \end{cases}\tag{14}\end{align*}
View SourceRight-click on figure for MathML and additional features.

The initial conditions are x_{i}^{0}=x_{i}(t_{0}) . Let c_{i}^{0}=x_{i}^{0} . According to Eq. (3), Eq. (10) and the properties Eq. (6), x_{i}^{1} is obtained as \begin{align*} \begin{cases} x_{1}^{1} = [{35(c_{2}^{0}-c_{1}^{0})+c_{4}^{0}}]\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)} = c_{1}^{1}\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)}\\[-1pt] x_{2}^{1} = (7c_{1}^{0}+12c_{2}^{0}-c_{1}^{0} c_{3}^{0})\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)} = c_{2}^{1}\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)}\\[-1pt] x_{3}^{1} = (c_{1}^{0} c_{2}^{0}-3c_{3}^{0})\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)} = c_{3}^{1}\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)}\\[-1pt] x_{4}^{1} = (c_{2}^{0} c_{3}^{0}+0.5c_{4}^{0})\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)} = c_{4}^{1}\dfrac {(t-t_{0})^{q}}{\Gamma (q+1)}. \end{cases}\tag{15}\end{align*}

View SourceRight-click on figure for MathML and additional features.

The other five coefficients can be calculated as follows \begin{align*}&\begin{cases} c_{1}^{2} = 35(c_{2}^{1}-c_{1}^{1})+c_{4}^{1}\\[-1pt] c_{2}^{2} = 7c_{1}^{1}+12c_{2}^{1}-c_{1}^{1} c_{3}^{0}-c_{1}^{0} c_{3}^{1}\\[-1pt] c_{3}^{2} = -3c_{3}^{1}+c_{1}^{1} c_{2}^{0}+c_{1}^{0} c_{2}^{1} \\[-1pt] c_{4}^{2} = 0.5c_{4}^{1}+c_{2}^{1} c_{3}^{0}+c_{2}^{0} c_{3}^{1},\end{cases} \tag{16}\\[-1pt]&\begin{cases} c_{1}^{3} = 35(c_{2}^{2}-c_{1}^{2})+c_{4}^{2}\\[-1pt] c_{2}^{3} = 7c_{1}^{2}+12c_{2}^{2}-c_{1}^{2} c_{3}^{0}-c_{1}^{0} c_{3}^{2}\\[-1pt] -c_{1}^{1} c_{3}^{1}\dfrac {\Gamma (2q+1)}{\Gamma ^{2}(q+1)}\\[-1pt] c_{3}^{3} = -3c_{3}^{2}+c_{1}^{2} c_{2}^{0}+c_{1}^{0} c_{2}^{2}+c_{1}^{1} c_{2}^{1}\dfrac {\Gamma (2q+1)}{\Gamma ^{2}(q+1)}\\[-1pt] c_{4}^{3} = 0.5c_{4}^{2}+c_{2}^{2} c_{3}^{0}+c_{2}^{0} c_{3}^{2}+c_{2}^{1} c_{3}^{1}\dfrac {\Gamma (2q+1)}{\Gamma ^{2}(q+1)},\end{cases} \tag{17}\\[-1pt]&\begin{cases} c_{1}^{4} = 35(c_{2}^{3}-c_{1}^{3})+c_{4}^{3}\\[-1pt] c_{2}^{4} = 7c_{1}^{3}+12c_{2}^{3}-c_{1}^{3} c_{3}^{0}-c_{1}^{0} c_{3}^{3}\\[-1pt] -(c_{1}^{1} c_{3}^{2} +c_{1}^{2} c_{3}^{1})\dfrac {\Gamma (3q+1)}{\Gamma (2q+1)\Gamma (q+1)}\\[-1pt] c_{3}^{4} = -3c_{3}^{3}+c_{1}^{3} c_{2}^{0}+c_{1}^{0} c_{2}^{3}+(c_{1}^{1} c_{2}^{2}\\[-1pt] +c_{1}^{2} c_{2}^{1})\dfrac {\Gamma (3q+1)}{\Gamma (2q+1)\Gamma (q+1)}\\[-1pt] c_{4}^{4} = 0.5c_{4}^{3}+c_{2}^{3} c_{3}^{0}+c_{2}^{0} c_{3}^{3}\\[-1pt] +(c_{2}^{2} c_{3}^{1}+c_{2}^{1} c_{3}^{2})\dfrac {\Gamma (3q+1)}{\Gamma (2q+1)\Gamma (q+1)},\end{cases} \tag{18}\\[-1pt]&\begin{cases} c_{1}^{5} = 35(c_{2}^{4}-c_{1}^{4})+c_{4}^{4}\\[-1pt] c_{2}^{5} = 7c_{1}^{4}+12c_{2}^{4}-c_{1}^{4} c_{3}^{0}-c_{1}^{2} c_{3}^{2}\frac {\Gamma (4q+1)}{\Gamma ^{2}(2q+1)}\\[-1pt] -c_{1}^{0} c_{3}^{4}-(c_{1}^{3} c_{3}^{1}+c_{1}^{1} c_{3}^{3})\dfrac {\Gamma (4q+1)}{\Gamma (3q+1)\Gamma (q+1)}\\[-1pt] c_{3}^{5} = -3c_{3}^{4}+c_{1}^{4} c_{2}^{0}+c_{1}^{0} c_{2}^{4}+c_{1}^{2} c_{2}^{2}\frac {\Gamma (4q+1)}{\Gamma ^{2}(2q+1)}\\[-1pt] +(c_{1}^{3} c_{2}^{1}+c_{1}^{1} c_{2}^{3})\dfrac {\Gamma (4q+1)}{\Gamma (3q+1)\Gamma (q+1)}\\[-1pt] c_{4}^{5} = 0.5c_{4}^{4}+c_{2}^{4} c_{3}^{0}+c_{2}^{0} c_{3}^{4}+c_{2}^{2} c_{3}^{2}\frac {\Gamma (4q+1)}{\Gamma ^{2}(2q+1)}\\[-1pt] +(c_{2}^{3} c_{3}^{1}+c_{2}^{1} c_{3}^{3})\dfrac {\Gamma (4q+1)}{\Gamma (3q+1)\Gamma (q+1)},\end{cases} \tag{19}\\[-1pt]&\begin{cases} c_{1}^{6} = 35(c_{2}^{5}-c_{1}^{5})+c_{4}^{5}\\[-1pt] c_{2}^{6} = 7c_{1}^{5}+12c_{2}^{5}-c_{1}^{5} c_{3}^{0}-c_{1}^{0} c_{3}^{5}\\[-1pt] -(c_{1}^{4} c_{3}^{1}+c_{1}^{1} c_{3}^{4})\dfrac {\Gamma (5q+1)}{\Gamma (4q+1)\Gamma (q+1)}\\[-1pt] -(c_{1}^{3} c_{3}^{2}+c_{1}^{2} c_{3}^{3})\dfrac {\Gamma (5q+1)}{\Gamma (3q+1)\Gamma (2q+1)}\\[-1pt] c_{3}^{6} = -3c_{3}^{5}+c_{1}^{5} c_{2}^{0}+c_{1}^{0} c_{2}^{5}\\[-1pt] +(c_{1}^{4} c_{2}^{1}+c_{1}^{1} c_{2}^{4})\dfrac {\Gamma (5q+1)}{\Gamma (4q+1)\Gamma (q+1)}\\[-1pt] +(c_{1}^{3} c_{2}^{2}+c_{1}^{2} c_{2}^{3})\dfrac {\Gamma (5q+1)}{\Gamma (3q+1)\Gamma (2q+1)}\\[-1pt] c_{4}^{6} = 0.5c_{4}^{5}+c_{2}^{5} c_{3}^{0}+c_{2}^{0} c_{3}^{5}\\[-1pt] +(c_{2}^{4} c_{3}^{1}+c_{2}^{1} c_{3}^{4})\dfrac {\Gamma (5q+1)}{\Gamma (4q+1)\Gamma (q+1)}\\[-1pt] +(c_{2}^{3} c_{3}^{2}+c_{2}^{2} c_{3}^{3})\dfrac {\Gamma (5q+1)}{\Gamma (3q+1)\Gamma (2q+1)}. \end{cases}\tag{20}\end{align*}

View SourceRight-click on figure for MathML and additional features.

The solution of the system Eq. (4) can be expressed as follows \begin{align*} \widetilde {x_{j}}(t)=&c_{j}^{0}+c_{j}^{1}\frac {(t-t_{0})^{q}}{\Gamma (q+1)}+c_{j}^{2}\frac {(t-t_{0})^{2q}}{\Gamma (2q+1)} \\&+c_{j}^{3}\frac {(t-t_{0})^{3q}}{\Gamma (3q+1)}+c_{j}^{4}\frac {(t-t_{0})^{4q}}{\Gamma (4q+1)} \\&+c_{j}^{5}\frac {(t-t_{0})^{5q}}{\Gamma (5q+1)}+c_{j}^{6}\frac {(t-t_{0})^{6q}}{\Gamma (6q+1)},\tag{21}\end{align*}

View SourceRight-click on figure for MathML and additional features. where j=1,2,3 . Fig. 1 shows the attractor phase diagram of the fractional-order hyperchaotic Chen system simulated by Eq. (21).

FIGURE 1. - Attractor phase diagram of the fractional-order hyper-chaotic Chen system.(a)Attractor x-y of fractional hyperchaotic Chen system;(b)Attractor x-z of fractional hyperchaotic Chen system;(c)Attractor x-w of fractional hyperchaotic Chen system;(d)Attractor z-w of fractional hyperchaotic Chen system.
FIGURE 1.

Attractor phase diagram of the fractional-order hyper-chaotic Chen system.(a)Attractor x-y of fractional hyperchaotic Chen system;(b)Attractor x-z of fractional hyperchaotic Chen system;(c)Attractor x-w of fractional hyperchaotic Chen system;(d)Attractor z-w of fractional hyperchaotic Chen system.

D. DNA Coding and Computing

In biology, each DNA contains four bases: C (cytosine), T (thymine), A (adenine), and G (guanine). According to the principle of DNA base complementary pairing, A and T, C and G can be complementary pairing respectively. The coding rules are dynamically controlled by the chaotic sequences. On this basis, the addition, subtraction, XOR, and XNOR operation between DNA sequences can achieve a better encryption effect. Table. 1 shows 8 ways of DNA coding [49].

TABLE 1 Eight Ways of DNA Encoding and Decoding
Table 1- 
Eight Ways of DNA Encoding and Decoding

Because each DNA encoding and decoding method has a corresponding DNA operation, in terms of the first encoding and decoding method, the corresponding DNA addition and subtraction operation are shown in Table. 2. The XOR operations corresponding to the fourth DNA coding method are shown in Table. 3. The XNOR operations corresponding to the seventh DNA coding method are shown in Table. 4.

TABLE 2 Addition and Subtraction Operation of First Encoding Method
Table 2- 
Addition and Subtraction Operation of First Encoding Method
TABLE 3 XOR Operation of Fourth Encoding Method
Table 3- 
XOR Operation of Fourth Encoding Method
TABLE 4 XNOR Operation of Seventh Encoding Method
Table 4- 
XNOR Operation of Seventh Encoding Method

SECTION III.

Image Compression-Encryption and Decryption Algorithm

A. Compression-Encryption Algorithm

The flow chart of the color image compression encryption algorithm we proposed is shown in Fig. 2. The color image I size used in the experiment is M \times N , and the specific encryption process is as follows.

  • Step 1:

    The image I is decomposed into the components of R, G, and B channels. I_{1} , I_{2} , and I_{3} are three two-dimensional matrices.

  • Step 2:

    In order to process image data of any size, it is necessary to add an appropriate number of pixels with zero value to these three two-dimensional matrices. t represents the size of the segmented image block. The image size after zero fillings is given to M and N again. Each two-dimensional matrix can be divided into (M \times N)/t^{2} image blocks.

  • Step 3:

    Setting initial values x_{00} , x_{01} , x_{02} and \mu , then the sequence {k_{i} }, {k_{x} } and {k_{y} } are obtained iteratively according to Logistic mapping. The length of {k_{i} } is M \times N , which is used for DNA operation with the original image. The length of {k_{x} } and {k_{y} } are M and N respectively, which are used for pixel scrambling. The formula for logistic mapping is as follows [69]\begin{equation*} x_{n} = \mu x_{n-1}(1 - x_{n - 1}),\tag{22}\end{equation*}

    View SourceRight-click on figure for MathML and additional features. here, when \mu \in (3,5699, 4] and x_{0} \in (0, 1) , the system is chaotic.

    The formula for calculating the initial value x_{00} , x_{01} , and x_{02} is as follows \begin{align*} \begin{cases} x_{00} = \dfrac {\sum \limits _{i=0}^{M}\sum \limits _{j=0}^{N}I_{1}(i,j) + \sum \limits _{i=0}^{M}\sum \limits _{j=0}^{N}I_{2}(i,j)}{255 \times M \times N \times 2}\\ x_{01} = \dfrac {\sum \limits _{i=0}^{M}\sum \limits _{j=0}^{N}I_{1}(i,j) + \sum \limits _{i=0}^{M}\sum \limits _{j=0}^{N}I_{3}(i,j)}{255 \times M \times N \times 2}\\ x_{02} = \dfrac {\sum \limits _{i=0}^{M}\sum \limits _{j=0}^{N}I_{2}(i,j) + \sum \limits _{i=0}^{M}\sum \limits _{j=0}^{N}I_{3}(i,j)}{255 \times M \times N \times 2}, \end{cases}\tag{23}\end{align*}

    View SourceRight-click on figure for MathML and additional features. where x_{00} is the average gray value of I_{1} and I_{2} , which is related to the original image and can be used as one of the keys. In the same way, x_{01} and x_{02} can be obtained.

  • Step 4:

    The sequence {k_{i} } is transformed into a matrix of M \times N of the same size as I_{i}(i=1,2,3) , which is used for DNA operation with the original image I_{i}(i=1,2,3) . In this process, the value of the matrix transformed by the chaotic sequence should be between 0 and 255, which can be obtained by Eq. (24) \begin{align*} \begin{cases} k_{i} = \text {mod}(\text {round}(k_{i} \times 10^{4}), 256)\\ R = \text {reshape}(k_{i}, N, M)'. \end{cases}\tag{24}\end{align*}

    View SourceRight-click on figure for MathML and additional features.

  • Step 5:

    Set the initial value of the chaotic system. These initial values are calculated according to the original image. Then, four chaotic sequences {X_{i} }, {Y_{i} }, {Z_{i} } and {H_{i} } can be obtained by solving the fractional-order chaotic system with the Adomian algorithm. The calculation formula of initial values is as follows \begin{align*} \begin{cases} X(0) = \dfrac {\text {sum}(\text {bitand}(I_{1},17))}{17 \times M \times N}\\[5pt] Y(0) = \dfrac {\text {sum}(\text {bitand}(I_{2},34))}{34 \times M \times N}\\[5pt] Z(0) = \dfrac {\text {sum}(\text {bitand}(I_{3},68))}{68 \times M \times N}\\[5pt] H(0) = \dfrac {\text {sum}(\text {bitand}(I_{1},136))}{136 \times M \times N}, \end{cases}\tag{25}\end{align*}

    View SourceRight-click on figure for MathML and additional features. where 17 represents the binary number 00010001, \text {bitand}~(I_{1},17) represents the value of acquiring the first and fifth bit-plane of I_{1} . The four initial values are determined by the average values of the first and fifth bit-planes of I_{1} , the second and sixth bit-planes of I_{2} , the third and seventh bit-planes of I_{3} and the fourth and eighth bit-planes of I_{1} , respectively.

  • Step 6:

    I_{1} , I_{2} and I_{3} are divided into t \times t size image blocks. In this paper, we set t=4 . The fourth-order DCT matrix T is used to do DCT for each sub-block, and the coefficient matrix J_{i}(i=1,2,3) in the frequency domain is obtained. The DCT formula is as follows [70]\begin{align*}&\hspace {-.5pc} J_{i}(u, v)=c(u)c(v)\sum _{m=0}^{M-1}\sum _{n=0}^{N-1} I_{i} \text {cos} \frac {(2m+1)u\pi }{2M} \\&\qquad\qquad\qquad\qquad\qquad\qquad\qquad \displaystyle { \times \text {cos} \frac {(2n+1)v\pi }{2N}, } \tag{26}\end{align*}

    View SourceRight-click on figure for MathML and additional features. where c(u) and c(v) are \begin{align*} c(u)=&\begin{cases} \dfrac {1}{\sqrt {M}}, u=0\\ \sqrt {\frac {2}{M}}, u \neq 0,\end{cases} \tag{27}\\ c(v)=&\begin{cases} \dfrac {1}{\sqrt {N}}, v=0\\ \sqrt {\frac {2}{N}}, v \neq 0.\\ \end{cases}\tag{28}\end{align*}
    View SourceRight-click on figure for MathML and additional features.

  • Step 7:

    The DCT transform coefficients are quantized according to the compression matrix, and different compression matrix determines different compression ratios(CR). The compression matrices used in the experiment are as follows \begin{align*} \begin{matrix} Mask1&=&\begin{bmatrix} 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 0 &\quad 0 \end{bmatrix}, \\[8pt] Mask2 &=& \begin{bmatrix} 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 1 &\quad 0\\ 1 &\quad 1 &\quad 0 &\quad 0 \end{bmatrix}, \end{matrix} \\ \begin{matrix} Mask3&=&\begin{bmatrix} 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 0 &\quad 0\\ 1 &\quad 1 &\quad 0 &\quad 0 \end{bmatrix}, \\[8pt] Mask4 &=& \begin{bmatrix} 1 &\quad 1 &\quad 1 &\quad 1\\ 1 &\quad 1 &\quad 0 &\quad 0\\ 1 &\quad 0 &\quad 0 &\quad 0\\ 1 &\quad 0 &\quad 0 &\quad 0 \end{bmatrix}, \end{matrix} \\ \begin{matrix} Mask5&=&\begin{bmatrix} 1 &\quad 1 &\quad 1 &\quad 0\\ 1 &\quad 1 &\quad 0 &\quad 0\\ 1 &\quad 0 &\quad 0 &\quad 0\\ 0 &\quad 0 &\quad 0 &\quad 0 \end{bmatrix}, \\[8pt] Mask6 &=& \begin{bmatrix} 1 &\quad 1 &\quad 0 &\quad 0\\ 1 &\quad 0 &\quad 0 &\quad 0\\ 0 &\quad 0 &\quad 0 &\quad 0\\ 0 &\quad 0 &\quad 0 &\quad 0 \end{bmatrix}, \end{matrix}\end{align*}

    View SourceRight-click on figure for MathML and additional features. where the compression ratio of Mask1 is 0.875, Mask2 is 0.8125, Mask3 is 0.75, Mask4 is 0.5, Mask5 is 0.4, Mask6 is 0.2. After processing, the quantized coefficient matrix J_{i}' (i = 1,2,3) and R^{'} are obtained.

  • Step 8:

    Processing the quantized data J_{i}' (i=1,2,3) to get J_{i}'' (i=1,2,3) . Since the quantized coefficients are not guaranteed to be between 0 and 255, and the DCT coefficient has positive and negative, the algorithm we proposed can adaptively adjust the quantized coefficients to meet the coding format. Taking the fractional part and sign of the coefficient matrix as one of the keys and using it in the decryption process can effectively avoid the block effect of the decrypted image caused by the direct discard. The detailed process is presented in Algorithm 1.

  • Step 9:

    Perform the DNA encoding on J_{i}''(i=1,2,3) and R' respectively, which is controlled by chaotic sequence {X_{i} } and {Y_{i} }. Then the results of DNA coding are calculated by DNA operations. There are four kinds of operations, which are controlled by chaotic sequence {Z_{i} }. Finally, the process of DNA decoding is controlled by chaotic sequence {H_{i} }. Among the four chaotic sequences, {X_{i} }, {Y_{i} } and {H_{i} } are between 1 and 8 and {Z_{i} } is between 0 and 3, which is transformed by the following formula \begin{align*} \begin{cases}X_{i} = \text {mod}(\text {round}(X_{i} \times 10^{4}),8) + 1\\ Y_{i} = \text {mod}(\text {round}(Y_{i} \times 10^{4}),8) + 1\\ Z_{i} = \text {mod}(\text {round}(Z_{i} \times 10^{4}),4) + 1\\ H_{i} = \text {mod}(\text {round}(H_{i} \times 10^{4}),8) + 1, \end{cases}\tag{29}\end{align*}

    View SourceRight-click on figure for MathML and additional features. where {X_{i} }, {Y_{i} } and {H_{i} } sequence values correspond to 8 ways of DNA encoding and decoding, and {Z_{i} } sequence values correspond to 4 ways of DNA operations. Except for the first sub block, the DNA calculation of the result of the current sub-block and the last sub-block is performed again to obtain a better diffusion effect, which controlled by the sequence {Z_{i} }.

  • Step 10:

    Pixel scrambling. The sequences {k_{x} } and {k_{y} } are arranged in descending order. The sequence {U_{x} } and {U_{y} } composed of the index values of the sorted elements in the original sequence are obtained. Taking the {U_{x} }, {U_{y} } sequence values and their corresponding indexes as row and column exchange coordinates, row and column permutations are performed on the matrices of the three channels after DNA decoding. The detailed process is presented in Algorithm 2.

  • Step 11:

    Combining three two-dimensional matrices to get encrypted image.

FIGURE 2. - Flow chart of compression-encryption algorithm.
FIGURE 2.

Flow chart of compression-encryption algorithm.

Algorithm 1 The Proposed Data Processing Algorithm

Input:

J_{i}' (i=1,2,3) Quantized date; t : Size of the segmented image block

Output:

J_{i}'' (i=1,2,3) Formatted data; M_{i} : Fractional coefficient matrix; N_{i} : Sign coefficient matrix

1:

Set t = 4 ;

2:

Initialize matrices S and T, where \text {S} = \text {ones}(t, t) , \text {T} = \text {zeros}(t, t) ;

3:

Set \text {S}(1,1) = 0 ;

4:

Divide quantized date J_{i}' into image blocks {\text {B}}_{i} of size t \times t ;

5:

L_{i} \gets \text {B}_{i} \times \text {S} ;

6:

find the maximum value max\_{}num in \text {abs}(L_{i}) ;

7:

max\_{}Multiple \gets \text {fix}(255/max\_{}num) ;

8:

find the maximum value max\_{}num\_{}first in \text {abs}(J_{i}') ;

9:

max\_{}Multiple\_{}first \gets \text {fix}(255/max\_{}num\_{}first) ;

10:

\text {T}(1, 1) = max\_{}Multiple\_{}first ;

11:

for k = 2: t do

12:

\text {T}(1,k)=max\_{}Multiple ;

13:

end for

14:

for i = 2: t do

15:

for j = 1: t do

16:

\text {T}(i,j)=max\_{}Multiple ;

17:

end for

18:

end for

19:

J_{i}' \gets \text {B}_{i} \times \text {T} ;

20:

INTJ_{i} \gets \text {fix}(J_{i}') ;

21:

J_{i}'' \gets \text {uint8}(\text {abs}(INTJ_{i})) ;

22:

M_{i} = J_{i}' - INTJ_{i} ;

23:

N_{i} = \text {sign}(INTJ_{i}) ;

Algorithm 2 The Proposed Pixel Scrambling Algorithm

Input:

Chaotic sequence with length M; k_{y} : Chaotic sequence with length N; Q_{n}(n=1,2,3) : Matrix of three channels after DNA decoding;

Output:

Q_{n}'(n=1,2,3) Matrix of three channels after pixel scrambling;

1:

[\sim,U_{x}] = \text {sort}(k_{x},\text {descend}) ;

2:

[\sim,U_{y}] = \text {sort}(k_{y},\text {descend}) ;

3:

for i = 1: M do

4:

temp = Q_{n}(i,:) ;

5:

Q_{n}(i,:) = Q_{n}(U_{x}(i),:) ;

6:

Q_{n}(U_{x}(i),:) = temp ;

7:

end for

8:

for i = 1: N do

9:

temp = Q_{n}(:,i) ;

10:

Q_{n}(:,i) = Q_{n}(:, U_{y}(i)) ;

11:

Q_{n}(:, U_{y}(i)) = temp ;

12:

end for

13:

Denote Q_{n} as Q_{n}' .

B. Decryption Algorithm

The decryption process is the reverse operation of the encrypted image, and the decrypted image can only be obtained by using the same key as the encrypted image. The flow chart of the decryption algorithm we proposed is shown in Fig. 3.

FIGURE 3. - Flow chart of decryption algorithm.
FIGURE 3.

Flow chart of decryption algorithm.

There are several points to pay attention to when decrypting. Firstly, in the case of inverse pixel scrambling, the order of row and column permutation is opposite to that of encryption. Secondly, in encryption, the DNA decoding method of the image is determined by {H_{i} }. So in decryption, the DNA encoding method of the ciphertext image is also determined by {H_{i} }. Thirdly, when performing the inverse DNA operation, if the addition operation is used in encryption, the subtraction operation should be used in decryption, and vice versa. Finally, the zero pixels added during encryption should be removed during decryption.

SECTION IV.

Experimental Results and Analysis

This part introduces the detailed experimental results and performance analysis of our compression-encryption algorithm. All the experimental results are run on MATLAB 2015b in a personal computer with Intel(R) Core(TM) i5-5200, CPU 2.20GHZ and memory 6.00GB, and the operating system is Microsoft Windows 10. When the parameters of chaotic system set in the experiment are: a = 35 , b = 3 , c = 12 , d = 7 , r=0.5 , q = 0.95 , the system is hyperchaotic. Taking Lena (256\times256 ) as the input image, the four initial values of the chaotic system are calculated by the input image, which are as follows: X(0)=0.4979 , Y(0)=0.4276 , Z(0)=0.7086 and H(0)=0.7807 . We select six color images (256\times256 ) as experimental images, which are “Lena”, “peppers”, “baboon”, “airplane”, “house” and “lake”. The encrypted and decrypted images are shown in Fig. 4. It can be seen that the algorithm can encrypt images effectively.

FIGURE 4. - Experimental simulation results. (a) original Lena image; (b) encrypted Lena image; (c) decrypted Lena image; (d) original peppers image; (e) encrypted peppers image; (f) decrypted peppers image; (g) original baboon image; (h) encrypted baboon image; (i) decrypted baboon image; (j) original airplane image; (k) encrypted airplane image; (l) decrypted airplane image; (m) original house image; (n) encrypted house image; (o) decrypted house image; (p) original lake image; (q) encrypted lake image; (r) decrypted lake image.
FIGURE 4.

Experimental simulation results. (a) original Lena image; (b) encrypted Lena image; (c) decrypted Lena image; (d) original peppers image; (e) encrypted peppers image; (f) decrypted peppers image; (g) original baboon image; (h) encrypted baboon image; (i) decrypted baboon image; (j) original airplane image; (k) encrypted airplane image; (l) decrypted airplane image; (m) original house image; (n) encrypted house image; (o) decrypted house image; (p) original lake image; (q) encrypted lake image; (r) decrypted lake image.

A. Compression Performance Analysis

Six compression matrices are used in the experiment, and the compression ratios are 0.875, 0.8125, 0.75, 0.5, 0.4 and 0.2 respectively. Peak signal-to-noise ratio (PSNR) is used to measure the quality of the decompressed image. Generally, the larger PSNR is, the smaller the distortion of the decompressed image is. The calculation formula of PSNR index is as follows [49]\begin{align*} \begin{cases} \text {MSE} = \dfrac {1}{M \times N} \displaystyle \sum \limits _{i = 1}^{M}\displaystyle \sum \limits _{j = 1}^{N}(P'(i,j)-P(i,j))^{2}\\ \text {PSNR} = 10\text {log}_{10}\left({\dfrac {255^{2}}{\text {MSE}}}\right) \end{cases}{,} {5pt}\tag{30}\end{align*}

View SourceRight-click on figure for MathML and additional features. where MSE represents mean square error, which is used to describe the deviation between the estimated value and the real value, P' (i,j) represents the encrypted image, and P(i,j) represents the image before encryption. According to Eq. (30), PSNR of three channels can be calculated.

The experimental results of encryption and decryption under different compression ratios are shown in Fig. 5. We combined the proposed encryption algorithm with CS, and compared with our algorithm. The discrete wavelet transform (DWT) is used for sparse representation of the image, the measurement matrix is obtained from partial Hadamar matrix, and the orthogonal matching pursuit (OMP) algorithm is used to reconstruct the image. The change of encrypted image data size with compression ratio is shown in Table. 5, and the corresponding PSNR indexes are shown in Table. 6. It can be seen from Table. 5 and Table. 6 that with the decrease of the compression rate, the amount of data and PSNR index of encrypted image decrease gradually. Although the compression algorithm based on CS can obtain smaller encrypted image, the PSNR index of reconstructed image is not ideal. As can be seen from Table. 6, the PSNR index of the decompressed image is still greater than 30dB when CR = 0.2 in our algorithm, which shows that it can reconstruct the original image well.

TABLE 5 Encrypted Image Data Size(KB) With Different CR
Table 5- 
Encrypted Image Data Size(KB) With Different CR
TABLE 6 PSNR(dB) Index Under Different CR
Table 6- 
PSNR(dB) Index Under Different CR
FIGURE 5. - Decrypted image with different compression ratio. (a) original Lena image; (b) encrypted Lena of CR = 0.875; (c) encrypted Lena of CR = 0.8125; (d) encrypted Lena of CR = 0.75; (e) decrypted Lena of CR = 0.875; (f) decrypted Lena of CR = 0.8125; (g) decrypted Lena of CR = 0.75; (h) encrypted Lena of CR = 0.5; (i) encrypted Lena of CR = 0.4; (j) encrypted Lena of CR = 0.2; (k) decrypted Lena of CR = 0.5; (l) decrypted Lena of CR = 0.4; (m) decrypted Lena of CR = 0.2.
FIGURE 5.

Decrypted image with different compression ratio. (a) original Lena image; (b) encrypted Lena of CR = 0.875; (c) encrypted Lena of CR = 0.8125; (d) encrypted Lena of CR = 0.75; (e) decrypted Lena of CR = 0.875; (f) decrypted Lena of CR = 0.8125; (g) decrypted Lena of CR = 0.75; (h) encrypted Lena of CR = 0.5; (i) encrypted Lena of CR = 0.4; (j) encrypted Lena of CR = 0.2; (k) decrypted Lena of CR = 0.5; (l) decrypted Lena of CR = 0.4; (m) decrypted Lena of CR = 0.2.

B. Histogram Analysis

Gray histogram reflects the statistical feature of gray value and frequency in the image. Taking the components of R channel of each color picture as an example, the histogram before encryption and after decryption is shown in Fig. 6, where (a), (b), (c), (g), (h) and (i) represent the histogram of original image, (d), (e), (f), (j), (k) and (l) represent the histogram of decrypted image. In general, we hope that the histogram of the plaintext image and the encrypted image have a great change, and the histogram of the encrypted image of different plaintext images has a similar structure. The theoretical analysis of the variance of the histogram [71] can further illustrate the anti-statistical attack performance of the algorithm. The calculation formula of histogram variance is as follows [38]\begin{equation*} \text {var}(C) = \frac {1}{n^{2}}\sum \limits _{i=1}^{n}\sum \limits _{j=1}^{n} (c_{i} - c_{j}),\tag{31}\end{equation*}

View SourceRight-click on figure for MathML and additional features. where n is the greyness level, C=\{c_{0}, c_{1},\cdots, c_{255}\} denotes the vector of the histogram value and c_{i} and c_{j} are the quantity of the gray value. Taking the R channel of each image as an example, the calculation results of different algorithms are shown in Table. 7. From the experimental results, our proposed encryption algorithm reflects this requirement well. It shows that our encryption algorithm can resist the statistical attack commendably.

TABLE 7 Comparison Variance by Different Algorithms(R Channel)
Table 7- 
Comparison Variance by Different Algorithms(R Channel)
FIGURE 6. - Histogram before and after encryption of R channel. (a) original Lena of R channel; (b) original peppers of R channel; (c) original baboon of R channel; (d) encrypted Lena of R channel; (e) encrypted peppers of R channel; (f) encrypted baboon of R channel; (g) original airplane of R channel; (h) original house of R channel; (i) original lake of R channel; (j) encrypted airplane of R channel; (k) encrypted house of R channel; (l) encrypted lake of R channel.
FIGURE 6.

Histogram before and after encryption of R channel. (a) original Lena of R channel; (b) original peppers of R channel; (c) original baboon of R channel; (d) encrypted Lena of R channel; (e) encrypted peppers of R channel; (f) encrypted baboon of R channel; (g) original airplane of R channel; (h) original house of R channel; (i) original lake of R channel; (j) encrypted airplane of R channel; (k) encrypted house of R channel; (l) encrypted lake of R channel.

C. Correlation Analysis of Adjacent Pixels

The correlation of adjacent pixels reflects the correlation degree of pixel values in adjacent positions of the image, which is one of the important statistical characteristics of the image. The smaller the correlation between the adjacent pixels of the encrypted image, the better the performance of the designed encryption system. Then 10000 pixels are selected from plaintext image and encrypted image to test the pixel correlation. The correlation r_{xy} of two adjacent pixels is calculated as follows [50]\begin{align*} \begin{cases}{l}r_{x y}=\frac{\operatorname{cov}(x, y)}{\sqrt{D(x) D(y)}}=\frac{E\{[x-E(x)][y-E(y)]\}}{\sqrt{D(x) D(y)}} \\E(x)=\frac{1}{M} \sum_{i=1}^{M} x_{i} \\D(x)=\frac{1}{M} \sum_{i=1}^{M}\left[x_{i}-E(x)\right]^{2}\end{cases}\tag{32}\end{align*}

View SourceRight-click on figure for MathML and additional features. where r_{xy} \in [{0,1}] , and the larger r_{xy} is, the higher the correlation between adjacent pixels is.

Taking the R components of Lena as an example, the pixel distribution in the horizontal, vertical and diagonal directions before and after encryption is shown in Fig. 7. Observing Fig. 7, after encryption, the pixel distribution of the image is particularly chaotic, and there is no rule to follow. Table. 8 lists the adjacent pixel correlations of different cipher images with our proposed encryption algorithm. Table. 9 lists the adjacent pixel correlation of encrypted Lena image with different encryption algorithms. From the data listed in Table. 8, it can be seen that the correlation of adjacent pixels in all directions of the encrypted image is close to 0, which shows that our proposed encryption algorithm can effectively reduce the correlation of adjacent pixels and improve the security of the encryption system. Moreover, Table. 9 shows the comparison results of our encryption algorithm with those in references [5], [12] and [33]. It can be seen that the pixel correlation of our algorithm is similar to that of other algorithms, and the correlation in some directions is even smaller, which indicates that our algorithm has excellent encryption performance.

TABLE 8 Pixel Correlation Coefficients of Plain and Cipher Images
Table 8- 
Pixel Correlation Coefficients of Plain and Cipher Images
TABLE 9 Pixel Correlation Comparison for Lena ( 256 \times256 )
Table 9- 
Pixel Correlation Comparison for Lena (
$256 \times256$
)
FIGURE 7. - Distribution of adjacent pixels in plain and cipher image. (a) Horizontal direction on the R components of Lena; (b) Vertical direction on the R components of Lena; (c) Diagonal direction on the R components of Lena; (d) Horizontal direction on the R components of Lena; (e) Vertical direction on the R components of Lena; (f) Diagonal direction on the R components of Lena.
FIGURE 7.

Distribution of adjacent pixels in plain and cipher image. (a) Horizontal direction on the R components of Lena; (b) Vertical direction on the R components of Lena; (c) Diagonal direction on the R components of Lena; (d) Horizontal direction on the R components of Lena; (e) Vertical direction on the R components of Lena; (f) Diagonal direction on the R components of Lena.

D. Key Space

The key space is used to measure the resistance of the encryption system to the brute-force attack. For an encryption system, the key space needs to be greater than 2100 to ensure security. In our encryption algorithm, the key space consists of block size t , the parameters and initial values of logistic chaotic system \mu , x_{00} , x_{01} and x_{02} , the initial values of fractional-order hyperchaotic Chen system X(0) , Y(0) , Z(0) and H(0) , fractional-order q , the number of 0 pixels added. The key capacity of this encryption algorithm is 10^{137} > 2^{455} . In addition, you can change the parameter \mu of three logistic maps to make them different to further enhance the key space. Therefore, our algorithm can effectively resist brute force attacks.

E. Key Sensitivity Analysis

The basic requirement for the encryption system is to have a high sensitivity to the key, even if the input key changes to a very small extent, it can’t get the correct decryption image. Taking the Lena image as an example, we test the key sensitivity of \mu , x_{00} , x_{01} , x_{02} , X(0) , Y(0) , Z(0) , H(0) , and p . The corresponding key sensitivity is shown in Table. 10. We test whether the correct decryption image can be obtained by only changing a single key slightly. (By default, the symbol matrix in step 8 of the encryption process is not known.) The test results are shown in Fig. 8, which can be seen that even if the key is changed to a very small extent, the correct decryption image can’t be obtained. So our encryption system is very sensitive to the key.

TABLE 10 Sensitivity of Different Keys
Table 10- 
Sensitivity of Different Keys
FIGURE 8. - Decryption image with key changed slightly. (a) Lena with 
$\mu +10^{-16}$
; (b) Lena with 
$x_{0}+10^{-15}$
; (c) Lena with 
$X(0)+10^{-14}$
; (d) Lena with 
$Y(0)+10^{-16}$
; (e) Lena with 
$Z(0)+10^{-14}$
; (f) Lena with 
$H(0)+10^{-14}$
; (g) Lena with 
$x_{1}+10^{-16}$
; (h) Lena with 
$x_{2}+10^{-16}$
; (i) Lena with 
$p+10^{-16}$
.
FIGURE 8.

Decryption image with key changed slightly. (a) Lena with \mu +10^{-16} ; (b) Lena with x_{0}+10^{-15} ; (c) Lena with X(0)+10^{-14} ; (d) Lena with Y(0)+10^{-16} ; (e) Lena with Z(0)+10^{-14} ; (f) Lena with H(0)+10^{-14} ; (g) Lena with x_{1}+10^{-16} ; (h) Lena with x_{2}+10^{-16} ; (i) Lena with p+10^{-16} .

F. Information Entropy

In the image encryption algorithm, information entropy is usually used as an index to evaluate the randomness of the image. The formula of information entropy is as follows \begin{equation*} H(x) = -\sum _{i=0}^{2^{N}-1} p(x_{i}) \text {log}_{2} p(x_{i}),\tag{33}\end{equation*}

View SourceRight-click on figure for MathML and additional features. where p(x_{i}) represents the proportion of pixel in the image whose pixel value is x_{i} , and 2^{N} represents the gray level of the image. When the gray level is 256 = 2^{8} , the theoretical value of information entropy H_{max} = \text {log}_{2} 256 = 8 .

Table. 11 shows the information entropy comparison of different plain images and cipher images. It can be seen that the information entropy of the encrypted image is closer to the theoretical value than the image before encryption, which shows that our encryption algorithm can better resist the information entropy attack. The comparison results of information entropy with other encryption algorithms are shown in Table. 12. From the experimental data in Table. 12, we can see that the average information entropy of our algorithm is better than other algorithms.

TABLE 11 Information Entropy Comparison of Different Images
Table 11- 
Information Entropy Comparison of Different Images
TABLE 12 Comparison of Information Entropy With Other Algorithms for Lena
Table 12- 
Comparison of Information Entropy With Other Algorithms for Lena

G. Differential Attack

In order to detect whether the encryption system has the ability to resist differential attack, number of pixels change rate (NPCR) and unified average changing intensity (UACI) are usually used to measure. The calculation formulas of these two indicators are as follows [36]\begin{align*} \text {NPCR}_{n}=&\frac {\sum _{i,j} D_{n}(i,j)}{M \times N} \times 100 \%, \qquad \tag{34}\\ \text {UACI}_{n}=&\frac {1}{MN} \times \left[{\sum _{i,j} \frac {|c_{n}'(i,j)-c_{n}(i,j)|}{255}}\right] \times 100 \%, \qquad \tag{35}\\ \text {D}_{n}(i,j)=&\begin{cases} 1, c_{n}'(i,j) - c_{n}(i,j)\neq 0 \\ 0, c_{n}'(i,j) - c_{n}(i,j)= 0, \end{cases}\tag{36}\end{align*}

View SourceRight-click on figure for MathML and additional features. where n is an integer and n \in [{1,3}] , n =1 , 2 and 3 represent the NPCR and UACI indexes of R, G and B channels respectively. C_{n}' represents the encrypted image after the original image C_{n} changes one pixel value.

We just change the value of a single pixel in the plain image to observe the NPCR and UACI indexes of the two encrypted images. The results of the two indexes are listed in Table. 13, which can be seen that the NPCR and UACI indexes of the encrypted image are very close to the ideal values, so it shows that the encryption algorithm can well resist the differential attack. Table. 14 shows the comparison results between our algorithm and other algorithms based on the Lena image. From the experimental data in Table. 14, it can be seen that the NPCR and UACI indexes of the comparison algorithm are poor when only changing the single pixel value, which can not resist the differential attack effectively. In contrast, our algorithm greatly improves the performance of resisting differential attack.

TABLE 13 NPCR and UACI of Different Images
Table 13- 
NPCR and UACI of Different Images
TABLE 14 Comparison of NPCR and UACI for the Lena by Different Algorithms
Table 14- 
Comparison of NPCR and UACI for the Lena by Different Algorithms

H. Resisting Known-Plaintext and Chosen-Plaintext Attacks Ability

From the previous analysis, because the parameters used for encryption in these algorithms are not sensitive to plaintext [10], [28], [33], they have been cracked by known plaintext attack and selective plaintext attack, which are often used to evaluate the security of the algorithm [73]. In our algorithm, we improved the performance of resisting these two attacks through corresponding operations. Firstly, our encryption algorithm is based on fractional-order hyperchaotic Chen system and logistic map, and its initial values are completely determined by plaintext. Secondly, our encryption algorithm is highly sensitive to the keys, and the chaotic sequences {X_{i} }, {Y_{i} }, {Z_{i} } and {H_{i} } can dynamically control each encryption process. This means that when the plaintext changes, the keys will change, which will lead to the change of chaotic sequence, so the encryption result will also alter. Therefore, our algorithm is highly dependent on the original image and can resist these two attacks.

I. Anti-Noise Ability

In the process of transmission, the encrypted image will inevitably be disturbed by noise. The typical noise types are Gaussian noise (GN) and salt pepper noise (SPN). The encrypted image and the corresponding decrypted image under different noise densities are shown in Fig. 9. The variance of Gaussian noise is 0.15 and 0.20, respectively. The density of salt and pepper noise was 0.002 and 0.005, respectively. It can be seen from Fig. 9 that most of the original image information can be recovered after decrypting the cipher image with noise, so our algorithm has good anti-noise performance.

FIGURE 9. - Experimental results of anti-noise performance. (a) encrypted image with Gaussian noise variance of 0.15; (b)decrypted image with Gaussian noise variance of 0.15; (c) encrypted image with Gaussian noise variance of 0.2; (d) decrypted image with Gaussian noise variance of 0.2; (e) encrypted image with salt and pepper noise density of 0.002; (f) decrypted image with salt and pepper noise density of 0.002; (g) encrypted image with salt and pepper noise density of 0.005; (h) decrypted image with salt and pepper noise density of 0.005.
FIGURE 9.

Experimental results of anti-noise performance. (a) encrypted image with Gaussian noise variance of 0.15; (b)decrypted image with Gaussian noise variance of 0.15; (c) encrypted image with Gaussian noise variance of 0.2; (d) decrypted image with Gaussian noise variance of 0.2; (e) encrypted image with salt and pepper noise density of 0.002; (f) decrypted image with salt and pepper noise density of 0.002; (g) encrypted image with salt and pepper noise density of 0.005; (h) decrypted image with salt and pepper noise density of 0.005.

J. Anti-Cropping Ability

When transmitting an encrypted image, it is easy to be attacked by occlusion. Therefore, we test the decrypted images with different degrees of data loss, which are \frac {1}{8} of the occluded encrypted images, \frac {1}{16} of the occluded encrypted images and \frac {1}{32} of the occluded encrypted images to detect the anti-cropping attack performance of our algorithm. The experimental results are shown in Fig. 10. It can be seen from Fig. 10 that although a part of the encrypted image has been cut off, our algorithm can still recover the original image well.There are some flaws in the decrypted image, but most of the original image information can be obtained from it, which shows that our proposed algorithm has good anti-cropping attack ability.

FIGURE 10. - Experimental results of anti-noise performance. (a) 1/8 of the encrypted image is cropped; (b) 1/16 of the encrypted image is cropped; (c) 1/32 of the encrypted image is cropped; (d) decrypted image of 1/8 data cropped; (e) decrypted image of 1/16 data cropped; (f) decrypted image of 1/32 data cropped.
FIGURE 10.

Experimental results of anti-noise performance. (a) 1/8 of the encrypted image is cropped; (b) 1/16 of the encrypted image is cropped; (c) 1/32 of the encrypted image is cropped; (d) decrypted image of 1/8 data cropped; (e) decrypted image of 1/16 data cropped; (f) decrypted image of 1/32 data cropped.

SECTION V.

Conclusion

In this paper, we proposed a novel color image compression-encryption algorithm based on the fractional-order hyperchaotic system combined with DCT and DNA coding. In the compression stage, the two-dimensional DCT transforms the image to the frequency domain for processing, and the quantization operation is used to reduces the amount of image data. In the encryption stage, chaotic sequences are generated by fractional-order hyperchaotic Chen system, which are used to control DNA coding, decoding and DNA perations. Moreover, the logistic map is used to scramble the pixel position, which further improves the security of the algorithm. Experimental results verify that our algorithm can effectively compress image data and resist various attacks. However, although the high-dimensional fractional-order hyperchaotic system is used in the encryption algorithm to ensure that it has enough key space, the process of pixel scrambling is only controlled by the one-dimensional logistic map, and its parameter space is very limited, which may affect the key space. Secondly, we only use statistical tests to analyze the security of encryption algorithm, which are necessary but not sufficient. These shortcomings will be improved in future research.

References

References is not available for this document.