A robust gray image encryption scheme using chaotic logistic map and artificial neural network (ANN) is introduced. In the proposed method, an external secret key is used to derive the initial conditions for the logistic chaotic maps which are employed to generate weights and biases matrices of the multilayer perceptron (MLP). During the learning process with the backpropagation algorithm, ANN determines the weight matrix of the connections. The plain image is divided into four subimages which are used for the first diffusion stage. The subimages obtained previously are divided into the square subimage blocks. In the next stage, different initial conditions are employed to generate a key stream which will be used for permutation and diffusion of the subimage blocks. Some security analyses such as entropy analysis, statistical analysis, and key sensitivity analysis are given to demonstrate the key space of the proposed algorithm which is large enough to make brute force attacks infeasible. Computing validation using experimental data with several gray images has been carried out with detailed numerical analysis, in order to validate the high security of the proposed encryption scheme.
Many applications like military images databases, confidential video, medical imaging systems, cable TV image, and online personal photograph album require reliable, fast, and robust security system to store and transmit digital images [
Most of the above image encryption schemes developed are more complicated and may be difficult to implement in real time. This is the main motivation of the proposed algorithm in this paper where a simple and efficient method for gray image encryption scheme based on chaos and multilayer perceptron (MLP) ANN techniques is investigated. The proposed algorithm satisfies the requirements of secure image encryption. Firstly, we use an external secret key on chaotic logistic map to initialize biases and weights matrices of the MLP. During the training process with the backpropagation algorithm, the MLP determines the weights matrix of connections which will be used for the first diffusion stage. Secondly, a chaotic sequence is generated from the chaotic logistic map to permutate the pixels positions on the subimage. Finally, we use the same chaotic logistic map with different parameters and different initial conditions to diffuse the subimage of the whole image. In the last two stages, the initial conditions of chaotic logistic maps are variable among subimages. The resulting cryptosystem algorithm possesses most of the diffusion and confusion properties. The computing results provide better performances compared to those obtained in [
The rest of the paper is organized as follows. Section
In this section, we present the new step-by-step image encryption algorithm. In the proposed encryption scheme, the image is encrypted using chaos and ANN as shown in Figure
Block diagram of the proposed scheme.
The proposed image encryption algorithm utilizes an external secret key of thirty-two decimal numbers. Let “ABCDEFGHIJKLMNOPQRSTUVWZ ABCDE refers to the parameter of the first chaotic logistic map. FGHIJ refers to the parameter of the second chaotic logistic map. KLM gives the initial condition of the input biases of MLP. NOP gives the initial condition of the input weight of MLP. QRS gives the initial condition of the output biases of MLP. TUV gives the initial condition of the output weight of MLP. WZ is the total number of hidden layers in MLP.
In the proposed algorithm, two chaotic logistic maps are used to achieve the goal of image encryption which are as follows:
The aim of this part is to generate the matrix code from the plain image which would be used in the first step of diffusion operation. At the end of the training process, the ANN produces the biases and weights matrices code
The type of neural network used in this paper is multilayer perceptron (MLP) trained with the well-known backpropagation algorithm. This structure is composed of one neuron in input layer, eight neurons in the hidden layer, and one node in output layer as as shown in Figure
Multilayer perceptron structure.
In Figure
The process of the forward propagation of the training algorithm is given as follows:
The process of the backward propagation of the training algorithm is given as follows:
The different steps of the algorithm are described as follows.
The image to be encrypted is divided into two sets.
One fundamental issue is how to adapt the weights of the MLP to achieve a given input/output map and choose reasonable network learning parameters (learning rate
The learning rate
The size of training set is
The output sample
The weights and biases connection are updated using (
A root mean square error (RMSE) is used as a performance index to evaluate a training accuracy as follows:
The actual outputs can be calculated using the weights and biases obtained in the training stage (Steps
At the end of the test process, the inverse transformation of “mapminmax” function (see Step
This step is the first step of substitution in the encryption process. Here, we used the matrix code
The change of the pixel location is a second step of our encryption image algorithm. Equation (
In this step, we change the pixel value of the subencrypted block (obtained from Section
Generate an external secret key. Calculate Generate the matrix code Divide a plain image into four subimages. Divide the matrix code Divide subimage Take the first block The result obtained in Step 7 is now the code for a next block Repeat 7 and 8 on the whole subimage Divide Generate permutation sequence using ( Generate masking sequence from ( Repeat Steps 11 and 12 on the whole Repeat Steps Repeat Steps
Some computing results using experimental data are given in this section in order to demonstrate the efficiency of the proposed scheme. Several gray-scale images are evaluated. The duration of the training process in the case of Baboon image is one min (using Intel(R) core (TM) i3-2328M CPU 2.20 GHz, RAM 4Go). For the evaluation of encryption quality, the correlation coefficient (C.O) is used and is calculated as [
Comparative results.
Image parameters | Correlation coefficients | Entropy information | ||||||
---|---|---|---|---|---|---|---|---|
Image name | Size | Type |
Fouda et al. [ |
Proposed scheme | Fouda et al. [ |
Proposed scheme | ||
Girl (Lenna) |
|
Gray |
|
|
|
|
|
|
Baboon |
|
Gray |
|
— |
|
|
— |
|
Peppers |
|
Gray | — |
|
|
— |
|
|
Correlation coefficients and entropy information between the gray image and corresponding cipher image of several USC-SIPI images databases and some medical images. The encryption has been done using the secret key “23421100452972604309100881297041.”
File name | File description | Size | Correlation coefficients | Entropy information |
---|---|---|---|---|
|
Girl |
|
|
7.9975 |
|
House |
|
|
7.9975 |
|
Clock |
|
|
7.9971 |
|
Girl (Lenna) |
|
|
7.9994 |
|
Baboon |
|
|
7.9993 |
Elaine. 512 | Girl (Elaine) |
|
|
7.9993 |
|
Peppers |
|
|
7.9992 |
Boat. 512 | Fishing Boat |
|
|
7.9993 |
|
Truck |
|
|
7.9994 |
— | Toxoplasma gondii |
|
|
7.9993 |
— |
|
|
|
7.9993 |
— |
|
|
|
7.9993 |
— | Plasmodium falciparum |
|
|
7.9958 |
— |
|
|
|
7.9994 |
|
Man |
|
|
7.9998 |
Encryption by the proposed scheme using the secret key “23421100452972604309100881297041.” Frames (a) and (b) show a plain image “Lenna” and its corresponding cipher image, respectively. Frames (c) and (d) show a plain image “Baboon” and its corresponding cipher image, respectively. Frames (e) and (f) show a plain image “
A good encryption scheme should resist against all kinds of known attacks, such as known-plain-text attack, cipher text attack, statistical attack, and various brute force attacks [
A good image encryption algorithm should be sensitive to the cipher keys, and the key space should be large enough to make brute force attacks infeasible. For the proposed image encryption algorithm, key space analysis and testing have been performed and completely carried out and the results are summarized as follows.
The encrypted image (Figure The encrypted image (Figure The encrypted image (Figure The encrypted image (Figure
With a slight change in the key, one is unable to find any clue about the original image from the decrypted image. To compare the decrypted images, we have calculated the correlation coefficient. The results are given in Table
Correlation between various decrypted images shown in Figure
Correlation coefficient between various decrypted images shown in Figure |
|
---|---|
Figures |
|
Figures |
|
Figures |
|
Figures |
|
Figures |
|
Figures |
|
Frames (a)–(d) show the decrypted images from the encrypted image of Figure
Statistical analysis on the proposed image encryption algorithm shows superior confusion and diffusion properties which strongly resist statistical attacks. This can be shown by a test on the histograms of the enciphered images and on the correlations of adjacent pixels in the ciphered image [
Histogram analysis: frames (a) and (b) show a plain image “Lenna” and its corresponding cipher image, respectively. Frames (c) and (d) show histograms of images shown in frames (a) and (b), respectively.
Correlation coefficients of two adjacent pixels in original and encrypted images.
Images | HC | VC | DC |
---|---|---|---|
Girl |
|
|
|
House |
|
|
|
Clock |
|
|
|
Girl (Lenna) |
|
|
|
Baboon |
|
|
|
Girl (Elaine) |
|
|
|
Peppers |
|
|
|
Fishing Boat |
|
|
|
Truck |
|
|
|
Toxoplasma gondii |
|
|
|
|
|
|
|
Plasmodium falciparum |
|
|
|
|
|
|
|
Information entropy, introduced by Pareek et al. [
Another desirable property for the proposed cipher is its sensitivity to small changes in the plain image (single bit change in plain image). To test the influence of one-pixel change on the plain image encrypted by the proposed cipher, two common measures may be used, number of pixels change rate (NPCR) and unified average changing intensity (UACI) [
NPCR and UACI of some ciphered images.
Images | Girl (Lenna) | Baboon | Girl (Elaine) | Peppers | Toxoplasma gondii |
|
---|---|---|---|---|---|---|
NPCR |
|
|
|
|
|
|
UACI |
|
|
|
|
|
|
In this paper, a robust gray image encryption scheme based on chaotic logistic map combined with artificial neural network has been proposed. In the proposed image encryption scheme, an external key of 128 bits, two chaotic logistic maps, and multilayer perceptron have been used to confuse the relationship between the cipher image and the plain image. The main feature of this algorithm is that it is easily implementable and hence more suitable for image encryption applications. Computing results using experimental data and security analysis have shown that our proposed scheme provides better performance than some recent results of literature.
The authors declare that there is no conflict of interests regarding the publication of this paper.