Next Article in Journal
Bibliometric Analysis of Granger Causality Studies
Next Article in Special Issue
Research on Improved DNA Coding and Multidirectional Diffusion Image Encryption Algorithm
Previous Article in Journal
Sovereign Bond Yield Differentials across Europe: A Structural Entropy Perspective
Previous Article in Special Issue
Face Database Protection via Beautification with Chaotic Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Encryption of Color Images with an Evolutionary Framework Controlled by Chaotic Systems

School of Automation, Jiangsu University of Science and Technology, Zhenjiang 212003, China
*
Author to whom correspondence should be addressed.
Entropy 2023, 25(4), 631; https://doi.org/10.3390/e25040631
Submission received: 13 March 2023 / Revised: 2 April 2023 / Accepted: 2 April 2023 / Published: 7 April 2023
(This article belongs to the Special Issue Image Encryption and Privacy Protection Based on Chaotic Systems)

Abstract

:
In the past decade, a large amount of important digital data has been created and stored in the form of color images; the protection of such data from undesirable accesses has become an important problem in information security. In this paper, a new approach based on an evolutionary framework is proposed for the secure encryption of color images. The image contents in a color image are first fully scrambled with a sequence of bit-level operations determined by a number of integer keys. A scrambled image is then encrypted with keys generated from an evolutionary process controlled by a set of chaotic systems. Analysis and experiments show that the proposed approach can generate encrypted color images with high security. In addition, the performance of the proposed approach is compared with that of a few state-of-the-art approaches for color image encryption. The results of the comparison suggest that the proposed approach outperforms the other approaches in the overall security of encrypted images. The proposed approach is thus potentially useful for applications that require color image encryption.

1. Introduction

With the rapid development of information technologies, a tremendous amount of image data has been created for the analysis, storage and transmission of important information. In practice, undesirable accesses to certain image data often need to be prevented and encryption is a computational technique extensively utilized to enhance the security of such images [1]. Since images encrypted by traditional encryption methods generally cannot reach the security levels required by many applications [2], researchers have proposed numerous methods that can encrypt images with improved security [2,3,4,5,6,7]. Most of the existing approaches use techniques from one of three major classes of methods for image encryption. These classes consist of approaches that apply the permutation of pixel positions [7,8], techniques that transform gray values of pixels [5,9,10] and methods that encrypt images with chaotic systems [6,11].
An important method for image encryption permutes the positions of pixels to generate a cipher image. For example, a skew tent map system is combined with a permutation–diffusion architecture in [7] for image encryption. In [8], cipher images are generated by changing both gray values and locations of pixels. The approach proposed in [12] utilizes ergodic matrices to change the locations of pixels for image encryption. The approach proposed in [13] uses an elliptic curve random generator and an AES to improve the security of cipher images. Peano–Hilbert curves are used in [14] to relocate pixels such that spatial correlations can be eliminated in cipher images. In [15], edge maps generated based on source images are used along with a number of different permutation techniques for image encryption.
Gray value transformation is another technique that has been extensively used for image encryption. The image contents in each pixel of an image are processed by a transformation and new pixel values are generated for the pixel. The approach proposed in [9] encrypts an image multiple times with the fractional Fourier Transform (FRFT). In [5], images are iteratively encrypted by an approach that uses gyrator transform and random phase encoding. The approach proposed in [16] encrypts an image with a combination of Arnold transformation and gyrator transformation. In [8], the hue(H), saturation(S) and intensity(I) components of a color image are processed with discrete fractional random transform (DFRNT) and Arnold transform for encryption. In [17], image encryption is performed based on a new category of Discrete Fractional Fourier Transforms (DFrFs) with eigensystems generated by a new random-matrix scheme. The approach proposed in [18] uses DNA encoding to diversify the Elliptic Curve Cryptography (ECC) to obtain cipher images with improved security. A novel modular approach is proposed in [19] to construct a nonlinear S-box for image encryption. Self-adaptive permutation–diffusion and deoxyribonucleic acid (DNA) random encoding are combined in [20] for the adaptive encryption of images. The work in [21] encrypts images with an approach that uses both compressive sensing and information hiding. In [22], an approach that integrates Arnold map, DNA sequence operations with a Mandelbrot set are proposed to securely encrypt color images. Recently, DNA coding and compressive sensing have been combined to obtain cipher images with improved security [23]. The work in [24] proposes a novel layer-based image steganography method that can hide a color image into color images.
A large number of approaches have been proposed to perform image encryption with chaotic systems [3,6]. Such approaches generally utilize outputs of chaotic systems for the generation of cipher images. Since a tiny amount of change in initial values can alter the behavior of a chaotic system significantly, the exact initial values of these systems must be obtained to decipher a cipher image. The security of a cipher image can thus be significantly enhanced when chaotic systems are used for encryption. Chaotic systems are used in [4] to generate chaotic sequences that can change the locations of pixels for encryption. In [10], three sets of pseudo random sequences are generated with a simple perception and a high-dimensional chaotic system to encrypt images. In [25], images are encrypted with a pseudo-random key stream sequence generated by a piecewise linear chaotic map. In [26], an image is encrypted with two sets of one-dimensional logistic systems designed for pixel relocation and gray value transformation, respectively. The work in [27] designs a neotype chaotic product trigonometric map (PTM) system for image encryption. The approach proposed in [28] combines chaotic systems with particle swarm optimization algorithm to improve the security of color image encryption. In [29], a dual permutation and dual substitution framework that utilizes cellular automata, chaos theory and image mixing is proposed for color image encryption. The work in [30] proposes an Enhanced Logistic Map (ELM) that can be combined with chaotic maps and simple encryption techniques to improve the security of cipher images.
Recently, numerous methods that combine DNA operations with chaotic systems have been developed for image encryption [22,31,32,33]. The approach proposed in [31] encrypts images with a combination of DNA sequence operations and chaotic systems. The work in [34] performs image fusion encryption with an approach based on hyper-chaotic systems and DNA sequence operations. A hybrid model is proposed in [35] to combine DNA masking, Lorenz system and a Secure Hash Algorithm SHA-2 for image encryption. In [36], highly secure cipher images are obtained by combining DNA sequence operations with various types of chaotic systems. The work in [33] proposes a method that performs image encryption with a 5D hyper chaotic system and DNA technology.
Research results have shown that using chaotic systems together with other encryption approaches can also improve the security of cipher images. In [37], global chaotic pixel diffusion is used together with fractal sorting matrices (FSM) for image encryption. The approach proposed in [38] applies the Knuth–Durstenfeld algorithm with a hidden attractor chaos system to improve the security of cipher images. In [39], color images are encrypted with a two-dimensional logistic tent modular map (2D-LTMM). In [40], chaotic systems are integrated with a permutation–substitution (SP) network to achieve improved security for image encryption. In [41], images are encrypted by chaotic data generated with Mixed Linear–Nonlinear Coupled Map Lattices (MLNCML).
Existing methods for image encryption have significantly improved the overall security of cipher images. However, most of the state-of-the-art approaches for image encryption only change the locations of pixels to reduce the local correlations among pixels. The image contents associated with a pixel are completely or partially retained after it is relocated to a different position in the image. The original image contents are thus not completely eliminated by the scrambling process. Moreover, the transformations utilized to change the image contents in each pixel are generally based on numeric functions only. The security of cipher images can possibly be further improved if more sophisticated transformations are available for encoding the image contents associated with each pixel in an image. A new approach that can perform the scrambling process more effectively and apply a more sophisticated transformation to change the image contents associated with each pixel is thus highly desirable to achieve further improved security for image encryption.
In this paper, a new method is proposed to encrypt color images with an evolutionary framework controlled by a set of chaotic systems. In the first phase of the encryption, pixels in a color image are grouped based on a virtual image constructed from the original image and arrays formed by the binary bits in the pixel groups are shuffled with a set of integer keys. The R, G and B components of pixels are then determined from the shuffled arrays as the result of scrambling. In the second phase of encryption, an evolutionary system comprised of integers obtained from a set of 3D chaotic systems is used to change the image contents in each pixel of the scrambled image. Integers in the evolutionary system are processed and changed by two operators, including cross-over and mutation. The operations of each operator are controlled by a set of one-dimensional logistic systems.
The proposed method has two major contributions for the encryption of color images. Firstly, a bit-level scrambling process is developed to change the location of each bit in the image contents of a color image. Correlations that usually exist between pixels that are spatially close in natural images can thus be significantly reduced. Secondly, due to the fact that it is difficult to simulate the outputs of an evolutionary process controlled by chaotic systems with numeric transformations, the underlying mechanisms of the proposed approach can be well hidden from adversary sides. The proposed method can thus significantly enhance the robustness and security of cipher images.
The results of an analysis on the key space of the proposed approach suggest that it is robust against exhaustive attacks. Experimental results on benchmark color images and a set of images selected from the BSD500 dataset [42] show that the proposed approach can generate cipher images with high security. In addition, the performance of the proposed approach is compared with that of other state-of-the-art encryption approaches on a variety of security measures for cipher images. The results of comparison show that the proposed approach is able to provide cipher images with security higher than those generated by other tested approaches.

2. Materials and Methods

The encryption of a color image with the proposed approach is performed in two phases. In the first phase, the binary bits of the R, G and B components in the pixels of the plain image are scrambled based on a set of integer keys and a virtual image constructed from the plain image. In the second phase, the R, G and B components in each pixel of the scrambled image are encoded by an evolutionary system constructed from the outputs of a set of 3D chaotic systems. The evolutionary process of the system is controlled by a set of one-dimensional logistic systems.
Figure 1 illustrates the scrambling process in the proposed approach. In the first step, a virtual image is constructed from the plain image by a mapping that can place each pixel in the plain image to its mapped location in the virtual image. Pixels in the plain image are organized into groups based on the rows and columns of the virtual image. In the second step, the pixels in the same row are included in a group and the binary bits of the R, G and B components of the pixels in the same group are combined into an array of bits. The bits in each array are shuffled with an integer key associated with the corresponding row. The R, G and B components of pixels are replaced by bits from the corresponding locations in the shuffled arrays. In the third step, the pixels in the same column are included in a group and the same bit-shuffling operation is performed for pixels in each group. The resulting image is a scrambled image of the plain image.
Figure 2 shows the steps followed by the proposed approach to encode the R, G and B components of pixels in a scrambled image. For each pixel, an evolutionary system is constructed from the outputs of a set of 3D chaotic systems. The integers in the evolutionary system are then varied by a number of cross-over and mutation operations controlled by a set of one-dimensional logistic systems. Finally, an integer is selected for each component of the pixel from the integers in the evolutionary system and the component is encoded by an integer key computed from the selected integer.
The decryption of a cipher image can be performed in two steps. In the first step, the evolutionary system used for the encoding of each pixel is constructed and the corresponding cross-over and mutation operations are applied to the integers in the system. The integers selected for encoding the R, G and B components are obtained from the system and the components of the pixel in the scrambled image are computed from the selected integers. In the second step, the virtual image used for the scrambling process in encryption is constructed and pixels are grouped by columns in the virtual image. A reversed bit-shuffling operation is performed to reset the R, G and B components of pixels for each group. In the third step, pixels are grouped by rows in the virtual image and a reversed bit-shuffling operation is performed to reset the R, G and B components of pixels for each group. The resulting image is the plain image decrypted from the given cipher image.

