1 Introduction

Due to fast and new emerging technologies, it is very hard to keep information secure. The encryption algorithms are used to protect the information like digital images from the unauthorized persons or attackers [1, 2]. In the last few decades, a lot of work has been done and is being carried out to develop good image encryption methods [3,4,5,6]. However, an efficient and secure image encryption method is still a challenging task.

In recent years, many algorithms have been designed using chaos theory as scientists established a perfect match between chaos theory and cryptography. Due to bulk data capacity and high correlations among pixels in an image, the conventional techniques like Advanced Encryption Standard (AES), International Data Encryption Algorithm (IDEA) are not suitable [2, 7, 8]. Hraoui et al. [9] argue that chaos theory supersedes AES encryption in terms of computational time. Also, encryption using AES requires large computing power as well as high running speed, limiting its use for good encryption [10]. Considering the implementation aspects of AES, modern computers show that the table-lookup S-boxes in AES is vulnerable to the timing attacks that are based on cache-miss lowdown behavior. In contrast, chaotic sequences produce a high degree of confusion and diffusion, thereby improving the entropy of the encrypted image. To develop a larger keyspace and higher security using chaotic algorithms, vivid approaches have been proposed in the literature [11,12,13,14,15].

The chaotic system is a nonlinear system having properties like sensitivity to initial conditions, ergodicity, randomness that makes it more suitable for secure image encryption [1, 8]. A chaos-based image encryption method has mainly two stages permutation and diffusion. In permutation, shuffling of the image pixels is done without changing their values and in diffusion, the value of the pixels is changed by using chaotic sequences. The permutation leads to better encryption, and diffusion improves the security. Therefore, to have an algorithm with good encryption and higher security, both permutation and diffusion are applied together [11, 12, 16, 17]. The literature also reveals a very important fact that use of only one chaotic map for encrypting image is less secure and has very small key space. Hence, many approaches have been proposed to develop algorithms with larger keyspace and higher security [11,12,13,14,15].

Aldeman in 1994 performed the first analysis of DNA computing. It has many features like large storage, very low power consumption and huge parallelism [18, 19]. Many image encryption schemes using the combination of DNA encoding and chaotic mapping have been proposed [1, 5, 12, 19,20,21]. These algorithms use the few biological and arithmetic operations of DNA sequences like DNA addition, subtraction and DNA XOR and all bases rules of DNA. Recently, Guesmi et al. used secure hash algorithm (SHA-2) with DNA to develop a chaos-DNA-based hybrid approach to encrypt images [1].

Evolutionary algorithms (EAs) are another recent approach that is being used by the researchers to obtain image encryption algorithms with higher security and better encryption [2, 22,23,24]. In [2, 22], two different fitness functions are used as primary fitness functions. However, in [23], it is clearly shown that using a single function as the prime objective affects the value of another objective. The algorithm uses chaos-DNA combination to generate an initial population of DNA masks and bi-objective genetic optimization to generate the final cipher image.

Many real engineering problems are not satisfactorily characterized by single objective measures and require the simultaneous optimization of more than one conflicting objectives at the same time. The systems which have multiple conflicting objectives are not easily optimized with the simple optimization process [25]. Image encryption is also a multi-objective problem. The proposed image encryption algorithm is an extension to the work done in [23]. The implemented work uses two-dimensional chaotic function coupled map lattice (CML) and the GA-based multi-objective optimization to generate the Pareto-optimal solution. The work of [23] uses two chaos functions logistic map (LM) and transformed logistic map (TLM) with combination of DNA and weighted bi-objective GA. The proposed work of this paper combines CML with DNA–GA combination. It evaluates information entropy and CC with respect to a number of iterations with all three chaotic functions LM, TLM and CML. Two hundred iterations are taken into consideration to compute the information entropy. The results show that the CML–DNA–GA approach gives the highest entropy and the lowest CC values. Also, instead of using weighted bi-objective optimization that requires fixed weights assigned by the user, it uses Pareto-optimal optimization approach to have better results. Section 2 discusses the elementary concepts of CML, DNA and MOGA approach. Section 3 presents the proposed approach; the experimental results are given in Sects. 4 and 5 concludes the proposal.

