Image Encryption Schemes Based on a Class of Uniformly Distributed Chaotic Systems

: This paper proposes a method to construct a one-dimensional discrete chaotic system. First, we deﬁne a generalized distance function to control the boundedness of the one-dimensional discrete system. Based on Marotto’s theorem, one-dimensional discrete systems are proven to be chaotic in the sense of Li–Yorke, and the corresponding chaos criterion theorem is proposed. The system can be distributed uniformly by adjusting the parameters. In this paper, we propose an image encryption scheme based on a uniformly distributed discrete chaotic system and DNA encoding. DNA encoding and decoding rules are determined by plain text. The experimental results demonstrate that our encryption algorithm has a large key space, high key sensitivity, and fast encryption speed and can resist differential and statistical attacks.


Introduction
Chaos is a special type of complex dynamic behavior displayed in nonlinear systems that commonly exists in nature, such as mathematics, physics, psychology, biology, and other fields. Chaotic systems have many essential properties, such as ergodicity, extreme sensitivity to initial conditions, and good pseudorandom behavior, which makes chaos theory a popular research subject. In recent years, chaotic systems have been rapidly developed and applied in many fields, especially electronic communications and cryptography [1,2]. As one of the most important information carriers, the security of images is very important and has drawn increasing attention from the public and researchers. However, due to a variety of intrinsic characteristics of images, such as a strong correlation of adjacent pixels, data redundancy, and high computational complexity, traditional encryption algorithms are unsuited to encrypt images. Therefore, researchers have proposed many image encryption algorithms [3][4][5]. Chaos-based image cryptosystems have become one of the most ideal encryption methods [6][7][8] because of the main features of chaotic systems, such as sensitivity to initial conditions, ergodicity, and highly complex behavior in addition to their mixing properties.
Researchers have been extensively attracted to constructing new chaotic systems in terms of the existing theory [9,10], which involves the discrimination for the existence of chaos in dynamical systems. In 1975, Li and Yorke first defined the term chaos from a mathematical perspective and proposed a criterion for the existence of chaos in onedimensional discrete dynamical systems [11], which is well known as "period three implies chaos". Under the guidance of Li-Yorke's criterion, Marotto generalized a high-dimensional discrete dynamical system in 1978, which is known as Marotto's theorem [12]. Shi and Chen proposed a new modified version of Marotto's theorem [13] in 2005. Based on Li-Yorke's criterion, a sufficient and necessary condition for the existence of the three periodic points of a quadratic polynomial is obtained by decomposing the real coefficient polynomial in a complex field [14]. A chaos criterion theorem on a cubic discrete system was established and proven to be chaotic in the sense of Li-Yorke [15]. Nevertheless, it is difficult to construct chaotic systems in terms of this criterion. Thus far, only a small number of related work has been reported. In contrast to Li-Yorke's criterion, Marotto's theorem appears more instrumental in proposing a theoretical direction. Based on Marotto's theorem, Chen and Lai discussed an automatic control problem for discrete-time dynamical systems by adding a control term and then proposed an algorithm to control Lyapunov exponents for discrete-time dynamical systems, which is known as the Chen-Lai algorithm [16]. Moreover, several bounded functions containing modulus, sine, and saw-tooth functions were applied to globally bind the discrete system in the Chen-Lai algorithm, and the control term is a linear function [17]. To eliminate the linear control term in the Chen-Lai algorithm, a chaos criterion theorem for a one-dimensional discrete system was provided, in which a modulus function was used as a bounded function [18]. It is worth considering whether other bounded functions could lead to a similar proposition while eliminating linear control.
Low-dimensional chaotic maps have a simple structure and are easy to implement, but they usually have a small key space. In this paper, the proposed chaotic system overcomes the shortcomings of the traditional low-dimensional chaotic system with a small key space by adjusting parameters; therefore, a uniform distribution can be achieved.
DNA computing technology has attracted more and more attention since Adleman studied it [19]. Cryptography utilizes DNA as an information carrier in image encryption and has shown promising results by taking advantage of excellent DNA properties, such as massive parallelism, large storage, and ultralow power consumption. The authors of [20] proposed a color image encryption scheme based on DNA operations and a spatiotemporal chaotic system. The key stream of image encryption is associated with the key and plaintext image, which improves the ability to resist known plaintext or selected plaintext attack. Liu et al. [21] proposed color image encryption based on dynamic DNA and 4-D memristive hyperchaos. The main feature of the algorithm is that the dynamic DNA mechanism based on hyperchaos is performed on the processes of encoding, confusion, and diffusion, improving the security of the algorithm. Liu et al. [22] combined DNA computing with double-chaos systems composed of Lorenz chaotic mapping with variable parameters and fourth-order Rossler hyperchaotic mapping and proposed an algorithm for color image encryption at the bit level. The double-chaos system compensates for the pseudorandomness of the two types of chaotic mappings, making chaotic sequences more difficult to predict.
In this paper, a generalized distance function is defined as bounded, and it is applied to control the boundedness of a discrete system. In terms of Marotto's theorem, a onedimensional discrete system is discussed, and the corresponding chaos criterion theorem is set up to determine the existence of chaos in the discrete system. The system can be distributed uniformly by adjusting the parameters. An image encryption scheme is proposed based on this kind of uniformly distributed discrete chaotic system. First, the chaotic sequence is used to scramble and XOR transform the image, and then DNA coding and DNA operation are performed, the rules of which are determined by plain text. The remainder of this paper is organized as follows. Section 2 presents a class of uniformly distributed discrete chaotic systems and analyzes their dynamic behaviors. Image encryption based on DNA coding is proposed in Section 3. Section 4 gives the simulation experiment results and states security analyses. Finally, Section 5 concludes the paper.

