# A Secure Chaotic Block Image Encryption Algorithm Using Generative Adversarial Networks and DNA Sequence Coding

Authors: Pengfei Fang; Han Liu; Chengmao Wu; Min Liu
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

This paper proposes a block encryption algorithm based on a new chaotic system that combines generative adversarial networks (GANs) and DNA sequence coding. First, the new one-dimensional chaotic system that combines GANs with DNA sequence coding generates two more complex key stream sequences. Then, the two different random sequences are combined with an improved Feistel network by utilizing the product of the block matrix to encrypt the image to scramble and diffuse the image. Finally, the security performance of this algorithm is quantitatively analysed. The simulation results show that the proposed chaotic system has a large key space, and the new algorithm yields adequate security and can resist exhaustive attacks and chosen-plaintext attacks. Therefore, this approach provides a new algorithm for secure transmission and protection of image information.


---

## Body

## 1. Introduction

With the rapid development of computer technology, when image information is transmitted, it is easy to leak or steal information, which could result in an unpredictable impact; thus, the security of image information transmission is becoming increasingly important. However, since the size of image datasets is much larger than the size of text datasets and the correlation between adjacent pixels is very strong, traditional encryption algorithms, such as the data encryption standard (DES) and advanced encryption standard (AES) [1, 2], with a low encryption security and the risk of being cracked, might not be suitable for image encryption. Therefore, image encryption and decryption technology has become one of the most important issues in the field of information security.Many image encryption algorithms have been proposed by researchers. The common image encryption algorithms include the following: the pixel scrambling algorithm [3], which scrambles the position of each pixel in the image without changing the grey value of the pixel in the image. The histogram of the image does not change before and after the image changes, so it is easy to be decrypted; the pixel grey value diffusion algorithm [4], in which the grey value of each point in the image is used to change the grey value of each pixel in the original image by a certain transformation and the key can be easily analysed after the thief knows some part of the information in the plaintext; and the scrambling and diffusion combination algorithm [5], which has the advantage of not only changing the position of each pixel in the original image but also changing the grey value of the pixel, and the cryptosystem has a large key space and strong anti-interference ability.The chaotic system has excellent aperiodicity, pseudorandomness, and highly sensitive initial values and is easy to reproduce, which is widely used in the field of image encryption [6]. Chaotic systems can be divided into low-dimensional and high-dimensional systems. The classical low-dimensional chaotic system includes a logistic chaotic system and a sine chaotic system, which has a simple structure and is easily implemented. High-dimensional chaotic systems include the Lorenz hyperchaotic system and Chen hyperchaotic system, which have complex nonlinear dynamic behaviour. The authors of [7] proposed the double-humped logistic map, which is used for pseudorandom number key generation (PRNG). The generalized parameter added to the map provides more control on the map chaotic range. The authors of [8] proposed a method of making a simple and effective chaotic system by using a difference of the output sequences of two identical existing one-dimensional (1D) chaotic maps. The authors of [9] proposed an improved classic quadratic chaotic map to enhance its chaotic properties. Compared with the classical quadratic map, the proposed quadratic map demonstrates a much larger maximal Lyapunov exponent. The authors of [10] proposed the new chaotic system, the tent-logistic system, which has a better chaotic performance and a wider chaotic range than the tent and logistic systems. The authors of [11] proposed a new one-dimensional chaotic map that can be used as a secure pseudorandom number generator in encryption systems. Nevertheless, low-dimensional chaotic systems have the shortcomings of a limited range of chaotic behaviours, a small space for generating chaotic sequences, and poor safety, which limit their application. Additionally, high-dimensional chaotic systems have multiple parameters, complex hardware design, large numbers of calculations, and other defects that are limiting factors. To solve problems such as poor performance of chaotic dynamics, small key space, and poor randomness of chaotic sequences, in this paper, we construct a new low-dimensional system. Analysis shows that the proposed system has a better chaotic performance and wider chaotic range than previously used systems. It can not only increase the randomness of the chaotic sequences but also expand the key space of cryptosystems, which is suitable for chaotic image encryption.From the structure of image encryption based on a chaotic system, it mainly uses the scrambling and diffusion mechanism. The common chaotic encryption algorithms include those based on bit-level, pixel-level, one-time keys, deoxyribonucleic acid (DNA) rules, dynamic DNA coding, mathematical models, S-boxes scrambling, and diffusion. The authors of [12] proposed transforming an image into a bitmap block to perform a logical XOR operation and obtain a ciphertext image that can resist common attacks. The authors of [13] proposed a chaotic system to construct a complex key, and the pixel values and pixel positions of the block image were changed to implement encryption. Some encryption algorithms based on the combination of the Feistel network and DNA coding have been proposed. The authors of [14] proposed the scrambling transformation of image pixel positions and the diffusion of pixel values with a Hill permutation, Feistel transformation, chaotic scrambling, and dynamic DNA encoding, in which the F function was used for the Feistel transformation. The DNA sequence operation reduced the number of encryption rounds by using multiple scrambling and DNA encoding and decoding steps to achieve the effect of multiround encryption, which resulted in good security performance. The authors of [15] proposed an encryption algorithm based on the Feistel network and DNA encoding scrambling and a diffusion structure for image encryption, which can effectively solve strong plaintext sensitivity. The authors of [16] proposed image encryption based on a double chaotic pseudorandom generator. It uses four secret keys for encryption, which is highly secure. The authors of [17] presented an image encryption algorithm based on dynamic S-boxes and random blocks, in which a plaintext image is scrambled and diffused to implement an encrypted image. The authors of [18] presented a new 5D continuous hyperchaotic system that is combined with DNA dynamic encoding, scrambling, and diffusion to encrypt an image, and the algorithm can resist chosen-plaintext attacks. The authors of [19] presented a novel colour image encryption algorithm based on dynamic DNA encoding and a chaotic system, where DNA encoding and diffusion are used to diffuse the image information. The authors of [20] presented quantum image compression and an encryption algorithm with a Daubechies quantum wavelet transform (DQWT) and hyperchaotic Henon map. The algorithm has high encryption efficiency and good security. The authors of [21] presented an approach based on the quaternion discrete fractional Hartley transform (QD-FrHT) and an improved pixel adaptive diffusion encryption algorithm, which can increase the encryption capacity and reduce the consumption of keys. The authors of [22] presented an approach based on hyperchaotic system and a quantum cross-exchange operation to realize bit-level image encryption. The algorithm has high complexity and good security. The authors of [23] presented an approach based on a chaotic system and a two-dimensional linear canonical transform (2D-LCT) encryption algorithm, and the algorithm has good reliability. However, the above encryption algorithms have limited key spaces and involve simple superposition; thus, these algorithms have difficulty in resisting brute-force attacks and chosen-plaintext attacks and have poor security, which leads to algorithm cracking. To solve the problems of low encryption efficiency, difficulties in resisting chosen-plaintext attacks, and low security, among others, in this paper, a new block image encryption algorithm is proposed that uses the one-time pad mechanism, double key stream mechanism, and improved Feistel structure to scramble and diffuse the pixel value and pixel position of the block image. Consequently, the block image parallel encryption is realized and the security performance and encryption efficiency of the algorithm are improved so that it can resist chosen-plaintext attacks and other encryption attacks.Nonlinear complex networks and deep learning are new research directions and have been widely used, especially in the field of image processing, for almost two years. A nonlinear complex network has the characteristics of a large number of weight parameters, nonlinearity, and a complicated network structure, which provides ample key space and resistance for brute-force attacks and chosen-plaintext attacks. The authors of [24] presented a two-dimensional chaotic system along with a Boolean network. Matrix semitensor product theory and random position transformation are used to scramble and diffuse an image to realize encryption, providing high encryption efficiency and security. The authors of [25] presented an image block scrambling algorithm followed by the generation of the key stream by combining a Boolean network with a mixed linear-nonlinear coupled map; the image is encrypted by a matrix semitensor and key stream. The algorithm is secure, effective, and suitable for colour image encryption. The authors of [26] presented a new dispersion-keeping evaluation mechanism and two biobjective memetic genetic programming algorithms, which have good regression characteristics and can be applied to image encryption. The authors of [27] developed a Lorenz chaotic generation key stream matrix for image scrambling, and matrix semitensor product theory is applied to diffuse the image to generate a ciphertext image with improved encryption security. The authors of [28] developed PWLCM to generate a key stream and combined it with the nonlinear characteristics of the McCulloch–Pitts model to encrypt an image, which has a large key space and can resist common attacks. In the above described research, from the perspective of encryption algorithm security, the matrix semitensor product theory, Boolean network theory, and fractal sorting matrix are applied to image encryption, which has high security. In addition to the choice of algorithm, the structure of the key stream determines the performance of the encryption system. Therefore, in this paper, from the point of view of key stream construction and the combination of generative adversarial networks (GANs), a new one-dimensional chaotic system, and DNA sequence coding, a double key stream with good randomness and complexity is constructed. At the same time, the nonlinear characteristics of the GANs and the parallel computing characteristics of DNA coding are used to solve the periodic problem caused by the limited precision of chaotic sequences, and the plaintext image is encrypted with the encryption algorithm. Moreover, it also provides a new idea for the combination of deep learning, GANs, DNA sequence coding, and image information security technology.To summarize the above, a secure chaotic block image encryption algorithm using generative adversarial networks and DNA sequence coding is proposed. A one-dimensional, two-parameter chaotic system with a large key space and a better chaotic dynamic performance is proposed, in which GANs are combined with DNA sequence coding to generate better randomness and complexity in the fusion random sequence and DNA coding sequence as a double key stream. Then, the matrix product is used to encrypt the plaintext block image pixel-level scrambling and diffusion as a ciphertext image based on an improved Feistel network, one-time pad mechanism, and double key stream. Moreover, the security of the algorithm is also analysed. The experimental results show that the proposed encryption algorithm based on the new chaotic system, GANs, and DNA sequence coding has a large secret key space, and it can resist common attacks with good security.The remainder of this paper is structured as follows. The new chaotic system and fusion random sequence are detailed in Section2. The encryption algorithm is detailed in Section 3. In Section 4, the experimental results and a security analysis are presented. Finally, Section 5 presents some conclusions.


## 2. New Chaotic System and Fusion Random Sequence

### 2.1. New Chaotic System

In nonlinear dynamic systems, a logistic system is a deterministic system of aperiodic nonconvergence, which is similar to a stochastic process and is extremely sensitive to the initial values of parameters. Compared with the pseudorandom sequences produced by the traditional linear system, the logistic system sequences have secure confidentiality [29]. The logistic system can be expressed as follows:(1)xi+1=axi1−xi,0<xi<1,i=1,2,…,where a∈3.569946,4 is the control parameter and i is the number of iterations. However, the logistic chaotic system has the problems of a small chaotic interval and discontinuous distribution of the chaotic sequence. Ramadan et al. [9] proposed that the improved quadratic chaotic system can be used, as shown in the following equation:(2)xi+1=a+1−8xi2mod1,0<xi<1,i=1,2,…,where the control parameter a∈0,∞ except for the values 0.11, 1.11, 2.11, … to infinity; mod⋅ is the modulus operator, of which the chaotic interval is large and the chaotic sequence is evenly distributed, but the chaotic system control parameters are few. To obtain better chaotic dynamic performance, the chaotic interval and control parameters are used to make it more suitable for chaotic image encryption. A new chaotic system that combines logistical chaotic with improved quadratic chaotic systems is proposed, as shown in the following equation:(3)xi+1=a−bxi1−8xi2mod1,0<xi<1,i=1,2,…,where the control parameter a∈0,∞ for the values 0.11, 1.11, 2.11, … to infinity; b∈0,4 and mod⋅ is the modulus operator, which has a wider range of values and better chaotic behaviour.


#### 2.1.1. Bifurcation Diagram

Bifurcation diagrams are widely used in chaotic behaviour analysis [30]. The iteration step size is set to 0.5, and the number of iterations is 150. Additionally, the proposed chaotic system parameters are selected as a,b∈0,2, and the bifurcation diagrams of the logistic chaotic system, improved quadratic chaotic system, and new chaotic system with different control parameters of a,b are shown in Figure 1.Figure 1
Bifurcation diagram of the proposed chaotic map with the parameter. (a) Bifurcation diagram of the logistic chaotic system with the parametera, (b) bifurcation diagram of the improved quadratic chaotic system with the parameter a, (c) bifurcation diagram of the new chaotic system with the parameter a, and (d) bifurcation diagram of the new chaotic map with the parameter b.
(a)(b)(c)(d)We can see from Figure1 that the bifurcation diagram of two different control parameters of the new chaotic system is uniformly distributed so that the new chaotic system adapts to the requirements of image cryptography.


#### 2.1.2. Lyapunov Exponent

