# A Robust and Fast Image Encryption Scheme Based on a Mixing Technique

Authors: Lee Mariel Heucheun Yepdia; Alain Tiedeu; Guillaume Kom
Journal: Security and Communication Networks
 (2021)

---

## Abstract

This paper introduces a new image encryption scheme using a mixing technique as a way to encrypt one or multiple images of different types and sizes. The mixing model follows a nonlinear mathematical expression based on Cramer’s rule. Two 1D systems already developed in the literature, namely, the May-Gompertz map and the piecewise linear chaotic map, were used in the mixing process as pseudo-random number generators for their good chaotic properties. The image to be encrypted was first of all partitioned intoN subimages of the same size. The subimages underwent a block permutation using the May-Gompertz map. This was followed by a pixel-based permutation using the piecewise linear chaotic map. The result of the two previous permutations was divided into 4 subimages, which were then mixed using pseudo-random matrices generated from the two maps mentioned above. Tests carried out on the cryptosystem designed proved that it was fast due to the 1D maps used, robust in terms of noise and data loss, exhibited a large key space, and resisted all common attacks. A very interesting feature of the proposed cryptosystem is that it works well for simultaneous multiple-image encryption.


---

## Body

## 1. Introduction

Volumes of images are produced daily in numerous fields and usually carry confidential information. Cryptography is one of the effective techniques used to protect these images. With the rapid expansion of the internet, new technologies, and sophisticated cryptanalysis, it becomes necessary to design advanced, robust, and efficient image encryption algorithms suitable to secure image transmission. Researchers have then developed a variety of image encryption algorithms in symmetric or asymmetric ways. The most types of modern algorithms developed are based on chaotic systems [1–4], transform domain [5, 6], evolutionary algorithm [7], deoxyribonucleic acid (DNA) sequence [8, 9], and others [10–12].Chaos-based systems have experienced considerable growth as they allow a good level of security. Chaos properties such as ergodicity, randomness and extreme sensitivity to initial conditions, and control parameters make them suitable for carrying out the confusion and diffusion operations required to build robust cryptosystems [13]. In order to design robust encryption algorithms, authors generally combine confusion and diffusion operations that help strengthen the ciphered image by modifying the position and value of the pixels in the target image to make it more confused. It should be noted that some of these cryptosystems require several rounds of permutation and/or diffusion to obtain a robust encrypted image [14–17].In recent years, the patterns of image mixing or fusion-based encryption algorithms have been developed to improve on cryptosystem efficiency. In fact, so far, the majority of image fusion schemes was used as tools for better decision-making in various applications such as location and identification of abnormalities in medical images, location of natural phenomena, and pattern recognition. Image fusion or mixing has been proven to have potential for encryption. Several algorithms in this category combine various target images either through operations in the transform domain or by using chaotic maps in a confusion-diffusion process. For example, Alfalou [13] proposed a fusion and encryption scheme in which an approximated form of discrete cosine transform (DCT) was used at the first stage to combine the secret images into one. In the encryption stage, Henon and skew tent maps were used, respectively, to achieve the confusion and diffusion effects on the pixels of the mixed image. Another encryption scheme has been suggested in [4], where the concepts of pure image element and mixed images are introduced. In this approach, the plain images are combined into a big image which is concatenated into blocks of small sizes named pure image elements, and then the mixed image is obtained after the shuffling and diffusion operations implemented by the piecewise linear chaotic map (PWLCM). This proposed cryptosystem offers good performances against the main attacks (brute-force attack, chosen plain image attack, and chosen cipher attack) but can be improved in terms of time spent when the number of plain images becomes greater in size. In [18], Xianye Li et al. devised a multiple-image encryption method based on a modified logistic map algorithm, compressive ghost imaging, and coordinate sampling. In the encryption process, multiple target images were transformed through the discrete cosine transform and then scrambled by different random sequences from the modified logistic map (MLM). Thereafter, scrambled images were fused into one image with the help of the coordinate sampling matrices. Finally, the ciphered image was obtained from the buck detector of the plane object of the compressive ghost imaging system. While this cryptosystem yielded good results, the key space was not large enough to resist some cryptanalysis attacks as chosen plaintext attack. Isha Mehra and Nishchal [19] worked out an image fusion encryption using wavelets in order to secure multiple images. In this asymmetric algorithm, the image sources were coded in two-phase masks using the principle of interference. They were then merged into a big image by the discrete wavelet transformation. It offered a large key space, which enhanced the system’s security. Another optical image encryption scheme [20] based on the theory of diffraction was developed by Yi Qin et al. This algorithm proceeded in two levels of encryption; the first level consisted of realising the spectral fusion of input images through discrete cosine transformation and the nonlinear operations using the sign matrix. Then, the resultant image was ciphered at the second level by a multiple random-phase encoding process. The proposal offered a large key space and a high quality of decrypted images, but the encrypted images were affected by noise effects. The authors in [21] proposed a multiple-image encryption scheme via the mixed image elements and two-dimensional chaotic economic map (CEM). In this scheme, a set of input images were first grouped into a single image, which was then concatenated into blocks of small size named pure image elements (PIEs). Secondly, logistic map and the chaotic economic map were used to scramble the PIE and diffuse the pixels of the resultant image, respectively. The merit of this algorithm is the fact that, after decryption, the plain images were recovered without significant losses, and the computation time was low.Despite the fact that a number of image mixing-based encryption algorithms were suggested as seen above, some flaws still have to be addressed, of whom many have been detailed in the work by Teh et al. in [22]. For instance, some schemes exhibited reduced key space [11, 23] which in turns affected the encryption robustness. Other setbacks such as a poor mean square error during decryption [19, 24], a high computational time [25, 26], and a lack of sensitivity to the plaintext [20, 27, 28], amongst others, are found. In the same vein, operational problems in cryptosystems can be noticed. For example, after analysing several developed cryptosystems, it appears that, in those which do not perform several rounds of permutation-diffusion, the NPCR value of most encrypted images is evaluated on the first pixel and decreases in value as one moves to the last pixel. Therefore, in order to improve the sensitivity to the plaintext, several authors [29–32] developed cryptosystems operating the chaining modes, such as the cipher block chaining (CBC), cipher feedback (CFB), electronic codebook (ECB), output feedback (OFB), and counter (CTR). These methods must therefore perform several rounds to propagate the values and positions of the pixels of the image to be encrypted, making the encryption time longer. Moreover, they have the disadvantage of propagating error in the encryption process.In order to address some of the above setbacks, a two-stage image encryption algorithm using a mixing technique at the second encryption stage was designed in this study. First, the plain image was subdivided into blocks of small sizes (4 × 4). These blocks were permutated using data sequences from the May-Gompertz map. This block permutation was followed by pixel permutation using coefficients from the PWLCM. The two permutations (at block and pixel levels) represented the first stage. The second stage consisted of a nonlinear relationship based on Cramer’s rule and was performed after one or more iterations to get the encrypted image. Initial conditions and control parameters of the three maps used as pseudo-random number generators (PRNGs) served as the keys for the cryptosystem, while some were made dependent on the plain image through the SHA-256 function. The main advantages of the proposed cryptosystem are listed as follows:(1)
Simple and fast encryption scheme, thanks to the use of 1D maps: the chaotic maps used in this paper are the piecewise linear chaotic map, the May map, and the Gompertz map. All these are one dimensional and have a simple structure. These properties speed up the encryption procedure.(2)
Enhanced security through the use of a combination of 1D maps (May and Gompertz maps): the robustness of chaos-based image encryption (CIE) algorithms depends on how suitable the chaotic map is to build a cryptosystem. This suitability depends on the “level of chaocity” of the map. In this paper, we used two simple and fast maps of lower chaocity that we combined in order to improve the chaotic properties of the resulting map. The combined map leads to a more robust and secure cryptosystem.(3)
Featuring high security against classical attacks: cryptanalyses are based on the extraction of subkeys either from an all-null or all-one image or a significant image and their corresponding encrypted image. These classical attacks (chosen plain image attack and chosen cipher attack) on the proposed cryptosystem do not work because all-null or all-one image will not produce a subkey, but a nonusable linear combination of these subkeys. The attempt to extract the subkeys will give each time more unknown than equations.(4)
Possibility of multiple-image encryption: the proposed cryptosystem permits the encryption of many images at the same time.(5)
The cryptosystem does not allow the error to propagate: the proposed scheme supports noise well as it allows to encrypt an image without error propagation, compared to cryptosystems using chaining modes (CBC, CFB, ECB, OFB, and CTR). For instance, for two image pixels intervening in a two-dimensional Cramer system, an error on one pixel of the input image will affect only one pixel on the output image. So, the error will not be wrapped in a diffusion process.The method is therefore suitable for images that do not tolerate noise propagation, such as medical and military images.The assessment of our cryptosystem was carried out. Included in this paper also is the comparison of the performance of our system versus those of recent publications. The rest of the paper is structured as follows. Section2 presents the chaotic maps used in this work. The key generation process is explained in Section 3, while the proposed encryption algorithm is described in Section 4. Experimental results and algorithm analyses are shown in Section 5.


## 2. Chaotic Maps Used

As indicated above, the level of chaocity of the map used in CIE is critical as far as the security of the scheme is concerned. Generally, when 1D chaotic maps are used in cryptosystems, they are simple and have a fast encryption time, which is an advantage. These cryptosystems are however not robust enough as they can easily be cryptanalyzed due to poor chaocity level of the map. To address this dilemma, some authors have developed new 1D maps with better properties based on some metrics such as Lyapunov exponent, range of the control parameter, and entropy [33–36]. In the same vein, others have suggested to combine a number of 1D maps in order to both improve on the chaocity level and keep the advantage of simplicity and speed [37, 38]. This second approach is what we are going to do in the next section, using May and Gompertz maps.


### 2.1. May-Gompertz System