2 Elementary concepts

This section of paper discusses fundamentals of chaotic function CML, DNA computing and MOGA approach of optimization.

2.1 Coupled map lattice (CML)

The simplest and the most commonly used chaos map employed by the researchers to perform image encryption is logistic map (LM) [2]. It is mathematically expressed as:

$$X_{j + 1} = \mu *X_{j} \left( {1 - X_{j} } \right)$$
(1)

where logistic map parameter μ ∈ [0, 4] and X ∈ [0, 1]. However, recent researchers have proven that the LM suffers from shortcomings such as uneven distribution of sequences, stable and blank windows, and a weak key as shown by Fig. 1.

Fig. 1
figure 1

Logistic map bifurcation and blank window

Fig. 2
figure 2

a Plain image. b Encrypted image with first secret key. c Encrypted image with second secret key. d Decrypted image using decryption key different from encryption key

Coupled map lattice (CML) was introduced and investigated by Kaneko as a two-dimensional model for spatiotemporal chaos [26, 27]. The CML function has discrete time and discrete space with continuous state. It is being used widely for implementing chaotic cryptosystem in the current research scenario [21, 28,29,30]. It performs well in encryption due to its intrinsic properties like large key space, longer periodicity, more initial parameters and parallel implementation [21]. There are two profound advantages of CML. The first is that CML can be efficiently managed numerically as well as analytically [31]. The other and most important merit is that CML incorporates the crucial features of spatiotemporal chaos. Spatiotemporal chaotic systems produce self-synchronizing stream cipher, consequently providing a more secure encryption as compared to both low-dimensional chaotic systems [32,33,34,35] and hyper-chaotic systems [4, 36, 37]. The spatiotemporal features allow CML to overcome the weakness of encryption efficiency, security and inability to resist chosen-plaintext and known-plaintext attacks. Moreover, the spatiotemporal features also instill high and positive Lyapunov exponents, superior key space, greater ergodicity and inaccurate prediction of chaotic sequences, thereby proving that CML is a better solution for data protection [38]. The two-dimensional dynamical map of CML is mathematically expressed as [39, 40]:

$$x_{i + 1} \left( n \right) = \left( {1 - \delta } \right)f\left( {x_{i} \left( n \right)} \right) + \delta f\left( {x_{i} \left( {n - 1} \right)} \right)$$
(2)

where n is lattice site index and can have maximum value equal to lattice length L, i.e., n = 1, 2, ……L., xi(n) defines the state variable of nth site at time i., δ represents coupling strength and lies in the unit interval (0,1) and function f is chaotic logistic map function.

Although a chaos system possesses well-defined properties for encryption, the computer realization of low-dimensional chaos system is a fundamental problem that persists. Due to the finite precision in computer simulation, it is difficult to produce a complete chaotic orbit by the trajectories of that chaotic system [41]. Infinite precision is required for determinism of long-term chaotic behavior. The chaotic system produces different initial states due to its periodicity, and hence, observations cannot be determined [42]. Precisely, there are mainly two problems that occur due to this finite precision of computer systems: transitory time to periodic orbits and average period. However, CML falls in the category of spatiotemporal chaotic system which shows chaotic properties in both time and space [14, 32, 43,44,45]. Due to multiple chaotic coupled oscillators present in spatiotemporal systems, CML exhibits a periodicity larger than that of temporal chaotic systems [46]. Hence, the sufficiently large period of the CML chaotic orbit is hardly ever reached in practical conditions, thereby avoiding the concern of periodicity [31].

2.2 Deoxyribonucleic acid (DNA)

Nowadays, DNA computing is being used as a popular tool for developing higher security cryptosystems. DNA-based image cryptosystems use DNA as a source to carry information and use DNA computing methods for achieving encryption [19]. DNA has four nucleic acid bases that are adenine (A), cytosine (C), guanine (G) and thymine (T) where A is reciprocal of T and G is reciprocal of C and vice versa. These relationships are termed as Watson–Crick complement rule given by the two scientists. Similar to the conventional binary operations, the DNA sequences also have addition, subtraction and XOR operations. Table 1 gives the DNA encoding rules, and Table 2 shows DNA XOR operation that is used widely for performing encryption.