2.1. The Bit-Level Scrambling Process

Let I ( m , n , 3 ) be a plain color image that contains m rows and n columns; the R, G and B components of the pixel in the j th row and k th column are denoted by I ( j , k , 1 ) , I ( j , k , 2 ) and I j , k , 3 , respectively, where 1 j m and 1 k n hold for integers j and k. A bit-level scrambling of I considers the binary bits in the R, G and B components of all pixels in I and changes the location of each bit in the image, the resulting image S ( m , n , 3 ) is a scrambled image of I .

2.1.1. Virtual Image

As the first step of the scrambling process, a virtual image V ( p , q , 3 ) is generated from I , where q is a given integer that satisfies 2 q m n / 2 and p = m n / q holds for p. V is obtained from I by a mapping Ψ that associates each pixel in I with a pixel in V . Specifically, for each pair of integers ( j , k ) where 1 j m and 1 k n hold, Ψ maps the pixel in the j th row and k th column in I to a pixel in row R j , k and column C ( j , k ) in V , where R ( j , k ) and C ( j , k ) are determined based on Equations (1) and (2).
R j , k = 1 , i f   j = 1   a n d   k = 1 j 1 n + k 1 q , o t h e r w i s e
C j , k = j 1 n + k 1   m o d   q + 1
In addition, the following equations hold for each pair of integers ( j , k ) where j and k satisfy 1 j m and 1 k n .
V R j , k , C j , k , 1 = I ( j , k , 1 )
V R j , k , C j , k , 2 = I ( j , k , 2 )
V R j , k , C j , k , 3 = I ( j , k , 3 )

2.1.2. Scrambling Based on Rows in the Virtual Image

It is clear from Equations (1) and (2) that row p in V may contain less than q pixels mapped from I . For each integer h that satisfies 1 h p , let r h be the number of mapped pixels in row h of V ; row h in V is assigned a positive integer k h for scrambling. k h is required to be coprime with 24 q for 1 h < p and k p must be coprime with 24 r p .
For each integer h that satisfies 1 h p , the 8-bit binary representations of the R, G and B components of the pixels in row h of V are sequentially combined into an array of 24 r h binary bits. Specifically, let B h be the array of binary bits constructed for row h and l be an integer that satisfies 1 l r h ; the binary bits from positions 24 l 1 + 1 through to 24 l 1 + 8 in B h are the 8-bit binary representation of V ( h , l , 1 ) . Similarly, the binary bits from positions 24 l 1 + 9 through to 24 l 1 + 16 in B h are the 8-bit binary representation of V ( h , l , 2 ) and the binary bits from positions 24 l 1 + 17 through to 24 l in B h are the 8-bit binary representation of V ( h , l , 3 ) . The order of bits in B h is changed for each integer h that satisfies 1 h p to complete the row-based scrambling operation.
Let s be an integer that satisfies 1 s 24 r h ; B h ( s ) denotes the s th bit in B h . B h ( s ) is relocated to position t in B h , where t is determined from k h and r h based on Equation (6).
t = s 1 k h + 2 k h 1 m o d   24 r h + 1
Since k h is coprime with 24 r h , no two bits in B h are relocated to the same position in B h . Otherwise, there exists two different integers s 1 and s 2 that satisfy 1 s 1 24 r h and 1 s 2 24 r h , and are relocated to the same position based on Equation (6). This implies that Equation (7) holds for s 1 and s 2 .
s 1 s 2 k h = 24 r h u
where u is an integer. Since k h is coprime with 24 r h , Equation (7) implies that 24 r h is a factor of s 1 s 2 . However, due to the fact that 0 < s 1 s 2 < 24 r h holds, 24 r h cannot be a factor of s 1 s 2 , which is a contradiction. This implies that no such pair of integers exists and a relocation of all bits in B h can be performed based on Equation (6). Figure 3a shows the pseudocode for scrambling the binary bits of pixels in row h of the virtual image.
After all bits in B h have been relocated, the R, G and B components of pixels in row h of V are reset based on B h . Specifically, for each integer l that satisfies 1 l r h , the 8-bit binary representation of V ( h , l , 1 ) is reset to be the binary bits from positions 24 l 1 + 1 through to 24 l 1 + 8 in B h . Similarly, the 8-bit binary representation of V ( h , l , 2 ) is reset to be the binary bits from positions 24 l 1 + 9 through to 24 l 1 + 16 in B h , and the 8-bit binary representation of V ( h , l , 3 ) is reset to be the binary bits from positions 24 l 1 + 17 through to 24 l in B h .

2.1.3. Scrambling Based on Columns in the Virtual Image

Similarly, Equations (4) and (5) suggest that a column in V may contain p or p 1 pixels mapped from I . For each integer d that satisfies 1 d q , c d denotes the number of mapped pixels in column d of V . A positive integer w d is assigned to column d in V and w d must satisfy the requirement that it is coprime with 24 c d .
For each integer d such that 1 d q holds, an array of 24 c d binary bits is constructed from a sequential combination of the 8-bit binary representations for the R, G and B components of the pixels in column d of V . Specifically, D d denotes the array of binary bits obtained from pixels in column d ; for integer v that satisfies 1 v c d , the 8-bit binary representation of V ( v , d , 1 ) is placed in positions 24 v 1 + 1 through to 24 v 1 + 8 of D d . Similarly, the 8-bit binary representation of V ( v , d , 2 ) is placed in positions 24 v 1 + 9 through to 24 v 1 + 16 of D d and the 8-bit binary representation of V ( v , d , 3 ) is placed in positions 24 v 1 + 17 through to 24 v of D d . A complete column-based scrambling operation changes the location of each bit in D d for each integer d that satisfies 1 d q .
Let g be an integer that satisfies 1 g 24 c d and D d ( g ) be the g th bit in D d . The location of D d ( g ) is changed to position y in D d , where y is determined from w d and c d based on Equation (8).
y = g 1 w d + 2 w d 1 m o d   24 c d + 1
Based on an argument similar to the one presented in Section 2.1.2, no two bits in D d are relocated to the same position in D d due to the fact that w d is coprime with 24 c d . Equation (8) thus generates a relocation of all bits in D d . Figure 3b shows the pseudocode for scrambling the binary bits of pixels in column d of the virtual image.
After the locations of all bits in D d have been changed, D d is used to reset the R, G and B components of pixels in column d of V . For each integer v that satisfies 1 v c d , the binary bits from positions 24 v 1 + 1 through to 24 v 1 + 8 in D d are assigned to V ( v , d , 1 ) , the binary bits from positions 24 v 1 + 9 through to 24 v 1 + 16 in D d are assigned to V ( v , d , 2 ) and the binary bits from positions 24 l 1 + 17 through to 24 l in D d are assigned to V ( v , d , 3 ) . A scrambled image S ( m , n , 3 ) is obtained for I ( m , n , 3 ) after the column-based scrambling operation is completed. In practice, the operations in the scrambling process can be performed multiple times to further improve the security of encryption.

2.1.4. Recover a Plain Image from Its Scrambled Image

Let q be the number of columns in the virtual image used to scramble the plain image in encryption. The virtual image V ( p , q , 3 ) used for the scrambling of the plain image is constructed from S , where p = m n / q . For each pair of integers ( j , k ) where 1 j m and 1 k n hold, the pixel that corresponds to ( j , k ) in V is obtained from S based on Equations (9)–(11).
V R j , k , C j , k , 1 = S ( j , k , 1 )
V R j , k , C j , k , 2 = S ( j , k , 2 )
V R j , k , C j , k , 3 = S ( j , k , 3 )
where R ( j , k ) and C ( j , k ) are obtained based on Equations (1) and (2).
For each integer d that satisfies 1 d q , let c d be the number of mapped pixels in column d of V and w d be the integer key associated with column d in V for scrambling. A sequential combination of the 8-bit binary representations for the R, G and B components of the pixels in column d of S are performed to construct an array D d of 24 c d binary bits. Specifically, for each integer v that satisfies 1 v c d , the binary bits in positions 24 v 1 + 1 through to 24 v 1 + 8 of D d are the 8-bit binary representation of S ( v , d , 1 ) , the binary bits in positions 24 v 1 + 9 through to 24 v 1 + 16 of D d are the 8-bit binary representation of S ( v , d , 2 ) , and the binary bits in positions 24 v 1 + 17 through to 24 v of D d are the 8-bit binary representation of S ( v , d , 3 ) .
Figure 4a shows the pseudocode for recovering the binary bits in column d of the virtual image. For each integer g such that 1 g 24 c d holds, an integer y is determined from w d and c d using Equation (8). The location of D d ( y ) is changed to position g in D d . After the locations of all bits in D d are changed, D d is used to reset the R, G and B components of pixels in column d of V . For each integer v that satisfies 1 v c d , V ( v , d , 1 ) is set to be the value of the binary bits from positions 24 v 1 + 1 through to 24 v 1 + 8 in D d , V ( v , d , 2 ) is set to be the value of the binary bits from positions 24 v 1 + 9 through to 24 v 1 + 16 in D d and V ( v , d , 3 ) is set to be the value of the binary bits from positions 24 v 1 + 17 through to 24 v in D d .
For each integer h that satisfies 1 h p , let r h be the number of mapped pixels in row h of V and k h be the integer key associated with row h for scrambling. The 8-bit binary representations of the R, G and B components of the pixels in row h of V are sequentially combined into an array B h of 24 r h binary bits. Specifically, for each integer l that satisfies 1 l r h , the binary bits from positions 24 l 1 + 1 through to 24 l 1 + 8 in B h are set to be the 8-bit binary representation of V ( h , l , 1 ) , the binary bits from positions 24 l 1 + 9 through to 24 l 1 + 17 in B h are set to be the 8-bit binary representation of V ( h , l , 2 ) and the binary bits from positions 24 l 1 + 17 through to 24 l in B h are the 8-bit binary representation of V ( h , l , 3 ) .
Figure 4b shows the pseudocode for recovering the binary bits in row h of the virtual image. For each integer that satisfies 1 s 24 r h , an integer t is determined from k h and r h based on Equation (6), and B h ( t ) is relocated to position s in B h . After all bits in B h have been relocated, the R, G and B components of pixels in row h of V are reset based on B h . For each integer l that satisfies 1 l r h , the value of the binary bits from positions 24 l 1 + 1 through to 24 l 1 + 8 in B h is assigned to V ( h , l , 1 ) , the value of the binary bits from positions 24 l 1 + 9 through to 24 l 1 + 16 in B h is assigned to V ( h , l , 2 ) and the value of the binary bits from positions 24 l 1 + 17 through to 24 l in B h is assigned to V ( h , l , 3 ) . The plain image can be obtained after the pixels in V have been reset.