The May-Gompertz system is obtained by combining May and Gompertz maps. This is done in order to obtain better chaotic properties as compared to the one generated by each map alone. The combination is carried out through the following equation [24]:(1)xn+1=xnexpr+101−xn−r+10xnlogxnmod1,where xn∈0,1 and r∈0,5.The plot of Lyapunov exponents and bifurcation diagram for May and Gompertz maps are presented in Figures1(a)–1(d), while those of the May-Gompertz system are shown in Figures 2(a) and 2(b). By comparison, we can observe that, for May-Gompertz, the output sequence is uniformly distributed within [0, 1] (for Gompertz and May, there are some white strips that indicate chaos discontinuity), while the Lyapunov exponents are all positive with a maximum value of 8.7 (respectively, 0.4 and 0.5 for May and Gompertz).The improvement in chaotic properties as compared to those of the seed maps is therefore obvious. Assets exhibited by this combination which are 1D map (simplicity and speed), a large chaotic range, and a uniform distribution of discrete values are very suitable to build a robust, secure, and fast cryptosystem.Figure 1
(a), (b) Bifurcation diagram and (c), (d) plot of Lyapunov exponents of Gompertz and May maps.
(a)(b)(c)(d)Figure 2
Bifurcation diagram (a) and Lyapunov exponent (b) of May-Gompertz maps.
(a)(b)We can also notice from Table1 that the May-Gompertz system passed the National Institute of Standards and Technology (NIST) tests (SP 800-22rev1a test).Table 1
NIST SP800-22 test for results of the May-Gompertz system in SC and CDC modes.
ModeSCCDCTest indexP valueDecisionP valueDecisionApproximate entropy0.0907Success0.4705SuccessBlock frequency0.9972Success0.7320SuccessCumulative sums0.5263Success0.5462SuccessFast Fourier transform0.1554Success0.2743SuccessFrequency0.0409Success0.9519SuccessRandom excursions0.9896Success0.0905SuccessRandom excursions variable0.7604Success0.6228SuccessLongest runs of ones0.2417Success0.2735SuccessRank0.0528Success0.9754SuccessRuns0.1551Success0.2780SuccessSerial0.5869Success0.4908SuccessUniversal statistical0.9792Success0.8975Success


### 2.2. Piecewise Linear Chaotic Map (PWLCM)

The PWLCM is a 1D system widely used in cryptosystems, thanks to its simplicity and good dynamics. Its density function exhibits a uniform distribution for different values of the control parameter. The PWLM system is described by the following equation [4]:(2)ui+1=uip,0≤ui<p,ui−p0.5−p,p≤ui<0.5,1−uiui≥0.5,where ui∈[0, 1] and p∈[0, 0.5] is the control parameter.Figure3 illustrates the distribution of ui as a function of p for 5000 iterations. As can be seen, the values are uniformly distributed within [0, 1].Figure 3
Distribution ofui with different values of the control parameter p.According to Za [39], the National Institute of Standards and Technology (NIST) tests were applied to the PWLCM sequences. Results revealed that, for 100 binary sequences of length 106 each, the success rate of the test was 94%. The PWLCM can therefore be considered a good pseudo-random number generator. The set of values u1=0.13,0.15,0.17,0.5,0.87,1 which failed the frequency test must not be used as initial conditions.


## 2.1. May-Gompertz System

The May-Gompertz system is obtained by combining May and Gompertz maps. This is done in order to obtain better chaotic properties as compared to the one generated by each map alone. The combination is carried out through the following equation [24]:(1)xn+1=xnexpr+101−xn−r+10xnlogxnmod1,where xn∈0,1 and r∈0,5.The plot of Lyapunov exponents and bifurcation diagram for May and Gompertz maps are presented in Figures1(a)–1(d), while those of the May-Gompertz system are shown in Figures 2(a) and 2(b). By comparison, we can observe that, for May-Gompertz, the output sequence is uniformly distributed within [0, 1] (for Gompertz and May, there are some white strips that indicate chaos discontinuity), while the Lyapunov exponents are all positive with a maximum value of 8.7 (respectively, 0.4 and 0.5 for May and Gompertz).The improvement in chaotic properties as compared to those of the seed maps is therefore obvious. Assets exhibited by this combination which are 1D map (simplicity and speed), a large chaotic range, and a uniform distribution of discrete values are very suitable to build a robust, secure, and fast cryptosystem.Figure 1
(a), (b) Bifurcation diagram and (c), (d) plot of Lyapunov exponents of Gompertz and May maps.
(a)(b)(c)(d)Figure 2
Bifurcation diagram (a) and Lyapunov exponent (b) of May-Gompertz maps.
(a)(b)We can also notice from Table1 that the May-Gompertz system passed the National Institute of Standards and Technology (NIST) tests (SP 800-22rev1a test).Table 1
NIST SP800-22 test for results of the May-Gompertz system in SC and CDC modes.
ModeSCCDCTest indexP valueDecisionP valueDecisionApproximate entropy0.0907Success0.4705SuccessBlock frequency0.9972Success0.7320SuccessCumulative sums0.5263Success0.5462SuccessFast Fourier transform0.1554Success0.2743SuccessFrequency0.0409Success0.9519SuccessRandom excursions0.9896Success0.0905SuccessRandom excursions variable0.7604Success0.6228SuccessLongest runs of ones0.2417Success0.2735SuccessRank0.0528Success0.9754SuccessRuns0.1551Success0.2780SuccessSerial0.5869Success0.4908SuccessUniversal statistical0.9792Success0.8975Success


## 2.2. Piecewise Linear Chaotic Map (PWLCM)

The PWLCM is a 1D system widely used in cryptosystems, thanks to its simplicity and good dynamics. Its density function exhibits a uniform distribution for different values of the control parameter. The PWLM system is described by the following equation [4]:(2)ui+1=uip,0≤ui<p,ui−p0.5−p,p≤ui<0.5,1−uiui≥0.5,where ui∈[0, 1] and p∈[0, 0.5] is the control parameter.Figure3 illustrates the distribution of ui as a function of p for 5000 iterations. As can be seen, the values are uniformly distributed within [0, 1].Figure 3
Distribution ofui with different values of the control parameter p.According to Za [39], the National Institute of Standards and Technology (NIST) tests were applied to the PWLCM sequences. Results revealed that, for 100 binary sequences of length 106 each, the success rate of the test was 94%. The PWLCM can therefore be considered a good pseudo-random number generator. The set of values u1=0.13,0.15,0.17,0.5,0.87,1 which failed the frequency test must not be used as initial conditions.


## 3. Key Generation Procedure

The importance of the key and its confidential nature cannot be overemphasized, knowing that the key is mandatory for decryption. The goal is to design such that the key cannot be computed by an attacker. In the following lines, we describe the key generation technique we devised for the proposed cryptosystem. Initial conditions of May-Gompertz were determined by the SHA-256 function. The key generation process was designed so as to be dependent on hash of the plain image. In fact, the one-time pad scheme guarantees high sensitivity to even the slightest bit change in the image: two images encrypted with a different bit will have different NPCR values [39].Thus, the slightest change of a bit of the image modifies the value of the key, therefore of the random sequence, which is not the case when the key is chosen randomly from a secure pseudo-random number function. This precaution was taken in order to protect the final cryptosystem from attacks. The procedure is as follows. The hash value of the plain image I of size M×N was computed by the SHA-256 function. The 64-hexadecimal digit obtained was divided into 8 sequences of 8 hexadecimal digits each. Let di (i=1,…,8) be these parts. Using equation (3), the values of each part were converted into decimal:(3)hi=hex2decdi,i=1,…,8.To generate three different sequences of the May-Gompertz system described in equation (1), the initial conditionsx01, x02,andx03 and the control parameter r for the three sequences were derived from equation (4). The first sequence was used in the block’s permutation process and the two others in the mixing procedure of the proposed scheme.(4)x01=h1232,x02=h2232,x03=h3/232/h4/2322.The control parameterr of the May-Gompertz system was obtained using the following equation:(5)r=4.9+meanImaxI+1,where meanI and maxI are, respectively, the average and maximum values of the pixel’s intensities of image I.Similarly, the parameters of PWLCM, i.e., the initial conditionsx0, x1 and the control parameters p0, p1, which were used at the second stage of permutation on the pixel level are computed by the following relation:(6)x0=h5232,x1=h6232,p0=h7233,p1=h8233.


## 4. Proposed Encryption Algorithm

The flowchart of the proposed algorithm comprises three main stages which are two permutation steps and the mixing step, illustrated in Figure4. The proposed scheme is designed to encrypt one or several images of different types. In the case where the plain image consists of a single source of information, the permutation at the pixel level is sufficient to perform the confusion operation. On the contrary, when the input image is rather made up of several sources of information (different juxtaposed images), it is necessary to carry out a first level of permutation at the block level in order to reduce the coherence between different source images by generating a noncoherent synthesis image. For this purpose, we have chosen the block permutation of the plain images because it is less time consuming [40–42], increases the disorder in the processed image, and brings the pixels of images that have nothing in common closer to them. In other words, block permutations allow building from several images, a new image that is poorly correlated and visually unusable. On the contrary, this first level of permutation, which yields a composite image, prepares the second phase of permutation which is done at the pixel level. The latter is done to reinforce the visual incoherence of the preprocessed image, i.e., by further increasing the clutter in the image. The third encryption step carried out by the mixing operation contributes to modify the value of the pixels of the swapped image, thus contributing to raise the level of security while preserving the good quality of the source images.Figure 4
Flowchart of the encryption algorithm.In this section, each of the three steps of the proposed scheme is presented and summarized by an algorithm. In order to avoid the transient effect, in each algorithm, the first 300 iterations are discarded for each map used.


### 4.1. Blocks’ Permutation of the Plain Image

The first encryption level is operated by interchanging different subblock’s positions of the plain image with the aim to degrade the visual quality of the image and shuffle different blocks of the image. In a specific way, when the input image is made of various source images combined into one, the block’s permutation performs a mixing process of different components and contributes to make the output image more confused. The block’s permutation process is described in Algorithm1.Algorithm 1: Pseudo-code of block’s permutation.
(1)
Divide the plain imageI of size N×Minto k blocks of size 4×4, with k=N/4×M/4.(2)
Use initial conditionx01 and control parameter r of the May-Gompertz system to generate a chaotic sequence by iterating equation (1) k times. The values obtained are stored in the row vector P of size (1k).(3)
Sort the chaotic sequenceP in the ascending order and get a new sequence P′ = Pi′k  =  Pt1′,Pt2′,…,Ptk′. Therefore, the sequence t1 , t2,…, tk is the permutation of the sequence 1, 2, …, k.(4)
Number all the blocks of the plain image obtained at Step 1, and adjust their positions following the permutations of Step 3. Then, the image obtained is a block permuted image (less correlated).An example of the subdivided image (Step 1) and its permuted blocks (Step 4) of Algorithm1 are shown in Figure 5. We realized that increasing the number of blocks by using smaller block sizes resulted in a lower correlation and higher entropy, and therefore reduction of intelligible information present in the image.Figure 5
Example of the concatenated image and block permutation. (a)256×256 Lena-subdivided 16×16blocks. (b) Lena-permuted blocks.
(a)(b)