Chen-Lai Algorithm
The Chen-Lai algorithm considers a nonlinear discrete system, not necessarily chaotic, of the form: Then, a control input sequence {u k } ∞ k=0 is designed to investigate the automatic control of system (1), and a new system is described as: where u k = B k x k is discussed for short. Assume the sequence {B k } is uniformly bounded: where M is a positive constant and · denotes the spectral norm of a finite-dimensional matrix. Under the only assumption, it is proven that, in practice, the algorithm can provide the required Lyapunov exponents and achieve the expected anti-control of system (2).
The Chen-Lai algorithm, based on the modulus, sine, and saw-tooth function, is further discussed in detail in [17]. Based on the modulus operation, the one-dimensional discrete system in the Chen-Lai algorithm has the form: where u k = (N + e c )x k is the control term and N and c are two constants. A proposition is given on the one-dimensional discrete system (3) as follows.
The chaotic systems constructed by proposition 1 appear limited in having a linear control term; then, a one-dimensional system without a linear control term is considered with the form [18]: where The chaos criterion theorem for system (4) is also provided.
Evidently, Lemma 1 is a special case of Lemma 2. In short, the form of system (3) is generalized to the form of system (4), while the bounded function is a modulus function. Naturally, under the guidance of the Chen-Lai algorithm and the work of proposition 2, a new bounded function can be defined to replace the modulus function and propose the corresponding chaos criterion theorem. This work is described in Section 2.2.

A One-Dimensional Discrete Chaotic System
This definition begins without describing the modified Marotto's theorem, which is used later.

Lemma 3.
[13] Let f : R → R be a map with a fixed point z ∈ R n . Assume that (1) f is continuously differentiable in a neighborhood of z and all the eigenvalues of D f (z) have absolute values larger than 1, which implies that there exists a positive constant r and a norm · in R n such that f is expanding in B r (z) in · , where B r (z) is the closed ball of radius centered at z in (R n , · ); (2) z is a snap-back repeller of f with f m (x 0 ) = z, x 0 = z, for some x 0 ∈ B r (z) and some positive integer m, where B r (z) is the open ball of radius centered at z in (R n , · ). Furthermore, f is continuously differentiable in some neighborhoods of x 0 , x 1 , · · · , x m−1 , and detD f (x j ) = 0 for 0 ≤ j ≤ m − 1, where x j = f (x j−1 ) and 0 ≤ j ≤ m − 1.

A Generalized Distance Function
First, a distance function is defined.
Absolutely, the function f (x) (x) is an even function. Then, a generalized distance function is further defined by adding a scale parameter into the distance function in Definition 1.

Definition 2. A generalized distance function is defined as Dis
The image of function Dis ε (x) is displayed in Figure 1. Note that Dis ε (x) ∈ [0, ε/2] and it is also an even function.
(2) z is a snap-back repeller of f with is an even function. Then, a generalized distance function is further defined by adding a scale parameter into the distance function in Definition 1.

Two Chaos Criterion Theorems
Theorem 1. Consider a one-dimensional linear discrete system.
ε ≥ is satisfied, then system (5) is a chaotic system in sense of Li-Yorke.