The Lyapunov exponent is a mathematical tool used to characterize the chaotic behaviour of a nonlinear dynamic system [31]. When the exponent is positive, the system exhibits chaotic behaviour, and the proposed chaotic system control parameters are set to a,b∈0,4. The Lyapunov exponent spectrum of the logistic chaotic system, improved quadratic chaotic system, and new chaotic system is shown in Figure 2. The Lyapunov exponents of the logistics chaotic system, improved quadratic chaotic system, and new chaotic system and exponents from references [7–11] are listed in Table 1.Figure 2
The Lyapunov exponents. (a) The Lyapunov exponent of the logistic system, (b) the Lyapunov exponent of the improved quadratic system, (c) the Lyapunov exponent of the new chaotic system with the parametera, and (d) the Lyapunov exponent of the new chaotic system with the parameter b.
(a)(b)(c)(d)Table 1
Lyapunov exponents.
Chaotic systemControl parameteraControl parameterbReference [7]0.6843—Reference [8]1.2944—Reference [9]3.9992—Reference [10]0.6992—Reference [11]3.8964—Logistic0.6031—Proposed4.46044.8930Figure2 and Table 1 show that all kinds of chaotic systems listed above have different positive Lyapunov exponents. However, the new chaotic system has the largest Lyapunov exponent, which means that it yields more chaotic behaviour than the other systems.


#### 2.1.3. NIST Test of New Chaotic Sequence

To test the complexity and randomness of chaotic sequences generated by new chaotic systems, the National Institute of Standards and Technology (NIST) is used to test chaotic sequences [32]. The measure of sequence randomness is the P value algorithm, which provides the probability that the randomness of the sequence is better than that of a truly random sequence. All test results were determined by Pvalue; if P<0.01, then the sequence is not random and complex. If P≥0.01, the sequence is random and complex. According to the requirements of the NIST test software, 10 groups of 106 bits of new system (3) sequences are selected for testing. The test results are shown in Table 2.Table 2
NIST tests.
TestSequenceFrequency0.350485Frequency test within a block0.350485Cumulative sums0.739918Runs0.350485Test for the longest run of ones in a block0.739918Binary matrix rank test0.544146Discrete Fourier transform (spectral)0.021141Nonoverlapping template matching0.534146Overlapping template matching0.350485Maurer’s “universal statistical” test0.534146Approximate entropy0.213309Random excursions0.794590Random excursions variant0.802851Linear complexity0.534100Serial0.213309Table2 shows that the new chaotic system sequence has passed all NIST tests; therefore, it has good complexity and randomness characteristics.


#### 2.1.4. Complexity Analysis of the Chaotic System

To better verify the randomness and complexity of the chaotic sequence generated by the new chaotic system compared with the relevant literature, spectral entropy, 0-1 sequencing, and approximate entropy [32] are used for analysis, as shown in Table 3.Table 3
Performance comparison.
Chaotic systemSpectral entropy0-1 testApproximate entropyReference [7]0.92580.99830.6563Reference [8]0.93040.99770.8021Reference [9]0.92540.99651.3575Reference [10]0.92340.99860.6355Reference [11]0.92640.99810.6668Logistic0.93170.99800.6514Proposed0.99700.99911.5625Table3 shows that the value of the new chaotic system sequence proposed is greater than those in other studies, showing better randomness and complexity. Therefore, it is suitable for image encryption algorithms.


### 2.2. Fusion Sequence

In recent years, deep learning technology has made breakthrough developments, showing obvious advantages in various fields. Generative adversarial networks (GANs) are based on a generation model framework and were proposed by Goodfellow, who was inspired by the zero-sum game of using two people to train a network by confrontation [33]. GANs are used in image segmentation and image reconstruction and have good nonlinear and data reconstruction effects. At present, the GANs are one of the most important models in the field of computers. The GANs generate the required data samples through the competition between the generation model and the discriminant model. Compared with the traditional model, the combination of GANs and a chaotic system has unique advantages: (1) the training speed of the model is improved and then improves the efficiency of the training model; (2) compared with other models, it can produce clearer and more real samples; (3) more flexibility improves the expansion ability of the model; and (4) the complex nonlinear characteristics, which can effectively eliminate the problem of periodic chaotic sequences and increase the key space, improve the resistance to brute-force attacks of the encryption system and key. Therefore, the fusion pseudorandom sequence with a larger key space and stronger randomness can be generated by combining the generative adversarial networks with a chaotic system.In this paper, a new fusion pseudorandom sequence is generated by using the nonlinear characteristics of a chaotic system and GANs. The chaotic sequence is trained to eliminate the problem of periodic chaotic sequences. In GANs, both the generator and the discriminator use a fully connected layer, for which the generator is a single-layer fully connected network and the discriminator is a three-layer fully connected network. The rectified linear unit (ReLU) activation function is used in the generative model. The chaotic sequence is set as the real value of the model, and the normal distribution noise is set as the input value. Additionally, the hidden layer uses the tanh activation function, and the output does not have an activation function. The generation of fusion random sequences is characterized by high randomness and complexity, which is used to construct the encryption key stream and improves the security of the encryption system. A block diagram of the fusion sequences is shown in Figure 3.Figure 3
Fusion sequence flowchart.The sequence generation process consists of the following steps:Step 1: the secure SHA-512 is selected in this paper to convert the plaintext information into 512-bit hash values and then generate initial values and control parameters for the chaotic system; this approach increases the correlation between the plaintext and key, which can increase resistance to plaintext attacks. We input the image (size ofM×N) and select the generated 512-bit hash value as an array of H=h1,h2,…,h512, which is divided into 64 blocks. Each block contains a total of 8 bits k=k1,k2,…,k64, which are integers in the interval [0, 255], before being converted into decimal digits. Then, the initial values and control parameters of the new chaotic system are obtained as shown in (10).(4)hai=kj+3⊕kj+1⊕kj+2+kj+4+kj+5+kj+6mod256,(5)i=1,2,…,10,j=6×i−1,x11=ha1+ha104,(6)x21=ha2+ha96,(7)x31=ha3+ha88,(8)cpi=mod∑i=110ki,25629×10,i=1,2,…,6,(9)a1=cp1,b1=cp2,a2=cp3,b2=cp4,a3=cp5,b3=cp6,wherehai and cpi are variables; a1,b1,a2,b2,a3,b3 are chaotic control parameters; x11,x21, and x31 are the initial chaotic values; ⊕ is the XOR operation; and mod⋅ is the modulus operator.Step 2: the proposed chaotic system iteratively generates the three chaotic sequencesf1, f2, and f3 for three sets of initial values: f1=x1,a1,b1, f2=x2,a2,b2, and f3=x3,a3,b3.Step 3:f1, f2, and f3 are sent to the discriminator as real data. A random noise signal in the range [0, 1] has a normal distribution as input to the generator. The generator and discriminator are trained to generate random sequences y1, y2, and y3.Step 4:y1, y2, and y3 are applied to generate fusion random sequences fusioni and i=1,2,…,M×N. The process is shown as follows:(10)s1i=mody1iy2i−y3i,256,(11)s2i=mody1i+s12i,256,(12)s3i=mody2i+s22i,256,(13)middle1=mods11s21−s31,256,(14)s˙11=modmiddle12+s11,256,(15)s˙21=mods˙112+s21,256.When i=1,(16)fusion1=mods˙11+s˙21,256.When i≥2,(17)middlei=mods1is2i−middlei−1,256,s˙1i=modmiddlei2+s1i,256,s˙2i=mods˙1i2+s2i,256,fusioni=mods˙1i+s˙2i,256,i=2,…,M×N,where mod⋅ is the modulus operator.


#### 2.2.1. Test of Fusion Sequence

To better test the randomness and complexity of the fusion random sequence, we test the proposed fusion random sequence and the proposed chaotic sequences generated with different initial values and control parameters ofx1,a1, and b1 (represented by 1); x2,a2, and b2 (represented by 2); and x3,a3, and b3 (represented by 3) and the fusion random sequence (represented by “fusion”). The test results are compared with the approximate entropy values of the random sequences in Table 4.Table 4
Randomness and complexity of random sequences.
Random sequenceSpectral entropy0-1 testApproximate entropy10.99870.99820.805620.99810.99681.619730.94960.99811.6135Fusion0.99910.99891.7712Table4 shows that the proposed fusion sequences have the largest value of the spectral entropy, 0-1 test, and approximate entropy. Therefore, the proposed approach can significantly improve the complexity of random sequences and is beneficial to applications such as encryption.


## 2.1. New Chaotic System

In nonlinear dynamic systems, a logistic system is a deterministic system of aperiodic nonconvergence, which is similar to a stochastic process and is extremely sensitive to the initial values of parameters. Compared with the pseudorandom sequences produced by the traditional linear system, the logistic system sequences have secure confidentiality [29]. The logistic system can be expressed as follows:(1)xi+1=axi1−xi,0<xi<1,i=1,2,…,where a∈3.569946,4 is the control parameter and i is the number of iterations. However, the logistic chaotic system has the problems of a small chaotic interval and discontinuous distribution of the chaotic sequence. Ramadan et al. [9] proposed that the improved quadratic chaotic system can be used, as shown in the following equation:(2)xi+1=a+1−8xi2mod1,0<xi<1,i=1,2,…,where the control parameter a∈0,∞ except for the values 0.11, 1.11, 2.11, … to infinity; mod⋅ is the modulus operator, of which the chaotic interval is large and the chaotic sequence is evenly distributed, but the chaotic system control parameters are few. To obtain better chaotic dynamic performance, the chaotic interval and control parameters are used to make it more suitable for chaotic image encryption. A new chaotic system that combines logistical chaotic with improved quadratic chaotic systems is proposed, as shown in the following equation:(3)xi+1=a−bxi1−8xi2mod1,0<xi<1,i=1,2,…,where the control parameter a∈0,∞ for the values 0.11, 1.11, 2.11, … to infinity; b∈0,4 and mod⋅ is the modulus operator, which has a wider range of values and better chaotic behaviour.


### 2.1.1. Bifurcation Diagram

Bifurcation diagrams are widely used in chaotic behaviour analysis [30]. The iteration step size is set to 0.5, and the number of iterations is 150. Additionally, the proposed chaotic system parameters are selected as a,b∈0,2, and the bifurcation diagrams of the logistic chaotic system, improved quadratic chaotic system, and new chaotic system with different control parameters of a,b are shown in Figure 1.Figure 1
Bifurcation diagram of the proposed chaotic map with the parameter. (a) Bifurcation diagram of the logistic chaotic system with the parametera, (b) bifurcation diagram of the improved quadratic chaotic system with the parameter a, (c) bifurcation diagram of the new chaotic system with the parameter a, and (d) bifurcation diagram of the new chaotic map with the parameter b.
(a)(b)(c)(d)We can see from Figure1 that the bifurcation diagram of two different control parameters of the new chaotic system is uniformly distributed so that the new chaotic system adapts to the requirements of image cryptography.


### 2.1.2. Lyapunov Exponent

The Lyapunov exponent is a mathematical tool used to characterize the chaotic behaviour of a nonlinear dynamic system [31]. When the exponent is positive, the system exhibits chaotic behaviour, and the proposed chaotic system control parameters are set to a,b∈0,4. The Lyapunov exponent spectrum of the logistic chaotic system, improved quadratic chaotic system, and new chaotic system is shown in Figure 2. The Lyapunov exponents of the logistics chaotic system, improved quadratic chaotic system, and new chaotic system and exponents from references [7–11] are listed in Table 1.Figure 2
The Lyapunov exponents. (a) The Lyapunov exponent of the logistic system, (b) the Lyapunov exponent of the improved quadratic system, (c) the Lyapunov exponent of the new chaotic system with the parametera, and (d) the Lyapunov exponent of the new chaotic system with the parameter b.
(a)(b)(c)(d)Table 1
Lyapunov exponents.
Chaotic systemControl parameteraControl parameterbReference [7]0.6843—Reference [8]1.2944—Reference [9]3.9992—Reference [10]0.6992—Reference [11]3.8964—Logistic0.6031—Proposed4.46044.8930Figure2 and Table 1 show that all kinds of chaotic systems listed above have different positive Lyapunov exponents. However, the new chaotic system has the largest Lyapunov exponent, which means that it yields more chaotic behaviour than the other systems.


### 2.1.3. NIST Test of New Chaotic Sequence

To test the complexity and randomness of chaotic sequences generated by new chaotic systems, the National Institute of Standards and Technology (NIST) is used to test chaotic sequences [32]. The measure of sequence randomness is the P value algorithm, which provides the probability that the randomness of the sequence is better than that of a truly random sequence. All test results were determined by Pvalue; if P<0.01, then the sequence is not random and complex. If P≥0.01, the sequence is random and complex. According to the requirements of the NIST test software, 10 groups of 106 bits of new system (3) sequences are selected for testing. The test results are shown in Table 2.Table 2
NIST tests.
TestSequenceFrequency0.350485Frequency test within a block0.350485Cumulative sums0.739918Runs0.350485Test for the longest run of ones in a block0.739918Binary matrix rank test0.544146Discrete Fourier transform (spectral)0.021141Nonoverlapping template matching0.534146Overlapping template matching0.350485Maurer’s “universal statistical” test0.534146Approximate entropy0.213309Random excursions0.794590Random excursions variant0.802851Linear complexity0.534100Serial0.213309Table2 shows that the new chaotic system sequence has passed all NIST tests; therefore, it has good complexity and randomness characteristics.