### 4.2. Pixels’ Permutation of the Plain Image

This permutation was carried out along rows and columns, as described in Algorithm2.Algorithm 2: Pseudocode of pixels’ permutation.
(1)
Use initial condition and control parameter of the PWLCM,x0,p0 and x1, p1, respectively, in horizontal (row) and vertical (column) directions for pixels’ permutation(2)
Iterate the PWLCM system of equation (2) N times for rows and M times for columns(3)
Take out the values and sort them in the ascending order(4)
For each couple row-column of a pixel’s position, find the previous position of the corresponding row-column of the pseudo-random number-sorted value and substitute(5)
Permute the position of the last pixel of the permuted matrix with the real one


### 4.3. Image Fusion or Mixing

#### 4.3.1. Illustration of the Fusion Procedure

The mixing step consisted in subdividing the image into many subblocks and combining them with random matrices according to a predefined transformation. This transformation was able to modify the values of pixels in the image. In this contribution, the imageI was first of all divided into two subblocks I1 and I2 of same size. The two image blocks were then fused in a process as described in Algorithm 3.Algorithm 3: Pseudo-code of the mixing process.
(1)
Divide the imageI (permuted image) of size N,M into two parts I1 and I2 of the same size. I1=Ii,j and I2=Ii,j+M/2, with i=1,…,Nandj=1,…,M/2.(2)
Choose initial conditionsx02, x03 and control parameter r′ to generate two chaotic sequences XandY by iterating equation (1) of the May-Gompertz system N×M times.(3)
Also, divideXandY, respectively, into two subblocks of the same size (see Figure 6).X=r1,r2,wherer1=Xi,jandr2=Xi,j+M/2,withi=1,…,N;j=1,…,M/2,Y=r3,r4,wherer3=Xi,jandr4=Xi,j+M/2,withi=1,…,N;j=1,…,M/2.The values ofX and Y must be integer values in order to recover all the information during the decryption phase. For the simulations, we have chosen ri=ri×1012i=1,…,4.(4)
Choose initial conditions and control parameters,x0c and p0c, to generate a chaotic sequence W by iterating equation2ofthePWLCMsystem2N×2M times. The values obtained are stored in an array of size 2N,2M.(5)
Subdivide the arrayW into 4 parts, each having the same size of the image I.(6)
Combine the two blocksI1 and I2 of the permuted image using the nonlinear relationship defined by equation (8) to get the ciphered image. C1′=I1×r1+I2×r3mod256⊕floorW1×W2×1015,C2′=I1×r2+I2×r4mod256⊕floorW3×W4×1015,whereC′=C1′,C2′ represents the fused image (encrypted), with C1′=C′i,j and C2′=C′i,j+M/2, i=1,…,N;j=1,…,M/2, and floor(X) rounds the elements of X to the nearest integers.Figure 6
Pseudo-random matricesX and Y of the May-Gompertz system segmented in subblocks.During our experiments, we realized that equation (8) had to be performed twice in order to obtain the best results. Furthermore, this equation (8) can be generalized into a Kramer system of order n by subdividing the permuted image I and the random matrices r and Winto n blocks of equal size as shown by the following relation:(7)C1′⋮Cn′=I11…I1k⋮⋱⋮Il1…Ilk×ri,j⊕floorWi×Wj×1015,where c=C1′,C2′,…,Cn′ and l and k are, respectively, equal to N/4 andM/4, with N,M being the size of image I. The elements Ilk are the subblocks of image I, n=l∗k, i and j are taken arbitrarily in between the sets 1,2,…,l and 1,2,…,k.


#### 4.3.2. Encryption of Multiple Images

A very interesting feature of the proposed cryptosystem is that many images of different types and sizes can be encrypted in one go. It is what we call multiple-image encryption (MIE). So, instead of encrypting images one after another, a number of them can be encrypted simultaneously, resulting in huge time saving.In order to carry out MIE, all the plain imagesBj to be encrypted are fitted into a unique image C (by concatenation) before proper encryption. After the block permutation step, the result is a composite image with subblocks coming from ksources: Ci=B1i∪B2i∪⋯∪Bki. The rest of the procedure is the same. Figure 7 presents an example of the proposed cryptosystem for multiple images. The final encrypted image in this case will be a hybrid image, which contains all relevant information of the image sources. Then, without knowledge of the key, it will be difficult to break the cryptosystem.Figure 7
Example of the block’s permutation process for MIE. (a) Composite image of size 512×512. (b) Image subdivided into blocks of size 32×32. (c) Image after permutation of blocks.
(a)(b)(c)


### 4.4. Decryption Steps

The decryption procedure is the reverse of encryption, and the knowledge of the keys is mandatory for decryption.Let us start from an encrypted imageC:(1)
The permuted image can be recovered by solving equation (10) using Kramer’s rule, whose unknowns are I1 and I2:(8)I1×r1+I2×r3mod256=C1′⊕floorW1×W2×1015I1×r2+I2×r4mod256=C2′⊕floorW3×W4×1015,whereI1=Ii,j and I2=Ii,j+M/2. Then, the permuted image I=I1,I2. The same approach is used if we subdivide I into n subblocks.(2)
The plain image can be recovered after applying the reverse byte permutation and reverse block permutation successively on the image obtained in Step 1.


## 4.1. Blocks’ Permutation of the Plain Image

The first encryption level is operated by interchanging different subblock’s positions of the plain image with the aim to degrade the visual quality of the image and shuffle different blocks of the image. In a specific way, when the input image is made of various source images combined into one, the block’s permutation performs a mixing process of different components and contributes to make the output image more confused. The block’s permutation process is described in Algorithm1.Algorithm 1: Pseudo-code of block’s permutation.
(1)
Divide the plain imageI of size N×Minto k blocks of size 4×4, with k=N/4×M/4.(2)
Use initial conditionx01 and control parameter r of the May-Gompertz system to generate a chaotic sequence by iterating equation (1) k times. The values obtained are stored in the row vector P of size (1k).(3)
Sort the chaotic sequenceP in the ascending order and get a new sequence P′ = Pi′k  =  Pt1′,Pt2′,…,Ptk′. Therefore, the sequence t1 , t2,…, tk is the permutation of the sequence 1, 2, …, k.(4)
Number all the blocks of the plain image obtained at Step 1, and adjust their positions following the permutations of Step 3. Then, the image obtained is a block permuted image (less correlated).An example of the subdivided image (Step 1) and its permuted blocks (Step 4) of Algorithm1 are shown in Figure 5. We realized that increasing the number of blocks by using smaller block sizes resulted in a lower correlation and higher entropy, and therefore reduction of intelligible information present in the image.Figure 5
Example of the concatenated image and block permutation. (a)256×256 Lena-subdivided 16×16blocks. (b) Lena-permuted blocks.
(a)(b)


## 4.2. Pixels’ Permutation of the Plain Image

This permutation was carried out along rows and columns, as described in Algorithm2.Algorithm 2: Pseudocode of pixels’ permutation.
(1)
Use initial condition and control parameter of the PWLCM,x0,p0 and x1, p1, respectively, in horizontal (row) and vertical (column) directions for pixels’ permutation(2)
Iterate the PWLCM system of equation (2) N times for rows and M times for columns(3)
Take out the values and sort them in the ascending order(4)
For each couple row-column of a pixel’s position, find the previous position of the corresponding row-column of the pseudo-random number-sorted value and substitute(5)
Permute the position of the last pixel of the permuted matrix with the real one


## 4.3. Image Fusion or Mixing

### 4.3.1. Illustration of the Fusion Procedure

The mixing step consisted in subdividing the image into many subblocks and combining them with random matrices according to a predefined transformation. This transformation was able to modify the values of pixels in the image. In this contribution, the imageI was first of all divided into two subblocks I1 and I2 of same size. The two image blocks were then fused in a process as described in Algorithm 3.Algorithm 3: Pseudo-code of the mixing process.
(1)
Divide the imageI (permuted image) of size N,M into two parts I1 and I2 of the same size. I1=Ii,j and I2=Ii,j+M/2, with i=1,…,Nandj=1,…,M/2.(2)
Choose initial conditionsx02, x03 and control parameter r′ to generate two chaotic sequences XandY by iterating equation (1) of the May-Gompertz system N×M times.(3)
Also, divideXandY, respectively, into two subblocks of the same size (see Figure 6).X=r1,r2,wherer1=Xi,jandr2=Xi,j+M/2,withi=1,…,N;j=1,…,M/2,Y=r3,r4,wherer3=Xi,jandr4=Xi,j+M/2,withi=1,…,N;j=1,…,M/2.The values ofX and Y must be integer values in order to recover all the information during the decryption phase. For the simulations, we have chosen ri=ri×1012i=1,…,4.(4)
Choose initial conditions and control parameters,x0c and p0c, to generate a chaotic sequence W by iterating equation2ofthePWLCMsystem2N×2M times. The values obtained are stored in an array of size 2N,2M.(5)
Subdivide the arrayW into 4 parts, each having the same size of the image I.(6)
Combine the two blocksI1 and I2 of the permuted image using the nonlinear relationship defined by equation (8) to get the ciphered image. C1′=I1×r1+I2×r3mod256⊕floorW1×W2×1015,C2′=I1×r2+I2×r4mod256⊕floorW3×W4×1015,whereC′=C1′,C2′ represents the fused image (encrypted), with C1′=C′i,j and C2′=C′i,j+M/2, i=1,…,N;j=1,…,M/2, and floor(X) rounds the elements of X to the nearest integers.Figure 6
Pseudo-random matricesX and Y of the May-Gompertz system segmented in subblocks.During our experiments, we realized that equation (8) had to be performed twice in order to obtain the best results. Furthermore, this equation (8) can be generalized into a Kramer system of order n by subdividing the permuted image I and the random matrices r and Winto n blocks of equal size as shown by the following relation:(7)C1′⋮Cn′=I11…I1k⋮⋱⋮Il1…Ilk×ri,j⊕floorWi×Wj×1015,where c=C1′,C2′,…,Cn′ and l and k are, respectively, equal to N/4 andM/4, with N,M being the size of image I. The elements Ilk are the subblocks of image I, n=l∗k, i and j are taken arbitrarily in between the sets 1,2,…,l and 1,2,…,k.


### 4.3.2. Encryption of Multiple Images