Two Chaos Criterion Theorems
Theorem 1. Consider a one-dimensional linear discrete system.
If |a|ε ≥ 2 is satisfied, then system (5) is a chaotic system in sense of Li-Yorke.
Denote J 1 = (0, 1/(2a)), In interval J 2 , g(x) = ε(1 − ax) = x gives a fixed point: Next, the fixed point x * is proven as a snap-back repeller. A sequence {x −m |m = 0, 1, 2, · · · } is defined as: By the Lagrange mean value theorem, there exists a point ξ ∈ (x −m+1 , x * ) or ξ ∈ (x * , x −m+1 ) such that: Hence, let the positive integer m be large enough; then, there exists a constant r > 0 such that: In summary, the fixed point x * satisfies the following conditions: (a) There exists a positive constant r > 0 such that for any point where Dg(x) = g (x) denotes the Jacobi matrix of g(x). That is, the eigenvalue of Dg(x) is λ = g (x), and it satisfies |λ|=|g (x)|= aε > 1 .
and ε ≥ 2, then system (6) is chaotic in the sense of Li-Yorke.
By the Lagrange mean value theorem, there exists a point ξ ∈ [0, x] such that , there exists a point t 1 ∈ (t 0 , 1) such that f (t 1 ) = 1.
The monotonicity of map f (x) ensures the uniqueness of points t 0 and t 1 .
Denote h(x) = g(x) − x, and ε ≥ 2 gives Absolutely, point x * is a fixed point of map g(x) in interval (t 0 , t 1 ). Next, the fixed point x * is proven to be a snap-back repeller. Since Since Therefore, it can be proven that there exists a point Then, Hence, let the positive integer m be large enough; then, there exists a constant r > 0 such that In summary, the fixed point x * satisfies the following conditions: (a) There exists a positive constant r > 0 such that for any point where In summary, x * is a snap-back repeller of system (6). This completes the proof. Theorem 2 cannot contain Theorem 1 while setting f (x) = ax in Theorem 2.

Three Specific Propositions
To explain the application of Theorem 2, three propositions, based on Theorem 2, are proposed by designing the form of f (x) in system (6).