### 2.1.4. Complexity Analysis of the Chaotic System

To better verify the randomness and complexity of the chaotic sequence generated by the new chaotic system compared with the relevant literature, spectral entropy, 0-1 sequencing, and approximate entropy [32] are used for analysis, as shown in Table 3.Table 3
Performance comparison.
Chaotic systemSpectral entropy0-1 testApproximate entropyReference [7]0.92580.99830.6563Reference [8]0.93040.99770.8021Reference [9]0.92540.99651.3575Reference [10]0.92340.99860.6355Reference [11]0.92640.99810.6668Logistic0.93170.99800.6514Proposed0.99700.99911.5625Table3 shows that the value of the new chaotic system sequence proposed is greater than those in other studies, showing better randomness and complexity. Therefore, it is suitable for image encryption algorithms.


## 2.1.1. Bifurcation Diagram

Bifurcation diagrams are widely used in chaotic behaviour analysis [30]. The iteration step size is set to 0.5, and the number of iterations is 150. Additionally, the proposed chaotic system parameters are selected as a,b∈0,2, and the bifurcation diagrams of the logistic chaotic system, improved quadratic chaotic system, and new chaotic system with different control parameters of a,b are shown in Figure 1.Figure 1
Bifurcation diagram of the proposed chaotic map with the parameter. (a) Bifurcation diagram of the logistic chaotic system with the parametera, (b) bifurcation diagram of the improved quadratic chaotic system with the parameter a, (c) bifurcation diagram of the new chaotic system with the parameter a, and (d) bifurcation diagram of the new chaotic map with the parameter b.
(a)(b)(c)(d)We can see from Figure1 that the bifurcation diagram of two different control parameters of the new chaotic system is uniformly distributed so that the new chaotic system adapts to the requirements of image cryptography.


## 2.1.2. Lyapunov Exponent

The Lyapunov exponent is a mathematical tool used to characterize the chaotic behaviour of a nonlinear dynamic system [31]. When the exponent is positive, the system exhibits chaotic behaviour, and the proposed chaotic system control parameters are set to a,b∈0,4. The Lyapunov exponent spectrum of the logistic chaotic system, improved quadratic chaotic system, and new chaotic system is shown in Figure 2. The Lyapunov exponents of the logistics chaotic system, improved quadratic chaotic system, and new chaotic system and exponents from references [7–11] are listed in Table 1.Figure 2
The Lyapunov exponents. (a) The Lyapunov exponent of the logistic system, (b) the Lyapunov exponent of the improved quadratic system, (c) the Lyapunov exponent of the new chaotic system with the parametera, and (d) the Lyapunov exponent of the new chaotic system with the parameter b.
(a)(b)(c)(d)Table 1
Lyapunov exponents.
Chaotic systemControl parameteraControl parameterbReference [7]0.6843—Reference [8]1.2944—Reference [9]3.9992—Reference [10]0.6992—Reference [11]3.8964—Logistic0.6031—Proposed4.46044.8930Figure2 and Table 1 show that all kinds of chaotic systems listed above have different positive Lyapunov exponents. However, the new chaotic system has the largest Lyapunov exponent, which means that it yields more chaotic behaviour than the other systems.


## 2.1.3. NIST Test of New Chaotic Sequence

To test the complexity and randomness of chaotic sequences generated by new chaotic systems, the National Institute of Standards and Technology (NIST) is used to test chaotic sequences [32]. The measure of sequence randomness is the P value algorithm, which provides the probability that the randomness of the sequence is better than that of a truly random sequence. All test results were determined by Pvalue; if P<0.01, then the sequence is not random and complex. If P≥0.01, the sequence is random and complex. According to the requirements of the NIST test software, 10 groups of 106 bits of new system (3) sequences are selected for testing. The test results are shown in Table 2.Table 2
NIST tests.
TestSequenceFrequency0.350485Frequency test within a block0.350485Cumulative sums0.739918Runs0.350485Test for the longest run of ones in a block0.739918Binary matrix rank test0.544146Discrete Fourier transform (spectral)0.021141Nonoverlapping template matching0.534146Overlapping template matching0.350485Maurer’s “universal statistical” test0.534146Approximate entropy0.213309Random excursions0.794590Random excursions variant0.802851Linear complexity0.534100Serial0.213309Table2 shows that the new chaotic system sequence has passed all NIST tests; therefore, it has good complexity and randomness characteristics.


## 2.1.4. Complexity Analysis of the Chaotic System

To better verify the randomness and complexity of the chaotic sequence generated by the new chaotic system compared with the relevant literature, spectral entropy, 0-1 sequencing, and approximate entropy [32] are used for analysis, as shown in Table 3.Table 3
Performance comparison.
Chaotic systemSpectral entropy0-1 testApproximate entropyReference [7]0.92580.99830.6563Reference [8]0.93040.99770.8021Reference [9]0.92540.99651.3575Reference [10]0.92340.99860.6355Reference [11]0.92640.99810.6668Logistic0.93170.99800.6514Proposed0.99700.99911.5625Table3 shows that the value of the new chaotic system sequence proposed is greater than those in other studies, showing better randomness and complexity. Therefore, it is suitable for image encryption algorithms.


## 2.2. Fusion Sequence

In recent years, deep learning technology has made breakthrough developments, showing obvious advantages in various fields. Generative adversarial networks (GANs) are based on a generation model framework and were proposed by Goodfellow, who was inspired by the zero-sum game of using two people to train a network by confrontation [33]. GANs are used in image segmentation and image reconstruction and have good nonlinear and data reconstruction effects. At present, the GANs are one of the most important models in the field of computers. The GANs generate the required data samples through the competition between the generation model and the discriminant model. Compared with the traditional model, the combination of GANs and a chaotic system has unique advantages: (1) the training speed of the model is improved and then improves the efficiency of the training model; (2) compared with other models, it can produce clearer and more real samples; (3) more flexibility improves the expansion ability of the model; and (4) the complex nonlinear characteristics, which can effectively eliminate the problem of periodic chaotic sequences and increase the key space, improve the resistance to brute-force attacks of the encryption system and key. Therefore, the fusion pseudorandom sequence with a larger key space and stronger randomness can be generated by combining the generative adversarial networks with a chaotic system.In this paper, a new fusion pseudorandom sequence is generated by using the nonlinear characteristics of a chaotic system and GANs. The chaotic sequence is trained to eliminate the problem of periodic chaotic sequences. In GANs, both the generator and the discriminator use a fully connected layer, for which the generator is a single-layer fully connected network and the discriminator is a three-layer fully connected network. The rectified linear unit (ReLU) activation function is used in the generative model. The chaotic sequence is set as the real value of the model, and the normal distribution noise is set as the input value. Additionally, the hidden layer uses the tanh activation function, and the output does not have an activation function. The generation of fusion random sequences is characterized by high randomness and complexity, which is used to construct the encryption key stream and improves the security of the encryption system. A block diagram of the fusion sequences is shown in Figure 3.Figure 3
Fusion sequence flowchart.The sequence generation process consists of the following steps:Step 1: the secure SHA-512 is selected in this paper to convert the plaintext information into 512-bit hash values and then generate initial values and control parameters for the chaotic system; this approach increases the correlation between the plaintext and key, which can increase resistance to plaintext attacks. We input the image (size ofM×N) and select the generated 512-bit hash value as an array of H=h1,h2,…,h512, which is divided into 64 blocks. Each block contains a total of 8 bits k=k1,k2,…,k64, which are integers in the interval [0, 255], before being converted into decimal digits. Then, the initial values and control parameters of the new chaotic system are obtained as shown in (10).(4)hai=kj+3⊕kj+1⊕kj+2+kj+4+kj+5+kj+6mod256,(5)i=1,2,…,10,j=6×i−1,x11=ha1+ha104,(6)x21=ha2+ha96,(7)x31=ha3+ha88,(8)cpi=mod∑i=110ki,25629×10,i=1,2,…,6,(9)a1=cp1,b1=cp2,a2=cp3,b2=cp4,a3=cp5,b3=cp6,wherehai and cpi are variables; a1,b1,a2,b2,a3,b3 are chaotic control parameters; x11,x21, and x31 are the initial chaotic values; ⊕ is the XOR operation; and mod⋅ is the modulus operator.Step 2: the proposed chaotic system iteratively generates the three chaotic sequencesf1, f2, and f3 for three sets of initial values: f1=x1,a1,b1, f2=x2,a2,b2, and f3=x3,a3,b3.Step 3:f1, f2, and f3 are sent to the discriminator as real data. A random noise signal in the range [0, 1] has a normal distribution as input to the generator. The generator and discriminator are trained to generate random sequences y1, y2, and y3.Step 4:y1, y2, and y3 are applied to generate fusion random sequences fusioni and i=1,2,…,M×N. The process is shown as follows:(10)s1i=mody1iy2i−y3i,256,(11)s2i=mody1i+s12i,256,(12)s3i=mody2i+s22i,256,(13)middle1=mods11s21−s31,256,(14)s˙11=modmiddle12+s11,256,(15)s˙21=mods˙112+s21,256.When i=1,(16)fusion1=mods˙11+s˙21,256.When i≥2,(17)middlei=mods1is2i−middlei−1,256,s˙1i=modmiddlei2+s1i,256,s˙2i=mods˙1i2+s2i,256,fusioni=mods˙1i+s˙2i,256,i=2,…,M×N,where mod⋅ is the modulus operator.


### 2.2.1. Test of Fusion Sequence

To better test the randomness and complexity of the fusion random sequence, we test the proposed fusion random sequence and the proposed chaotic sequences generated with different initial values and control parameters ofx1,a1, and b1 (represented by 1); x2,a2, and b2 (represented by 2); and x3,a3, and b3 (represented by 3) and the fusion random sequence (represented by “fusion”). The test results are compared with the approximate entropy values of the random sequences in Table 4.Table 4
Randomness and complexity of random sequences.
Random sequenceSpectral entropy0-1 testApproximate entropy10.99870.99820.805620.99810.99681.619730.94960.99811.6135Fusion0.99910.99891.7712Table4 shows that the proposed fusion sequences have the largest value of the spectral entropy, 0-1 test, and approximate entropy. Therefore, the proposed approach can significantly improve the complexity of random sequences and is beneficial to applications such as encryption.


## 2.2.1. Test of Fusion Sequence

To better test the randomness and complexity of the fusion random sequence, we test the proposed fusion random sequence and the proposed chaotic sequences generated with different initial values and control parameters ofx1,a1, and b1 (represented by 1); x2,a2, and b2 (represented by 2); and x3,a3, and b3 (represented by 3) and the fusion random sequence (represented by “fusion”). The test results are compared with the approximate entropy values of the random sequences in Table 4.Table 4
Randomness and complexity of random sequences.
Random sequenceSpectral entropy0-1 testApproximate entropy10.99870.99820.805620.99810.99681.619730.94960.99811.6135Fusion0.99910.99891.7712Table4 shows that the proposed fusion sequences have the largest value of the spectral entropy, 0-1 test, and approximate entropy. Therefore, the proposed approach can significantly improve the complexity of random sequences and is beneficial to applications such as encryption.


## 3. Encryption Algorithms