A very interesting feature of the proposed cryptosystem is that many images of different types and sizes can be encrypted in one go. It is what we call multiple-image encryption (MIE). So, instead of encrypting images one after another, a number of them can be encrypted simultaneously, resulting in huge time saving.In order to carry out MIE, all the plain imagesBj to be encrypted are fitted into a unique image C (by concatenation) before proper encryption. After the block permutation step, the result is a composite image with subblocks coming from ksources: Ci=B1i∪B2i∪⋯∪Bki. The rest of the procedure is the same. Figure 7 presents an example of the proposed cryptosystem for multiple images. The final encrypted image in this case will be a hybrid image, which contains all relevant information of the image sources. Then, without knowledge of the key, it will be difficult to break the cryptosystem.Figure 7
Example of the block’s permutation process for MIE. (a) Composite image of size 512×512. (b) Image subdivided into blocks of size 32×32. (c) Image after permutation of blocks.
(a)(b)(c)


## 4.3.1. Illustration of the Fusion Procedure

The mixing step consisted in subdividing the image into many subblocks and combining them with random matrices according to a predefined transformation. This transformation was able to modify the values of pixels in the image. In this contribution, the imageI was first of all divided into two subblocks I1 and I2 of same size. The two image blocks were then fused in a process as described in Algorithm 3.Algorithm 3: Pseudo-code of the mixing process.
(1)
Divide the imageI (permuted image) of size N,M into two parts I1 and I2 of the same size. I1=Ii,j and I2=Ii,j+M/2, with i=1,…,Nandj=1,…,M/2.(2)
Choose initial conditionsx02, x03 and control parameter r′ to generate two chaotic sequences XandY by iterating equation (1) of the May-Gompertz system N×M times.(3)
Also, divideXandY, respectively, into two subblocks of the same size (see Figure 6).X=r1,r2,wherer1=Xi,jandr2=Xi,j+M/2,withi=1,…,N;j=1,…,M/2,Y=r3,r4,wherer3=Xi,jandr4=Xi,j+M/2,withi=1,…,N;j=1,…,M/2.The values ofX and Y must be integer values in order to recover all the information during the decryption phase. For the simulations, we have chosen ri=ri×1012i=1,…,4.(4)
Choose initial conditions and control parameters,x0c and p0c, to generate a chaotic sequence W by iterating equation2ofthePWLCMsystem2N×2M times. The values obtained are stored in an array of size 2N,2M.(5)
Subdivide the arrayW into 4 parts, each having the same size of the image I.(6)
Combine the two blocksI1 and I2 of the permuted image using the nonlinear relationship defined by equation (8) to get the ciphered image. C1′=I1×r1+I2×r3mod256⊕floorW1×W2×1015,C2′=I1×r2+I2×r4mod256⊕floorW3×W4×1015,whereC′=C1′,C2′ represents the fused image (encrypted), with C1′=C′i,j and C2′=C′i,j+M/2, i=1,…,N;j=1,…,M/2, and floor(X) rounds the elements of X to the nearest integers.Figure 6
Pseudo-random matricesX and Y of the May-Gompertz system segmented in subblocks.During our experiments, we realized that equation (8) had to be performed twice in order to obtain the best results. Furthermore, this equation (8) can be generalized into a Kramer system of order n by subdividing the permuted image I and the random matrices r and Winto n blocks of equal size as shown by the following relation:(7)C1′⋮Cn′=I11…I1k⋮⋱⋮Il1…Ilk×ri,j⊕floorWi×Wj×1015,where c=C1′,C2′,…,Cn′ and l and k are, respectively, equal to N/4 andM/4, with N,M being the size of image I. The elements Ilk are the subblocks of image I, n=l∗k, i and j are taken arbitrarily in between the sets 1,2,…,l and 1,2,…,k.


## 4.3.2. Encryption of Multiple Images

A very interesting feature of the proposed cryptosystem is that many images of different types and sizes can be encrypted in one go. It is what we call multiple-image encryption (MIE). So, instead of encrypting images one after another, a number of them can be encrypted simultaneously, resulting in huge time saving.In order to carry out MIE, all the plain imagesBj to be encrypted are fitted into a unique image C (by concatenation) before proper encryption. After the block permutation step, the result is a composite image with subblocks coming from ksources: Ci=B1i∪B2i∪⋯∪Bki. The rest of the procedure is the same. Figure 7 presents an example of the proposed cryptosystem for multiple images. The final encrypted image in this case will be a hybrid image, which contains all relevant information of the image sources. Then, without knowledge of the key, it will be difficult to break the cryptosystem.Figure 7
Example of the block’s permutation process for MIE. (a) Composite image of size 512×512. (b) Image subdivided into blocks of size 32×32. (c) Image after permutation of blocks.
(a)(b)(c)


## 4.4. Decryption Steps

The decryption procedure is the reverse of encryption, and the knowledge of the keys is mandatory for decryption.Let us start from an encrypted imageC:(1)
The permuted image can be recovered by solving equation (10) using Kramer’s rule, whose unknowns are I1 and I2:(8)I1×r1+I2×r3mod256=C1′⊕floorW1×W2×1015I1×r2+I2×r4mod256=C2′⊕floorW3×W4×1015,whereI1=Ii,j and I2=Ii,j+M/2. Then, the permuted image I=I1,I2. The same approach is used if we subdivide I into n subblocks.(2)
The plain image can be recovered after applying the reverse byte permutation and reverse block permutation successively on the image obtained in Step 1.


## 5. Experimental Result Analysis

The proposed cryptosystem analysis is presented in this section. Grey and colour images (cameraman, peppers, plane, Lena, and mixture) were used in our database. They were of sizen × m with n = m for some and n ≠ m for others in order to treat all possible cases. These images are displayed in Figure 8. Simulations were carried out using the MATLAB 2016b platform, with a core processor (TM) i7-353U, 2.5 GHz, and a 4.0 GB memory. In order to appreciate the efficiency and robustness of the proposed cryptosystem against the main attacks, many tests (key test, spatial complexity, and encryption time evaluation) and analyses (statistical analysis, differential attack analysis, and security and noise analyses) were performed. The parameters that constitute the key of this cryptosystem were made of the initial conditions and control parameters of the two pseudo-random generators used. The colour Lena 512×512 image was used to compute the hash values with the SHA-256 function.Figure 8
Encryption and decryption results for some plain images: (a) cameraman, (b) peppers, (c) plane, (d) mixture, and (e) Lena. From top to bottom: the input image and its histogram, the encrypted image and its histogram, and the decrypted image.The values of elements of the key used for simulation werex01  = 0.351482953177765; x02  = 0.972970074275508; x03  = 0.144375115865841; r=4.934980827591863;x0  = 0.788; x1 = 0.209; p0 = 0.391; p1 = 0.363; x0c = 0.041; p0c = 0.397; and r′ = 4.728.


### 5.1. Statistical Analysis

Three metrics, namely, histogram, entropy of information, and correlation between adjacent pixels, are used in this section to assess the robustness of the system.


#### 5.1.1. Histogram and Variance of the Histogram

The histogram of an image is a metric, which indicates the frequency of each grey level in the image. For a well-ciphered image, all the frequencies must be uniformly distributed. As one can see in Figure8, the grey levels of the ciphered images (cameraman, peppers, plane, and mixture) look flat as expected. The same result can be confirmed by computing the variance of the histogram as follows [38]:(9)Vary=1n2∑i=1n∑j=1n12yi−yj2,where Y is a one-dimensional array of the histogram values, i,j∈1,2,…,256, and yi and yj denote the numbers of pixel’s values, respectively, equal to i and j. For a sample of images, the values of variance of the histogram of plain and ciphered images are displayed in Table 2, and those of ciphered images differ totally from their corresponding plain images. It is therefore obvious that our cryptosystem is safe from statistical attacks.Table 2
Variance of histograms for plain and ciphered images from the proposed scheme.
ImageCiphered imageCiphered imageProposed scheme[38][37][43]Cameraman (256× 256)5.129×1065347.245482.6——Mixture (512× 512)6.255×1054278.6———Peppers (512× 512)6.892×1065263.5———Plane (900× 600)7.451×1054763.28———Lena (512× 512)6.255×1064148.55450.81050.871077


#### 5.1.2. Correlation Analysis

The correlation coefficientCc measures the strength of the relationship between two adjacent pixels in an image. Cc tends to either 1 or −1 for strong correlation and towards zero for poor correlation. The mean value of the correlation coefficient of a ciphered image for a good cryptosystem should be nearly equal to zero. Equation (12) is used to compute the correlation coefficients in horizontal, vertical, and diagonal directions, respectively [13]:(10)Cc=N×∑i=1NXiYi−∑i=1NXi2×∑i=1NYi2N×∑i=1N∑NXi2−∑i=1NXi2×N×∑i=1NYi2−∑i=1NYi2,where X and Yrepresent the values of two adjacent pixels in the image, Cc belongs to the range [−1, 1], and N denotes the number of pairs of pixels randomly selected. The computed values of correlation coefficient of some plain images in three different directions are shown in Table 3. From this table, we observe that the average value of the correlation coefficients for the plain images is 0.97, which indicates a strong correlation between the adjacent pixels. Conversely, the mean value of correlation coefficients of ciphered images is 0.008, which is an indication of a poor correlation between adjacent pixels as expected. This result can be confirmed by observing Figures 9(a)–9(c) which show strong correlation between the pixels of the cameraman plain image in each direction. On the contrary, Figures 9(d)–9(f) show that the cipher cameraman image is poorly correlated in all directions. Therefore, we can conclude that correlation attacks cannot succeed with the proposed cryptosystem.Table 3
Correlation coefficient of images before and after encryption.
Plain imageSizeCor. coef.Original imageCiphered imageProposed scheme[38][44]Cameraman(256× 256)HC0.9314−0.009−0.009—VC0.94000.0140.010DC0.8931−0.006−0.006Lena(512× 512)HC0.98490.0010.0010.008VC0.9928−0.011−0.0140.001DC0.9734−0.006−0.006−0.004Plane(900× 600)HC0.99560.002—0.013VC0.9942−0.0120.012DC0.99510.017−0.003Figure 9
Pixel value distribution of plain and cipher cameraman (256 × 256).
(a)(b)(c)(d)(e)(f)


#### 5.1.3. Entropy Analysis

In information theory, the information entropy quantifies the degree of randomness in a set of data. Lety be a sequence of data; the entropy is computed by the following equation [45]:(11)Sy=∑i=02M−1Pyilog21Pyi,where Pyi is the probability of the recurrence of the pixel value yi and M denotes the maximum number of bits used to represent the information y. The expected entropy value of an encrypted image coded on 8 bits with the same probability is 8 [46]. Different values of entropy of some encrypted images are shown in Table 4. As can be seen, they are very close to 8 as expected. Comparing with values from recent good standing papers [4, 28], our metrics are either better or in the same range.Table 4
Information entropy of different encrypted images.
ImageProposed scheme[38][47][28]Cameraman (256× 256)7.99927.9971——Lena (512× 512)7.99937.99947.99937.9975Peppers (512× 512)7.9993—7.99927.9991Plane (900× 600)7.9996———Mixture (512× 512)7.9993———