Proposition 2.
Consider a one-dimensional discrete system x k+1 = Dis ε (a n x n k + a n−1 x n−1 where f (x) = a n x n + a n−1 x n−1 + · · · + a 1 x and ε ≥ 2.

Dynamical Properties Analysis
In this section, the dynamic properties of chaotic systems in Theorems 1 and 2 will be analyzed by means of numerical simulations, such as bifurcation diagrams, and Lyapunov exponent spectra. Bifurcation diagrams describe the process in which states of nonlinear systems change when one parameter changes. An examination of Lyapunov exponents and bifurcation diagram together proved the existence of the chaotic behavior feature.

Bifurcation Diagrams and Lyapunov Exponent Spectra
In Theorem 1, let ε = 2; then, if |a|≥ 1 , system (5) is chaotic in the sense of Li-Yorke. Let a = 1; then, if ε ≥ 2, system (5) is chaotic in the sense of Li-Yorke. Figure 2a,b show the bifurcation diagram and Lyapunov exponent spectrum of parameterin system (5) respectively, where. Figure 2c,d show the bifurcation diagram and Lyapunov exponent spectrum of parameterin system (5) respectively, where. As shown in Figure 2, system (5) displays its chaotic characteristics as theorem 1 expects.
In Proposition 1, let ε = 2; then, if or, system (7) is chaotic. The bifurcation diagram and Lyapunov exponent spectrum of the parameter in system (7) are shown in Figure 3a,b, respectively. Figure 3 shows that system (7) displays chaotic characteristics as expected by Proposition 1.
In Proposition 3, set g(x) = sin(x) + 1; then, if a > 1, system (9) is chaotic. The bifurcation diagram and Lyapunov exponent spectrum of parameter a in system (9) are shown in Figure 4a,b, respectively. Figure 4 shows that system (9) displays chaotic characteristics expected by Proposition 3.
Autocorrelation and cross-correlation are two main methods to measure the pseudorandomness of chaotic systems. For a truly random series such as white noise, the autocorrelation and cross-correlation are the δ function and zero, respectively.
The autocorrelation coefficient at lag k of a series {x(n)} of length N is normally given as: where x is the mean of the series {x(n)}.
The cross-correlation of two series {x(n)} and {y(n)} of length N at lag k is defined as: For system (5), the autocorrelation function of the chaotic sequence generated with the initial parameters a = 1, ε = 3, and x 0 = 0.2759 is shown in Figure 6a, and its crosscorrelation with another chaotic system generated with a = 1, ε = 3, and x 0 = 0.3257 is shown in Figure 6b. In this section, the dynamic properties of chaotic systems in Theorems 1 and 2 will be analyzed by means of numerical simulations, such as bifurcation diagrams, and Lyapunov exponent spectra. Bifurcation diagrams describe the process in which states of nonlinear systems change when one parameter changes. An examination of Lyapunov exponents and bifurcation diagram together proved the existence of the chaotic behavior feature.

Bifurcation Diagrams and Lyapunov Exponent Spectra
In Theorem 1, let 2 (5) is chaotic in the sense of Li-Yorke. (5) is chaotic in the sense of Li-Yorke. Figure 2a,b show the bifurcation diagram and Lyapunov exponent spectrum of parameterin system (5) respectively, where. Figure 2c,d show the bifurcation diagram and Lyapunov exponent spectrum of parameterin system (5) respectively, where. As shown in Figure 2, system (5) displays its chaotic characteristics as theorem 1 expects.   In Proposition 1, let 2 ε = ; then, if or, system (7) is chaotic. The bifurcation diagram and Lyapunov exponent spectrum of the parameter in system (7) are shown in Figure  3a,b, respectively. Figure 3 shows that system (7) displays chaotic characteristics as expected by Proposition 1. In proposition 3, set ( ) sin( ) 1 (9) is chaotic. The bifurcation diagram and Lyapunov exponent spectrum of parameter a in system (9) are shown in Figure 4a,b, respectively. Figure 4 shows that system (9) displays chaotic characteristics   In proposition 3, set ( ) sin( ) 1 g x x = + ; then, if 1 a > , system (9) is chaotic. The bifurcation diagram and Lyapunov exponent spectrum of parameter a in system (9) are shown in Figure 4a,b, respectively. Figure 4 shows that system (9) displays chaotic characteristics expected by Proposition 3.

Correlation Analysis
In this subsection, we set (7).
The evolution of the state variable ( ) k x k − in systems (5) and (7) for the first 3000 iterations is shown in Figure 5a,b, respectively. The dynamic behaviors of chaotic systems (5) and (7) all demonstrate chaotic attractors.  Autocorrelation and cross-correlation are two main methods to measure th dorandomness of chaotic systems. For a truly random series such as white noise, tocorrelation and cross-correlation are the δ function and zero, respectively.
The autocorrelation coefficient at lag k of a series { ( )} x n of length N is no given as: The cross-correlation of two series { ( )} x n and { ( )} y n of length N at lag k fined as:

Distribution Density Analysis
In practical applications, the distribution density of chaotic systems is usually required to be uniform or nearly uniform. In this section, the distribution density of chaotic  For system (7), the autocorrelation function of chaotic sequence generated with initial parameter a = 2, ε = 2, x 0 = 0.2759 is shown in Figure 6c and its cross-correlation with another chaotic system generated with a = 2, ε = 2, x 0 = 0.3257 is shown in Figure 6d. Figure 6 shows that the autocorrelation and cross-correlation functions of the chaotic systems generated by systems (5) and (7) are all ideal, as expected, which means that their pseudorandomness is very close to that of a truly random sequence.

Distribution Density Analysis
In practical applications, the distribution density of chaotic systems is usually required to be uniform or nearly uniform. In this section, the distribution density of chaotic systems based on Theorems 1 and 2 is investigated by means of histograms. First, the simulation method of the chaotic system distribution density is described as follows.
Step 2 The interval ∆ is divided into M subintervals equally, and the length of each subinterval is h = (β − α)/M.
Step 3 The number of samples that fall into each subinterval is counted and denoted as n i , i = 1, 2, · · · , M.
Step 4 The probability of every point in the subinterval is denoted as p i , i = 1, 2, · · · , M. Then, probability p i can be approximated by: Then, the distribution density of a chaotic system can be simulated by the corresponding probability histogram in terms of the above method. In the following simulation, without specific declaration, N = 10 6 , M = 500.
In Theorem 1, let a = 1; then, ε = 3, ε = 3.3, ε = 3.8, and ε = 3.99 are set, and histograms of the chaotic sequences generated by system (5)  In each histogram, the simulation represents the approximate value of probability i p , and the curve ( ) 2 / p x ε = is used to fit the simulation of the distribution density of chaotic systems. Figure 7 shows that the distribution density of system (5) can be close to a uniform distribution by varying the system parameters, as shown in Figure 5a,d. In fact, if set 1 a = and 2 ε = , the linear system (5) is a tent map that follows a uniform distribution. It can be verified that if | | 2 aε ≥ is an integer, system (5) follows a uni- In each histogram, the simulation represents the approximate value of probability p i , and the curve p(x) = 2/ε is used to fit the simulation of the distribution density of chaotic systems. Figure 7 shows that the distribution density of system (5) can be close to a uniform distribution by varying the system parameters, as shown in Figure 5a,d.
In fact, if set a = 1 and ε = 2, the linear system (5) is a tent map that follows a uniform distribution. It can be verified that if |aε|≥ 2 is an integer, system (5) follows a uniform distribution in terms of the proof of the tent map. Now, the distribution density of nonlinear system (6) is studied, and for simplicity, system (7) is utilized as an example to study this problem.
Without loss of generality, we set ε = 2 in system (7) and then set a = 1, a = 1.5, a = 1.8, and a = 2, respectively, and histograms of the chaotic sequences generated by system (7) are shown in Figure 8a-d. As shown in Figure 8, the distribution density of system (7) can also be close to the uniform distribution by varying the system parameters.

DNA Encoding and Computing Rules
A DNA sequence consists of four basic nucleic acids: A (adenine), C (cytosine), G (guanine), and T (thymine). According to the pair rules, A and T are complementary, as are C and G. In the binary system, 0 and 1 are complementary. Therefore, binary numbers 00 and 11, and 10 and 01 are also complementary. If we use the four basic nucleic acids (i.e., A, C, G, T) to denote the four binary numbers 00, 01, 10, and 11, there are in total 4! = 24 kinds of encoding rules. However, only eight rules which satisfy the Watson-Crick complementary requirement are valid. The rules are shown in Table 1.
According to the rules of DNA encoding and decoding, DNA sequences can be computed using algebraic calculation, such as addition, subtraction, and XOR operations. Table 2 lists the three operations for DNA sequences according to Rule 1.

DNA Encoding and Computing Rules
A DNA sequence consists of four basic nucleic acids: A (adenine), C (cytosine), G (guanine), and T (thymine). According to the pair rules, A and T are complementary, as are C and G. In the binary system, 0 and 1 are complementary. Therefore, binary numbers 00 and 11, and 10 and 01 are also complementary. If we use the four basic nucleic acids (i.e., A, C, G, T) to denote the four binary numbers 00, 01, 10, and 11, there are in total 4! = 24 kinds of encoding rules. However, only eight rules which satisfy the Watson-Crick complementary requirement are valid. The rules are shown in Table 1.
According to the rules of DNA encoding and decoding, DNA sequences can be computed using algebraic calculation, such as addition, subtraction, and XOR operations. Table 2 lists the three operations for DNA sequences according to Rule 1.  Table 2. DNA computing rules.

Iterations of Chaotic Systems
For chaotic system (5), we take three group parameters {a 1 , x 01 }, {a 2 , x 02 }, and {a 3 , x 03 }, and iterate N 0 + MN times. In order to avoid the harmful effect of the transition procedure, we discard the previous N 0 sequence value and we obtain three chaotic sequences of length M × N: The sequence values of the first group of chaotic sequences X 1 are sorted from small to large, and the corresponding subscript sequences are recorded to obtain an ordered subscript sequence XP 1 = {xp 1 (i), i = 1, 2 . . . M × N}. For example, the sequence value of xp 1 (3) in XP 1 is 18, which means that the sequence number x 1 (3) of the sequence value in the chaotic sequence X 1 in the whole sequence X 1 is 18.
Similarly, the ordered subscript sequence XP 2 of chaotic sequence X 2 can be obtained. The third group of chaotic sequences X 3 is transformed into an integer column r between [0, 255]. r = mod ceil x 3 × 10 8 , 256 The integer column r is arranged in rows into a matrix with size M × N, which is recorded as R; For chaotic system (8), two sets of parameters {b 1 , b 2 , b 3 , b 4 , b 5 , b 6 , x 04 }, {c 1 , c 2 , c 3 , c 4 , c 5 , c 6 , x 05 ,} are taken and iterated N 0 + MN times. Discarding the previous N 0 sequence value, we obtain two chaotic sequences of length M × N: The chaotic sequences X 4 and X 5 are transformed into two pseudorandom sequences between [0, 255]: where L = 255 √ 2 × 10 8 is a constant.
Step 1: Convert the image matrix P into a one-dimensional array and the pixel position of the image P is transformed by using the ordered subscript sequence XP 1 to obtain the image P 1 .
Step 3: Combined with chaotic sequence X 4 , the pixel value of each subimage PR i is transformed forward to obtain the subimage PRN i = {prn i (j), j = 1, 2, . . . , N}. The specific transformation is: where ⊕ represents XOR operation, k 0 = mod M ∑ i N ∑ j pr i (j) + i + j, 256 as a key.
Step 4: All pixel values in each subimage PRN i are shifted to the left circularly in bits, and the moving bit is d ∈ {1, 2, . . . , 8} to obtain the subimage PRB i = {prb i (j), j = 1, 2, . . . , N}. The specific transformation is: Step 5: Combined with chaotic sequence X 5 , the pixel value of each subimage PRB i is inversely transformed to obtain a new subimage PRC i . The specific transformation is: 256 as a key.
Step 6: The PRC i subimages are spliced to obtain the image P 2 , and the pixel position of the image P 2 is transformed by the ordered subscript sequence XP 2 . The transformed image P 3 is rearranged into an image of size M × N.
Step 7: The image P 3 is encoded as a DNA matrix, and the matrix R in Section 3.2 is also encoded as a DNA matrix. The two DNA matrices are operated, the calculated DNA matrix is decoded to obtain a binary matrix, and finally, it is converted into a decimal matrix, that is, the last ciphertext image. The encoding and decoding rules and operation rules in the step are determined by the plaintext image. The calculation formula of encoding, decoding, and operation rules is as follows: where sum(P) represents the sum of pixel values of image P, r b represents the coding rules of image P 3 , r r represents the coding rules of matrix R, r y represents the operation rules, and r j represents the decoding rules.
The encryption process can be described by Figure 9.
formed image 3 P is rearranged into an image of size M N × .
Step 7: The image 3 P is encoded as a DNA matrix, and the matrix R in Section 3.2 is also encoded as a DNA matrix. The two DNA matrices are operated, the calculated DNA matrix is decoded to obtain a binary matrix, and finally, it is converted into a decimal matrix, that is, the last ciphertext image. The encoding and decoding rules and operation rules in the step are determined by the plaintext image. The calculation formula of encoding, decoding, and operation rules is as follows: where ( ) sum P represents the sum of pixel values of image P, b r represents the coding rules of image 3 P , r r represents the coding rules of matrix R, y r represents the operation rules, and j r represents the decoding rules.
The encryption process can be described by Figure 9. The decryption algorithm is the reverse process of the encryption algorithm.

Simulation Results and Security Analysis
We used MATLAB 2016a to verify the proposed encryption algorithm on a personal computer with an Intel(R) Core(TM) i7-7500U CPU @ 2.70 GHz and 8.00 GB memory, and The simulation results are shown in Figure 10. The decryption algorithm is the reverse process of the encryption algorithm.

Simulation Results and Security Analysis
We used MATLAB 2016a to verify the proposed encryption algorithm on a personal computer with an Intel(R) Core(TM) i7-7500U CPU @ 2.70 GHz and 8.00 GB memory, and the operating system was a Microsoft Windows 10. The test images are Lena (256 × 256), Girl(256 × 256), and Baboon(256 × 256). The system parameters of the chaotic system are The simulation results are shown in Figure 10.

Key Space Analysis
Key space measures the ability to resist exhaustive attacks. The key space size needs to be analyzed and calculated in combination with the system parameters involved in encryption, initial value conditions, and computer accuracy. Generally, the more key parameters there are, the greater the sensitivity of the key, the larger the key space, and the more difficult it is for the encryption and decryption algorithm to crack. In many other studies, the calculation accuracy is usually 10 −14 . Therefore, this paper sets the calculation accuracy to 10 −14 to compare with the key space of the same scale.
The key space of this algorithm is 10 14 20 = 10 280 . Since the keys {n 0 , k 0 , l M−1 , d, e, f , g, h} are numbers in the integer field, the key space is not taken into account when calculating. Therefore, the key space of this algorithm is much larger than the minimum value of resisting violent attacks and the key space in the following references. The comparison with the key space in other references is provided in Table 3.

Key Space Analysis
Key space measures the ability to resist exhaustive attacks. The key space size n to be analyzed and calculated in combination with the system parameters involved in cryption, initial value conditions, and computer accuracy. Generally, the more key pa eters there are, the greater the sensitivity of the key, the larger the key space, and the m difficult it is for the encryption and decryption algorithm to crack. In many other stu the calculation accuracy is usually 10 −14 . Therefore, this paper sets the calculation accu to 10 −14 to compare with the key space of the same scale.
The key space of this algorithm is ( ) are numbers in the integer field, the key space is not taken account when calculating. Therefore, the key space of this algorithm is much larger the minimum value of resisting violent attacks and the key space in the following r ences. The comparison with the key space in other references is provided in Table 3. Table 3. Key space analysis.

26] Proposed
Key space