2.2. Encoding a Scrambled Image

2.2.1. A 3D Chaotic System

Recently, a new 3D chaotic system is proposed in [43]. The system is formulated in spherical coordinates, and it is shown in [43] that four hidden attractors and three unstable equilibrium points exist for the system. The hidden attractors include two limit cycles and two strange attractors. One of the strange attractors is inside a sphere of radius 7.0 and the other one is outside the sphere. A description of the system in spherical coordinates is shown in Equation (12).
ρ ˙ = ρ φ 7 φ θ ˙ = β θ 2 + φ 2 φ ˙ = ρ 2 + α θ 2 + 14 ρ + φ 49
where ρ , φ and θ are the radial distance, polar angle and azimuthal angle, respectively. The simulation results show that the system demonstrates a chaotic behavior when parameters α and β are set to be 3.0 and 1.0, respectively. A more detailed analysis of the dynamical properties of the system can be found in [43].

2.2.2. The Evolutionary System for Encryption

The encryption of a scrambled image is based on an evolutionary system constructed based on a set of 3D chaotic systems described by Equation (9) with different initial values. Let b be a positive integer and I 1 = { ρ 1,0 , ρ 2,0 , , ρ b , 0 } , I 2 = { θ 1,0 , θ 2,0 , , θ b , 0 } and I 3 = φ 1,0 , φ 2,0 , φ b , 0 be three number sets that contain the initial values for b different 3D chaotic systems K 1 , K 2 , , K b . Specifically, for integer i such that 1 i b holds, ρ i , 0 , θ i , 0 and φ i , 0 are the initial values of ρ , θ and φ for system K i . For the pixel in row j and column k in S ( m , n , 3 ) , let L = j 1 n + k 1 ; three sets of integers E 1,0 = { X 1 , L , X 2 , L , , X b , L } , E 2,0 = { Y 1 , L , Y 2 , L , , Y b , L } and E 3,0 = { Z 1 , L , Z 2 , L , , Z b , L } can be obtained with Equation (13).
X i , L = M × | x i , L |   m o d   256 Y i , L = M × | y i , L |   m o d   256 Z i , L = M × | z i , L |   m o d   256
where i is an integer that satisfies 1 i b and M is a large positive integer; x i , L , y i , L and z i , L are computed based on Equation (14).
x i , L = ρ i , L c o s θ i , L s i n φ i , L y i , L = ρ i , L s i n θ i , L s i n φ i , L z i , L = ρ i , L c o s φ i , L
where ρ i , L , θ i , L and φ i , L are the outputs of K i at time L t , given ρ i , 0 , θ i , 0 and φ i , 0 as its initial values for ρ , θ and φ , respectively. t is a positive constant.
The integer sets E 1,0 , E 2,0 and E 3,0 together form the initial configuration of the evolutionary system for encoding the pixel in row j and column k in S ( m , n , 3 ) . The integers in E 1,0 , E 2,0 and E 3,0 are changed by a series of cross-over and mutation operations controlled by a set of one-dimensional logistic systems; the resulting sets are denoted by E 1 , f , E 2 , f and E 3 , f . The integer keys for the encoding of S ( j , k , 1 ) , S ( j , k , 2 ) and S j , k , 3 are computed based on integers selected from E 1 , f , E 2 , f and E 3 , f , respectively.

2.2.3. The Cross-Over Operation

A cross-over operation for the evolutionary system is controlled by a set of one-dimensional logistic systems. A logistic system is defined by an initial value l 0 and the recursion relation shown in Equation (15).
l i + 1 = 4 l i 1 l i
where i is a positive integer. A well-known fact is that the logistic system defined in Equation (15) is a one-dimensional chaotic system when l 0 satisfies 0 < l 0 < 1 [44]. The system defined in Equation (15) generates a sequence of numbers l 1 , l 2 , , l N , for a given initial value l 0 . Due to the chaotic property of the system, a tiny amount of change in l 0 would lead to a significantly different l N if N is a large enough integer.
Three one-dimensional logistic systems with different initial values are needed to complete a cross-over operation. The initial values of the three one-dimensional logistic systems are denoted by l 1,0 , l 2,0 and l 3,0 . For the pixel in row j and column k in S ( m , n , 3 ) , three sets of integers V 1,0 = { u 1 , L , u 2 , L , , u b , L } , V 2,0 = { v 1 , L , v 2 , L , , v b , L } and V 3,0 = { z 1 , L , z 2 , L , , z b , L } can be obtained based on Equation (16).
u i , L = M 0 × l 1 , L b + i 1   m o d   7 + 1 v i , L = M 0 × l 2 , L b + i 1   m o d   7 + 1 z i , L = M 0 × l 3 , L b + i 1   m o d   7 + 1
where M 0 is a large positive integer and l 1 , L b + i 1 , l 2 , L b + i 1 and l 3 , L b + i 1 are the L b + i 1 th elements in the chaotic number sequences generated from Equation (15) with l 1,0 , l 2,0 and l 3,0 as the initial values, respectively.
The cross-over operation is performed based on V 1,0 , V 2,0 and V 3,0 . In addition, three positive integer keys g 1 , g 2 and g 3 are needed to determine the pairs of integers where the cross-over operations need to be performed in V 1,0 , V 2,0 and V 3,0 , respectively. g 1 , g 2 and g 3 are all coprime with b .
To perform the cross-over operation on E 1,0 , for each integer e that satisfies 1 e b , X e , L is paired with X a 1 , L for cross-over, where a 1 is determined by Equation (17).
a 1 = e 1 g 1 + 2 g 1 1   m o d   b + 1
Based on u e , L , two new integers X e , L and X a , L are generated by Equations (18) and (19).
X e , L = X e , L / 2 u e , L + X a 1 , L   m o d   2 u e , L
X a , L = X a 1 , L / 2 u e , L + X e , L   m o d   2 u e , L
As the result of the cross-over operation, X e , L is replaced by X e , L and X a 1 , L is replaced by X a 1 , L .
The cross-over operation on E 2,0 is performed with a similar method. For each integer e that satisfies 1 e b , a pair between Y e , L and Y a 2 , L is formed for cross-over, and a 2 is obtained from Equation (20).
a 2 = e 1 g 2 + 2 g 2 1   m o d   b + 1
Two new integers Y e , L and Y a 2 , L are obtained from v e , L by Equations (21) and (22).
Y e , L = Y e , L / 2 v e , L + Y a 2 , L   m o d   2 v e , L
Y a 2 , L = Y a 2 , L / 2 v e , L + Y e , L   m o d   2 v e , L
The cross-over operation replaces Y e , L by Y e , L and Y a 2 , L is replaced by Y a 2 , L .
Similarly, the cross-over operation on E 3,0 is performed on integer pairs formed based on g 3 . For each integer e such that 1 e b holds, an integer pair is generated between Z e , L and Z a 3 , L for cross-over, and a 3 is computed based on Equation (23).
a 3 = e 1 g 3 + 2 g 3 1   m o d   b + 1
Two new integers Z e , L and Z a 3 , L are determined from z e , L by Equations (24) and (25).
Z e , L = Z e , L / 2 z e , L + Z a 3 , L   m o d   2 z e , L
Z a 3 , L = Z a 3 , L / 2 z e , L + Z e , L   m o d   2 z e , L
The cross-over operation substitutes Z e , L and Z a 3 , L with Z e , L and Z a 3 , L , respectively. Figure 5a shows the pseudocode for a cross-over operation.

2.2.4. The Mutation Operation

Let E 1 , c = { X 1 , L , X 2 , L , , X b , L } , E 2 , c = { Y 1 , L , Y 2 , L , , Y b , L } and E 3 , c = { Z 1 , L , Z 2 , L , , Z b , L } be the integer sets generated from E 1,0 , E 2,0 and E 3,0 by a cross-over operation. A mutation operation performs a rotational right shift on each integer in E 1 , c , E 2 , c and E 3 , c . The number of bit positions by which the shift is performed for an integer is determined by a set of three one-dimensional logistic systems. Let m 1,0 , m 2,0 and m 3,0 be the initial values of the three logistic systems; three sets of integers M 1,0 = { h 1 , L , h 2 , L , , h b , L } , M 2,0 = { s 1 , L , s 2 , L , , s b , L } and M 3,0 = { t 1 , L , t 2 , L , , t b , L } are generated based on Equation (26) for the pixel in row j and column k in S ( m , n , 3 ) .
h i , L = N 0 × m 1 , L b + i 1   m o d   7 + 1 s i , L = N 0 × m 2 , L b + i 1   m o d   7 + 1 t i , L = N 0 × m 3 , L b + i 1   m o d   7 + 1
where N 0 is a large positive integer and m 1 , L b + i 1 , m 2 , L b + i 1 and m 3 , L b + i 1 are the L b + i 1 th elements in the chaotic number sequences obtained from Equation (15) using m 1,0 , m 2,0 and m 3,0 as the initial values, respectively.
Integers in M 1,0 , M 2,0 and M 3,0 provide the number of bit positions by which each integer in E 1 , c , E 2 , c and E 3 , c needs to be rotationally shifted to complete the mutation operation. For each integer e such that 1 e b holds, X e , L , Y e , L and Z e , L are rotationally shifted to the right by h e , L , s e , L and t e , L bit positions, respectively. In other words, X e , L , Y e , L and Z e , L are replaced by X ~ e , L , Y ~ e , L and Z ~ e , L generated by Equations (27), (28) and (29), respectively. The resulting integer sets in the evolutionary system are denoted by E 1 , f , E 2 , f and E 3 , f . Figure 5b shows the pseudocode for a mutation operation.
X ~ e , L = X e , L / 2 h e , L + ( X e , L   m o d   2 h e , L ) 2 8 h e , L
Y ~ e , L = Y e , L / 2 s e , L + Y e , L   m o d   2 s e , L 2 8 s e , L
Z ~ e , L = Z e , L / 2 t e , L + ( Z e , L   m o d   2 t e , L ) 2 8 t e , L