Table 1 DNA encoding rules
Table 2 DNA XOR operation

2.3 Multi-objective optimization

The objectives in many real-time problems are conflicting with each other, so optimization using one objective may provide an unacceptable result with respect to another objective. Therefore, optimization using more than one objective, which satisfies the objectives at an acceptable level, is preferable [25]. A multi-objective optimization is formulated as [25, 47, 48]:

$${\text{Min}}\;or\;{\text{Max}}\;q = f\left( p \right) = \left( {\left( {f_{1} \left( p \right),f_{2} \left( p \right) \ldots \ldots \ldots f_{n} \left( p \right)} \right)\left| {\begin{array}{*{20}c} {p = \left( {p_{1} ,p_{2} \ldots \ldots p_{n} } \right)\EUR P} \\ {q = \left( {q_{1} ,q_{2} \ldots q_{m} } \right)\EUR Q} \\ \end{array} } \right.} \right)$$
(3)

where P is the parameter space corresponding to decision vector p and Q is the objective space corresponding to objective vector q.

The simultaneous optimization of multiple objectives has a set of alternate solutions that are known as the non-dominated or Pareto-optimal solutions. For these solutions, one objective cannot be improved without degrading other objective. The Pareto sets or non-dominated solutions show different trade-off or compromises between the objectives [25].

Genetic algorithms can explore for many non-inferior solutions equally by maintaining a population of solutions, which makes GAs very interesting for dealing with multi-objective problems. Genetic algorithm has been successfully applied in image encryption algorithms that are proposed in [2, 23, 24]. The algorithms proposed in [2, 24] use single objective, and algorithm in [23] converts the bi-objective problem to single objective by using weighted sum approach [49, 50]. However, weighted sum approach also requires prior information about the weights to be assigned to each objective. The proposed approach uses multi-objective GA that adds the obtained non-dominated solutions to the population.

3 Proposed method

This section discusses the proposed approach to encrypt the image. The algorithm mainly consists of six steps.

3.1 Image input and shuffling using CML

The first step converts the two-dimensional gray scale image into a one-dimensional array. Then, this one-dimensional array is shuffled using location map generated using CML function. The pseudo-code shows how a shuffled image is obtained using the CML function.

figure a

3.2 DNA encoding

The shuffled image of step one is converted into DNA sequence using DNA encoding rules. The pseudo-code describes how second step is performed using the input shuffled image from the first step.

figure b

3.3 Secret key generation using PRNG function

The third step of the proposed algorithm generates the secret key using the PRNG function [51]. The function has been used to increase the security. The initial condition x0 and control parameter a are calculated using 32 digits of hexadecimal that are of 128 bits. This secret key is divided into four sections for the calculations of parameter and initial condition as described in [52,53,54]. The pseudo-code shows how this step of proposed approach is performed.

figure c

3.4 GA initialization and fitness function calculation

This step of proposed method initializes the parameters of GA, and random initial population is generated. The parameters of evolutionary algorithms, including GA, depend on the specific problem. Different combinations of the GA parameters such as population size (e.g., 10, 20, 30), mutation rate and crossover rate have been tested using multiple runs of the proposed algorithm to evaluate entropy and CC parameters. The combination with population size of 20, mutation rate of 0.06 and crossover rate of 0.6 produced better results. Hence, the said GA parametric values have been used to obtain the results. The pseudo-code shows the parameter initialization and population generation for the GA.

figure d

3.5 Pareto-front computation and multi-objective optimization

The step five of the proposed algorithm computes the Pareto-front by applying multi-objective optimization. The two objectives used are entropy and correlation coefficient (CC). The entropy has been maximized, and the CC has been minimized simultaneously to obtain the non-dominated set of solutions. Each time the current generated Pareto solutions are concatenated with the population of the previous iteration to have the input population for the next iteration. The pseudo-code gives the detailed description of the optimization and computation performed.

figure e
figure f

3.6 Image fusion and mask

The final step of the proposed approach chooses the solution with the maximum entropy value. The DNA XOR operation is used to obtain the encrypted image. The pseudo-code describes how cipher image is created using the XOR operation.