Key Sensitivity Analysis
A good encryption scheme should be sensitive to the key in the encryption process. Below, the key is slightly disturbed, and NPCR and UACI are used to measure the differences of the images before and after the perturbation.
The NPCR and UACI are expressed as follows: where W × H is the number of pixels. The key sensitivity analysis results of the encryption algorithm are shown in Table 4. The values of NPCR and UACI are very close to the ideal values of 99.609% and 33.464%, respectively, after a minor disturbance of the parameters. Therefore, there are large differences in decrypted images and high key sensitivity.

Histogram Analysis
The statistical histogram directly observes the encryption effect of image encryption and reflects the distribution of pixels by comparing the pixel statistical histogram of the original image with the encrypted image. It is generally considered that the statistical histogram of an encrypted image is approximately uniform. Figure 11 shows the encrypted histogram of the Lena image. The histogram distribution is flat and better hides the statistical law of pixels. It can effectively resist statistical attacks and pure password attacks.

Histogram Analysis
The statistical histogram directly observes the encryption effect of image encryption and reflects the distribution of pixels by comparing the pixel statistical histogram of the original image with the encrypted image. It is generally considered that the statistical histogram of an encrypted image is approximately uniform. Figure 11 shows the encrypted histogram of the Lena image. The histogram distribution is flat and better hides the statistical law of pixels. It can effectively resist statistical attacks and pure password attacks.