In this section, we introduce a new encryption structure. Many block encryption structures are essentially based on the Feistel network structure, but in the current Feistel network, the encryption and decryption function structures are not sufficiently complicated, and the security is imperfect. These algorithms use only a single key, have low functional complexity, struggle to resist chosen-plaintext attacks, and provide weak security, so they are not applied to image encryption. To solve these problems, an image encryption and decryption algorithm based on improved Feistel network image pixel-level scrambling and a diffusion encryption algorithm are proposed in this paper. In the new chaotic system, GANs and DNA sequence coding are used to construct the double key stream that uses the nonlinear characteristics of the generative adversarial networks and the parallel computing characteristics of DNA coding to solve the periodic problem caused by the limited precision of chaotic sequences. At the same time, the double key stream makes the encryption algorithm more resistant to attacks, which is combined with the improved Feistel network scrambling and diffusion mechanism encryption of the image to achieve local and overall encryption and obtain better encryption security. The process employed by the image encryption and decryption algorithms is depicted in Figure4.Table 5
DNA coding rules.
Rule1234567800AAGCGCTT01GCAATTGC10CGTTAACG11TTCGCGAATable 6
Nucleotide computing rules associated with the first coding rule.
+AGCT−AGCTAAGCTAATCGGGCTAGGATCCCTAGCCGATTTAGCTTCGAFigure 4
Algorithm diagram of encryption and decryption.The specific steps of the encryption algorithm are as follows:Input: the inputs are the plaintext imageP and the initial values of the parameters.Output: the output is the ciphertext imageC.Step 1: the fusion pseudorandom sequence is generated as key streamK1i, and i=1,2,…,M×N/2, according to Section 2.2.Step 2: generate key streamsK2ji, i=1,2,…,M×N, and j=1,2,…,16 encoded according to the DNA coding rules in Tables 5 and 6 [34, 35], and convert into a decimal sequence.We downloaded the DNA sequence with the ID number NZ_LOZQ01000042 from the GenBank database. According to DNA coding rule 1 from Tables5 and 6, each DNA nucleotide in the DNA sequence is converted into a binary sequence code, each 8-bit binary sequence code is converted into a decimal number to obtain a decimal DNA sequence, and a 16-round random sequence DNA key as the other part of the double keys is constructed. The DNA key is calculated through 16 rounds in total, and each round is different. The process is shown as follows:(18)dnakey=dnacoding convert decimalGenBank database,f1i=f1i∗104mod256,i=1,2,…,M×N2,K21i=f1i,i=1,2,…,M×N2,K22i=K21i⊕dnakey,i=1,2,…,M×N2,K2ji=dnacoding convert decimaldnaadddnasubK2j−1i,K2j−2i,…,K2ji,i=1,2,…,M×N2,3≤j≤16,wherednacoding convert decimal⋅ converts a DNA code to a decimal number, ⊕ is the XOR operation, dnaadd⋅ is the nucleotide addition operation, and dnasub⋅ is the nucleotide subtraction operation.Step 3: the plaintext matrixP has a size of M×N. This matrix is divided into two matrices: the left subblock Li and right subblock Ri, where i=1,2,…,M×N/2.Step 4: we obtain the iterative pseudorandom sequences generated as key matricesK1i and K2ji, where i=1,2,…,M×N/2 and j=1,2,…,16. To ensure the security and universality of the proposed algorithm, the unitary matrix Ui, i=1,2,…,M×N/2, is added for left subblock Li iterative encryption; the values of this subblock are all 1, and 16 rounds of iteration were performed.The block diagram of the encryption algorithm for the improved Feistel network is shown in Figure5.The one-round improved Feistel network encryption process is shown in Algorithm1.(19)C1=csi,Ci=bit xorcsi,Ci−1,where C is the final ciphertext image and bit xor⋅ is XOR operation.Figure 5
Block diagram of the improved Feistel network encryption.Algorithm 1: Image encryption process.
(1)
ReadP,K1i,K2ji,i=1,2,…,M×N/2,j=1,2,…,16(2)
Li = left half of P(3)
Ri = right half of P(4)
FRi,K1i,K2ji=modK1×Ri×K2ji,256(5)
Ri+1=Li⊕FRi,K1,K2(6)
FRi,Ri+1,Ui=modRi+Ri+12+Ui,256(7)
Li+1=FRi,Ri+1,Ui(8)
cs=Li+1‖Ri+1Step 5: letC with size M×N represent the ciphertext image corresponding to plaintext image P.Step 6: we transform the pixel sequencecsi, i=1,2,…,M×N of csimage and carry out the diffusion operation to obtain the final ciphertext image C:The decryption algorithm involves the inverse of the above process; notably, the inputs are the ciphertext imageC, and cs is obtained by inverse diffusion of ciphertext image C. The output is the plaintext image P. The K1i and K2ji are still combined to form the key stream with the improved Feistel network decryption algorithm to iteratively decrypt the ciphertext image for 16 rounds and obtain a plaintext image P. The block diagram of the decryption algorithm for the improved Feistel network is shown in Figure 6.Figure 6
Block diagram of the improved Feistel network decryption.The one-round improved Feistel network decryption process is shown in Algorithm2.Algorithm 2: Image decryption process.
(1)
Readcs,K1i,K2ji,i=1,2,…,M×N/2,j=1,2,…,16(2)
Li+1 = left half of C(3)
Ri+1 = right half of C(4)
FLi+1,Ri+1,Ui=modLi+1−Ri+12−Ui,256(5)
Ri=FLi+1,Ri+1,Ui(6)
FRi,K1i,K2=modK1×Ri×K2ji,256(7)
Li=Ri+1⊕FRi,K1i,K2ji(8)
P=Li‖Ri


## 4. Experimental Results and Security Analysis

To verify the validity of the above encryption algorithm, a simulation experiment was conducted on an Intel i7-8565U CPU with 4 GB of memory and the Windows 10 Professional operating system; the software packages MATLAB 2018b and Python 3.5 were used for coding. Here, we input different plaintext images into the SHA-512 function and use the series of calculations introduced in Section2.2 to obtain three sets of chaotic initial values and control parameters for the proposed chaotic system: x11, x21, and x31; a1, b1, a2, b2, a3, and b3. For example, if the plaintext image is Lena, then the values are x11 = 0.7881, x21 = 0.7936, x31 = 0.5640, a1 = 4.2188, b1 = 2.0117, a2 = 3.5547, b2 = 3.3594, a3 = 4.3555, and b3 = 4.7656. The encryption and decryption results for the Lena (256×256), Cameraman (256×256), All zeroes (256×256), White (256×256), Skeleton (256×256), Remote sensing (256×256), and Scenery (256×256) are shown in Figure 7. In addition, we also give the encryption and decryption results for the colour images Couple (256×256) and Ship (256×256) in Figures 8 and 9.Figure 7
Results for the Lena, Cup, White, All zeroes, Muscle, and Remote sensing images. (a) Plain image of Lena. (b) Encrypted image of Lena. (c) Recovered image of Lena. (d) Plain image of Cameraman. (e) Encrypted image of Cameraman. (f) Recovered image of Cameraman. (g) Plain image of All zeroes. (h) Encrypted image of All zeroes. (i) Recovered image of All zeroes. (j) Plain image of White. (k) Encrypted image of White. (l) Recovered image of White. (m) Plain image of Skeleton. (n) Encrypted image of Skeleton. (o) Recovered image of Skeleton. (p) Plain image of Remote sensing. (q) Encrypted image of Remote sensing. (r) Recovered image of Remote sensing. (s) Plain image of Scenery. (t) Encrypted image of Scenery. (u) Recovered image of Scenery.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)Figure 8
Results for Couple. (a) Plain image of Couple. (b) Encrypted image of Couple. (c) Recovered image of Couple. (d) Encrypted image of the red channel of Couple. (e) Encrypted image of the green channel of Couple. (f) Encrypted image of the blue channel of Couple.
(a)(b)(c)(d)(e)(f)Figure 9
Results for Ship. (a) Plain image of Ship. (b) Encrypted image of Ship. (c) Recovered image of Ship. (d) Encrypted image of the red channel of Ship. (e) Encrypted image of the green channel of Ship. (f) Encrypted image of the blue channel of Ship.
(a)(b)(c)(d)(e)(f)As seen from Figures7–9, the encrypted image is random noise, and no effective information can be obtained, which shows the effectiveness of the proposed algorithm.


### 4.1. Histogram Analysis

A histogram shows the distribution of pixel values in an image. The ideal histogram of a ciphertext image is uniformly distributed [6]. The histogram values of the plaintext and ciphertext Lena images are shown in Figure 10.Figure 10
Histogram analysis. (a) Histogram of the plain image Lena. (b) Histogram of the ciphertext image Lena.
(a)(b)Figure10 shows that the histogram distribution of the plaintext image is nonuniform, and the histogram distribution of the encrypted ciphertext image is uniform, so the proposed encryption algorithm is resistant to statistical attacks.In addition, we use the variance of the histogram to quantitatively evaluate the uniformity of the ciphertext image. The smaller the variance is, the more uniform the histogram distribution is, which is defined as follows:(20)varx=1n2∑i=1m∑j=1nxi−xj22,where X=x0,x1,…,x255 is the set of frequency values, xi and xj are the number of pixels whose pixel values are equal to i and j, respectively, and n is the grey level of the image. Table 7 shows the variance histograms of the plaintext and ciphertext images.Table 7
Variance in the histogram.
AlgorithmVariance in histogramProposed (Scenery)260.6719Proposed (Skeleton)305.8438Proposed (Remote sensing)256.106Proposed (Lena)237.9609Reference [16] (Lena)234.2600Reference [14] (Lena)268.4141Reference [12] (Lena)272.0234Reference [13] (Lena)267.4688As seen from Table7, the variance in the plaintext image histogram is very large, while the variance in the ciphertext image histogram is smaller than that of the plaintext image histogram. However, the histogram variance in the proposed algorithm is smaller than that of other algorithms, which is safe and effective.To quantitatively test the histogram variance of ciphertext image and analyse the uniformity of encrypted image, we calculate the histogram variance in encrypted images by changing only one key value, as shown in Tables8 and 9.Table 8
Variance in histograms compared among all keys in the proposed algorithm.
Ciphertextx1a1b1x2a2b2x3a3b3Scenery261.5430258.0517262.3394261.3313262.9711253.2538261.9252253.8197261.4685Skeleton302.9506304.5759297.7399304.5759304.6851305.7361304.7073304.4255305.7293Remote sensing254.0500253.8370252.2495255.0578253.4440254.9473253.0216253.1120251.2266Lena237.7072236.2798236.8458232.2816237.9360233.0170236.6012235.5416235.2537Average264.0627263.1861262.2937263.3116264.7590261.7386264.0638261.7247263.4195Table 9
Percentage of variances difference of histograms compared among all keys in the proposed algorithm.
Ciphertextx1 (%)a1 (%)b1 (%)x2 (%)a2 (%)b2 (%)x3 (%)a3 (%)b3 (%)Scenery9.90458.80911.10769.92479.93279.67589.91909.69799.9254Skeleton11.472611.572012.570011.567111.500211.680911.539111.631511.6061Remote sensing9.62088.09249.02977.68659.57639.74059.58189.67098.5317Lena8.00199.64779.62178.82158.98688.90268.96008.99768.9307Average9.74999.53038.08239.49999.99909.56349.98709.99959.7485As seen from Tables8 and 9, the histogram variance of the ciphertext image is sensitive to the key. Therefore, it further shows that the proposed algorithm can resist statistical attacks.


### 4.2. Correlation between Adjacent Pixels

In general, the correlation coefficient of adjacent pixels in a plaintext image is close to 1, making the image vulnerable to statistical attacks; therefore, the adjacent pixels in a ciphertext image should have correlations close to 0, which means that the encryption algorithm must resist statistical attacks and provide good security [36]. The formulas of the correlation coefficients can be defined as follows:(21)rxy=Ex−Exy−EyDxDy,Ex=1N∑i=1Nxi,Dx=1N∑i=1Nxi−Ex2,where Ex and Dx are the expectation and variance in variable x, respectively. First, 10,000 pairs of adjacent pixels in the plaintext image Lena are selected randomly, and the corresponding ciphertext image is obtained based on operations in three directions: horizontal, vertical, and diagonal. The correlation between the plaintext and ciphertext images in each direction is shown in Figure 11.Figure 11
Correlation between adjacent pixels. (a) Horizontal correlation for plain image Lena. (b) Vertical correlation for ciphertext image Lena. (c) Diagonal correlation for plain image Lena. (d) Horizontal correlation for ciphertext image Lena. (e) Vertical correlation for plain image Lena. (f) Diagonal correlation for ciphertext image Lena.
(a)(b)(c)(d)(e)(f)The correlation values of the plaintext image and the correlation values of the ciphertext images of the proposed algorithm and those in references [12, 14–19] are shown in Table 10. Table 10 shows that the correlation between adjacent pixels in the plaintext image is higher than the values reported in references [12, 14–19]. The correlation values of ciphertext images in the proposed algorithm are smaller than the correlation values of the ciphertext images in references [12, 14–19]. Therefore, the proposed algorithm can effectively resist statistical attacks.Table 10
Correlation between the adjacent pixels of plaintext and ciphertext images.
AlgorithmHorizontalVerticalDiagonalProposed (Scenery)−0.0126−0.0018−0.0051Proposed (Skeleton)−0.00960.0001−0.0156Proposed (Remote sensing)0.0021−0.0157−0.0263Proposed (Lena)−0.0049−0.00650.0057Reference [16] (Lena)−0.01470.00450.0088Reference [14] (Lena)−0.0304−0.0056−0.0058Reference [12] (Lena)0.00010.0084−0.0034Reference [17] (Lena)−0.0001−0.00750.0060Reference [15] (Lena)0.00970.00510.0104Reference [18] (Lena)−0.08020.0160−0.0120Reference [19] (Lena)0.0067−0.0036−0.0038It can be seen from Table10 that the results of the correlation of two adjacent pixels of the ciphertext image are significant, while those of the proposed algorithm are lower than the existing ones, so the encryption effect is rather good.


### 4.3. Grey Level Co-Occurrence Matrix (GLCM) Analysis