figure g

4 Simulation and result analysis

The current section discusses the simulation details, input details and performs analysis of the proposed encryption algorithm in terms of different parameters. A system with an i-7 processor, Windows 10 operating system, and the MATLAB version 2013 has been used for the implementation. As described in the previous section, an initial population of size 20 with mutation rate of 0.06 and cross over rate of 0.6 has been used. A total of 1000 iterations are used to obtain the simulation results.

4.1 Test set

The proposed algorithm has been tested using three different grayscale images “Pepper,” “Lena” and “Onion” as shown in Fig. 3. Each testing image is of size 256*256. As described by the results in the figure, the encrypted images have no relationship with the source images. Hence, a good encryption results are shown by the proposed algorithm.

Fig. 3
figure 3

Histogram analysis and encrypted image

4.2 Key sensitivity analysis

A good encryption is the one that is sensitive to changes in its keys and makes brute-force attack difficult. There are two ways to determine key sensitivity as given in [55] that are: (i) when a same image is encrypted using secret keys having nominal difference, the resulting encrypted images must be completely different, and (ii) when an encrypted image is decrypted using a decryption key slightly different from the encryption keys, the correct plain image cannot be obtained.

First, the plain image shown in Fig. 2a is encrypted using two secret keys having a slight difference, which are x0 = 0.345687650000123 and x0 = 0.345687650000124. The resulting two encrypted images are shown in Fig. 2b and in Fig. 2c, which have a difference of 99.64%. Secondly, when the plain image encrypted with x0 = 0.345687650000123 is decrypted using the decryption key with x0 = 0.345687650000122, the decrypted image is different from the original image. The resulting decrypted image is shown in Fig. 2d. Thus, the algorithm shows high key sensitivity.

4.3 Key space analysis

This analysis examines the ability to resist the brute-force attack which depends on the number of keys possible in the encryption algorithm. This paper uses PRNG to generate128 bit secret key, which thus makes the keyspace as large as 2128. This large keyspace satisfies the basic requirement to resist brute-force attack which says that key space must have more than 2100 possible keys to resist an exhaustive attack [54].

4.4 Histogram analysis

A uniform histogram makes it difficult to attack image data statistically. As shown in Fig. 2, the unencrypted source image histogram has a number of pixel values concentrated in some area, while the histogram of the encrypted image is uniform. The magnitude of uniformity for all three image data set specifies the efficiency of the proposed image encryption algorithm.

4.5 Entropy analysis

Entropy analysis defines the magnitude of uncertainty and randomness. An algorithm with the large information entropy value is considered to be more secure than the algorithm with the low entropy value. The entropy, H(s) given in Eq. (4), of any image is defined as a function of number of gray levels used in image N and probability of the occurrence of symbols P(si) [2].

$$H\left( s \right) = \mathop \sum \limits_{i = 0}^{2N - 1} P(s_{i} )\log_{2} \left( {\frac{1}{{p\left( {s_{i} } \right)}}} \right)$$
(4)

The proposed work has evaluated information entropy using entropy only fitness function of the Pepper image with respect to a number of iterations with all three chaotic functions LM, TLM and CML using entropy only fitness function. Two hundred iterations are taken into consideration to compute the information entropy. Figure 4 shows that the CML–DNA–GA approach gives the highest entropy. Also, it converges faster than the LM–DNA–GA and TLM–DNA–GA combinations.

Fig. 4
figure 4

Peppers_entropy

Fig. 5
figure 5

Pepper_CC

Table 3 and Fig. 6 show that the entropy value obtained by the proposed algorithm is closer to eight that is considered as an ideal value for a good encryption algorithm. It can be observed from the results of Table 3 that using Entropy and CC simultaneously as a fitness function gives balance results with respect to both the fitness functions, whereas using a single fitness function degrades the performance of the algorithm with respect to other fitness function.

Table 3 Comparison using different fitness functions
Fig. 6
figure 6

Pareto front computation

4.6 Correlation coefficient (CC) analysis

Correlation coefficient (CC) for an efficient and secure encryption algorithm should have value close to zero. The correlation coefficient between two adjacent pixels is computed by using Eqs. (5)–(8).