2.2.5. Encoding of Pixels

An integer is selected from each of the three integer sets E 1 , f = { X ~ 1 , L , X ~ 2 , L , , X ~ b , L } , E 2 , f = { Y ~ 1 , L , Y ~ 2 , L , , Y ~ b , L } and E 3 , f = { Z ~ 1 , L , Z ~ 2 , L , , Z ~ b , L } to generate integer keys that can encode the pixel in row j and column k in S ( m , n , 3 ) . The selection is controlled by a one-dimensional logistic system with an initial value of s 0 ; three integers c 1 , L , c 2 , L and c 3 , L are obtained based on Equation (30) for the pixel in row j and column k in S ( m , n , 3 ) .
c 1 , L = N 1 × s 3 L   m o d   b + 1 c 2 , L = N 1 × s 3 L + 1   m o d   b + 1 c 3 , L = N 1 × s 3 L + 2   m o d   b + 1
where N 1 is a large positive integer and s 3 L , s 3 L + 1 and s 3 L + 2 are the 3 l th, 3 l + 1 th and 3 l + 2 th elements, respectively, in the chaotic number sequences obtained from Equation (15) using an initial value of s 0 .
Let C ( m , n , 3 ) be the cipher image obtained from S ( m , n , 3 ) ; the integer keys used to encode S ( j , k , 1 ) , S ( j , k , 2 ) and S ( j , k , 3 ) are denoted by I k ( j , k , 1 ) , I k ( j , k , 2 ) and I k ( j , k , 3 ) , respectively. I k ( j , k , 1 ) , I k ( j , k , 2 ) and I k ( j , k , 3 ) are obtained based on Equation (31).
I k j , k , 1 = H j , k X ~ c 1 , L , L   m o d   256 I k j , k , 2 = H j , k Y ~ c 2 , L , L   m o d   256 I k j , k , 3 = H j , k X ~ c 3 , L , L   m o d   256
where H j , k is 1 when j = 1 and k = 1 ; otherwise, H j , k = v = 1 3 C ( j p , k p , v ) , where j p and k p can be computed from j and k with Equations (32) and (33).
j p = 1 , i f   j = 1   a n d   k = 2 j 1 n + k 2 n , o t h e r w i s e
k p = j 1 n + k 2   m o d   q + 1
Finally, C ( i , j , 1 ) , C ( i , j , 2 ) and C ( i , j , 3 ) are determined from Equation (34).
C j , k , 1 = S ( j , k , 1 ) I k ( j , k , 1 ) C j , k , 2 = S ( j , k , 2 ) I k ( j , k , 2 ) C j , k , 2 = S ( j , k , 3 ) I k ( j , k , 3 )
Equations (31)–(33) show that the encryption keys I k ( j , k , 1 ) , I k ( j , k , 2 ) and I k ( j , k , 3 ) are dependent on the encrypted image contents associated with the pixel in row j p and column k p . This fact suggests that the proposed approach is plain-image-sensitive. In practice, the security of encryption can be further enhanced by applying the encoding process multiple times.

2.2.6. Decoding a Cipher Image

The scrambled image of a cipher image can be obtained based on the initial values of the 3D chaotic systems used to construct the evolutionary system for encoding and the initial values of the one-dimensional logistic systems that control the evolutionary system during the encoding.
Let C ( m , h , 3 ) be a cipher image. I 1 = { ρ 1,0 , ρ 2,0 , , ρ b , 0 } , I 2 = { θ 1,0 , θ 2,0 , , θ b , 0 } and I 3 = { φ 1,0 , φ 2,0 , φ b , 0 } are the sets of initial values for the b 3D chaotic systems; l 1,0 , l 2,0 and l 3,0 are the initial values of the logistic systems for cross-over operations; m 1,0 , m 2,0 and m 3,0 are the initial values of the logistic systems for mutation operations; and s 0 is the initial value of the logistic system that selects integers from the evolutionary system for computing the encoding keys.
To decode the pixel in row j and column k in C ( m , h , 3 ) , Equations (13) and (14) are used to obtain three integer sets E 1,0 = { X 1 , L , X 2 , L , , X b , L } , E 2,0 = { Y 1 , L , Y 2 , L , , Y b , L } and E 3,0 = { Z 1 , L , Z 2 , L , , Z b , L } that together constitute the evolutionary system. A cross-over operation is then applied to E 1,0 , E 2,0 and E 3,0 as described in Section 2.2.3 to obtain three integer sets E 1 , c = { X 1 , L , X 2 , L , , X b , L } , E 2 , c = { Y 1 , L , Y 2 , L , , Y b , L } and E 3 , c = { Z 1 , L , Z 2 , L , , Z b , L } . The operations described in Section 2.2.4 are applied to E 1 , c , E 2 , c and E 3 , c to complete the mutation operation and three integer sets E 1 , f = { X ~ 1 , L , X ~ 2 , L , , X ~ b , L } , E 2 , f = { Y ~ 1 , L , Y ~ 2 , L , , Y ~ b , L } and E 3 , f = { Z ~ 1 , L , Z ~ 2 , L , , Z ~ b , L } are obtained as the result. Based on E 1 , f , E 2 , f and E 3 , f , Equations (30)–(33) are utilized to generate I k ( j , k , 1 ) , I k ( j , k , 2 ) and I k ( j , k , 3 ) , which are the encoding keys for the pixel. S ( i , j , 1 ) , S ( i , j , 2 ) and S ( i , j , 3 ) are obtained based on Equation (35).
S j , k , 1 = C ( j , k , 1 ) I k ( j , k , 1 ) S j , k , 2 = C ( j , k , 2 ) I k ( j , k , 2 ) S j , k , 2 = C ( j , k , 3 ) I k ( j , k , 3 )

2.3. Computational Complexity

For a plain color image that contains m rows and n columns, a virtual image for scrambling can be constructed in O ( m n ) time. The bit-level scrambling based on rows and columns of a virtual image can be accomplished in O ( m n ) time. The scrambling process of the proposed approach thus needs O ( m n ) time.
The encoding process encodes each pixel in a scrambled image with an evolutionary system that contains 3 b integers. A cross-over operation can be performed in O ( b ) time and the computation time needed for a mutation operation is O ( b ) . The encoding of a scrambled image thus requires O ( b m n ) time. Therefore, the computation time needed for the encryption of an image is O ( b m n ) .
In practice, it is often desirable to perform the scrambling and encoding processes multiple times. For an encryption process that scrambles a plain image for n s times and encodes the scrambled image for n e times, a total amount of O ( n s + n e b m n ) computation time is needed to complete the encryption.

3. Results

A computer program has been created to implement the proposed approach in MATLAB and its encryption security has been analyzed based on the cipher images generated for seven benchmark images and 100 color images selected from the BSD500 dataset [42]. In addition, a comparison of the proposed approach with several state-of-the-art encryption methods is performed based on a number of security measures. Other approaches tested for comparison are the methods proposed in [7,20,28,38,43,44,45,46,47,48,49]. In the testing, an evolutionary system that contains five 3D chaotic systems is constructed to encode pixels in a scrambled image. A value of 10 12 is chosen for integers M , M 0 , N 0 and N 1 .

3.1. Brutal Force Attacks

The robustness of an encryption method against brutal force attacks can be evaluated based on the size of its key space. A larger key space usually implies stronger robustness against brutal force attacks. In the scrambling process of the proposed approach, each row or column in a virtual image is associated with an integer key for bit-level scrambling. Let Z 1 be the size of the integer set where a key for a row or column can be selected, for a virtual image with p rows and q columns, Z 1 p + q different combinations exist for the integer keys utilized in scrambling process. In the encoding process, Z 2 3 d + 7 different combinations exist for the initial values of d 3D chaotic systems and seven one-dimensional logistic systems;  Z 2 is the size of the set of real numbers where the initial value for a chaotic system can be selected.
The key space of the proposed approach is thus Z 1 p + q Z 2 3 d + 7 . For a plain color image that contains at least 10 4 pixels, the value of p + q is at least 2 p q 200 . When five 3D chaotic systems are used for the encryption of such an image, the key space size is at least Z 1 200 Z 2 22 . In practice, both Z 1 > 2 10 and Z 2 > 2 60 hold, and the key space size for a cipher image of the image is thus at least 2 3320 .
Table 1 shows the key space sizes of a few encryption methods, including the proposed approach and several other state-of-the-art approaches. It is evident from Table 1 that the proposed approach has a key space size larger than those of the other encryption methods and its robustness against brutal force attacks is thus higher than that of the other methods.

3.2. Statistical Attacks

The proposed approach is applied to seven popular benchmark images for encryption and an analysis is performed on the obtained cipher images to evaluate the overall strength of the approach against potential statistical attacks. Five of the seven benchmark images, including Lena, Airplane, Fruits, Peppers and Baboon, have a size of 512 × 512 while the other two benchmark images, including Monarch and Girl, have a size of 768 × 512. The seven testing benchmark images are shown in Figure 6a–g.

3.2.1. Analysis of Histograms

The cipher image obtained by the proposed approach for each benchmark image is shown in Figure 7a–g. It is clear from Figure 7 that the image contents in a plain image are completely removed from its cipher image and all cipher images appear to be highly random.
The histograms of the R, G and B components in the cipher images of the benchmark images are shown in Figure 8a–c. It can be seen from Figure 8 that the R, G and B components in cipher images all follow near-uniform distributions and the histograms of a cipher image do not contain information related to the image contents in its plain image.
An important measure often used to evaluate the uniformity of a histogram is the variance of histograms [33]. Histogram P contains a counting value for each integer between 0 and 255. The variance of histogram V a r ( P ) of P is calculated by Equation (36).
V a r P = 1 2 n 2 i = 1 n j = 1 n ( p i p j ) 2
where n = 256 is the number of counting values in P . p i and p j are the counting values associated with integers i and j in P . Equation (36) clearly shows that histograms with lower values of variances of histograms generally are closer to a uniform distribution.
The variances of histograms for the cipher images are calculated and compared with those obtained with several other encryption methods, including methods proposed in [22,33,48,49]. The results of the comparison are shown in Table 2. Table 2 clearly shows that the proposed approach achieves the lowest value for variances of histograms on Airplane, Fruits and Monarch and it ranks the second position on Lena and Baboon. The results in Table 2 suggest that the overall performance of the proposed approach on the variances of histograms is better than that of the other methods.