To further evaluate the spatial distribution characteristics of image encryption pixels, the GLCM matrix of adjacent pixels can be used [37]. The characteristic value calculation of the GLCM matrix is as follows.


#### 4.3.1. Contrast

The contrast reflects the clarity and depth of the texture groove of the image. The deeper the texture groove is, the greater the contrast and the clearer the effect, which is defined as follows:(22)contrast=∑iM∑jNi−j2pi,j,where Pi,j represents the pixel value of the GLCM matrix and MandN are the row and column of the pixel value, respectively.


#### 4.3.2. Energy

Energy reflects the uniformity of the image grey distribution and texture thickness. Large energy values indicate a more uniform and regular texture pattern of the image, which is defined as follows:(23)energy=∑iM∑jNpi,j2,where Pi,j represents the pixel value of the GLCM matrix and MandN are the row and column of the pixel value, respectively.


#### 4.3.3. Correlation

Correlation is used to measure the similarity of the GLCM of the image in the direction of row or column, so the value reflects the local grey correlation, and the greater the value is, the greater the correlation is. It is defined as follows:(24)correlation=∑iM∑jNijpi,j−μxμyσxσy,where Pi,j denotes the coordinate values in the GLCM matrix and MandN are the row and column of the pixel value, respectively.


#### 4.3.4. Homogeneity

Homogeneity reflects how closely the elements in the GLCM are distributed along the GLCM diagonal, and smaller values of homogeneity reflect higher security of a ciphertext image. Homogeneity is defined as follows:(25)homogeneity=∑iM∑jNPi,j1+i−j,where Pi,j denotes the coordinate values in the GLCM matrix and MandN are the row and column of the pixel value, respectively.The characteristic values of the GLCM matrix adjacent pixels for the Lena ciphertext image, plaintext image, and related literature encryption algorithm are shown in Table11.Table 11
Characteristics of GLCM.
AlgorithmContrastCorrelationEnergyHomogeneityProposed (Scenery)10.5877−0.00320.01560.3900Proposed (Skeleton)10.5349−0.00750.01560.3878Proposed (Remote sensing)10.5670−0.00400.01560.3886Proposed (Lena)10.6041−0.00030.01560.3872Reference [16] (Lena)10.51440.00210.01560.3895Reference [14] (Lena)10.47420.00500.01560.3878Reference [12] (Lena)10.42330.00750.01560.3911Reference [13] (Lena)10.5589−0.00790.01560.3879Reference [17] (Lena)10.6372−0.00740.01560.3877Reference [18] (Lena)10.3418−0.01860.01570.3985Reference [19] (Lena)10.51010.00250.01560.3898The two-dimensional histograms of the GLCM matrix of adjacent pixels in four different directions for the Lena plaintext image and ciphertext image obtained by the proposed algorithm are shown in Figures12 and 13.Figure 12
Two-dimensional histogram of the plaintext image. (a) 0°. (b) 45°. (c) 90°. (d) 135°.
(a)(b)(c)(d)Figure 13
Two-dimensional histogram of the ciphertext image. (a) 0°. (b) 45°. (c) 90°. (d) 135°.
(a)(b)(c)(d)It can be seen from Table11 and Figures 12 and 13 that the characteristic value of the GLCM matrix for the ciphertext image and the two-dimensional histogram of the ciphertext image indicates that the spatial distribution of adjacent pixels in the encrypted image is uniform; therefore, the adjacent pixels have sufficient random characteristics.


### 4.4. Entropy Analysis

Entropy is suitable for quantitative evaluations of the encryption effects of image encryption algorithms [38], which can measure the distribution of image grey values. The more uniform the grey distribution is, the greater the image information entropy. Additionally, little information in a plain image can be obtained from the grey distribution of a ciphertext image by an attacker, so the encryption algorithm has high security. Entropy is mainly divided into global entropy and local entropy. Global entropy is defined as follows:(26)M=−∑i−1LPilogPi,where Pi is the probability of the image pixel value and L is the image grey level. The ciphertext image global entropy is close to 8, suggesting that it is unlikely that the algorithm will divulge information. The global entropy values for the plaintext and ciphertext images obtained by the proposed algorithm and in references [12–19] are listed in Table 12.Table 12
Global entropy.
AlgorithmGlobal entropyProposed (Scenery)7.9971Proposed (Skeleton)7.9966Proposed (Remote sensing)7.9972Proposed (Lena)7.9971Reference [16] (Lena)7.9894Reference [14] (Lena)7.9892Reference [12] (Lena)7.9895Reference [13] (Lena)7.9894Reference [15] (Lena)7.1269Reference [17] (Lena)7.5522Reference [18] (Lena)7.9676Reference [19] (Lena)7.9899Table12 shows that the global entropy of the algorithm proposed in this paper is close to 8, which indicates that it can resist statistical attacks.On the basis of global entropy, local entropy, which overcomes the shortcomings of global entropy such as inaccuracy, inconsistency, and low efficiency, is proposed. Local entropy is an improvement of global entropy. First, nonoverlapping blocks are selected randomly, and then, the average global entropy of small image blocks is calculated. According to the algorithm described in the literature, 40 nonoverlapping blocks with a size of32×32 are tested. The corresponding theoretical value of local entropy is 7.8087, which is defined as follows:(27)localentropy=1n∑j=1nHBj,where Bj is a nonoverlapping image block. Table 13 lists the local entropy test results of the proposed encryption algorithm and related literature.Table 13
Local entropy.
AlgorithmLocal entropyProposed (Scenery)7.8097Proposed (Skeleton)7.8098Proposed (Remote sensing)7.8077Proposed (Lena)7.8076Reference [16] (Lena)7.8022Reference [14] (Lena)7.7977Reference [12] (Lena)7.8061Reference [13] (Lena)7.8064Reference [15] (Lena)7.5404Reference [17] (Lena)7.3903Reference [18] (Lena)7.6933Reference [19] (Lena)7.8065Table13 shows that the value of the proposed encryption algorithm in this paper is the closest to the theoretical value, so the ciphertext image obtained by the proposed encryption algorithm has good security.


### 4.5. Key Space Analysis

In the key spaceK=x1,x2,x3,a1,b1,a2,b2,a3,b3 of the proposed algorithm, the range of x1,x2, and x3 is [0, 1], and the range of a1,a2,a3∈0,∞, b1,b2,b3∈0,4. If a dual-precision representation is used up to 14 digits after the decimal point, the total key space can reach 1042, that is, the key length is approximately log21042≈140bits. Generally, an algorithm key length of 128 bits is considered safe [39], so the key space of the proposed algorithm is large enough to effectively resist exhaustive attacks.


### 4.6. Differential Analysis (Plaintext Sensitivity)

A plaintext image and one with a small change are applied for encryption and to determine how a small change in the original image affects the encrypted image. This kind of attack is called a differential attack. To ensure the security of an image encryption scheme against a differential attack, two quantitative measures are used, including the number of pixels change rate (NPCR) and unified averaged changed intensity (UACI). Values of UACI > 33.4% and NPCR > 99.6% ensure that an image encryption algorithm is immune to differential attacks [40].Images with only one pixel value difference are tested with the encryption algorithm. The number of changed image pixels is a percentage of the total number of pixels, which is represented by the NPCR. For two images with only one pixel value difference, after the same encryption algorithm is run, the degree of image pixel change is represented by the UACI. Two images with only one pixel value difference are encrypted asC1 and C2, where Hi,j is the image pixel difference value and M,N is the image size.(28)Hi,j=0,C1i,j=C2i,j,1,C1i,j≠C2i,j,NPCR=∑i,jHi,jMN×100%,UACI=∑i,jC1i,j−C2i,j/255MN×100%.In the Lena plaintext image, the pixel value of the coordinates (120, 120) changes from “156” to “155”. A comparative analysis of the NPCR and UACI values of the proposed algorithm and those from references [12, 14, 16, 18, 19] is shown in Table 14.Table 14
NPCR and UACI values of ciphertext images of different algorithms.
AlgorithmNPCR (100%)UACI (100%)Proposed (Scenery)99.6433.79Proposed (Skeleton)99.6133.32Proposed (Remote sensing)99.6933.84Proposed (Lena)99.6233.38Reference [16] (Lena)99.6033.46Reference [14] (Lena)99.6033.37Reference [12] (Lena)95.2732.13Reference [18] (Lena)98.4533.58Reference [19] (Lena)98.6433.48It can be seen from Table14 that the proposed encryption algorithm is very sensitive to tiny changes in the plain image; even if there is only a one-bit difference between two plain images, the decrypted images will be completely different.To quantitatively analyse the differential attack of the proposed algorithm, in the Lena plaintext image, random selection of the pixel value of the coordinates (120, 120), (140, 140), and (150, 150) and a change in a one-bit pixel value are performed on the plaintext images to obtain im1, im2, and im3. The ciphertext image is encrypted by the proposed encryption algorithm. The NPCR and UACI values of im1, im2, and im3 for five encryption rounds are compared with reference [19] and are listed in Tables 15 and 16.Table 15
NPCR values of ciphertext image (%).
RoundProposed (im1)Proposed (im2)Proposed (im3)Reference [19]199.3999.2899.3799.24299.4199.3599.3799.39399.5199.4799.4199.45499.5899.5199.5299.56599.6199.5999.6099.61Table 16
UACI values of ciphertext image (%).
RoundProposed (im1)Proposed (im2)Proposed (im3)Reference [19]119.3222.3520.5621.87219.5110.5725.4630.56333.3133.4133.3933.44433.3833.4133.4033.48533.3833.4033.4033.49As seen from Tables15 and 16, after the first two rounds of encryption, the values of NPCR and UACI are close to the theoretical values, so the proposed algorithm has good security.


### 4.7. Key Sensitivity Analysis

The security of a cryptosystem is highly related to key sensitivity, and a chaotic system is highly sensitive to initial conditions. That is, a slight change in the key will lead to the failed decryption of the encrypted image [37]. For example, the encryption key obtained from the Lena plaintext image is shown in Tables 17 and 18. The key stream is generated by the encryption key. On decryption, Key 1, Key 2, Key 3, Key 4, Key 5, Key 6, Key 7, Key 8, and Key 9 in Tables 13 and 14 are obtained by slightly changing the initial value of the Lena plaintext image, which is carried out to generate fusion pseudorandom sequences as the key stream to decrypt the ciphertext image. The result is shown in Figure 14.Table 17
Encryption keys.
Keysx1x2x3a1Key 00.78810.79360.56404.2188Key 10.7881 +10−150.79360.56404.2188Key 20.78810.7936 +10−150.56404.2188Key 30.78810.79360.5640 +10−154.2188Key 40.78810.79360.56404.2188 +10−15Key 50.78810.79360.56404.2188Key 60.78810.79360.56404.2188Key 70.78810.79360.56404.2188Key 80.78810.79360.56404.2188Key 90.78810.79360.56404.2188Table 18
Encryption keys.
Keysb1a2b2a3b3Key 02.01173.55473.35944.35554.7656Key 12.01173.55473.35944.35554.7656Key 22.01173.55473.35944.35554.7656Key 32.01173.55473.35944.35554.7656Key 42.01173.55473.35944.35554.7656Key 52.0117 +10−153.55473.35944.35554.7656Key 62.01173.5547 +10−153.35944.35554.7656Key 72.01173.55473.3594 +10−154.35554.7656Key 82.01173.55473.35944.3555 +10−154.7656Key 92.01173.55473.35944.35554.7656 +10−15Figure 14
Sensitivity to the ciphertext image test results for the Lena image. (a) Decryption image by Key 1. (b) Decryption image by Key 2. (c) Decryption image by Key 3. (d) Decryption image by Key 4. (e) Decryption image by Key 5. (f) Decryption image by Key 6. (g) Decryption image by Key 7. (h) Decryption image by Key 8. (i) Decryption image by Key 9.
(a)(b)(c)(d)(e)(f)(g)(h)(i)Figure14 shows that the decryption key is slightly transformed, and the decrypted image is completely different from the plaintext image, which indicates that the algorithm is very sensitive to the key.To quantitatively analyse the key sensitivity, we use the initial key, Key 0, in Tables17 and 18 and slightly changed Key 1, Key 2, Key 3, Key 4, Key 5, Key 6, Key 7, Key 8, and Key 9 to encrypt the Lena plaintext image. The ciphertext image and difference image are shown in Figure 15, and the difference value is shown in Table 19.Figure 15
Sensitivity to the ciphertext image test results for the Lena image. (a1)–(i1) Ciphertext image using Key 0. (a2)–(i2) Ciphered image using Key 1, Key 2, Key 3, Key 4, Key 5, Key 6, Key 7, Key 8, and Key 9, respectively. (a3)–(i3) Difference between (a1) and (a2), (b1) and (b2), (c1) and (c2), (d1) and (d2), (e1) and (e2), (f1) and (f2), (g1) and (g2), (h1) and (h2), and (i1) and (i2), respectively.
(a)(b)(c)(d)(e)(f)(g)(h)(i)Table 19
Difference value (%).
KeyKeyDifference value (%)Key 0Key 199.56Key 299.61Key 399.54Key 499.58Key 599.60Key 699.52Key 799.56Key 899.54Key 999.62As seen from Figure15 and Table 19, when the key is slightly changed, the difference value of the ciphertext image obtained is very large. Therefore, the proposed encryption algorithm in this paper is highly sensitive to the key.