### 5.2. Key Test

#### 5.2.1. Key Space Analysis

A way to prevent a cryptosystem from the brute-force attack is to design a large key space. In a chaotic system, the high sensitivity to initial conditions improves on the security of the cryptosystem [48]. In the literature, a key space of at least 1030 is required for the system to be robust [49]. The key’s parameters used in the proposed cryptosystem are x01,x02,x03,x0,x0c,x1, i.e., initial conditions and control parameters (p0,p1,p0c,r,andr′) of chaotic maps. Assume that the computer accuracy is 10−15, and the key space is 1015×11  =  10165, sufficient to resist any brute-force attack. Moreover, the problem of weak key encountered in several encryption algorithms, as mentioned by Teh et al. in [22], does not arise in the proposed cryptosystem. Indeed, the bifurcation diagram of the May-Gompertz map does not show periodic zones; thus, the values chosen as initial conditions and control parameter for this map cannot lead to nonchaotic behaviour. Similarly, parameters of the PWLCM used as initial conditions were chosen out of the problematic ones as stated by the National Institute of Standards and Technology (NIST) [39].


#### 5.2.2. Key Sensitivity

Key sensitivity is a necessary feature for a cryptosystem. It implies that any slightest change in the original key used to encrypt the plain image will lead to an incorrect decrypted image [50]. To test this feature for the proposed cryptosystem, we modified the original key (K1) (by changing the value of the last digit) from value x02=0.972970074275508 to 0.972970074275509, while the rest of the parameters remained unchanged to obtain key K2. The last digit of p0was modified to obtain key K3, while that of r′ was changed and yielded key K4. The plain image (Figure 8(c)) was decrypted using the keys of this set, one after the other, and the outcome was compared to what was obtained using K1. Table 5 recapitulates the percentage of difference of different deciphered images as compared to that obtained using K1. The average difference percentage was 99.62%. The example of the plane image decrypted with slightly modified keys (Figures 10(a) and 10(b)) shows that a slight change to keys leads to decrypted images totally different from the original ones. Therefore, the proposed cryptosystem is sensitive to the key.Table 5
Information entropy of different encrypted images.
KeyProposed scheme[38] (2018)[48] (2017)[28] (2016)Key 1 vs. key 299.72999.6199.72799.651Key 1 vs. key 399.80399.6299.67899.605Key 1 vs. key 499.72799.6599.76999.592Figure 10
Key sensitivity tests applied on the plane image: (a)K2, (b) K3, and (c) K1.
(a)(b)(c)Table5 also reveals that our cryptosystem is more sensitive to key change than the one proposed by Zhang and Wang [47], Zhenjun and Sun [28], and Nkandeu et al. [38].


### 5.3. Differential Attack Analysis

In a good encryption algorithm, the influence of an infinitesimal pixel change of a plain image in the corresponding cipher image should be high. To quantify the effect of any slight change on the plain image over the ciphered one, two metrics are generally used, namely, the number of pixel change rate (NPCR) and the unified average change intensity (UACI). These quantities are defined by equations (14) and (15), respectively [28]:(12)NPCR=∑i,jDi,jM×N×100%,(13)UACI=1M×N∑i,jCi,j−C′i,j255×100%,where C and C′ are the encrypted images before and after a slight change, respectively. When Ci,j≠C′i,j, Di,j=1; else, Di,j=0.Table6 presents the NPCR and UACI values of different plain images when one bit is changed. We can notice that mean values for NPCR and UACI are, respectively, 99.61 and 33.49. These average values are illustrated in Figure 11, where NPCR (a) and UACI (b) are represented as a function of different values of the key. Then, these results are in the range of accepted values in the literature [50]. This proves that the proposed algorithm is not vulnerable to differential attacks.Table 6
UACI and NPCR values of encrypted images.
Changed pixel position[44] (2018)[37] (2020)[51] (2020)Plain imageMetricFirst pixelMiddle pixelLast pixelCameraman (256× 256)NPCR99.6299.6199.62—99.6299.63UACI33.5433.5533.53—33.4233.63Lena (512× 512)NPCR99.6299.6299.6199.6199.6399.62UACI33.4633.4733.4630.4733.5233.28Plane (900× 600)NPCR99.6399.6299.6299.60—99.60UACI33.4733.4833.4732.60—33.42Mixture (512× 512)NPCR99.6199.6199.61———UACI33.4233.4133.42———Figure 11
Average values of NPCR (a) and UACI (b) as a function of different values of the key.
(a)(b)


### 5.4. Security Analysis

In order to assess the resistance of encryption algorithms against the main attacks, two tests are generally used, namely, the chosen plain image attack and the chosen cipher image attack [52].


#### 5.4.1. Chosen Plain Image Attack

This attack stems from the idea that two different images encrypted with the key must produce two different ciphered images. Let us assume that an attacker does not possess the encryption key, but has the encrypted imageC. He will try to recover the plain images I by applying equations (16) and (17):(14)k0i,j=C0i,j⊕I0i,j,where I0i,j is a null image (all the pixels are equal to zero), while C0i,j is its corresponding cipher image, and i,j denotes the 2D position of the pixel.(15)Ii,j=Ci,j⊕k0i,j,where Ii,j is an image with the same size as C0i,j and Ci,j is its corresponding encrypted image [38].As illustrated in Figures12(a) and 12(c), it appears that the chosen plain image attack on the cameraman encrypted image did not succeed. Therefore, the proposed algorithm has a good ability to resist against the chosen plain image attack.Figure 12
Result of cryptanalysis tests on the cameraman image: (a) chosen plain image attack, (b) chosen cipher image attack, (c) histogram of image (a), and (d) histogram of image (b).
(a)(b)(c)(d)


#### 5.4.2. Chosen Cipher Attack

The attacker still does not have the key. He uses equation (16) to try to decrypt and obtain the plain image. To achieve its goal, he possesses the null image P0 and its corresponding encrypted image C0 and knows the decryption steps [53]. In Figures 12(b) and 12(d), the outcome of this attack using the plane image is displayed. These figures show that the attack was not successful.


### 5.5. Encryption Time Analysis

#### 5.5.1. Encryption Speed

The encryption time of the proposed algorithm using a colour Lena image of size 512× 512 is 0. 2880 s. Table 7 recapitulates the encryption time obtained for different images using our cryptosystem as compared to those of recent algorithms using the same images. The experimental results showed that averagely, the suggested cryptosystem exhibited the best encryption time.Table 7
Encryption time in seconds.
ImageSizeProposed algorithm[54] 2019[55] (2018)[4] (2017)[28] (2016)Cameraman(256 × 256)0.26720.09490.102——Lena(512 × 512)0.28800.40100.2810.71030.665Plane(900 × 600)0.3505————


#### 5.5.2. Complexity of the Proposed Scheme

The proposed cryptosystem is based on three main steps including two permutation phases and a mixing phase. Thus, the evaluation of the complexity of the cryptosystem depends on these three encryption steps. Since the permutation process does not require any calculation, but only iterations [37], the whole spatial complexity of the proposed scheme will mainly come from the mixing step. This value can be estimated at Θ1⋅M⋅N on a PC with a multiple-core processor platform, where M and N are the number of rows and columns of the image. The obtained value is equal or better compared with other schemes developed in [37] (Θ1⋅M⋅N), [56] (Θ4⋅M⋅N), [57] (Θ24⋅M⋅N), and [58](Θ100⋅M⋅N).


### 5.6. Noise Interference Analysis

During image transmission, it may be contaminated by noise. In this section, we assess the stability of the proposed cryptosystem under the influence of noise.


#### 5.6.1. Gaussian Noise Analysis

The Gaussian noise with zero mean defined by equation (18) [59] was used to assess the influence of noise on an encrypted image obtained by the proposed cryptosystem. The test consisted in adding in a plain image some quantity of noise before encryption and then getting the decrypted image affected by the noise to check if it was still recognizable.(16)I=imnoiseimg,′gaussian′,0,var,where img and I are, respectively, encrypted image data before and after Gaussian noise was added and var is the noise variance with values ranging from 0.01 to 1.In Figure13, the decrypted cameraman image (512 × 512) affected by the Gaussian noise was presented for three different values of the variance. From this figure, we observed that even for a high value of the variance (var = 0.9), the decrypted image was still recognizable.Figure 13
Decrypted image with Gaussian noise: (a) var = 0.4, (b) var = 0.7, and (c) var = 0.9.
(a)(b)(c)


#### 5.6.2. Occlusion Noise Analysis

In order to simulate the influence of noise on the encrypted image during transmission, percentages of noise, respectively, 25% and 50%, were added to the pixels of Lena encrypted image as shown in Figures14(a) and 14(b). The black pixels represented the percentage of data lost during the transmission process.Figure 14
Encrypted and decrypted Lena512×512 image with occlusion noise. (a) Encrypted image with 25% occlusion noise. (b) Encrypted image with 50% occlusion noise. (c) Decrypted image with 25% occlusion noise. (d) Decrypted image with 50% occlusion noise.
(a)(b)(c)(d)Although the input encrypted image had been affected by the occlusion noise, it could still be perceptible as seen in Figures14(c) and 14(d). Finally, based on the above last two sections’ tests, we concluded that the proposed algorithm presented a high stability and robustness against noise.


#### 5.6.3. Peak Signal-to-Noise Ratio (PSNR)

The PSNR is a tool used to evaluate the difference between the plain image and the corresponding encrypted image. This measure informs about the level of degradation of the plain image after the encryption process. For a good cryptosystem, the PSNR value must be below dB [60]. The PSNR is defined by the following relation:(17)PSNR=10log102552MSEdB,where MSE is the mean square error defined by(18)MSE=∑M,NI1m,n−I2m,n2M×N.Table8 presents the values of MSE and PSNR of the proposed cryptosystem. We can notice from this table that the values of MSE are low, then leading to best values of PSNR.Table 8
Values of the MSE and PSNR of the proposed cryptosystem.
ImageSizeMSEProposed schemePSNR (dB)[61][44][60]Cameraman(256 × 256)1.01402×1048.07007.436——Lena(512 × 512)1.12934×1047.60308.5868.6048.1102Plane(900 × 600)1.341780×1046.8540—7.975—Mixture(512 × 512)1.274205×1047.0780———


### 5.7. Comparison of the Proposed Scheme with Other Recent Encryption Algorithms

Table9 shows the performance of the proposed algorithm compared to mostly cited and good standing ones in the literature. Comparative tests were carried out, and the Lena image of size 512×512 was used as an example. From Table 9, we can observe that the proposed encryption algorithm has the best value of entropy, a large key space that gets close to the best performances presented in [62, 63, 69–71], and a good encryption time compared to others. As for UACI and NPCR, they are very close to the theoretical optimal values expected, i.e., 33.4635% for UACI and 99.6904% for NPCR [9]. Finally, our cryptosystem exhibits a good correlation value. The good performances of the proposed schemes compared with recent others are clearly illustrated in Figure 15.Table 9
Comparison of some recent works with the proposed one.
Key spaceKey sensitivityAverage correlationEntropyNPCRUACIEncryption time (s)Proposed algorithm1016599.620.0047.999399.6233.460.2880[62] (2020)10238—0.0037.998099.6833.47—[51] (2020)1011299.600.0047.997099.6133.430.251[63] (2020)10206—0.0047.997699.6033.47—[64] (2020)10120—0.0517.999199.5633.43—[65] (2020)10142—0.0237.999299.6133.45—[66] (2020)1010599.040.0037.997599.60—0.52[67] (2020)10135—0.02027.997499.6033.550.5156[68] (2020)2192—0.0027.997499.5933.45—[37] (2020)10120—0.0037.999399.5933.500.402[69] (2020)(28  ×  28)! ×  2196644—0.0057.997299.6033.501.9143[70] (2020)2(8 × 65536 + 1)0.0047.997299.6230.91—Figure 15
Plot of some metrics of the proposed scheme compared with recent others: (a) entropy, (b) NPCR, (c) UACI, and (d) key space.
(a)(b)(c)(d)


## 5.1. Statistical Analysis

Three metrics, namely, histogram, entropy of information, and correlation between adjacent pixels, are used in this section to assess the robustness of the system.


### 5.1.1. Histogram and Variance of the Histogram

The histogram of an image is a metric, which indicates the frequency of each grey level in the image. For a well-ciphered image, all the frequencies must be uniformly distributed. As one can see in Figure8, the grey levels of the ciphered images (cameraman, peppers, plane, and mixture) look flat as expected. The same result can be confirmed by computing the variance of the histogram as follows [38]:(9)Vary=1n2∑i=1n∑j=1n12yi−yj2,where Y is a one-dimensional array of the histogram values, i,j∈1,2,…,256, and yi and yj denote the numbers of pixel’s values, respectively, equal to i and j. For a sample of images, the values of variance of the histogram of plain and ciphered images are displayed in Table 2, and those of ciphered images differ totally from their corresponding plain images. It is therefore obvious that our cryptosystem is safe from statistical attacks.Table 2
Variance of histograms for plain and ciphered images from the proposed scheme.
ImageCiphered imageCiphered imageProposed scheme[38][37][43]Cameraman (256× 256)5.129×1065347.245482.6——Mixture (512× 512)6.255×1054278.6———Peppers (512× 512)6.892×1065263.5———Plane (900× 600)7.451×1054763.28———Lena (512× 512)6.255×1064148.55450.81050.871077


### 5.1.2. Correlation Analysis

The correlation coefficientCc measures the strength of the relationship between two adjacent pixels in an image. Cc tends to either 1 or −1 for strong correlation and towards zero for poor correlation. The mean value of the correlation coefficient of a ciphered image for a good cryptosystem should be nearly equal to zero. Equation (12) is used to compute the correlation coefficients in horizontal, vertical, and diagonal directions, respectively [13]:(10)Cc=N×∑i=1NXiYi−∑i=1NXi2×∑i=1NYi2N×∑i=1N∑NXi2−∑i=1NXi2×N×∑i=1NYi2−∑i=1NYi2,where X and Yrepresent the values of two adjacent pixels in the image, Cc belongs to the range [−1, 1], and N denotes the number of pairs of pixels randomly selected. The computed values of correlation coefficient of some plain images in three different directions are shown in Table 3. From this table, we observe that the average value of the correlation coefficients for the plain images is 0.97, which indicates a strong correlation between the adjacent pixels. Conversely, the mean value of correlation coefficients of ciphered images is 0.008, which is an indication of a poor correlation between adjacent pixels as expected. This result can be confirmed by observing Figures 9(a)–9(c) which show strong correlation between the pixels of the cameraman plain image in each direction. On the contrary, Figures 9(d)–9(f) show that the cipher cameraman image is poorly correlated in all directions. Therefore, we can conclude that correlation attacks cannot succeed with the proposed cryptosystem.Table 3
Correlation coefficient of images before and after encryption.
Plain imageSizeCor. coef.Original imageCiphered imageProposed scheme[38][44]Cameraman(256× 256)HC0.9314−0.009−0.009—VC0.94000.0140.010DC0.8931−0.006−0.006Lena(512× 512)HC0.98490.0010.0010.008VC0.9928−0.011−0.0140.001DC0.9734−0.006−0.006−0.004Plane(900× 600)HC0.99560.002—0.013VC0.9942−0.0120.012DC0.99510.017−0.003Figure 9
Pixel value distribution of plain and cipher cameraman (256 × 256).
(a)(b)(c)(d)(e)(f)


### 5.1.3. Entropy Analysis

In information theory, the information entropy quantifies the degree of randomness in a set of data. Lety be a sequence of data; the entropy is computed by the following equation [45]:(11)Sy=∑i=02M−1Pyilog21Pyi,where Pyi is the probability of the recurrence of the pixel value yi and M denotes the maximum number of bits used to represent the information y. The expected entropy value of an encrypted image coded on 8 bits with the same probability is 8 [46]. Different values of entropy of some encrypted images are shown in Table 4. As can be seen, they are very close to 8 as expected. Comparing with values from recent good standing papers [4, 28], our metrics are either better or in the same range.Table 4
Information entropy of different encrypted images.
ImageProposed scheme[38][47][28]Cameraman (256× 256)7.99927.9971——Lena (512× 512)7.99937.99947.99937.9975Peppers (512× 512)7.9993—7.99927.9991Plane (900× 600)7.9996———Mixture (512× 512)7.9993———


## 5.1.1. Histogram and Variance of the Histogram

The histogram of an image is a metric, which indicates the frequency of each grey level in the image. For a well-ciphered image, all the frequencies must be uniformly distributed. As one can see in Figure8, the grey levels of the ciphered images (cameraman, peppers, plane, and mixture) look flat as expected. The same result can be confirmed by computing the variance of the histogram as follows [38]:(9)Vary=1n2∑i=1n∑j=1n12yi−yj2,where Y is a one-dimensional array of the histogram values, i,j∈1,2,…,256, and yi and yj denote the numbers of pixel’s values, respectively, equal to i and j. For a sample of images, the values of variance of the histogram of plain and ciphered images are displayed in Table 2, and those of ciphered images differ totally from their corresponding plain images. It is therefore obvious that our cryptosystem is safe from statistical attacks.Table 2
Variance of histograms for plain and ciphered images from the proposed scheme.
ImageCiphered imageCiphered imageProposed scheme[38][37][43]Cameraman (256× 256)5.129×1065347.245482.6——Mixture (512× 512)6.255×1054278.6———Peppers (512× 512)6.892×1065263.5———Plane (900× 600)7.451×1054763.28———Lena (512× 512)6.255×1064148.55450.81050.871077


## 5.1.2. Correlation Analysis

The correlation coefficientCc measures the strength of the relationship between two adjacent pixels in an image. Cc tends to either 1 or −1 for strong correlation and towards zero for poor correlation. The mean value of the correlation coefficient of a ciphered image for a good cryptosystem should be nearly equal to zero. Equation (12) is used to compute the correlation coefficients in horizontal, vertical, and diagonal directions, respectively [13]:(10)Cc=N×∑i=1NXiYi−∑i=1NXi2×∑i=1NYi2N×∑i=1N∑NXi2−∑i=1NXi2×N×∑i=1NYi2−∑i=1NYi2,where X and Yrepresent the values of two adjacent pixels in the image, Cc belongs to the range [−1, 1], and N denotes the number of pairs of pixels randomly selected. The computed values of correlation coefficient of some plain images in three different directions are shown in Table 3. From this table, we observe that the average value of the correlation coefficients for the plain images is 0.97, which indicates a strong correlation between the adjacent pixels. Conversely, the mean value of correlation coefficients of ciphered images is 0.008, which is an indication of a poor correlation between adjacent pixels as expected. This result can be confirmed by observing Figures 9(a)–9(c) which show strong correlation between the pixels of the cameraman plain image in each direction. On the contrary, Figures 9(d)–9(f) show that the cipher cameraman image is poorly correlated in all directions. Therefore, we can conclude that correlation attacks cannot succeed with the proposed cryptosystem.Table 3
Correlation coefficient of images before and after encryption.
Plain imageSizeCor. coef.Original imageCiphered imageProposed scheme[38][44]Cameraman(256× 256)HC0.9314−0.009−0.009—VC0.94000.0140.010DC0.8931−0.006−0.006Lena(512× 512)HC0.98490.0010.0010.008VC0.9928−0.011−0.0140.001DC0.9734−0.006−0.006−0.004Plane(900× 600)HC0.99560.002—0.013VC0.9942−0.0120.012DC0.99510.017−0.003Figure 9
Pixel value distribution of plain and cipher cameraman (256 × 256).
(a)(b)(c)(d)(e)(f)


## 5.1.3. Entropy Analysis

In information theory, the information entropy quantifies the degree of randomness in a set of data. Lety be a sequence of data; the entropy is computed by the following equation [45]:(11)Sy=∑i=02M−1Pyilog21Pyi,where Pyi is the probability of the recurrence of the pixel value yi and M denotes the maximum number of bits used to represent the information y. The expected entropy value of an encrypted image coded on 8 bits with the same probability is 8 [46]. Different values of entropy of some encrypted images are shown in Table 4. As can be seen, they are very close to 8 as expected. Comparing with values from recent good standing papers [4, 28], our metrics are either better or in the same range.Table 4
Information entropy of different encrypted images.
ImageProposed scheme[38][47][28]Cameraman (256× 256)7.99927.9971——Lena (512× 512)7.99937.99947.99937.9975Peppers (512× 512)7.9993—7.99927.9991Plane (900× 600)7.9996———Mixture (512× 512)7.9993———


## 5.2. Key Test

### 5.2.1. Key Space Analysis

A way to prevent a cryptosystem from the brute-force attack is to design a large key space. In a chaotic system, the high sensitivity to initial conditions improves on the security of the cryptosystem [48]. In the literature, a key space of at least 1030 is required for the system to be robust [49]. The key’s parameters used in the proposed cryptosystem are x01,x02,x03,x0,x0c,x1, i.e., initial conditions and control parameters (p0,p1,p0c,r,andr′) of chaotic maps. Assume that the computer accuracy is 10−15, and the key space is 1015×11  =  10165, sufficient to resist any brute-force attack. Moreover, the problem of weak key encountered in several encryption algorithms, as mentioned by Teh et al. in [22], does not arise in the proposed cryptosystem. Indeed, the bifurcation diagram of the May-Gompertz map does not show periodic zones; thus, the values chosen as initial conditions and control parameter for this map cannot lead to nonchaotic behaviour. Similarly, parameters of the PWLCM used as initial conditions were chosen out of the problematic ones as stated by the National Institute of Standards and Technology (NIST) [39].


### 5.2.2. Key Sensitivity

Key sensitivity is a necessary feature for a cryptosystem. It implies that any slightest change in the original key used to encrypt the plain image will lead to an incorrect decrypted image [50]. To test this feature for the proposed cryptosystem, we modified the original key (K1) (by changing the value of the last digit) from value x02=0.972970074275508 to 0.972970074275509, while the rest of the parameters remained unchanged to obtain key K2. The last digit of p0was modified to obtain key K3, while that of r′ was changed and yielded key K4. The plain image (Figure 8(c)) was decrypted using the keys of this set, one after the other, and the outcome was compared to what was obtained using K1. Table 5 recapitulates the percentage of difference of different deciphered images as compared to that obtained using K1. The average difference percentage was 99.62%. The example of the plane image decrypted with slightly modified keys (Figures 10(a) and 10(b)) shows that a slight change to keys leads to decrypted images totally different from the original ones. Therefore, the proposed cryptosystem is sensitive to the key.Table 5
Information entropy of different encrypted images.
KeyProposed scheme[38] (2018)[48] (2017)[28] (2016)Key 1 vs. key 299.72999.6199.72799.651Key 1 vs. key 399.80399.6299.67899.605Key 1 vs. key 499.72799.6599.76999.592Figure 10
Key sensitivity tests applied on the plane image: (a)K2, (b) K3, and (c) K1.
(a)(b)(c)Table5 also reveals that our cryptosystem is more sensitive to key change than the one proposed by Zhang and Wang [47], Zhenjun and Sun [28], and Nkandeu et al. [38].


## 5.2.1. Key Space Analysis

A way to prevent a cryptosystem from the brute-force attack is to design a large key space. In a chaotic system, the high sensitivity to initial conditions improves on the security of the cryptosystem [48]. In the literature, a key space of at least 1030 is required for the system to be robust [49]. The key’s parameters used in the proposed cryptosystem are x01,x02,x03,x0,x0c,x1, i.e., initial conditions and control parameters (p0,p1,p0c,r,andr′) of chaotic maps. Assume that the computer accuracy is 10−15, and the key space is 1015×11  =  10165, sufficient to resist any brute-force attack. Moreover, the problem of weak key encountered in several encryption algorithms, as mentioned by Teh et al. in [22], does not arise in the proposed cryptosystem. Indeed, the bifurcation diagram of the May-Gompertz map does not show periodic zones; thus, the values chosen as initial conditions and control parameter for this map cannot lead to nonchaotic behaviour. Similarly, parameters of the PWLCM used as initial conditions were chosen out of the problematic ones as stated by the National Institute of Standards and Technology (NIST) [39].


## 5.2.2. Key Sensitivity

Key sensitivity is a necessary feature for a cryptosystem. It implies that any slightest change in the original key used to encrypt the plain image will lead to an incorrect decrypted image [50]. To test this feature for the proposed cryptosystem, we modified the original key (K1) (by changing the value of the last digit) from value x02=0.972970074275508 to 0.972970074275509, while the rest of the parameters remained unchanged to obtain key K2. The last digit of p0was modified to obtain key K3, while that of r′ was changed and yielded key K4. The plain image (Figure 8(c)) was decrypted using the keys of this set, one after the other, and the outcome was compared to what was obtained using K1. Table 5 recapitulates the percentage of difference of different deciphered images as compared to that obtained using K1. The average difference percentage was 99.62%. The example of the plane image decrypted with slightly modified keys (Figures 10(a) and 10(b)) shows that a slight change to keys leads to decrypted images totally different from the original ones. Therefore, the proposed cryptosystem is sensitive to the key.Table 5
Information entropy of different encrypted images.
KeyProposed scheme[38] (2018)[48] (2017)[28] (2016)Key 1 vs. key 299.72999.6199.72799.651Key 1 vs. key 399.80399.6299.67899.605Key 1 vs. key 499.72799.6599.76999.592Figure 10
Key sensitivity tests applied on the plane image: (a)K2, (b) K3, and (c) K1.
(a)(b)(c)Table5 also reveals that our cryptosystem is more sensitive to key change than the one proposed by Zhang and Wang [47], Zhenjun and Sun [28], and Nkandeu et al. [38].


## 5.3. Differential Attack Analysis

In a good encryption algorithm, the influence of an infinitesimal pixel change of a plain image in the corresponding cipher image should be high. To quantify the effect of any slight change on the plain image over the ciphered one, two metrics are generally used, namely, the number of pixel change rate (NPCR) and the unified average change intensity (UACI). These quantities are defined by equations (14) and (15), respectively [28]:(12)NPCR=∑i,jDi,jM×N×100%,(13)UACI=1M×N∑i,jCi,j−C′i,j255×100%,where C and C′ are the encrypted images before and after a slight change, respectively. When Ci,j≠C′i,j, Di,j=1; else, Di,j=0.Table6 presents the NPCR and UACI values of different plain images when one bit is changed. We can notice that mean values for NPCR and UACI are, respectively, 99.61 and 33.49. These average values are illustrated in Figure 11, where NPCR (a) and UACI (b) are represented as a function of different values of the key. Then, these results are in the range of accepted values in the literature [50]. This proves that the proposed algorithm is not vulnerable to differential attacks.Table 6
UACI and NPCR values of encrypted images.
Changed pixel position[44] (2018)[37] (2020)[51] (2020)Plain imageMetricFirst pixelMiddle pixelLast pixelCameraman (256× 256)NPCR99.6299.6199.62—99.6299.63UACI33.5433.5533.53—33.4233.63Lena (512× 512)NPCR99.6299.6299.6199.6199.6399.62UACI33.4633.4733.4630.4733.5233.28Plane (900× 600)NPCR99.6399.6299.6299.60—99.60UACI33.4733.4833.4732.60—33.42Mixture (512× 512)NPCR99.6199.6199.61———UACI33.4233.4133.42———Figure 11
Average values of NPCR (a) and UACI (b) as a function of different values of the key.
(a)(b)


## 5.4. Security Analysis

In order to assess the resistance of encryption algorithms against the main attacks, two tests are generally used, namely, the chosen plain image attack and the chosen cipher image attack [52].


### 5.4.1. Chosen Plain Image Attack

This attack stems from the idea that two different images encrypted with the key must produce two different ciphered images. Let us assume that an attacker does not possess the encryption key, but has the encrypted imageC. He will try to recover the plain images I by applying equations (16) and (17):(14)k0i,j=C0i,j⊕I0i,j,where I0i,j is a null image (all the pixels are equal to zero), while C0i,j is its corresponding cipher image, and i,j denotes the 2D position of the pixel.(15)Ii,j=Ci,j⊕k0i,j,where Ii,j is an image with the same size as C0i,j and Ci,j is its corresponding encrypted image [38].As illustrated in Figures12(a) and 12(c), it appears that the chosen plain image attack on the cameraman encrypted image did not succeed. Therefore, the proposed algorithm has a good ability to resist against the chosen plain image attack.Figure 12
Result of cryptanalysis tests on the cameraman image: (a) chosen plain image attack, (b) chosen cipher image attack, (c) histogram of image (a), and (d) histogram of image (b).
(a)(b)(c)(d)


### 5.4.2. Chosen Cipher Attack

The attacker still does not have the key. He uses equation (16) to try to decrypt and obtain the plain image. To achieve its goal, he possesses the null image P0 and its corresponding encrypted image C0 and knows the decryption steps [53]. In Figures 12(b) and 12(d), the outcome of this attack using the plane image is displayed. These figures show that the attack was not successful.


## 5.4.1. Chosen Plain Image Attack

This attack stems from the idea that two different images encrypted with the key must produce two different ciphered images. Let us assume that an attacker does not possess the encryption key, but has the encrypted imageC. He will try to recover the plain images I by applying equations (16) and (17):(14)k0i,j=C0i,j⊕I0i,j,where I0i,j is a null image (all the pixels are equal to zero), while C0i,j is its corresponding cipher image, and i,j denotes the 2D position of the pixel.(15)Ii,j=Ci,j⊕k0i,j,where Ii,j is an image with the same size as C0i,j and Ci,j is its corresponding encrypted image [38].As illustrated in Figures12(a) and 12(c), it appears that the chosen plain image attack on the cameraman encrypted image did not succeed. Therefore, the proposed algorithm has a good ability to resist against the chosen plain image attack.Figure 12
Result of cryptanalysis tests on the cameraman image: (a) chosen plain image attack, (b) chosen cipher image attack, (c) histogram of image (a), and (d) histogram of image (b).
(a)(b)(c)(d)


## 5.4.2. Chosen Cipher Attack

The attacker still does not have the key. He uses equation (16) to try to decrypt and obtain the plain image. To achieve its goal, he possesses the null image P0 and its corresponding encrypted image C0 and knows the decryption steps [53]. In Figures 12(b) and 12(d), the outcome of this attack using the plane image is displayed. These figures show that the attack was not successful.


## 5.5. Encryption Time Analysis

### 5.5.1. Encryption Speed

The encryption time of the proposed algorithm using a colour Lena image of size 512× 512 is 0. 2880 s. Table 7 recapitulates the encryption time obtained for different images using our cryptosystem as compared to those of recent algorithms using the same images. The experimental results showed that averagely, the suggested cryptosystem exhibited the best encryption time.Table 7
Encryption time in seconds.
ImageSizeProposed algorithm[54] 2019[55] (2018)[4] (2017)[28] (2016)Cameraman(256 × 256)0.26720.09490.102——Lena(512 × 512)0.28800.40100.2810.71030.665Plane(900 × 600)0.3505————


### 5.5.2. Complexity of the Proposed Scheme

The proposed cryptosystem is based on three main steps including two permutation phases and a mixing phase. Thus, the evaluation of the complexity of the cryptosystem depends on these three encryption steps. Since the permutation process does not require any calculation, but only iterations [37], the whole spatial complexity of the proposed scheme will mainly come from the mixing step. This value can be estimated at Θ1⋅M⋅N on a PC with a multiple-core processor platform, where M and N are the number of rows and columns of the image. The obtained value is equal or better compared with other schemes developed in [37] (Θ1⋅M⋅N), [56] (Θ4⋅M⋅N), [57] (Θ24⋅M⋅N), and [58](Θ100⋅M⋅N).


## 5.5.1. Encryption Speed

The encryption time of the proposed algorithm using a colour Lena image of size 512× 512 is 0. 2880 s. Table 7 recapitulates the encryption time obtained for different images using our cryptosystem as compared to those of recent algorithms using the same images. The experimental results showed that averagely, the suggested cryptosystem exhibited the best encryption time.Table 7
Encryption time in seconds.
ImageSizeProposed algorithm[54] 2019[55] (2018)[4] (2017)[28] (2016)Cameraman(256 × 256)0.26720.09490.102——Lena(512 × 512)0.28800.40100.2810.71030.665Plane(900 × 600)0.3505————


## 5.5.2. Complexity of the Proposed Scheme

The proposed cryptosystem is based on three main steps including two permutation phases and a mixing phase. Thus, the evaluation of the complexity of the cryptosystem depends on these three encryption steps. Since the permutation process does not require any calculation, but only iterations [37], the whole spatial complexity of the proposed scheme will mainly come from the mixing step. This value can be estimated at Θ1⋅M⋅N on a PC with a multiple-core processor platform, where M and N are the number of rows and columns of the image. The obtained value is equal or better compared with other schemes developed in [37] (Θ1⋅M⋅N), [56] (Θ4⋅M⋅N), [57] (Θ24⋅M⋅N), and [58](Θ100⋅M⋅N).


## 5.6. Noise Interference Analysis

During image transmission, it may be contaminated by noise. In this section, we assess the stability of the proposed cryptosystem under the influence of noise.


### 5.6.1. Gaussian Noise Analysis

The Gaussian noise with zero mean defined by equation (18) [59] was used to assess the influence of noise on an encrypted image obtained by the proposed cryptosystem. The test consisted in adding in a plain image some quantity of noise before encryption and then getting the decrypted image affected by the noise to check if it was still recognizable.(16)I=imnoiseimg,′gaussian′,0,var,where img and I are, respectively, encrypted image data before and after Gaussian noise was added and var is the noise variance with values ranging from 0.01 to 1.In Figure13, the decrypted cameraman image (512 × 512) affected by the Gaussian noise was presented for three different values of the variance. From this figure, we observed that even for a high value of the variance (var = 0.9), the decrypted image was still recognizable.Figure 13
Decrypted image with Gaussian noise: (a) var = 0.4, (b) var = 0.7, and (c) var = 0.9.
(a)(b)(c)


### 5.6.2. Occlusion Noise Analysis

In order to simulate the influence of noise on the encrypted image during transmission, percentages of noise, respectively, 25% and 50%, were added to the pixels of Lena encrypted image as shown in Figures14(a) and 14(b). The black pixels represented the percentage of data lost during the transmission process.Figure 14
Encrypted and decrypted Lena512×512 image with occlusion noise. (a) Encrypted image with 25% occlusion noise. (b) Encrypted image with 50% occlusion noise. (c) Decrypted image with 25% occlusion noise. (d) Decrypted image with 50% occlusion noise.
(a)(b)(c)(d)Although the input encrypted image had been affected by the occlusion noise, it could still be perceptible as seen in Figures14(c) and 14(d). Finally, based on the above last two sections’ tests, we concluded that the proposed algorithm presented a high stability and robustness against noise.


### 5.6.3. Peak Signal-to-Noise Ratio (PSNR)

The PSNR is a tool used to evaluate the difference between the plain image and the corresponding encrypted image. This measure informs about the level of degradation of the plain image after the encryption process. For a good cryptosystem, the PSNR value must be below dB [60]. The PSNR is defined by the following relation:(17)PSNR=10log102552MSEdB,where MSE is the mean square error defined by(18)MSE=∑M,NI1m,n−I2m,n2M×N.Table8 presents the values of MSE and PSNR of the proposed cryptosystem. We can notice from this table that the values of MSE are low, then leading to best values of PSNR.Table 8
Values of the MSE and PSNR of the proposed cryptosystem.
ImageSizeMSEProposed schemePSNR (dB)[61][44][60]Cameraman(256 × 256)1.01402×1048.07007.436——Lena(512 × 512)1.12934×1047.60308.5868.6048.1102Plane(900 × 600)1.341780×1046.8540—7.975—Mixture(512 × 512)1.274205×1047.0780———


## 5.6.1. Gaussian Noise Analysis

The Gaussian noise with zero mean defined by equation (18) [59] was used to assess the influence of noise on an encrypted image obtained by the proposed cryptosystem. The test consisted in adding in a plain image some quantity of noise before encryption and then getting the decrypted image affected by the noise to check if it was still recognizable.(16)I=imnoiseimg,′gaussian′,0,var,where img and I are, respectively, encrypted image data before and after Gaussian noise was added and var is the noise variance with values ranging from 0.01 to 1.In Figure13, the decrypted cameraman image (512 × 512) affected by the Gaussian noise was presented for three different values of the variance. From this figure, we observed that even for a high value of the variance (var = 0.9), the decrypted image was still recognizable.Figure 13
Decrypted image with Gaussian noise: (a) var = 0.4, (b) var = 0.7, and (c) var = 0.9.
(a)(b)(c)


## 5.6.2. Occlusion Noise Analysis

In order to simulate the influence of noise on the encrypted image during transmission, percentages of noise, respectively, 25% and 50%, were added to the pixels of Lena encrypted image as shown in Figures14(a) and 14(b). The black pixels represented the percentage of data lost during the transmission process.Figure 14
Encrypted and decrypted Lena512×512 image with occlusion noise. (a) Encrypted image with 25% occlusion noise. (b) Encrypted image with 50% occlusion noise. (c) Decrypted image with 25% occlusion noise. (d) Decrypted image with 50% occlusion noise.
(a)(b)(c)(d)Although the input encrypted image had been affected by the occlusion noise, it could still be perceptible as seen in Figures14(c) and 14(d). Finally, based on the above last two sections’ tests, we concluded that the proposed algorithm presented a high stability and robustness against noise.


## 5.6.3. Peak Signal-to-Noise Ratio (PSNR)

The PSNR is a tool used to evaluate the difference between the plain image and the corresponding encrypted image. This measure informs about the level of degradation of the plain image after the encryption process. For a good cryptosystem, the PSNR value must be below dB [60]. The PSNR is defined by the following relation:(17)PSNR=10log102552MSEdB,where MSE is the mean square error defined by(18)MSE=∑M,NI1m,n−I2m,n2M×N.Table8 presents the values of MSE and PSNR of the proposed cryptosystem. We can notice from this table that the values of MSE are low, then leading to best values of PSNR.Table 8
Values of the MSE and PSNR of the proposed cryptosystem.
ImageSizeMSEProposed schemePSNR (dB)[61][44][60]Cameraman(256 × 256)1.01402×1048.07007.436——Lena(512 × 512)1.12934×1047.60308.5868.6048.1102Plane(900 × 600)1.341780×1046.8540—7.975—Mixture(512 × 512)1.274205×1047.0780———


## 5.7. Comparison of the Proposed Scheme with Other Recent Encryption Algorithms

Table9 shows the performance of the proposed algorithm compared to mostly cited and good standing ones in the literature. Comparative tests were carried out, and the Lena image of size 512×512 was used as an example. From Table 9, we can observe that the proposed encryption algorithm has the best value of entropy, a large key space that gets close to the best performances presented in [62, 63, 69–71], and a good encryption time compared to others. As for UACI and NPCR, they are very close to the theoretical optimal values expected, i.e., 33.4635% for UACI and 99.6904% for NPCR [9]. Finally, our cryptosystem exhibits a good correlation value. The good performances of the proposed schemes compared with recent others are clearly illustrated in Figure 15.Table 9
Comparison of some recent works with the proposed one.
Key spaceKey sensitivityAverage correlationEntropyNPCRUACIEncryption time (s)Proposed algorithm1016599.620.0047.999399.6233.460.2880[62] (2020)10238—0.0037.998099.6833.47—[51] (2020)1011299.600.0047.997099.6133.430.251[63] (2020)10206—0.0047.997699.6033.47—[64] (2020)10120—0.0517.999199.5633.43—[65] (2020)10142—0.0237.999299.6133.45—[66] (2020)1010599.040.0037.997599.60—0.52[67] (2020)10135—0.02027.997499.6033.550.5156[68] (2020)2192—0.0027.997499.5933.45—[37] (2020)10120—0.0037.999399.5933.500.402[69] (2020)(28  ×  28)! ×  2196644—0.0057.997299.6033.501.9143[70] (2020)2(8 × 65536 + 1)0.0047.997299.6230.91—Figure 15
Plot of some metrics of the proposed scheme compared with recent others: (a) entropy, (b) NPCR, (c) UACI, and (d) key space.
(a)(b)(c)(d)


## 6. Conclusion

In this paper, a new two-step image encryption algorithm was designed. After partitioning the image into subblocks, the first step consisted of carrying out a pseudo-random block permutation (using the May-Gompertz map) followed by a pseudo-random pixel permutation (using the PWLCM). In the second step, the result of the first step is divided into 4 subimages, which were then fused by means of pseudo-random matrices obtained from May-Gompertz and PWLCM concurrently. The key space of the proposed cryptosystem is large, and some elements of the keys are dependent on image pixels’ values in such a way that each cipher image is specific to the original plain image. The analysis of experimental results reveals that the new algorithm is very efficient and secure, which is suitable for practical image encryption. The proposed cryptosystem particularly exhibits best results forp=2rounds. Moreover, encryption/decryption time is short enough for the proposed scheme to be used for multimedia communication, especially for video encryption. Finally, the proposed algorithm exhibits high security due to the improvement of chaotic properties of the maps used. It also offers the possibility of multiple-image encryption and proved to be robust when faced with noise and data loss.



---

*Source: 6615708-2021-02-24.xml*