3.2.2. Analysis of Correlations

A well-known fact is that strong correlations usually exist between pixels that are spatially close in a plain color image. Such correlations are often closely associated with the contents contained in a plain image and thus need to be reduced to values close to zero when encryption is complete. In general, the correlations among pixels that are adjacent in horizontal, vertical, diagonal and anti-diagonal directions in a cipher image are used as important measures on its strength over potential statistical attacks. The correlations between adjacent pixels in the above four directions in Lena and its cipher image are plotted based on 3000 pixels randomly chosen from the images. Figure 9a–c show the plots obtained for the R, G and B components of pixels in Lena. Figure 10a–c show the plots obtained on its cipher image.
The correlations for pixels adjacent in the four directions have been obtained for all benchmark images and their cipher images; these are shown in Table 3. Table 3 suggests that the correlations between pixels adjacent in a cipher image reach values close to zero. This fact ensures that cipher images generated with the proposed approach cannot be deciphered by statistical attacks. The correlations for the R components of pixels adjacent in cipher images obtained with several different methods on Lena are compared in Table 4. The results in Table 4 suggest that the proposed approach can achieve a performance comparable with other state-of-the-art encryption methods on eliminating local correlations in cipher images.

3.3. Differential Attacks

The strength of an encryption approach over differential attacks is generally evaluated by its sensitivities to tiny changes in encryption keys and plain image. The Number of Pixels Change Rate (NPCR) and unified average changing intensity (UACI) are two measures often used to evaluate such sensitivities [22,35,40,52].
Given a plain image I with m rows and n columns, a set of keys for encryption and the resulting cipher image C e 1 , C e 2 is the cipher image generated after one of the keys in the key set, or one of the R, G and B components in one pixel in I is changed by a tiny amount. The NPCR and UACI for component t are calculated by Equations (37) and (38), respectively.
N t = i = 1 m j = 1 n X ( i , j , t ) m n
U t = i = 1 m j = 1 n | C e 1 i , j , t C e 2 i , j , t | 255 m n
where X i , j , t is an integer that depends on a comparison between C e 1 i , j , t and C e 2 ( i , j , t ) , its value is 1 if C e 1 i , j , t and C e 2 ( i , j , t ) are different and is 0 otherwise. In an ideal case, NPCR has a value of 99.6094 and UACI has a value of 33.4635.
To evaluate the key sensitivity of the proposed approach, a perturbation of 10 16 is applied to the initial values of the chaotic systems used for the encoding process; the values of NPCR and UACI for the R, Gand B components are calculated with Equations (36) and (37) for each testing benchmark image. Table 5 shows the values of key sensitivity NPCR and UACI obtained for each testing benchmark image. It can be seen from Table 5 that, for all components, the values of key sensitivity NPCR and UACI obtained on all testing images are close to their ideal values.
The results in Table 5 suggest that the mean key sensitivity NPCR of the proposed approach is larger than 99.6100 and its mean key sensitivity UACI is close to 33.4571. In [52], values of 99.5893, 99.5810 and 99.5717 are established for NPCR randomness tests at levels 0.05, 0.01 and 0.001, respectively; the proposed approach thus passes the NPCR randomness tests for all three levels. Similarly, in [52], lower bound values 33.3730, 33.3445 and 33.3115 are established along with upper bound values 33.5541, 33.5826 and 33.6156 for UACI randomness tests at levels 0.05, 0.01 and 0.001, respectively. Since the mean UACI of the proposed approach is close to 33.4571, it also passes the UACI randomness tests for all three levels.
Table 6 shows the values of key sensitivity NPCR and UACI obtained with the proposed approach and several other encryption methods on Lena. It is evident from Table 6 that the mean value of key sensitivity NPCR of the proposed approach is 99.6133 on Lena and its mean value of key sensitivity UACI is 33.4600. Since the ideal values for NPCR and UACI are 99.6064 and 33.4635, respectively, the proposed approach has the best overall performance on key sensitivities.
To evaluate the plain image sensitivity of the proposed approach, a pixel is randomly selected from a plain image and one of its R, G and B components is changed by 1. The cipher image of the resulting image is then compared with that of the original image; the NPCR and UACI for each component can then be calculated based on Equations (36) and (37).
The NPCR and UACI values for plain image sensitivity of the proposed approach on the testing images are shown in Table 7. The proposed approach can achieve a mean NPCR of 99.6147 and a mean UACI of 33.4457. Due to the fact that values of 99.5893, 99.5810 and 99.5717 are associated with levels 0.05, 0.01 and 0.001, respectively, for NPCR randomness tests [52], the proposed approach is able to pass the NPCR randomness tests for all three levels. In addition, since the UACI randomness tests at levels 0.05, 0.01 and 0.001 adopt values 33.3730, 33.3445 and 33.3115 for lower bounds and values 33.5541, 33.5826 and 33.6156 for upper bounds, respectively [52], the proposed approach passes the random tests at all levels for UACI. Table 8 compares the plain image sensitivity values obtained with the proposed approach and those of several other encryption methods on Lena. Table 8 clearly suggests that the proposed approach achieves a mean value of NPCR 99.6200 on Lena for plain image sensitivity and its mean value of plain image sensitivity UACI is 33.4567. The overall performance of the proposed approach is thus the best of all tested methods on plain image sensitivities.

3.4. Analysis of Information Entropy

Information entropy is a measure often utilized to represent the randomness of a cipher image. Specifically, let C ( m , n , 3 ) be a cipher image. Equation (39) is used to calculate the information entropy associated with the t th component of C ( m , n , 3 ) .
E C , t = i = 0 255 d i , C , t log 2 d ( i , C , t )
where d ( i , C , t ) is the probability that the t th component of a pixel is i . Since a uniform distribution has an entropy of 8.0, the information entropy for each component in an ideally encrypted image is 8.0.
The information entropies of the R, G and B components in cipher images generated with the proposed approach are shown in Table 9. It can be seen from Table 9 that the information entropies for cipher images obtained by the proposed approach are all nearly ideal.
The information entropies of the cipher images generated with the proposed approach and several other encryption methods on Lena are shown in Table 10. Table 10 clearly suggests that the proposed approach achieves the highest entropies for components R and B and ranks the second position on component G. Its overall performance on Lena is thus the same as that of the approach proposed in [37] and better than that of the other tested methods.

3.5. Analysis of Peak Noise Signal Ratio

The Peak Signal Noise Ratio (PSNR) provides a measure for the difference between a cipher image and its plain image. A higher PSNR value thus often suggests higher security for a cipher image [22]. The PSNR for a cipher image C ( m , n , 3 ) is calculated based on its plain color image I ( m , n , 3 ) with Equations (40) and (41).
M S E I , C = i = 1 m j = 1 n t = 1 3 | I i , j , t C i , j , t | 2
P S N R I , C = 20 log 10 255 3 m n M S E ( I , C )
The PSNR values of the cipher images generated by the proposed approach and several other encryption approaches on testing images are shown in Table 11. It is clear from Table 11 that the overall performance of the proposed approach on PSNR is comparable to that of the method in [28] and is higher than that of the other tested methods.

3.6. Experimental Results on General Color Images

In addition to benchmark color images, the proposed approach is applied to encrypt 100 color images selected from the BSD500 dataset [42]. All tested images are of size 481 × 321. Its overall performance on the encryption of these images is compared with that of the methods proposed in [22,28,33,38]. Table 12 shows the means and standard deviations of the cipher images generated by the proposed approach and several other encryption methods. It is clear from Table 12 that the proposed approach outperforms the methods proposed in [22,33,38] on the variance of histograms. However, Table 12 suggests that the method in [28] is slightly better than the proposed approach on variances of histograms. Since the method in [28] optimizes the uniformity of the histograms of all components in cipher images with particle swarm optimization [53], it is not surprising that it can obtain cipher images with higher uniformity for histograms.
Table 13 compares the entropies of the cipher images obtained with the proposed approach and the other tested methods. Table 13 suggests that the proposed approach achieves the highest mean entropies for cipher images. Information on the PSNRs of the cipher images obtained with all tested methods is shown in Table 14. It can be seen from Table 14 that the proposed approach slightly outperforms all other methods in PSNR.
A comparison of the key sensitivities of the proposed approach with those of other tested methods is shown in Table 15. It is clear from Table 15 that the proposed approach can achieve mean values of NPCR and UACI closest to their ideal values. Table 16 compares the plain image sensitivities of all tested methods. The mean values of NPCR and UACI in Table 16 suggest that the overall plain image sensitivities of the proposed approach are slightly higher than those of the other tested methods.
The computational efficiency of each tested method is evaluated based on the computation time needed by the method to encrypt a color image. Table 17 shows information on the amount of computation time each method requires to generate a cipher image. Table 17 clearly shows that the computational efficiency of the proposed approach is comparable with that of the other methods.

4. Discussion

Although the proposed approach has been tested on a few benchmark images and general color images, additional experimental results are needed to evaluate its overall performance on general color images. Moreover, the virtual image in the scrambling process is constructed based on a pixel-level mapping, which can partially reorder the pixels in the image before the bit-level scrambling operations are performed. However, virtual images constructed based on bit-level mappings can separate bits in the same pixel well apart before the scrambling starts; scrambled images generated based on such virtual images thus may contain less information on the contents of their plain images. In addition, more sophisticated operations can possibly be developed for the evolutionary system to further improve the security of cipher images.
It is clear from Section 2 that the proposed approach may require a large number of keys to generate a cipher image. The encryption of images with large sizes thus could be computationally inefficient. In addition, the randomness of the chaotic systems used in the proposed approach may need to be further improved to enhance the security of cipher images.
A multi-dimension discrete chaotic map with excellent ergodicity and randomness is proposed in [54] for image encryption. The proposed approach can probably be combined with the chaotic map proposed in [54] for further improvement in security. Moreover, continuous chaotic systems proposed in [55] can be used with parameter perturbation to enhance randomness.
The proposed approach utilizes a set of randomly selected fixed keys for encryption and the round keys are obtained with modular operations. The method proposed in [56] can possibly be utilized to eliminate the potential weaknesses in the key expansion method used in the proposed approach.

5. Conclusions