### 4.8. Classical Types of Attacks

In cryptography, the attack algorithms for passwords are commonly plaintext attacks, chosen-ciphertext attacks, known plaintext attacks, and known ciphertext attacks [41, 42].The security of the encryption algorithm should depend only on the security of the key. The encryption algorithm itself does not need to be kept secretly. The only secret that needs to be kept secretly is the key shared by both sides of communication. Cryptanalysis is based on this. According to the amount of information the attacker can obtain, there are four types of attacks on a cryptographic system:(1)
Ciphertext-only attack: the attacker observes only the ciphertext and tries to recover the corresponding plaintext.(2)
Known plaintext attack: the attacker knows one or more plaintext ciphertext pairs encrypted with the same key and attempts to recover the plaintext corresponding to other ciphertexts.(3)
Chosen-plaintext attack: the attacker can select plaintext and obtain the corresponding ciphertext, which is similar to obtaining the use right of the encryptor. Its goal is to determine the plaintext corresponding to other ciphertexts.(4)
Chosen-ciphertext attack: the attacker can select ciphertext and obtain the corresponding plaintext, and its purpose is still to recover the plaintext corresponding to other ciphertexts.A chosen-plaintext attack is the most threatening kind of cryptosystem attack. A secure encryption system must be able to resist a chosen-plaintext attack. In a chosen-plaintext attack, the attacker can arbitrarily select a certain number of plaintexts in advance, which allows the attacked encryption algorithm to obtain the ciphertext. The goal of the attacker is to obtain the key information through this process so that the attacker can more effectively crack the encryption algorithm and related keys. In the worst case, the key for decryption is obtained by the attacker.This paper mainly analyses the security of the improved Feistel network for a chosen-plaintext attack. We choose an all-zero matrix as the plaintext and obtain the ciphertext matrix based on encryption algorithm Step 4, as shown below:(29)Ri=0⊕modK1i×0×K2ji,256,(30)Li=mod0+Ri2+Ui,256,where 0 is the all-zero subblock plaintext matrix. From (29) and (30), if 0 subblocks are chosen to form the plaintext matrix for encryption, the ciphertext matrix can still be obtained, but the keys K1i and K2ji and the 0 subblock ⟶ modK1i×0×K2ji,256 operation are utilized in the matrix product. K1i and K2ji are transformed and added to the all-zero matrices so that the attacker cannot obtain the encryption algorithm and key-related information through the relationship between the plaintext matrix and the ciphertext matrix. Moreover, 255 is chosen with all 255 subblocks as the plaintext matrix, and the ciphertext matrix is obtained based on encryption algorithm Step 4, as shown below:(31)Ri=255⊕modK1i×255×K2ji,256,(32)Li=mod255+Ri2+Ui,256.From (31) and (32), if 255 subblocks are chosen as the plaintext matrix for encryption, the ciphertext matrix can still be obtained, but 255 utilizes the Hadamard product with keys K1i and K2ji in modK1i×255×K2ji,256, and keys K1i and K2ji cannot be separated. Therefore, the attacker still cannot obtain the encryption algorithm and key-related information. Thus, the algorithm proposed in this paper can resist chosen-plaintext attacks.In addition, it can be seen from equations (4)–(9) that the encrypted key stream depends not only on the initial state value of the chaotic system but also on the plaintext image. When different plaintext images are encrypted, the corresponding key stream is different. Since the information obtained is related to the selected image, the attacker cannot obtain useful information by encrypting some special images. Therefore, the encryption scheme can resist the ciphertext-only attack, known as the plaintext attack and chosen-ciphertext attack.


### 4.9. Time Complexity Analysis

The complexity of the image encryption algorithm mainly refers to the time complexity. The time complexity of the encryption algorithm mainly includes running time and the big 0 complexity analysis algorithm [43]. Therefore, this paper analyses the complexity of the encryption algorithm in these two aspects. The experimental environment consists of an Intel Core i7, 2.3 GHz CPU, 8 GB of memory, and a 250 GB hard disk running the Windows 10 Professional operating system. For the Lena plaintext image of size M×N, the execution times of the encryption algorithms from the literature are shown in Table 20.Table 20
Time complexity.
AlgorithmExecution time (s)Calculation amountΘProposed1.8643MNReference [16]1.6721MNReference [14]3.80344∗MNReference [12]5.38508∗MNReference [13]10.08006∗MNReference [17]3.86503∗MNReference [18]3.58133∗MNReference [19]2.0800MNFrom the results shown in Table20, it can be seen that the encryption speed of the proposed encryption algorithm is acceptable by comparison with other encryption algorithms.


### 4.10. Peak Signal-to-Noise Ratio Analysis

Peak signal-to-noise ratio (PSNR) is a parameter to describe the quality of image encryption; it is defined on the basis of the concept of mean square error (MSE). The MSE and PSNR are defined as follows:(33)MSE=1M×N∑i=1M∑j=1NI0i,j−Iei,j21/2,PSNR=20logImaxMSE,where I0i,j is the plaintext image pixel value, Iei,j is ciphertext image pixel value, M and N are the row and column of the image, respectively, and Imax is the maximum pixel value of the image. For the image, the smaller the value of PSNR is, the greater the difference between plaintext image and ciphertext is, and the better encryption effects. The Lena ciphertext images obtained by the proposed encryption algorithm and the encryption algorithm of related literature are compared, as shown in Table 21.Table 21
Analysis of peak signal-to-noise ratio of ciphertext images.
AlgorithmPSNRProposed (Scenery)8.5102Proposed (Skeleton)8.4564Proposed (Remote sensing)8.3172Proposed (Lena)8.5206Reference [16] (Lena)8.5269Reference [14] (Lena)8.5480Reference [12] (Lena)8.5096Reference [13] (Lena)8.6481Reference [15] (Lena)8.5932Reference [17] (Lena)8.5096Reference [18] (Lena)8.9621Reference [19] (Lena)8.5565It can be seen from Table21 that the PSNR of the ciphertext image of the proposed encryption algorithm is lower than that of the algorithms in other literature. Therefore, the proposed encryption algorithm has a good effect.


### 4.11. Robustness Analysis

In practice, the transmission of information is prone to multiple disturbances and attacks, so image encryption algorithms must be strongly robust. The robustness analysis of the image encryption algorithm includes antinoise attacks and clipping attacks. To test the antinoise attack performance of the proposed encryption algorithm in this paper, Gaussian noise of different intensities is added to the encrypted ciphertext image in Figure16.Figure 16
Salt and pepper noise attack. (a) 0.1% salt and pepper noise. (b) 0.5% salt and pepper noise. (c) 1% salt and pepper noise.
(a)(b)(c)It can be seen that the decrypted image can still be distinguished, so it can be seen that the proposed encryption algorithm in this paper can resist the noise attack.In practical applications, after the attacker intercepts the ciphertext image, he may use a cutting attack to destroy the image. To simulate this type of image data loss, an anticlipping attack experiment was performed. Taking256×256 Lena image as the experimental subject, Figure 17 shows the experimental results.Figure 17
Crop attack. (a) Full encryption 1/16 block attack. (b) Full encryption 1/4 block attack. (c) Full encryption 1/2 block attack. (d) Decrypted image of (a). (e) Decrypted image of (b). (f) Decrypted image of (c).
(a)(b)(c)(d)(e)(f)It can be seen that the proposed encryption algorithm can still restore most of the original image information under different proportions of clipping attacks, so it has a certain ability to resist cutting attacks.


## 4.1. Histogram Analysis

A histogram shows the distribution of pixel values in an image. The ideal histogram of a ciphertext image is uniformly distributed [6]. The histogram values of the plaintext and ciphertext Lena images are shown in Figure 10.Figure 10
Histogram analysis. (a) Histogram of the plain image Lena. (b) Histogram of the ciphertext image Lena.
(a)(b)Figure10 shows that the histogram distribution of the plaintext image is nonuniform, and the histogram distribution of the encrypted ciphertext image is uniform, so the proposed encryption algorithm is resistant to statistical attacks.In addition, we use the variance of the histogram to quantitatively evaluate the uniformity of the ciphertext image. The smaller the variance is, the more uniform the histogram distribution is, which is defined as follows:(20)varx=1n2∑i=1m∑j=1nxi−xj22,where X=x0,x1,…,x255 is the set of frequency values, xi and xj are the number of pixels whose pixel values are equal to i and j, respectively, and n is the grey level of the image. Table 7 shows the variance histograms of the plaintext and ciphertext images.Table 7
Variance in the histogram.
AlgorithmVariance in histogramProposed (Scenery)260.6719Proposed (Skeleton)305.8438Proposed (Remote sensing)256.106Proposed (Lena)237.9609Reference [16] (Lena)234.2600Reference [14] (Lena)268.4141Reference [12] (Lena)272.0234Reference [13] (Lena)267.4688As seen from Table7, the variance in the plaintext image histogram is very large, while the variance in the ciphertext image histogram is smaller than that of the plaintext image histogram. However, the histogram variance in the proposed algorithm is smaller than that of other algorithms, which is safe and effective.To quantitatively test the histogram variance of ciphertext image and analyse the uniformity of encrypted image, we calculate the histogram variance in encrypted images by changing only one key value, as shown in Tables8 and 9.Table 8
Variance in histograms compared among all keys in the proposed algorithm.
Ciphertextx1a1b1x2a2b2x3a3b3Scenery261.5430258.0517262.3394261.3313262.9711253.2538261.9252253.8197261.4685Skeleton302.9506304.5759297.7399304.5759304.6851305.7361304.7073304.4255305.7293Remote sensing254.0500253.8370252.2495255.0578253.4440254.9473253.0216253.1120251.2266Lena237.7072236.2798236.8458232.2816237.9360233.0170236.6012235.5416235.2537Average264.0627263.1861262.2937263.3116264.7590261.7386264.0638261.7247263.4195Table 9
Percentage of variances difference of histograms compared among all keys in the proposed algorithm.
Ciphertextx1 (%)a1 (%)b1 (%)x2 (%)a2 (%)b2 (%)x3 (%)a3 (%)b3 (%)Scenery9.90458.80911.10769.92479.93279.67589.91909.69799.9254Skeleton11.472611.572012.570011.567111.500211.680911.539111.631511.6061Remote sensing9.62088.09249.02977.68659.57639.74059.58189.67098.5317Lena8.00199.64779.62178.82158.98688.90268.96008.99768.9307Average9.74999.53038.08239.49999.99909.56349.98709.99959.7485As seen from Tables8 and 9, the histogram variance of the ciphertext image is sensitive to the key. Therefore, it further shows that the proposed algorithm can resist statistical attacks.


## 4.2. Correlation between Adjacent Pixels

In general, the correlation coefficient of adjacent pixels in a plaintext image is close to 1, making the image vulnerable to statistical attacks; therefore, the adjacent pixels in a ciphertext image should have correlations close to 0, which means that the encryption algorithm must resist statistical attacks and provide good security [36]. The formulas of the correlation coefficients can be defined as follows:(21)rxy=Ex−Exy−EyDxDy,Ex=1N∑i=1Nxi,Dx=1N∑i=1Nxi−Ex2,where Ex and Dx are the expectation and variance in variable x, respectively. First, 10,000 pairs of adjacent pixels in the plaintext image Lena are selected randomly, and the corresponding ciphertext image is obtained based on operations in three directions: horizontal, vertical, and diagonal. The correlation between the plaintext and ciphertext images in each direction is shown in Figure 11.Figure 11
Correlation between adjacent pixels. (a) Horizontal correlation for plain image Lena. (b) Vertical correlation for ciphertext image Lena. (c) Diagonal correlation for plain image Lena. (d) Horizontal correlation for ciphertext image Lena. (e) Vertical correlation for plain image Lena. (f) Diagonal correlation for ciphertext image Lena.
(a)(b)(c)(d)(e)(f)The correlation values of the plaintext image and the correlation values of the ciphertext images of the proposed algorithm and those in references [12, 14–19] are shown in Table 10. Table 10 shows that the correlation between adjacent pixels in the plaintext image is higher than the values reported in references [12, 14–19]. The correlation values of ciphertext images in the proposed algorithm are smaller than the correlation values of the ciphertext images in references [12, 14–19]. Therefore, the proposed algorithm can effectively resist statistical attacks.Table 10
Correlation between the adjacent pixels of plaintext and ciphertext images.
AlgorithmHorizontalVerticalDiagonalProposed (Scenery)−0.0126−0.0018−0.0051Proposed (Skeleton)−0.00960.0001−0.0156Proposed (Remote sensing)0.0021−0.0157−0.0263Proposed (Lena)−0.0049−0.00650.0057Reference [16] (Lena)−0.01470.00450.0088Reference [14] (Lena)−0.0304−0.0056−0.0058Reference [12] (Lena)0.00010.0084−0.0034Reference [17] (Lena)−0.0001−0.00750.0060Reference [15] (Lena)0.00970.00510.0104Reference [18] (Lena)−0.08020.0160−0.0120Reference [19] (Lena)0.0067−0.0036−0.0038It can be seen from Table10 that the results of the correlation of two adjacent pixels of the ciphertext image are significant, while those of the proposed algorithm are lower than the existing ones, so the encryption effect is rather good.


## 4.3. Grey Level Co-Occurrence Matrix (GLCM) Analysis

To further evaluate the spatial distribution characteristics of image encryption pixels, the GLCM matrix of adjacent pixels can be used [37]. The characteristic value calculation of the GLCM matrix is as follows.


### 4.3.1. Contrast

The contrast reflects the clarity and depth of the texture groove of the image. The deeper the texture groove is, the greater the contrast and the clearer the effect, which is defined as follows:(22)contrast=∑iM∑jNi−j2pi,j,where Pi,j represents the pixel value of the GLCM matrix and MandN are the row and column of the pixel value, respectively.


### 4.3.2. Energy

Energy reflects the uniformity of the image grey distribution and texture thickness. Large energy values indicate a more uniform and regular texture pattern of the image, which is defined as follows:(23)energy=∑iM∑jNpi,j2,where Pi,j represents the pixel value of the GLCM matrix and MandN are the row and column of the pixel value, respectively.


### 4.3.3. Correlation

Correlation is used to measure the similarity of the GLCM of the image in the direction of row or column, so the value reflects the local grey correlation, and the greater the value is, the greater the correlation is. It is defined as follows:(24)correlation=∑iM∑jNijpi,j−μxμyσxσy,where Pi,j denotes the coordinate values in the GLCM matrix and MandN are the row and column of the pixel value, respectively.


### 4.3.4. Homogeneity

Homogeneity reflects how closely the elements in the GLCM are distributed along the GLCM diagonal, and smaller values of homogeneity reflect higher security of a ciphertext image. Homogeneity is defined as follows:(25)homogeneity=∑iM∑jNPi,j1+i−j,where Pi,j denotes the coordinate values in the GLCM matrix and MandN are the row and column of the pixel value, respectively.The characteristic values of the GLCM matrix adjacent pixels for the Lena ciphertext image, plaintext image, and related literature encryption algorithm are shown in Table11.Table 11
Characteristics of GLCM.
AlgorithmContrastCorrelationEnergyHomogeneityProposed (Scenery)10.5877−0.00320.01560.3900Proposed (Skeleton)10.5349−0.00750.01560.3878Proposed (Remote sensing)10.5670−0.00400.01560.3886Proposed (Lena)10.6041−0.00030.01560.3872Reference [16] (Lena)10.51440.00210.01560.3895Reference [14] (Lena)10.47420.00500.01560.3878Reference [12] (Lena)10.42330.00750.01560.3911Reference [13] (Lena)10.5589−0.00790.01560.3879Reference [17] (Lena)10.6372−0.00740.01560.3877Reference [18] (Lena)10.3418−0.01860.01570.3985Reference [19] (Lena)10.51010.00250.01560.3898The two-dimensional histograms of the GLCM matrix of adjacent pixels in four different directions for the Lena plaintext image and ciphertext image obtained by the proposed algorithm are shown in Figures12 and 13.Figure 12
Two-dimensional histogram of the plaintext image. (a) 0°. (b) 45°. (c) 90°. (d) 135°.
(a)(b)(c)(d)Figure 13
Two-dimensional histogram of the ciphertext image. (a) 0°. (b) 45°. (c) 90°. (d) 135°.
(a)(b)(c)(d)It can be seen from Table11 and Figures 12 and 13 that the characteristic value of the GLCM matrix for the ciphertext image and the two-dimensional histogram of the ciphertext image indicates that the spatial distribution of adjacent pixels in the encrypted image is uniform; therefore, the adjacent pixels have sufficient random characteristics.


## 4.3.1. Contrast

The contrast reflects the clarity and depth of the texture groove of the image. The deeper the texture groove is, the greater the contrast and the clearer the effect, which is defined as follows:(22)contrast=∑iM∑jNi−j2pi,j,where Pi,j represents the pixel value of the GLCM matrix and MandN are the row and column of the pixel value, respectively.


## 4.3.2. Energy

Energy reflects the uniformity of the image grey distribution and texture thickness. Large energy values indicate a more uniform and regular texture pattern of the image, which is defined as follows:(23)energy=∑iM∑jNpi,j2,where Pi,j represents the pixel value of the GLCM matrix and MandN are the row and column of the pixel value, respectively.


## 4.3.3. Correlation

Correlation is used to measure the similarity of the GLCM of the image in the direction of row or column, so the value reflects the local grey correlation, and the greater the value is, the greater the correlation is. It is defined as follows:(24)correlation=∑iM∑jNijpi,j−μxμyσxσy,where Pi,j denotes the coordinate values in the GLCM matrix and MandN are the row and column of the pixel value, respectively.


## 4.3.4. Homogeneity

Homogeneity reflects how closely the elements in the GLCM are distributed along the GLCM diagonal, and smaller values of homogeneity reflect higher security of a ciphertext image. Homogeneity is defined as follows:(25)homogeneity=∑iM∑jNPi,j1+i−j,where Pi,j denotes the coordinate values in the GLCM matrix and MandN are the row and column of the pixel value, respectively.The characteristic values of the GLCM matrix adjacent pixels for the Lena ciphertext image, plaintext image, and related literature encryption algorithm are shown in Table11.Table 11
Characteristics of GLCM.
AlgorithmContrastCorrelationEnergyHomogeneityProposed (Scenery)10.5877−0.00320.01560.3900Proposed (Skeleton)10.5349−0.00750.01560.3878Proposed (Remote sensing)10.5670−0.00400.01560.3886Proposed (Lena)10.6041−0.00030.01560.3872Reference [16] (Lena)10.51440.00210.01560.3895Reference [14] (Lena)10.47420.00500.01560.3878Reference [12] (Lena)10.42330.00750.01560.3911Reference [13] (Lena)10.5589−0.00790.01560.3879Reference [17] (Lena)10.6372−0.00740.01560.3877Reference [18] (Lena)10.3418−0.01860.01570.3985Reference [19] (Lena)10.51010.00250.01560.3898The two-dimensional histograms of the GLCM matrix of adjacent pixels in four different directions for the Lena plaintext image and ciphertext image obtained by the proposed algorithm are shown in Figures12 and 13.Figure 12
Two-dimensional histogram of the plaintext image. (a) 0°. (b) 45°. (c) 90°. (d) 135°.
(a)(b)(c)(d)Figure 13
Two-dimensional histogram of the ciphertext image. (a) 0°. (b) 45°. (c) 90°. (d) 135°.
(a)(b)(c)(d)It can be seen from Table11 and Figures 12 and 13 that the characteristic value of the GLCM matrix for the ciphertext image and the two-dimensional histogram of the ciphertext image indicates that the spatial distribution of adjacent pixels in the encrypted image is uniform; therefore, the adjacent pixels have sufficient random characteristics.


## 4.4. Entropy Analysis

Entropy is suitable for quantitative evaluations of the encryption effects of image encryption algorithms [38], which can measure the distribution of image grey values. The more uniform the grey distribution is, the greater the image information entropy. Additionally, little information in a plain image can be obtained from the grey distribution of a ciphertext image by an attacker, so the encryption algorithm has high security. Entropy is mainly divided into global entropy and local entropy. Global entropy is defined as follows:(26)M=−∑i−1LPilogPi,where Pi is the probability of the image pixel value and L is the image grey level. The ciphertext image global entropy is close to 8, suggesting that it is unlikely that the algorithm will divulge information. The global entropy values for the plaintext and ciphertext images obtained by the proposed algorithm and in references [12–19] are listed in Table 12.Table 12
Global entropy.
AlgorithmGlobal entropyProposed (Scenery)7.9971Proposed (Skeleton)7.9966Proposed (Remote sensing)7.9972Proposed (Lena)7.9971Reference [16] (Lena)7.9894Reference [14] (Lena)7.9892Reference [12] (Lena)7.9895Reference [13] (Lena)7.9894Reference [15] (Lena)7.1269Reference [17] (Lena)7.5522Reference [18] (Lena)7.9676Reference [19] (Lena)7.9899Table12 shows that the global entropy of the algorithm proposed in this paper is close to 8, which indicates that it can resist statistical attacks.On the basis of global entropy, local entropy, which overcomes the shortcomings of global entropy such as inaccuracy, inconsistency, and low efficiency, is proposed. Local entropy is an improvement of global entropy. First, nonoverlapping blocks are selected randomly, and then, the average global entropy of small image blocks is calculated. According to the algorithm described in the literature, 40 nonoverlapping blocks with a size of32×32 are tested. The corresponding theoretical value of local entropy is 7.8087, which is defined as follows:(27)localentropy=1n∑j=1nHBj,where Bj is a nonoverlapping image block. Table 13 lists the local entropy test results of the proposed encryption algorithm and related literature.Table 13
Local entropy.
AlgorithmLocal entropyProposed (Scenery)7.8097Proposed (Skeleton)7.8098Proposed (Remote sensing)7.8077Proposed (Lena)7.8076Reference [16] (Lena)7.8022Reference [14] (Lena)7.7977Reference [12] (Lena)7.8061Reference [13] (Lena)7.8064Reference [15] (Lena)7.5404Reference [17] (Lena)7.3903Reference [18] (Lena)7.6933Reference [19] (Lena)7.8065Table13 shows that the value of the proposed encryption algorithm in this paper is the closest to the theoretical value, so the ciphertext image obtained by the proposed encryption algorithm has good security.


## 4.5. Key Space Analysis

In the key spaceK=x1,x2,x3,a1,b1,a2,b2,a3,b3 of the proposed algorithm, the range of x1,x2, and x3 is [0, 1], and the range of a1,a2,a3∈0,∞, b1,b2,b3∈0,4. If a dual-precision representation is used up to 14 digits after the decimal point, the total key space can reach 1042, that is, the key length is approximately log21042≈140bits. Generally, an algorithm key length of 128 bits is considered safe [39], so the key space of the proposed algorithm is large enough to effectively resist exhaustive attacks.


## 4.6. Differential Analysis (Plaintext Sensitivity)

A plaintext image and one with a small change are applied for encryption and to determine how a small change in the original image affects the encrypted image. This kind of attack is called a differential attack. To ensure the security of an image encryption scheme against a differential attack, two quantitative measures are used, including the number of pixels change rate (NPCR) and unified averaged changed intensity (UACI). Values of UACI > 33.4% and NPCR > 99.6% ensure that an image encryption algorithm is immune to differential attacks [40].Images with only one pixel value difference are tested with the encryption algorithm. The number of changed image pixels is a percentage of the total number of pixels, which is represented by the NPCR. For two images with only one pixel value difference, after the same encryption algorithm is run, the degree of image pixel change is represented by the UACI. Two images with only one pixel value difference are encrypted asC1 and C2, where Hi,j is the image pixel difference value and M,N is the image size.(28)Hi,j=0,C1i,j=C2i,j,1,C1i,j≠C2i,j,NPCR=∑i,jHi,jMN×100%,UACI=∑i,jC1i,j−C2i,j/255MN×100%.In the Lena plaintext image, the pixel value of the coordinates (120, 120) changes from “156” to “155”. A comparative analysis of the NPCR and UACI values of the proposed algorithm and those from references [12, 14, 16, 18, 19] is shown in Table 14.Table 14
NPCR and UACI values of ciphertext images of different algorithms.
AlgorithmNPCR (100%)UACI (100%)Proposed (Scenery)99.6433.79Proposed (Skeleton)99.6133.32Proposed (Remote sensing)99.6933.84Proposed (Lena)99.6233.38Reference [16] (Lena)99.6033.46Reference [14] (Lena)99.6033.37Reference [12] (Lena)95.2732.13Reference [18] (Lena)98.4533.58Reference [19] (Lena)98.6433.48It can be seen from Table14 that the proposed encryption algorithm is very sensitive to tiny changes in the plain image; even if there is only a one-bit difference between two plain images, the decrypted images will be completely different.To quantitatively analyse the differential attack of the proposed algorithm, in the Lena plaintext image, random selection of the pixel value of the coordinates (120, 120), (140, 140), and (150, 150) and a change in a one-bit pixel value are performed on the plaintext images to obtain im1, im2, and im3. The ciphertext image is encrypted by the proposed encryption algorithm. The NPCR and UACI values of im1, im2, and im3 for five encryption rounds are compared with reference [19] and are listed in Tables 15 and 16.Table 15
NPCR values of ciphertext image (%).
RoundProposed (im1)Proposed (im2)Proposed (im3)Reference [19]199.3999.2899.3799.24299.4199.3599.3799.39399.5199.4799.4199.45499.5899.5199.5299.56599.6199.5999.6099.61Table 16
UACI values of ciphertext image (%).
RoundProposed (im1)Proposed (im2)Proposed (im3)Reference [19]119.3222.3520.5621.87219.5110.5725.4630.56333.3133.4133.3933.44433.3833.4133.4033.48533.3833.4033.4033.49As seen from Tables15 and 16, after the first two rounds of encryption, the values of NPCR and UACI are close to the theoretical values, so the proposed algorithm has good security.


## 4.7. Key Sensitivity Analysis

The security of a cryptosystem is highly related to key sensitivity, and a chaotic system is highly sensitive to initial conditions. That is, a slight change in the key will lead to the failed decryption of the encrypted image [37]. For example, the encryption key obtained from the Lena plaintext image is shown in Tables 17 and 18. The key stream is generated by the encryption key. On decryption, Key 1, Key 2, Key 3, Key 4, Key 5, Key 6, Key 7, Key 8, and Key 9 in Tables 13 and 14 are obtained by slightly changing the initial value of the Lena plaintext image, which is carried out to generate fusion pseudorandom sequences as the key stream to decrypt the ciphertext image. The result is shown in Figure 14.Table 17
Encryption keys.
Keysx1x2x3a1Key 00.78810.79360.56404.2188Key 10.7881 +10−150.79360.56404.2188Key 20.78810.7936 +10−150.56404.2188Key 30.78810.79360.5640 +10−154.2188Key 40.78810.79360.56404.2188 +10−15Key 50.78810.79360.56404.2188Key 60.78810.79360.56404.2188Key 70.78810.79360.56404.2188Key 80.78810.79360.56404.2188Key 90.78810.79360.56404.2188Table 18
Encryption keys.
Keysb1a2b2a3b3Key 02.01173.55473.35944.35554.7656Key 12.01173.55473.35944.35554.7656Key 22.01173.55473.35944.35554.7656Key 32.01173.55473.35944.35554.7656Key 42.01173.55473.35944.35554.7656Key 52.0117 +10−153.55473.35944.35554.7656Key 62.01173.5547 +10−153.35944.35554.7656Key 72.01173.55473.3594 +10−154.35554.7656Key 82.01173.55473.35944.3555 +10−154.7656Key 92.01173.55473.35944.35554.7656 +10−15Figure 14
Sensitivity to the ciphertext image test results for the Lena image. (a) Decryption image by Key 1. (b) Decryption image by Key 2. (c) Decryption image by Key 3. (d) Decryption image by Key 4. (e) Decryption image by Key 5. (f) Decryption image by Key 6. (g) Decryption image by Key 7. (h) Decryption image by Key 8. (i) Decryption image by Key 9.
(a)(b)(c)(d)(e)(f)(g)(h)(i)Figure14 shows that the decryption key is slightly transformed, and the decrypted image is completely different from the plaintext image, which indicates that the algorithm is very sensitive to the key.To quantitatively analyse the key sensitivity, we use the initial key, Key 0, in Tables17 and 18 and slightly changed Key 1, Key 2, Key 3, Key 4, Key 5, Key 6, Key 7, Key 8, and Key 9 to encrypt the Lena plaintext image. The ciphertext image and difference image are shown in Figure 15, and the difference value is shown in Table 19.Figure 15
Sensitivity to the ciphertext image test results for the Lena image. (a1)–(i1) Ciphertext image using Key 0. (a2)–(i2) Ciphered image using Key 1, Key 2, Key 3, Key 4, Key 5, Key 6, Key 7, Key 8, and Key 9, respectively. (a3)–(i3) Difference between (a1) and (a2), (b1) and (b2), (c1) and (c2), (d1) and (d2), (e1) and (e2), (f1) and (f2), (g1) and (g2), (h1) and (h2), and (i1) and (i2), respectively.
(a)(b)(c)(d)(e)(f)(g)(h)(i)Table 19
Difference value (%).
KeyKeyDifference value (%)Key 0Key 199.56Key 299.61Key 399.54Key 499.58Key 599.60Key 699.52Key 799.56Key 899.54Key 999.62As seen from Figure15 and Table 19, when the key is slightly changed, the difference value of the ciphertext image obtained is very large. Therefore, the proposed encryption algorithm in this paper is highly sensitive to the key.


## 4.8. Classical Types of Attacks

In cryptography, the attack algorithms for passwords are commonly plaintext attacks, chosen-ciphertext attacks, known plaintext attacks, and known ciphertext attacks [41, 42].The security of the encryption algorithm should depend only on the security of the key. The encryption algorithm itself does not need to be kept secretly. The only secret that needs to be kept secretly is the key shared by both sides of communication. Cryptanalysis is based on this. According to the amount of information the attacker can obtain, there are four types of attacks on a cryptographic system:(1)
Ciphertext-only attack: the attacker observes only the ciphertext and tries to recover the corresponding plaintext.(2)
Known plaintext attack: the attacker knows one or more plaintext ciphertext pairs encrypted with the same key and attempts to recover the plaintext corresponding to other ciphertexts.(3)
Chosen-plaintext attack: the attacker can select plaintext and obtain the corresponding ciphertext, which is similar to obtaining the use right of the encryptor. Its goal is to determine the plaintext corresponding to other ciphertexts.(4)
Chosen-ciphertext attack: the attacker can select ciphertext and obtain the corresponding plaintext, and its purpose is still to recover the plaintext corresponding to other ciphertexts.A chosen-plaintext attack is the most threatening kind of cryptosystem attack. A secure encryption system must be able to resist a chosen-plaintext attack. In a chosen-plaintext attack, the attacker can arbitrarily select a certain number of plaintexts in advance, which allows the attacked encryption algorithm to obtain the ciphertext. The goal of the attacker is to obtain the key information through this process so that the attacker can more effectively crack the encryption algorithm and related keys. In the worst case, the key for decryption is obtained by the attacker.This paper mainly analyses the security of the improved Feistel network for a chosen-plaintext attack. We choose an all-zero matrix as the plaintext and obtain the ciphertext matrix based on encryption algorithm Step 4, as shown below:(29)Ri=0⊕modK1i×0×K2ji,256,(30)Li=mod0+Ri2+Ui,256,where 0 is the all-zero subblock plaintext matrix. From (29) and (30), if 0 subblocks are chosen to form the plaintext matrix for encryption, the ciphertext matrix can still be obtained, but the keys K1i and K2ji and the 0 subblock ⟶ modK1i×0×K2ji,256 operation are utilized in the matrix product. K1i and K2ji are transformed and added to the all-zero matrices so that the attacker cannot obtain the encryption algorithm and key-related information through the relationship between the plaintext matrix and the ciphertext matrix. Moreover, 255 is chosen with all 255 subblocks as the plaintext matrix, and the ciphertext matrix is obtained based on encryption algorithm Step 4, as shown below:(31)Ri=255⊕modK1i×255×K2ji,256,(32)Li=mod255+Ri2+Ui,256.From (31) and (32), if 255 subblocks are chosen as the plaintext matrix for encryption, the ciphertext matrix can still be obtained, but 255 utilizes the Hadamard product with keys K1i and K2ji in modK1i×255×K2ji,256, and keys K1i and K2ji cannot be separated. Therefore, the attacker still cannot obtain the encryption algorithm and key-related information. Thus, the algorithm proposed in this paper can resist chosen-plaintext attacks.In addition, it can be seen from equations (4)–(9) that the encrypted key stream depends not only on the initial state value of the chaotic system but also on the plaintext image. When different plaintext images are encrypted, the corresponding key stream is different. Since the information obtained is related to the selected image, the attacker cannot obtain useful information by encrypting some special images. Therefore, the encryption scheme can resist the ciphertext-only attack, known as the plaintext attack and chosen-ciphertext attack.


## 4.9. Time Complexity Analysis

The complexity of the image encryption algorithm mainly refers to the time complexity. The time complexity of the encryption algorithm mainly includes running time and the big 0 complexity analysis algorithm [43]. Therefore, this paper analyses the complexity of the encryption algorithm in these two aspects. The experimental environment consists of an Intel Core i7, 2.3 GHz CPU, 8 GB of memory, and a 250 GB hard disk running the Windows 10 Professional operating system. For the Lena plaintext image of size M×N, the execution times of the encryption algorithms from the literature are shown in Table 20.Table 20
Time complexity.
AlgorithmExecution time (s)Calculation amountΘProposed1.8643MNReference [16]1.6721MNReference [14]3.80344∗MNReference [12]5.38508∗MNReference [13]10.08006∗MNReference [17]3.86503∗MNReference [18]3.58133∗MNReference [19]2.0800MNFrom the results shown in Table20, it can be seen that the encryption speed of the proposed encryption algorithm is acceptable by comparison with other encryption algorithms.


## 4.10. Peak Signal-to-Noise Ratio Analysis

Peak signal-to-noise ratio (PSNR) is a parameter to describe the quality of image encryption; it is defined on the basis of the concept of mean square error (MSE). The MSE and PSNR are defined as follows:(33)MSE=1M×N∑i=1M∑j=1NI0i,j−Iei,j21/2,PSNR=20logImaxMSE,where I0i,j is the plaintext image pixel value, Iei,j is ciphertext image pixel value, M and N are the row and column of the image, respectively, and Imax is the maximum pixel value of the image. For the image, the smaller the value of PSNR is, the greater the difference between plaintext image and ciphertext is, and the better encryption effects. The Lena ciphertext images obtained by the proposed encryption algorithm and the encryption algorithm of related literature are compared, as shown in Table 21.Table 21
Analysis of peak signal-to-noise ratio of ciphertext images.
AlgorithmPSNRProposed (Scenery)8.5102Proposed (Skeleton)8.4564Proposed (Remote sensing)8.3172Proposed (Lena)8.5206Reference [16] (Lena)8.5269Reference [14] (Lena)8.5480Reference [12] (Lena)8.5096Reference [13] (Lena)8.6481Reference [15] (Lena)8.5932Reference [17] (Lena)8.5096Reference [18] (Lena)8.9621Reference [19] (Lena)8.5565It can be seen from Table21 that the PSNR of the ciphertext image of the proposed encryption algorithm is lower than that of the algorithms in other literature. Therefore, the proposed encryption algorithm has a good effect.


## 4.11. Robustness Analysis

In practice, the transmission of information is prone to multiple disturbances and attacks, so image encryption algorithms must be strongly robust. The robustness analysis of the image encryption algorithm includes antinoise attacks and clipping attacks. To test the antinoise attack performance of the proposed encryption algorithm in this paper, Gaussian noise of different intensities is added to the encrypted ciphertext image in Figure16.Figure 16
Salt and pepper noise attack. (a) 0.1% salt and pepper noise. (b) 0.5% salt and pepper noise. (c) 1% salt and pepper noise.
(a)(b)(c)It can be seen that the decrypted image can still be distinguished, so it can be seen that the proposed encryption algorithm in this paper can resist the noise attack.In practical applications, after the attacker intercepts the ciphertext image, he may use a cutting attack to destroy the image. To simulate this type of image data loss, an anticlipping attack experiment was performed. Taking256×256 Lena image as the experimental subject, Figure 17 shows the experimental results.Figure 17
Crop attack. (a) Full encryption 1/16 block attack. (b) Full encryption 1/4 block attack. (c) Full encryption 1/2 block attack. (d) Decrypted image of (a). (e) Decrypted image of (b). (f) Decrypted image of (c).
(a)(b)(c)(d)(e)(f)It can be seen that the proposed encryption algorithm can still restore most of the original image information under different proportions of clipping attacks, so it has a certain ability to resist cutting attacks.


## 5. Conclusions

A new chaotic system is proposed in this paper and is combined with GANs and DNA encoding operations to generate fusion random sequences and DNA random sequences. These two types of random sequences are utilized as the key stream and combined with an improved Feistel network scrambling and diffusion mechanism and one-time pad mechanism to encrypt images, achieve local encryption and overall encryption, thereby obtaining better encryption security. The experimental simulation results indicate that the proposed encryption algorithm has a large key space and high sensitivity, and it can resist exhaustive attacks. The pixel values of the encrypted image are evenly distributed, and the correlation between adjacent pixel values is weak, indicating that the algorithm can effectively resist statistical analysis attacks. Therefore, the proposed algorithm can be applied in image encryption protection and it also provides a new idea for the combination of deep learning, GANs, DNA sequence coding, and image information security technology.In future work, we plan to construct the parallel mechanism of key stream generation, which makes the training time of the generative adversarial networks model shorter and storage space smaller, to improve the overall efficiency of the encryption system. In addition, further development of the algorithm to be universally adaptable remains ongoing.



---

*Source: 6691547-2021-01-15.xml*