Correlation Analysis
The correlation coefficient calculates the correlation coefficient of the original image and the encrypted image, compares the absolute value of the correlation coefficient, judges the correlation change of adjacent pixels of the encrypted image, and measures the correlation of adjacent pixels.
In digital images, the gray values between adjacent pixels are often very close, indicating that adjacent pixels have a strong correlation, which will lead to insufficient encryption security performance. When the absolute value of the correlation coefficient is close to 1, it is considered that there is a strong correlation between adjacent pixels; when the absolute value of the correlation coefficient is close to 0, it is considered that there is no or weak correlation between adjacent pixels. The calculation of the correlation coeffi-

Correlation Analysis
The correlation coefficient calculates the correlation coefficient of the original image and the encrypted image, compares the absolute value of the correlation coefficient, judges the correlation change of adjacent pixels of the encrypted image, and measures the correlation of adjacent pixels.
In digital images, the gray values between adjacent pixels are often very close, indicating that adjacent pixels have a strong correlation, which will lead to insufficient encryption security performance. When the absolute value of the correlation coefficient is close to 1, it is considered that there is a strong correlation between adjacent pixels; when the absolute value of the correlation coefficient is close to 0, it is considered that there is no or weak correlation between adjacent pixels. The calculation of the correlation coefficient between adjacent pixels is divided into three directions: vertical, horizontal, and diagonal. Equations (10)- (12) are used to calculate the correlation between adjacent pixels of an image:  Table 5.

Information Entropy Analysis
Information entropy is used to judge the degree of unpredictability, uncertainty, and randomness of information sources. Information entropy is expressed as Equation (13): where S = {x 1 , x 2 , . . . x n } is an information source and P is a probability distribution of S. The probability of x i is p i . According to the principle of maximum information entropy, when the probability distribution of the source is an equal probability distribution, p i = 1 n , and the maximum information entropy log 2 n can be obtained. ---Ref. [25] −0.0034 −0.0079 0.0010 Ref. [26] 0.001 −0.014 −0.006 Proposed 0.0072 0.0055 −0.0008 Since the image used in this experiment is a 256-order gray image, the closer the information entropy is to 8, the better the encryption algorithm performs in this test. The original picture information entropy = 7.4455, and the picture information entropy encrypted by the algorithm in this paper = 7.9994, which is very close to the ideal value of 8. Table 6 shows the comparison of entropy with other literature.

Robustness Analysis
In the process of image transmission, some data may be modified or lost. Therefore, an algorithm should have the ability to resist noise attacks or data loss. A robust encryption algorithm means that most of the useful information of the plain image can still be recovered when such situations occur.
Currently, almost all transmission channels are noise channels. When data propagate in the channel, it receives various types of noise interference, such as Gaussian noise and salt and pepper noise. A robust image encryption algorithm should be immune to noise interference. In the actual algorithm analysis, a small amount of some type of noise is usually added to the encrypted image and then the encrypted image is decrypted after adding noise. The smaller the contrast difference between the decrypted image and the original image, the stronger the ability of the algorithm to resist noise attacks.
We added 0.01%, 0.03%, and 0.05% salt and pepper noise. The results are shown in Figures 13-15, respectively. These figures show that the decryption algorithm can still restore the original image well, that is, it has a certain ability to resist noise attacks. original picture information entropy = 7.4455, and the picture information entropy encrypted by the algorithm in this paper = 7.9994, which is very close to the ideal value of 8. Table 6 shows the comparison of entropy with other literature.

Robustness Analysis
In the process of image transmission, some data may be modified or lost. Therefore, an algorithm should have the ability to resist noise attacks or data loss. A robust encryption algorithm means that most of the useful information of the plain image can still be recovered when such situations occur.
Currently, almost all transmission channels are noise channels. When data propagate in the channel, it receives various types of noise interference, such as Gaussian noise and salt and pepper noise. A robust image encryption algorithm should be immune to noise interference. In the actual algorithm analysis, a small amount of some type of noise is usually added to the encrypted image and then the encrypted image is decrypted after adding noise. The smaller the contrast difference between the decrypted image and the original image, the stronger the ability of the algorithm to resist noise attacks.
We added 0.01%, 0.03%, and 0.05% salt and pepper noise. The results are shown in Figures 13-15, respectively. These figures show that the decryption algorithm can still restore the original image well, that is, it has a certain ability to resist noise attacks.     During transmission, the encrypted data may be partially modified or lost. An encryption algorithm should be immune to data loss. In the actual algorithm analysis, a small image of the encrypted image is usually removed, and then the encrypted image after removing part of the image is decrypted. The smaller the contrast difference between the decrypted image and the original image, the stronger the ability of the algorithm to resist data loss attacks. The 1 × 8, 8 × 8, 8 × 16 subblock in the upper left corner of the encrypted image is removed in Figure 10b. The decryption algorithm is used to decrypt the encrypted image after removing a molecular block. The decryption effect is shown in Figures 16b, 17b, 18b. Figures 16-18 show that the decryption algorithm can still restore the original image well; that is, it has a certain ability to resist data loss.   During transmission, the encrypted data may be partially modified or lost. An encryption algorithm should be immune to data loss. In the actual algorithm analysis, a small image of the encrypted image is usually removed, and then the encrypted image after removing part of the image is decrypted. The smaller the contrast difference between the decrypted image and the original image, the stronger the ability of the algorithm to resist data loss attacks. The 1 × 8, 8 × 8, 8 × 16 subblock in the upper left corner of the encrypted image is removed in Figure 10b. The decryption algorithm is used to decrypt the encrypted image after removing a molecular block. The decryption effect is shown in Figures 16b, 17b, 18b. Figures 16-18 show that the decryption algorithm can still restore the original image well; that is, it has a certain ability to resist data loss. During transmission, the encrypted data may be partially modified or lost. An encryption algorithm should be immune to data loss. In the actual algorithm analysis, a small image of the encrypted image is usually removed, and then the encrypted image after removing part of the image is decrypted. The smaller the contrast difference between the decrypted image and the original image, the stronger the ability of the algorithm to resist data loss attacks. The 1 × 8, 8 × 8, 8 × 16 subblock in the upper left corner of the encrypted image is removed in Figure 10b. The decryption algorithm is used to decrypt the encrypted image after removing a molecular block. The decryption effect is shown in Figures 16b, 17b, 18b. Figures 16-18 show that the decryption algorithm can still restore the original image well; that is, it has a certain ability to resist data loss.   During transmission, the encrypted data may be partially modified or lost. An encryption algorithm should be immune to data loss. In the actual algorithm analysis, a small image of the encrypted image is usually removed, and then the encrypted image after removing part of the image is decrypted. The smaller the contrast difference between the decrypted image and the original image, the stronger the ability of the algorithm to resist data loss attacks. The 1 × 8, 8 × 8, 8 × 16 subblock in the upper left corner of the encrypted image is removed in Figure 10b. The decryption algorithm is used to decrypt the encrypted image after removing a molecular block. The decryption effect is shown in Figures 16b, 17b, 18b. Figures 16-18 show that the decryption algorithm can still restore the original image well; that is, it has a certain ability to resist data loss.

Time Complexity Analysis
The time consumed by the encryption algorithm and decryption algorithm provided in this paper can be divided into two stages: (1) preparation stage, that is, the generation of chaotic pseudorandom sequences; and (2) formal encryption and decryption stage. The time of phase (1) in this algorithm is 8.948 s. For phase (2), the time consumed by the encryption algorithm and decryption algorithm is 3.702 s and 3.893 s, respectively. Therefore, the chaotic image encryption algorithm in this paper consumes less time; that is, its time complexity is low.

Conclusions
This paper proposes a method to construct a one-dimensional discrete chaotic system and an image encryption scheme based on a uniformly distributed chaotic system. Based on Marotto's theorem, one-dimensional discrete systems are proven to be chaotic in the sense of Li-Yorke, and the corresponding chaos criterion theorems are proposed. The system can be distributed uniformly which means better randomness. We propose an image encryption scheme based on a uniformly distributed discrete chaotic system and DNA encoding. The experimental results demonstrate that our encryption algorithm has a large key space, high key sensitivity, and fast encryption speed and can resist differential attacks and statistical attacks.