In this paper, a new approach is proposed for the encryption of color images. The approach performs encryption in two phases. In the first phase, binary bits in the R, G and B components of pixels in a plain color image are scrambled based on the rows and columns of a virtual image constructed from the plain image. In the second phase, an evolutionary system controlled by a set of chaotic systems is utilized to generate the integer keys needed to encode the R, G and B components of pixels in a scrambled image. An analysis on the size of key space and testing results suggest that cipher images generated by the proposed approach are secure against various types of attacks. In addition, comparisons of the proposed approach with several other state-of-the-art approaches on a variety of security measures show that its overall performance is better than that of the other tested encryption methods.

Author Contributions

Conceptualization, X.M. and Y.S.; methodology, Y.S.; software, X.M.; validation, X.M. and Y.S.; formal analysis, X.M.; investigation, Y.S.; resources, Y.S.; data curation, X.M.; writing—original draft preparation, X.M.; writing—review and editing, Y.S.; visualization, X.M.; supervision, Y.S.; project administration, Y.S.; All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Data Availability Statement

The source code of the computer program developed in this study is available from the corresponding author upon request.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Kanso, A.; Ghebleh, M. An algorithm for encryption of secret images into meaningful images. Opt. Lasers Eng. 2017, 90, 196–208. [Google Scholar] [CrossRef]
  2. Alvarez, G.; Li, S.J. Some basic cryptographic requirements for chaos-based cryptosystem. Int. J. Bifurcat. Chaos 2006, 16, 2129–2151. [Google Scholar] [CrossRef] [Green Version]
  3. Chen, G.; Mao, Y.; Chui, C.K. A symmetric image encryption scheme based on 3D chaotic cat maps. Chaos Solitons Fractals 2004, 21, 749–761. [Google Scholar] [CrossRef]
  4. Huang, C.K.; Nien, H.H. Multi chaotic systems based pixel shuffle for image encryption. Opt. Commun. 2009, 282, 2123–2127. [Google Scholar] [CrossRef]
  5. Liu, Z.; Xu, L.; Lin, C.; Dai, J.; Liu, S. Image encryption scheme by using iterative random phase encoding in gyrator transform domains. Opt. Lasers Eng. 2011, 49, 542–546. [Google Scholar] [CrossRef]
  6. Wang, Y.; Wong, K.W.; Liao, X.; Chen, G. A new chaos-based fast image encryption algorithm. Appl. Soft Comput. J. 2011, 11, 514–522. [Google Scholar] [CrossRef]
  7. Zhang, G.; Liu, Q. A novel image encryption method based on total shuffling scheme. Opt. Commun. 2011, 284, 2775–2780. [Google Scholar] [CrossRef]
  8. Zhu, Z.L.; Zhang, W.; Wong, K.W.; Yu, H. A chaos based symmetric image encryption scheme using a bit-level permutation. Inf. Sci. 2011, 181, 1171–1186. [Google Scholar] [CrossRef]
  9. Guo, Q.; Liu, Z.; Liu, S. Color image encryption by using Arnold and discrete fractional random transforms in IHS space. Opt. Lasers Eng. 2010, 48, 1174–1181. [Google Scholar] [CrossRef]
  10. Tao, R.; Meng, X.Y.; Wang, Y. Image encryption with multiorders of fractional fourier transforms. IEEE Trans. Inf. Forensics Secur. 2010, 5, 734–738. [Google Scholar] [CrossRef]
  11. Wang, X.Y.; Yang, L.; Liu, R.; Kadir, A. A chaotic image encryption algorithm based on perceptron model. Nonlinear Dyn. 2010, 62, 615–621. [Google Scholar] [CrossRef]
  12. Zhao, X.Y.; Chen, G. Ergodic matrix in image encryption. In Proceedings of the 2nd International Conference on Image and Graphics, Boston, MA, USA, 31 July 2002; Volume 4875, pp. 394–401. [Google Scholar]
  13. Toughi, S.; Fathi, M.H.; Sekhavat, Y.A. An image encryption scheme based on elliptic curve pseudo random and advanced encryption system. Signal Process. 2017, 141, 217–227. [Google Scholar] [CrossRef]
  14. Zunino, R. Fractal circuit layout for spatial decorrelation of images. Electron. Lett. 1998, 34, 1929–1930. [Google Scholar] [CrossRef]
  15. Cao, W.; Zhou, Y.; Chen, C.L.P.; Xia, L. Medical image encryption using edge maps. Signal Process. 2017, 132, 96–109. [Google Scholar] [CrossRef]
  16. Liu, Z.; Chen, H.; Liu, T.; Li, P.; Xu, L.; Dai, J.; Liu, S. Image encryption by using gyrator transform and Arnold transform. J. Electron. Imaging 1993, 2, 345–351. [Google Scholar] [CrossRef]
  17. Mirzaei, M.Y.; Irani, H. A new image encryption method: Parallel sub-image encryption with hyper chaos. Nonlinear Dyn. 2012, 67, 557–566. [Google Scholar] [CrossRef]
  18. Kumar, M.; Iqbal, A.; Kumar, P. A new RGB image encryption algorithm based on DNA encoding and elliptic curve Diffie-Hellman cryptography. Signal Process. 2016, 125, 187–202. [Google Scholar] [CrossRef]
  19. Zahid, A.H.; Al-Solami, E.; Ahmad, M. A Novel Modular Approach Based Substitution-Box Design for Image Encryption. IEEE Access 2020, 8, 150326–150340. [Google Scholar] [CrossRef]
  20. Chen, J.; Zhu, Z.; Zhang, L.; Zhang, Y.; Yang, B. Exploiting self-adaptive permutation-diffusion and DNA random encoding for secure and efficient image encryption. Signal Process. 2018, 142, 340–353. [Google Scholar] [CrossRef]
  21. Ye, G.; Pan, C.; Dong, Y.; Shi, Y.; Huang, X. Image encryption and hiding algorithm based on compressive sensing and random numbers insertion. Signal Process. 2020, 172, 107563. [Google Scholar] [CrossRef]
  22. Jithin, K.C.; Sankar, S. Colour image encryption algorithm combining Arnold map, DNA sequence operation, and a Mandelbrot set. J. Inf. Secur. Appl. 2020, 50, 102428. [Google Scholar] [CrossRef]
  23. Bao, W.; Zhu, C. A secure and robust image encryption algorithm based on compressive sensing and DNA coding. Multim. Tools Appl. 2022, 81, 15977–15996. [Google Scholar] [CrossRef]
  24. Durdu, A. Nested Two-Layer RGB Based Reversible Image Steganography Method. Inf. Technol. Control. 2021, 50, 264–283. [Google Scholar] [CrossRef]
  25. Liu, H.; Wang, X. Color image encryption based on one-time keys and robust chaotic maps. Comput. Math. Appl. 2010, 59, 3320–3327. [Google Scholar] [CrossRef] [Green Version]
  26. Song, Y.; Song, J.; Qu, J. A secure image encryption algorithm based on multiple one-dimensional chaotic systems. In Proceedings of the 2016 2nd IEEE International Conference on Computer and Communications, Chengdu, China, 14–17 October 2016; pp. 584–588. [Google Scholar]
  27. Lu, Q.; Yu, L.; Zhu, C. Symmetric Image Encryption Algorithm Based on a New Product Trigonometric Chaotic Map. Symmetry 2022, 14, 373. [Google Scholar] [CrossRef]
  28. Adeel, M.; Song, Y. Secure Encryption of Color Images with Chaotic Systems and Particle Swarm Optimization. Iran J. Sci. Technol. Trans. Electr. Eng. 2022, 46, 847–872. [Google Scholar] [CrossRef]
  29. Sundara Krishnan, K.; Rajia, S.P.; Jaison, B. A Symmetric Key Multiple Color Image Cipher Based on Cellular Automata, Chaos Theory and Image Mixing. Inf. Technol. Control 2021, 50, 55–75. [Google Scholar] [CrossRef]
  30. Ramasamy, P.; Ranganathan, V.; Kadry, S.; Damaševičius, R.; Blažauskas, T. An Image Encryption Scheme Based on Block Scrambling, Modified Zigzag Transformation and Key Generation Using Enhanced Logistic—Tent Map. Entropy 2019, 21, 656. [Google Scholar] [CrossRef] [Green Version]
  31. Wang, X.Y.; Zhang, Y.Q.; Bao, X.M. A novel chaotic image encrypytion scheme using DNA sequence operations. Opt. Lasers Eng. 2015, 73, 53–61. [Google Scholar] [CrossRef]
  32. Hu, T.; Liu, Y.; Gong, L.H.; Guo, S.F.; Yuan, H.M. Chaotic image cryptosystem using DNA deletion and DNA insertion. Signal Process. 2017, 134, 234–243. [Google Scholar] [CrossRef]
  33. Liu, L.; Wang, D.; Lei, Y. An image encryption scheme based on hyper chaotic system and DNA with fixed secret keys. IEEE Access 2020, 8, 46400–46416. [Google Scholar] [CrossRef]
  34. Zhang, Q.; Guo, L.; Wei, X. A novel image fusion encryption algorithm based on DNA sequence operation and hyper-chaotic system. Optik 2013, 124, 3596–3600. [Google Scholar] [CrossRef]
  35. Guesmi, R.; Farah, M.A.B.; Kachouri, A.; Samet, M. A novel chaos-based image encryption using DNA sequence operation and secure hash algorithm SHA-2. Nonlinear Dyn. 2016, 83, 1123–1136. [Google Scholar] [CrossRef]
  36. Li, X.; Wang, L.; Yan, Y.; Liu, P. An improvement color image encryption algorithm based on DNA operations and real and complex chaotic systems. Optik 2016, 127, 2558–2565. [Google Scholar] [CrossRef]
  37. Xian, Y.; Wang, X. Fractal sorting matrix and its application on chaotic image encryption. Inf. Sci. 2021, 547, 1154–1169. [Google Scholar] [CrossRef]
  38. Cai, S.; Huang, L.; Chen, X.; Xiong, X. A symmetric plaintext-related color image encryption system based on bit permutation. Entropy 2018, 20, 282. [Google Scholar] [CrossRef] [Green Version]
  39. Hua, Z.; Zhu, Z.; Yi, S.; Zhang, Z.; Huang, H. Cross-plane colour image encryption using a two-dimensional logistic tent modular map. Inf. Sci. 2021, 546, 1063–1083. [Google Scholar] [CrossRef]
  40. Belazi, A.; EI-Latif, A.A.A.; Belghith, S. A novel image encryption scheme based on substitution-permutation network and chaos. Signal Process. 2016, 128, 155–170. [Google Scholar] [CrossRef]
  41. Zhang, Y.Q.; Wang, X.Y.; Liu, J.; Chi, Z.L. An image encryption scheme based on the MLNCML system using DNA sequences. Opt. Lasers Eng. 2016, 82, 95–103. [Google Scholar] [CrossRef]
  42. Arbelaez, P.; Maire, M.; Fowlkes, C.; Malik, J. Contour detection and hierarchical image segmentation. IEEE Trans. Pattern Anal. Mach. Intell. 2011, 33, 898–916. [Google Scholar] [CrossRef] [Green Version]
  43. Pak, C.; Huang, L. A new color image encryption using combination of the 1d chaotic map. Signal Process. 2017, 138, 129–137. [Google Scholar] [CrossRef]
  44. Fu, C.; Huang, J.B.; Wang, N.N.; Hou, Q.B.; Lei, W.M. A symmetric chaos-based image cipher with an improved bit-level permutation strategy. Entropy 2014, 16, 770–788. [Google Scholar] [CrossRef]
  45. Ganesan, K.; Murali, K. Image encryption using eight dimensional chaotic cat map. Eur. Phys. J. Spec. Top. 2014, 223, 1611–1622. [Google Scholar] [CrossRef]
  46. Murillo-Escobar, M.A.; Cruz-Hernández, C.; Abundiz-Pérez, F.; López-Gutiérrez, R.M.; Campo, O.R.A.D. A RGB image encryption algorithm based on total plain image characteristics and chaos. Signal Process. 2015, 109, 119–131. [Google Scholar] [CrossRef]
  47. Mollaeefar, M.; Sharif, A.; Nazari, M. A novel encryption scheme for colored image based on high level chaotic maps. Signal Process. 2015, 76, 1–23. [Google Scholar] [CrossRef]
  48. Li, C.; Luo, G.; Qin, K.; Li, C. An image encryption scheme based on chaotic tent map. Nonlinear Dyn. 2017, 87, 127–133. [Google Scholar] [CrossRef]
  49. Wu, J.; Liao, X.; Yang, B. Image encryption using 2D Hénon-sine map and DNA approach. Signal Process. 2018, 153, 11–23. [Google Scholar] [CrossRef]
  50. Veeman, D.; Mehrabbeik, M.; Natiq, H.; Rajagopal, K.; Jafari, S.; Hussain, I. A New Chaotic System with Coexisting Attractors. Int. J. Bifurc. Chaos 2022, 32, 2230007. [Google Scholar] [CrossRef]
  51. Edward, O. Chaos in Dynamical Systems, 2nd ed.; Cambridge University Press: Cambridge, UK, 2003. [Google Scholar]
  52. Yue, W.; Noonan, J.P.; Agaian, S. NPCR and UACI randomness tests for image encryption. Cyber J. 2011, 2011, 31–38. [Google Scholar]
  53. Eberhart, R.C.; Kennedy, J. A new optimizer using particle swarm theory. In Proceedings of the 6th International Symposium on Micro Machine and Human Science, Nagoya, Japan, 13–16 March 1995; pp. 39–43. [Google Scholar]
  54. Liu, H.; Kadir, A.; Xu, C. Color image encryption with cipher feedback and coupling chaotic map. Int. J. Bifurc. Chaos 2020, 30, 2050173. [Google Scholar] [CrossRef]
  55. Liu, H.; Kadir, A.; Liu, J. Color pathological image encryption algorithm using arithmetic over galois field and coupled hyper chaotic system. Opt. Lasers Eng. 2019, 122, 123–133. [Google Scholar] [CrossRef]
  56. Liu, H.; Wang, X.; Zhao, M.; Niu, Y. Constructing strong s-box by 2d chaotic map with application to irreversible parallel key expansion. Int. J. Bifurc. Chaos 2022, 32, 2250163. [Google Scholar] [CrossRef]
