1. Introduction
Nowadays, digital image encryption is an evolving technique in the digital communication network arena. Security concerns arise when these images are required to be transmitted or stored over numerous networks. Additionally, digital images are crucial concerns in many uses, such as military information, telemedicine applications and cloud computing. Therefore, ensuring the security, honesty and strength of digital medical imaging has become an imperative topic for numerous researchers [
1,
2,
3]. Distinctive properties between image and text, such as large data space and strong interconnection within pixels, make some conventional encryption techniques inconvenient for digital image encryption. Images are not well suited to encode algorithms used for text data, and their encryption algorithms can lead to problems such as leakage of contour information, low efficiency, etc. [
4,
5].
The chaotic system has been famous for the sensitivity of primary conditions and parameters, pseudo randomness, ergodicity and reproduction, which was first proposed by Lorenz [
6]; it has also been appropriate for digital image encryption. Several chaos-based on image encryption have been introduced since Matthews introduced the first algorithm for image encryption based entirely on chaos [
7]. Chaotic systems are generally used to generate a pseudorandom key from a key or plaintext. When generated from a pseudorandom key, a stream cipher is produced, while when generated from plain text, a block cipher is produced. Images are encrypted chaotically through confusion and diffusion. Pixels of the image are scrambled in the confusion level using a secret key according to the control parameters. While in the diffusion stage, chaotically generated sequences are used to change pixels’ values. These techniques make chaotic encryption extremely secure. In recent years, numerous chaotic image encryption schemes using the integral order chaotic systems have been overtly (publicly) proposed [
8,
9,
10,
11,
12,
13].
Fractional-Order Hyperchaotic Systems (FOHS) exhibit higher nonlinearity and degrees due to their geometrical interpretation of fractional derivatives included in the expressions for nonlocal effects in either space or time [
14,
15]. This means that this kind of chaotic system has great ability to protect sensitive information. As a counterpart to stream ciphers (RC4, Spritz, Salsa, etc.) and in addition to pseudo randomness, FOHS exhibits extreme sensitivity to primary values and parameter settings, as well as ergodicity and unpredictability, making it ideal for image encryption. FOHS presents many advantages over stream ciphers since the substitution and diffusion primitives of chaotic maps change based on initial conditions. Thus, fractional order hyperchaotic systems can play an important role in information security.
Wang et al. [
15] applied the FOHS for securing color images by embedding the system parameters as well as the derivative order into the system. In [
16,
17] Wu et al. and Zhao et al., respectively applied 3D FOHS and Chen chaotic systems in ciphering their color images. While Huang et al. applied 4D FOHS based on neural network scheme for encrypting color images, where the measurements proved the efficacy of the scheme [
18].
In DNA, there is enormous parallelism and an extremely high information density, which make DNA cryptography an excellent tool for securing end-to-end communication. Adleman [
19] completed a DNA computing experiment. The DNA cryptography algorithm has been incorporated into numerous image encryption systems. DNA cryptography have extensive use of the advances of the DNA molecules, as extreme-high storage bulk, extreme-low energy consumption, and the potential of ultra-large-scale parallel computing to achieve the cryptographic functions of information encryption. Gehani et al. [
20] set the DNA cryptography foundation using molecular approach and one-time pad concept, which has perfect privacy. Later then, after Gehani approach, numerous image encryption algorithms based on DNA cryptography emerged among the public [
21,
22,
23,
24,
25,
26]. Zhang et al. [
27] proposed an algorithm, which disturb the locations and values of the pixels using chaotic system and applying DNA cryptography, where the pseudo-DNA operations are controlled by the quaternary chaotic sequences. Based on DNA computing, Xie et al. [
28] concluded that an image encryption system would not be secure if only a scramble processing step was implemented. Liu et al. [
29] broke the encryption system based on DNA computing by applying chosen plain-images, and their cryptosystem-retrieved cipher-images have to be capable of resisting differential attack.
Secure protocols and standards based on cryptography need various computations and transmissions. As a result, faults are inevitable. Previous studies have proposed various strategies to detect and correct one or several errors. In particular, research focuses on the fault-tolerant techniques of block ciphers and public-key cryptography. Depending on the structures of the algorithms, the Algorithm Based Fault Tolerant (ABFT) technique provides a common process for designing fault tolerant structures by altering the algorithm computation in order to achieve additional data for discovering and correcting error [
30,
31,
32,
33]. The ABFT use of the same arithmetic operations of the targeted system and gives a theoretical approach to designing a fault tolerant form of the system. It does not require an additional arithmetical logic unit and has relatively low overhead. ABFT can be effectively integrated into stream ciphers. Zhang, Lee and Tsai have proposed two efficient fault-tolerant schemes based on the RSA cryptosystem, respectively, in 1999 and 2003 [
34,
35]. The vulnerability of Zhang’s scheme was pointed out by Iuon-Chang Lei et al. [
36]. Using RSA-based transpose matrix, Shreenath Acharya, Sunaina Kotekar, and Seema S Joshi enhanced Iuon-Chang Lei et al.’s scheme with an extra level of security [
37]. In 2016, H Elkamchouchi et al. proposed a method for improving digital signature scheme based on fault tolerance to help speed up decryption, as well as to overcome several common attacks [
38]. Furthermore, it enhances security by converting the original message into a transposed matrix. In the same year, a new key agreement protocol based on factoring and discrete logarithms [
39].For each matrix of 3*3; the scheme can correct four errors at most.
In this article, a new secured cryptosystem using the fractional order hyperchaotic Lorenz system based on fault tolerance technique is presented to encrypt color image. The system is carried out through different forms of permutation to improve security level, as well as up to three errors that can be discovered and corrected through the performance of fault tolerance technique. The article is planned as follows: In
Section 2, a brief explanation of the fractional order hyperchaotic system, DNA encoding, and fault tolerance is provided.
Section 3 discusses the proposed algorithm for image encryption, while
Section 4 delivers numerical simulation results.
Section 5 examines the proposed scheme’s performance. This article is concluded in
Section 6.
3. Proposed Cryptosystem
The block diagram of the proposed cryptosystem illustrated in
Figure 2 consists of four main phases. In the first phase, the input color image is diffused through pixel level encryption stage, which is based on the generated fractional order hybrid chaotic map discussed in the first part. For more randomness to increase the efficiency of the encryption, the second phase, bit level permutation diffuses each bit from the output of binary conversion. In the third phase, DNA level encryption, as part of the hyperchaotic sequence, the bit stream of the image is encoded as DNA sequence. Then apply DNA mutations and 3-dimensional permutations to enhance the security of the shuffled information. Finally, the fourth phase is fault tolerance technique, which detects error through check sum insertion and digital signature and corrects it.
3.1. Synthesis of the Hyperchaptic Sequence
Considering that hyperchaotic systems are well suited in
Section 2.1, we use the 4-D chaotic system for image encryption. The sequence consists of three steps that are carried out according to the given algorithm.
Step 1. The FOHCL structure is first iterated N0 times, then the generated sequence is removed to prevent adverse effects.
Step 2. This process continues to iterate N = Ceil [40 (H × W) + 4 (H + W) + 14)/4] times where, H and W define as the size of the image. For the jth iteration, the FOHCL system generates four state values obtained from (1) which denoted by , .
Step 3. As a result of this iteration, fractional order hyperchaotic sequences can be achieved by concatenating all the above states as
To enable encryption, sort the sequence
into subsequences and serve it for two purposes: (1) implement permutations; (2) manipulate images for diffusion. Our scheme shows that we use original
values for the first purpose, but that we map the hyperchaotic sequence with n values to range of [0, 255] for the second purpose.
where
Si is the
ith integer sequence, mod is the modulo operation, | ⋅ | is the absolute value operation [
29].
3.2. Pixel Level Encryption
Step 1: Let M is the input image with size H × W. By using Equation (1), create a hyperchaotic sequence .
Step 2: Perform 2D pixel permutation, which means by row and column on M to obtain M0 by extracting the first entries from with size H + W.
Step 3: In order to obtain M1, we need to extract the next items from with size H × W to perform pixel permutation as follows:
Organize pixels, bits, and acid bases into a one-dimensional vector V with L = H × W/H × W × 8/H × W × 4.
Extract a subsequence from with the length of vector V and sort in ascending order to obtain ix, x = 1, 2,…, L.
A new vector V′ is created by rearranging V according to ix as follows:
Step 4: To obtain sequence S1, first extract the next items from with size H × W + 1 to form a new sequence S0. Next, map S0 to the integer interval [0, 255] from Equation (3) to produce S1. Assuming M1 has been converted globally by performing pixel diffusion; M2 can be obtained by taking S1 as the primary value and the remainder as the key. The geometrical image on pixels is diffused in two stages in our scheme.
The first stage diffusion can occur as:
where
S = {
si},
i = 1, 2,…,
L is the 1
D pixel sequence of the input image with length
L,
is the initial key
k is the key sequence which defined by
ki ∈ [0, 255].
The second stage diffusion can occur as:
Then obtain
D as a total pixel diffusion by applying XOR operation between (5) and (6).
Step 5: Encode M2 to a bit sequence MB to be with size H × W × 8.
3.3. Bit Level Encryption
Step 1: Three-dimensional permutation is a method of permuting planes in three dimensions in different directions. We will only provide the operation in direction of width here to simplify things due to the similarity of the operations in each direction as follows:
Create a subsequence of the chaotic sequence of length L = H
Reorder the plane p to get p′ by ascending the index sequence ix. x = 1, 2,… L
Step 2: Basically, this is step 3 in pixel level encryption, but we will use a subsequence with a length of L = H × W × 8
Step 3:MB1 can be obtained by performing bit permutation on MB using the next items from with size H × W × 8. For the next items with length H + W + 8 implement 3D-permutation on MB1 to get MB2
3.4. DNA Encoding and Level Encryption
In order to encode the bit stream of the input image following the rules decided by hyperchaotic sequence, the bit stream is encoded as a DNA sequence as follows:
Step 1: Calculate the sequence S2 by converting the next items of with size H × W × 4 to the integer interval of [0, 255] using Equation (3).
Step 2: In order to acquire
MD, encode the bits in
MB2 with the DNA nucleotide rule as follows:
Step 3: Apply 3D permutation on MD using the next items from with size H + W + 4 to acquire MD1
3.5. DNA Decoding
Step 1: Step 1 in the DNA encoding process is identical in order to obtain the S3 sequence.
Step 2: Using the DNA rule established in (9) for
MD1, encode the
ith strand of DNA to obtain the binary sequence
MB3:
Step 3:C1 is the cipher image generated from the binary sequence MB3.
Step 4: Obtain S4 with the same manner for obtaining S2 and S3
Step 5: From S4, generate random matrix R with size H × W then XOR the random matrix with the cipher matrix C1 to obtain a new cipher image C
3.6. Fault Tolerance
Step 1: Generate two prime vectors Pv1 and Pv2 with length W and H, respectively
Step 2: Creates a matrix
C′ with length (W + 1) × (
H + 1) matrix as follows:
where
and
where
H(.) is the hash value
Step 3: In order to check the validity of the recipient’s signature, the transmitter can now check:
Upon determining that they are true, the transmitter computes and checks the receiver’s signature. Upon receiving the valid signature, he sends the securely encrypted data to the recipient. Otherwise, errors have occurred in either the calculation phase or the transmission phase.
Step 4: A location where the error was discovered, and data corrections were needed can be determined
Case 1: If
and
, the pixel value at s-row and l-column is false and the correct one should be
Case 2: If
and
two pixels data at (
k1,
l) and (
k2,
l) are wrong and the correct ones should be
Case 3: If
three errors occur at
(k, l1), (
k, l2) and (
k, l3). The correct ones should be the following:
Up to three errors can be discovered and corrected.
4. Simulation Results
We compare the proposed scheme with existing schemes in order to assess its performance. Comparative analysis was performed on a variety of attacks, which included key sensitivity, plaintext sensitivity, differential attacks, brute force attacks, data crop attacks, and entropy attacks.
FOHCL initialized its initial values
with 10,000 iterations. In addition, a fixed value of 0.98 is provided for all the fractional orders
qi,
i = (1, 2, 3, 4). As shown in
Table 2, four images “Lena”, “Baboon”, “Peppers”, and “House” are used for testing the proposed algorithm. Matlab (R2015a) (Mathworks, Natick, MA, USA) is used to carry out all simulations on a 64-bit Windows 7 (Microsoft, Redmond, WA, USA) with 64 GB memory.
Figure 3 is a comparison of original images, ciphered images, and recovered images that was utilized in order to assess the performance of the proposed cryptosystem. Since the cipher images have been changed completely, it is impossible to determine their origin.