$$COV\left( {x,y} \right) = \frac{1}{N}\mathop \sum \limits_{i = 1}^{N} \left( {x_{i - } E\left( x \right)} \right)(y_{i} - E\left( y \right))$$
(5)
$$E\left( x \right) = \frac{1}{N}\mathop \sum \limits_{i = 1}^{N} x_{i}$$
(6)
$$D\left( x \right) = \frac{1}{N}\mathop \sum \limits_{i = 1}^{N} (x_{i - } E\left( x \right))^{2}$$
(7)
$$r_{xy} = \frac{{\text{cov} \left( {x,y} \right)}}{{\sqrt {D\left( x \right) \times \sqrt {D\left( y \right)} } }}$$
(8)

where E(x) is expectation or mean, D(x) denotes variance and cov(xy) computes the covariance. Also, x and y are the gray values of two adjacent image pixels.

The proposed work has evaluated CC using CC only fitness function of the Peppers image with respect to the number of iterations with all three chaotic functions LM, TLM and CML. Two hundred iterations are taken into consideration to compute the CC. Figure 5 shows that the CML–DNA–GA approaches to zero value faster than the other two methods and also, has better CC value than the LM–DNA–GA and TLM–DNA–GA combinations.

Table 3 and Fig. 6 show the CC obtained by the proposed algorithm for the all three image data set. It can be observed from the results of Table 3 that using Entropy and CC simultaneously as a fitness function gives balance results with respect to both the fitness functions, whereas using a single fitness function degrades the performance of the algorithm with respect to other fitness function.

4.7 Analysis of differential parameters

Intruders try to attack the encrypted images by analyzing how making slight changes in the input can affect the output. To analyze the effect of one-pixel change, two parameters number of pixels change rate (NPCR) and unified average changed intensity (UACI) are commonly used. NPCR given by Eq. (9) is the pixel change rate with respect to one-pixel change in the plain image, and UACI given by Eq. (10) computes the average intensity difference between the plain and the encrypted image.

$$NPCR = \frac{{\mathop \sum \nolimits_{i,j} D\left( {i,j} \right)}}{W \times H} \times 100\%$$
(9)

where a D(ij) is a two-dimensional array having the same size as the encrypted images

$$UACI = \frac{1}{W \times H}\left[ {\mathop \sum \limits_{ij} \frac{{C_{1} \left( {i,j} \right) - C_{2} \left( {i,j} \right)}}{255}} \right] \times 100\%$$
(10)

W = width of C1 and C2, H=Height of C1 and C2, where C1(ij) and \(C_{2 } \left( {i,j} \right)\) are corresponding images to the original images that have only one-pixel difference. Table 3 shows the NPCR and UACI values evaluated by the proposed image encryption algorithm.

4.8 Comparison with earlier proposed techniques

This section gives comparison of the proposed approach with the earlier proposed approaches in [1, 2, 23, 24]. The proposed algorithm has the better key space as is proposed in [1]. Undoubtedly, the LM map used in [2] and [23, 24] is the most commonly used and mathematically simplest to implement. However, as described in Fig. 1 earlier it suffers from various limitations. Hence, the proposed work uses CML location map that outperforms the LM location map used in [2, 23, 24]. It uses multi-objective optimization that offers better results than the weighted sum approach used by the authors of [23]. Also, the proposed approach opens a new area of multi-objective optimization of image encryption techniques for future work in the field of image encryption (Table 4).

Table 4 Comparison with earlier proposed techniques

5 Conclusion and future work

The authors in [2] proved that CC is a better optimizer than entropy. However, in their extended work in [24], entropy is used as fitness function. In [23], weighted sum GA is used for having balanced results with respect to both entropy and CC. The prime objective of the implemented work is image encryption with the aid of DNA and multi-objective GA optimization. The discussed work computes the Pareto fronts by using two fitness functions Entropy and CC simultaneously. The performance of the proposed algorithm has been tested using standard parameters, and comparison has been done with some recently proposed techniques. The work can further be extended by combining more encryption methods with more advanced multi-objective optimization techniques.