Figure 1. Steps in the scrambling process of the proposed approach.
Figure 1. Steps in the scrambling process of the proposed approach.
Entropy 25 00631 g001
Figure 2. Steps in the encoding process of the proposed approach.
Figure 2. Steps in the encoding process of the proposed approach.
Entropy 25 00631 g002
Figure 3. Pseudocodes for scrambling. (a) Scrambling the binary bits of pixels in row h in the virtual image; (b) scrambling the binary bits of pixels in column d in the virtual image.
Figure 3. Pseudocodes for scrambling. (a) Scrambling the binary bits of pixels in row h in the virtual image; (b) scrambling the binary bits of pixels in column d in the virtual image.
Entropy 25 00631 g003
Figure 4. Pseudocodes for the recovery of a plain image from its scrambled image. (a) Recovering the binary bits of pixels in column d in the virtual image; (b) recovering the binary bits of pixels in row h in the virtual image.
Figure 4. Pseudocodes for the recovery of a plain image from its scrambled image. (a) Recovering the binary bits of pixels in column d in the virtual image; (b) recovering the binary bits of pixels in row h in the virtual image.
Entropy 25 00631 g004
Figure 5. Pseudocodes for the cross-over and mutation operations. (a) Cross-over operation; (b) mutation operation.
Figure 5. Pseudocodes for the cross-over and mutation operations. (a) Cross-over operation; (b) mutation operation.
Entropy 25 00631 g005
Figure 6. Benchmark images used for testing. (a) Lena; (b) Airplane; (c) Fruits; (d) Peppers; (e) Baboon; (f) Girl; (g) Monarch.
Figure 6. Benchmark images used for testing. (a) Lena; (b) Airplane; (c) Fruits; (d) Peppers; (e) Baboon; (f) Girl; (g) Monarch.
Entropy 25 00631 g006
Figure 7. Cipher images obtained for benchmark images. (a) For Lena; (b) for Airplane; (c) for Fruits; (d) for Peppers; (e) for Baboon; (f) for Girl; (g) for Monarch.
Figure 7. Cipher images obtained for benchmark images. (a) For Lena; (b) for Airplane; (c) for Fruits; (d) for Peppers; (e) for Baboon; (f) for Girl; (g) for Monarch.
Entropy 25 00631 g007
Figure 8. Histograms of the R, G and B components in the cipher images. From upper left to lower right: Lena, Airplane, Fruits, Peppers, Baboon, Girl and Monarch; (ac) show the histograms of the R, G and B components, respectively.
Figure 8. Histograms of the R, G and B components in the cipher images. From upper left to lower right: Lena, Airplane, Fruits, Peppers, Baboon, Girl and Monarch; (ac) show the histograms of the R, G and B components, respectively.
Entropy 25 00631 g008aEntropy 25 00631 g008bEntropy 25 00631 g008c
Figure 9. Correlations in the R, G and B components in Lena. From left to right: horizontal, vertical, diagonal and anti-diagonal; (ac) show the correlations in the R, G and B components, respectively.
Figure 9. Correlations in the R, G and B components in Lena. From left to right: horizontal, vertical, diagonal and anti-diagonal; (ac) show the correlations in the R, G and B components, respectively.
Entropy 25 00631 g009aEntropy 25 00631 g009b
Figure 10. Correlations in different directions for all components in the cipher image of Lena. From left to right: horizontal, vertical, diagonal and anti-diagonal; plots of correlations in R, G and B components are shown in (ac), respectively.
Figure 10. Correlations in different directions for all components in the cipher image of Lena. From left to right: horizontal, vertical, diagonal and anti-diagonal; plots of correlations in R, G and B components are shown in (ac), respectively.
Entropy 25 00631 g010aEntropy 25 00631 g010b
Table 1. The key space sizes of the proposed approach and several other encryption methods.
Table 1. The key space sizes of the proposed approach and several other encryption methods.
MethodsSize of Key Space
The proposed 2 3320
Ref. [28] 2 2092
Ref. [20] 2 199
Ref. [38] 2 170
Ref. [50] 2 138
Ref. [44] 2 241
Ref. [7] 2 104
Ref. [45] 2 128
Ref. [46] 2 128
Ref. [47] 2 128
Table 2. The variance of histograms for cipher images obtained with the proposed approach and several other encryption methods.
Table 2. The variance of histograms for cipher images obtained with the proposed approach and several other encryption methods.
ImagesThe ProposedRef. [22]Ref. [33]Ref. [48]Ref. [49]
Lena1040.391047.401054.781043.211027.59
Airplane1082.831132.271268.021141.381103.16
Fruits951.941026.511034.231013.321082.34
Peppers1146.231046.251037.781105.72946.67
Baboon1024.291098.64901.221061.041058.13
Girl1536.501513.421543.231620.121530.21
Monarch1409.301564.391607.511653.271563.72
Table 3. The correlations for the R, Gand B components of pixels adjacent in four directions in the testing benchmark images and their cipher images obtained with the proposed approach.
Table 3. The correlations for the R, Gand B components of pixels adjacent in four directions in the testing benchmark images and their cipher images obtained with the proposed approach.
ImagesDirectionsPlain ImageCipher Image
RGBRGB
LenaV0.97530.96660.93340.0019−0.0013−0.0006
H0.98530.98020.95580.0028−0.00010.0022
D0.97340.96300.9264−0.00110.0024−0.0010
A0.96480.95360.91980.00020.0010−0.0030
AirplaneV0.97260.95780.9640−0.00060.0017−0.0001
H0.95680.96780.93530.00160.0011−0.0013
D0.93430.93260.9146−0.00020.00130.0034
A0.93500.93000.9075−0.00130.00300.0020
FruitsV0.99360.98550.9265−0.0007−0.0025−0.0030
H0.99280.98480.9192−0.00220.0006−0.0004
D0.98970.97830.8809−0.00270.0013−0.0020
A0.98680.96940.85310.0024−0.0005−0.0005
PeppersV0.96350.98110.9665−0.00030.00230.0006
H0.96630.98170.9664−0.0004−0.00090.0021
D0.95630.96860.9477−0.00090.00160.0022
A0.95850.97080.94770.0020−0.00090.0034
BaboonV0.92350.86680.90670.00210.00060.0012
H0.87400.77590.88440.0011−0.0002−0.0029
D0.86490.74320.85440.0024−0.0034−0.0023
A0.86700.74940.8540−0.00160.00370.0004
GirlV0.98110.98870.9866−0.0019−0.0012−0.0004
H0.99010.99370.99270.00130.0014−0.0002
D0.97500.98480.98230.0017−0.00370.0024
A0.97720.98580.9832−0.00190.00210.0035
MonarchV0.96480.95230.95661.7 × 10−5−4.5 × 10−5−0.0018
H0.95970.94530.95060.0020−0.00180.0009
D0.94500.92520.93090.00160.00310.0014
A0.92450.89840.91180.0003−8.7 × 10−6−0.0036
Table 4. The correlations for pixels adjacent in horizontal (H), vertical (V) and diagonal (D) directions in the cipher images of Lena obtained with the proposed approach and several other encryption methods. The best values are shown in bold.
Table 4. The correlations for pixels adjacent in horizontal (H), vertical (V) and diagonal (D) directions in the cipher images of Lena obtained with the proposed approach and several other encryption methods. The best values are shown in bold.
ApproachesHVD
The proposed0.00280.0019−0.0011
Ref. [28]0.0023−0.00200.0013
Ref. [38]0.0046−0.00280.0014
Ref. [51]0.0027−0.00130.0039
Ref. [33]0.00120.00350.0056
Ref. [20]−0.0026−0.00380.0017
Ref. [52]−0.00300.0025−0.0001
Ref. [22]0.00210.0018−0.0026
Table 5. The values of NPCR and UACI in percentage for the key sensitivities of the proposed approach on the R, G and B components of cipher images. The best values are shown in bold.
Table 5. The values of NPCR and UACI in percentage for the key sensitivities of the proposed approach on the R, G and B components of cipher images. The best values are shown in bold.
ImagesNPCR (%)UACI (%)
RGBRGB
Lena99.6199.6099.6333.4533.4233.51
Airplane99.6199.6299.6133.3833.4733.46
Fruits99.6299.6299.6033.3833.4933.45
Peppers99.6199.6299.6133.4833.5033.40
Baboon99.6199.6199.6333.5533.3833.49
Girl99.6199.6199.6133.4733.4533.42
Monarch99.6099.6199.6133.5033.4933.46
Table 6. The values of NPCR and UACI in percentage for the key sensitivities of the proposed approach and several other encryption methods on the R, G and B components of the cipher images of Lena. The best values are shown in bold.
Table 6. The values of NPCR and UACI in percentage for the key sensitivities of the proposed approach and several other encryption methods on the R, G and B components of the cipher images of Lena. The best values are shown in bold.
MethodsNPCR (%)UACI (%)
RGBRGB
The proposed99.6199.6099.6333.4533.4233.51
Ref. [29]99.6299.6299.6233.4833.4533.50
Ref. [40]99.6199.6199.6133.4733.4733.47
Ref. [22]99.5799.5899.5733.3533.3733.38
Ref. [35]99.6099.5999.6133.4533.4533.45
Table 7. The values of NPCR and UACI in percentage for the plain image sensitivities of the proposed approach on the R, G and B components of cipher images. The best values are shown in bold.
Table 7. The values of NPCR and UACI in percentage for the plain image sensitivities of the proposed approach on the R, G and B components of cipher images. The best values are shown in bold.
ImagesNPCR (%)UACI (%)
RGBRGB
Lena99.6299.6299.6233.4733.4333.47
Airplane99.6399.6299.6033.4633.4433.45
Fruits99.6199.6199.6133.4533.4433.48
Peppers99.6299.6399.6133.4633.4233.41
Baboon99.6199.6199.6333.3933.4333.47
Girl99.6099.6299.6133.4233.3933.51
Monarch99.6299.6099.6133.4733.4533.45
Table 8. The values of NPCR and UACI in percentage for the plain image sensitivities of the proposed approach and several other encryption methods on the R, G and B components of the cipher images of Lena. The best values are shown in bold.
Table 8. The values of NPCR and UACI in percentage for the plain image sensitivities of the proposed approach and several other encryption methods on the R, G and B components of the cipher images of Lena. The best values are shown in bold.
MethodsNPCR (%)UACI (%)
RGBRGB
The proposed99.6299.6299.6233.4733.4333.47
Ref. [29]99.6199.6399.6133.4533.4633.45
Ref. [40]99.6099.5899.5933.4433.4333.43
Ref. [22]99.5899.5799.5833.3433.3433.34
Ref. [35]99.5999.6099.5933.3333.3333.33
Table 9. The information entropy for the R, G and B components of pixels in the cipher images of testing images obtained with the proposed approach. The best values are shown in bold.
Table 9. The information entropy for the R, G and B components of pixels in the cipher images of testing images obtained with the proposed approach. The best values are shown in bold.
ImagesRGB
Lena7.99937.99927.9994
Airplane7.99937.99927.9992
Fruits7.99937.99947.9994
Peppers7.99927.99927.9992
Baboon7.99927.99947.9993
Girl7.99957.99967.9995
Monarch7.99967.99967.9996
Table 10. The information entropy for the R, G and B components of pixels in the cipher images of Lena obtained with the proposed approach and several other encryption methods. The best values are shown in bold.
Table 10. The information entropy for the R, G and B components of pixels in the cipher images of Lena obtained with the proposed approach and several other encryption methods. The best values are shown in bold.
MethodsRGB
The proposed7.99937.99927.9994
Ref. [28]7.99927.99927.9992
Ref. [37]7.99927.99937.9994
Ref. [22]7.99927.99927.9992
Ref. [33]7.99767.99767.9976
Table 11. The values of PSNR for the proposed approach and several other encryption methods on all testing images. The best values are shown in bold.
Table 11. The values of PSNR for the proposed approach and several other encryption methods on all testing images. The best values are shown in bold.
ImagesThe ProposedRef. [28]Ref. [22]Ref. [33]Ref. [48]Ref. [49]
Lena83.02283.02181.13180.92781.02781.225
Airplane83.02283.02282.46282.23482.47882.531
Fruits83.02283.02381.02380.83581.14780.632
Peppers83.02283.02182.97183.07382.73583.105
Baboon83.02283.02382.87383.14582.65282.534
Girl84.78384.78284.65384.64184.43784.685
Monarch84.78384.78484.73284.69784.62584.746
Table 12. The means and standard deviations of the variances of histograms for cipher images generated by the proposed approach and several other encryption methods. The best values are shown in bold.
Table 12. The means and standard deviations of the variances of histograms for cipher images generated by the proposed approach and several other encryption methods. The best values are shown in bold.
Components The ProposedRef. [28]Ref. [38]Ref. [22]Ref. [33]
RMean594.79583.19648.91637.28625.53
STD53.7344.2147.5246.7645.94
GMean601.27586.32644.93646.37631.13
STD49.0650.3755.2852.9454.06
BMean617.94607.25666.21663.71656.22
STD45.0689.6198.9196.9295.66
Table 13. The means and standard deviations of the information entropies for the R, G and B components of the cipher images obtained with the proposed approach and other tested encryption methods. The best values are shown in bold.
Table 13. The means and standard deviations of the information entropies for the R, G and B components of the cipher images obtained with the proposed approach and other tested encryption methods. The best values are shown in bold.
MethodsRGB
MeanSTDMeanSTDMeanSTD
The proposed7.99880.00017.99880.00017.99880.0001
Ref. [28]7.99610.00057.99620.00067.99620.0005
Ref. [38]7.99520.00047.99530.00037.99540.0004
Ref. [22]7.99470.00057.99820.00047.99520.0004
Ref. [33]7.99350.00037.99360.00027.99350.0003
Table 14. The means and standard deviations of the PSNRs of the cipher images obtained with the proposed approach and other tested encryption methods. The best value is shown in bold.
Table 14. The means and standard deviations of the PSNRs of the cipher images obtained with the proposed approach and other tested encryption methods. The best value is shown in bold.
MethodsPSNR
MeanSTD
The proposed80.72310.0000
Ref. [28]80.72290.0001
Ref. [38]80.63430.0002
Ref. [22]80.43520.0001
Ref. [33]80.23960.0002
Table 15. The means and standard deviations of key sensitivity NPCRs and UACIs in percentage for all tested methods on the R, G and B components of cipher images. The best values are shown in bold.
Table 15. The means and standard deviations of key sensitivity NPCRs and UACIs in percentage for all tested methods on the R, G and B components of cipher images. The best values are shown in bold.
Methods NPCR (%)UACI (%)
RGBRGB
The proposedMean99.602599.611099.613033.470033.483533.4555
STD0.01520.01550.01300.04390.05890.0867
Ref. [28]Mean99.623399.623199.623233.451233.461533.4513
STD0.02210.02320.01240.10530.07330.1042
Ref. [38]Mean99.600299.600399.600633.431533.432633.4378
STD0.02040.02130.01930.10320.09850.0927
Ref. [22]Mean99.620399.620199.620233.443233.442833.4527
STD0.02250.02130.02040.09230.11210.1027
Ref. [33]Mean99.615299.615199.615333.430233.430133.4415
STD0.02270.02080.01830.09250.08340.1023
Table 16. The means and standard deviations of plain image sensitivity NPCRs and UACIs in percentage for all tested methods on the R, G and B components of cipher images. The best values are shown in bold.
Table 16. The means and standard deviations of plain image sensitivity NPCRs and UACIs in percentage for all tested methods on the R, G and B components of cipher images. The best values are shown in bold.
Methods NPCR (%)UACI (%)
RGBRGB
The proposedMean99.603399.612199.610733.464233.452733.4658
STD0.01010.00980.01250.10170.10320.1073
Ref. [28]Mean99.606299.605399.604433.457333.458233.4535
STD0.00320.00110.00230.11240.10250.1327
Ref. [38]Mean99.584299.583799.584233.443533.448333.4216
STD0.00260.00340.00150.11270.11030.1114
Ref. [22]Mean99.587399.585299.597333.459233.451933.4612
STD0.00150.00260.00310.08330.10150.0954
Ref. [33]Mean99.585199.584299.586233.453233.451833.4526
STD0.00230.00210.00170.09030.08740.1217
Table 17. The means and standard deviations of the computation time each tested method needs to generate a cipher image. The best value is shown in bold.
Table 17. The means and standard deviations of the computation time each tested method needs to generate a cipher image. The best value is shown in bold.
MethodsComputation Time (in Seconds)
MeanSTD
The proposed51.180.52
Ref. [28]202.512.67
Ref. [38]70.570.64
Ref. [22]41.730.21
Ref. [33]35.680.35
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Man, X.; Song, Y. Encryption of Color Images with an Evolutionary Framework Controlled by Chaotic Systems. Entropy 2023, 25, 631. https://doi.org/10.3390/e25040631

AMA Style

Man X, Song Y. Encryption of Color Images with an Evolutionary Framework Controlled by Chaotic Systems. Entropy. 2023; 25(4):631. https://doi.org/10.3390/e25040631

Chicago/Turabian Style

Man, Xinpeng, and Yinglei Song. 2023. "Encryption of Color Images with an Evolutionary Framework Controlled by Chaotic Systems" Entropy 25, no. 4: 631. https://doi.org/10.3390/e25040631

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop