1. Introduction
With the rapid progress in digital technology and mobile devices, people have produced more and more user-generated information in these few years; besides texts, most of them are multimedia data, such as images and videos. With the increasing of information security and privacy protection issues, researchers have proposed lots of encryption algorithms [
1] against unauthorized access to those user-generated media data.
As suggested in [
2], the main techniques used to develop image encryption algorithms can roughly be divided into the following six categories: chaotic map, DNA computing, cellular automata, wavelet transmission, neural networks, and compressive sensing. The extreme initial value sensitivity and high randomness of the chaotic systems make the chaotic maps the most popular tool in digital image encryption algorithms. This is because the chaotic systems have some useful properties, like being ergodic, highly sensitive to initial conditions, and pseudo-randomness, which fit the essential requirements for building a practical cryptosystem [
3]. Fridrich [
4] proposed the first image encryption algorithm based on a chaotic map in 1998. After that, a large number of digital image encryption algorithms that were based on chaotic maps were proposed [
3], and the references therein. Since Liu et al. addressed lots of the chaotic map-based image encryption algorithms published on signal processing and information technology-related Journals before 2019, our following discussions will mainly focus on related works [
5,
6,
7,
8,
9,
10] posted on the Entropy Journal, most recently.
In order to prevent an Image exchanging system from brute force and differential attacks, [
5] presented a new image encryption mechanism, in which the Enhanced Logistic Map (ELM) and some simple encryption techniques, such as block scrambling, modified zigzag transformation, and chaotic-map based key generation, are used. The results of encryption are evaluated from six different security measures. The corresponding results demonstrate the security, reliability, efficiency, and flexibility of the proposed method. Sine-Tent map (STM) is intended in [
7] to widen the chaotic range and to improve the shambolic performance of one-dimensional (1D) discrete chaotic maps. Based on STM, a novel double S-box based color image encryption algorithm is recommended, which offers better applicability in real-time image encryption. Notice that, in [
7], the 256-bit hash value of a randomly sampled noise signal is applied to serve as the one-time initial values of the proposed system. Since there is only one operation, XOR, is used to diffuse the pixels; the encryption process can be executed very fast. [
8] presents a chaotic-map based image encryption algorithm, where Logistic and Henon maps are used.
High key and high plaintext sensitivities are a must for a cryptosystem to resist the chosen/known plaintext and the differential attacks. High plaintext sensitivity can be achieved by ensuring that each encrypted result is plaintext-dependent. To reach this goal, [
9] suggested that the surrounding of a plaintext image could be surrounded by a sequence generated from the SHA-256 hashed value of the corresponding plaintext. For conquering the same challenges, in [
10], both the permutation and the diffusion stages of the proposed color image encryption scheme are related to the original plain image. For keeping high system efficiency, only one round of plaintext tied permutation and diffusion operations are performed for obtaining the cipher image. Moreover, the proposed approach can be applied to real-time image encryption directly since there is no need to send original image dependent security keys to the receiver. Our work is highly inspired by and related to [
10]; we will explore it further in the next section.
In general, the analyses of encryption and decryption algorithms show that all of the algorithms, as mentioned above, have a good encryption effect, anti-attack ability, and high security. However, a minor designing flaw may make encryption algorithms vulnerable, even if they are chaotic-based. In the following, we will take the high plaintext sensitivity related work: “A simple Chaotic map-based Image Encryption System Using Both Plaintexts Related Permutation and Diffusion (CIES-UBPRPD)”, as proposed by Huang et al. [
10], as an example to illustrate our above statement.
In a plain data-dependent cryptosystem, like CIES-UBPRPD, the cryptanalysis complexity is mostly increased. Therefore, the security level of the system will also be enhanced. Even though the experiments given in CIES-UBPRPD [
10] showed lots of advantages when compared with conventional approaches, some designing flaws have been found by us. In this work, we first break a simplified version of CIES-UBPRPD with a chosen-plaintext attack, to demonstrate the effect of the discovered flaws. Subsequently, we make a few adjustments on CIES-UBPRPD and show that the modified version does relieve the defect of the original CIES-UBPRPD.
The rest of this paper is organized, as follows.
Section 2 briefly describes the process of CIES-UBPRPD. In
Section 3, we pointed out some design flaws of CIES-UBPRPD and demonstrated the effects of the weaknesses by issuing a chosen-plaintext attack against a simplified version of it. Afterwards, a modified version of CIES-UBPRPD is provided in
Section 4. With the added supplements, the security level and the completeness of CIES-UBPRPD can be enlarged significantly. Some experimental results of the modified CIES-UBPRPD are presented in
Section 5, in order to verify our previous claim, where the associated security analysis is also included. Finally,
Section 6 concludes this writeup.
2. Related Work
In the original CIES-UBPRPD [
10], all the arrays are started with index one, while in this work, we use an equivalent description but change all array indexes starting from zero. For the ease of discussion, except for the array indexes, most of our notations follow the usage that was adopted in [
10].
2.1. The Involved Chaotic Maps
2.1.1. Generalized Arnold’s Cat Map
Arnold’s Cat Map (ACM) is a well-known two-dimensional chaotic system proposed by the Russian mathematician Vladimir I. Arnold [
11]. ACM is usually replaced by its generalized form to achieve higher security and higher randomness, as shown in Equation (1):
where
and
denote the positions of the original pixel and the target pixel,
and
are the system parameters, while
and
are the image’s height and width, respectively. After obtaining the target position
, from Equation (1), the two pixels that are located at
and
will swap their pixel values with each other.
2.1.2. Chebyshev Map
Chebyshev map [
12] is a one-dimensional chaotic system that can be formulated, as shown in Equation (2):
where
and
is again one of the system parameters. For
, chaotic behavior of Equation (2) holds. The initial value
of the above equation is considered as part of the secret key. In CIES-UBPRPD,
is fixed at 4.
2.2. Image Encryption Algorithm
On the bases of ACM and Chebyshev map, the above-mentioned Chaotic map-based Image Encryption System—CIES-UBPRPD—was proposed by Huang et al. [
10], where the most eye-catching property of the algorithm is its plaintext data-dependent encryption process. The encryption process of the original CIES-UBPRPD consists of the following two stages:
2.2.1. Permutation Stage
Step 1. Iterate the Chebyshev map defined in Equation (2)
times, discard the first
terms to avoid the harmful effect, and obtain the chaotic sequence
, which contains
elements.
Step 2. Generate another sequence
according to
where
and
denotes bitwise XOR operator.
Step 3. Calculate
,
, and
based on the following equations:
where
,
, and
represent the Red, Green, and Blue channels of the plain image
, respectively.
Step 4. Calculate the system parameters by using the following equations:
where
,
, and
are pairs of parameters used to permute
,
, and
respectively. Moreover, mod (
x, m) denotes the calculation of “
x mod m”.
Step 5. Permute
,
, and
using the following modified Cat Map with the corresponding parameters:
where
and
. The scanning sequence is started from left to right and from top to bottom. After
,
and
are shuffled, we get the permuted image
.
2.2.2. Diffusion Stage
Step 1. Transform , , and into three on-dimensional (1D) arrays , , and , respectively, by row-major ordering.
Step 2. Calculate the diffusion matrix
according to
where
.
Step 3. Calculate
,
, and
by using the following equations:
where
, and
.
Step 4. Transform , and into three grayscale images with size , and then merge them into one color cipher image with size .
Notice that the permutation processes executed in Step 5 involved parameters
,
and
, which are input (plaint) image data-dependent (cf. Equations (4) and (5)). Notice that, as pre-described in
Section 1, the encryption process only includes one round permutation stage and diffusion stage. Conceptually and theoretically, if the encryption process of a cryptosystem is plaintext data-dependent, the associated cryptanalysis is much complicated. Therefore, the corresponding security level of the system is much enhanced, as compared with its data-independent counterpart.
2.3. Image Decryption Algorithm
Similarly, also from [
10], the decryption process of the original CIES-UBPRPD consists of the following five steps:
Step 1. Transform , and into three 1D arrays , and , respectively, by row-major ordering.
Step 2. Calculate the diffusion matrix based on Equation (7).
Step 3. Calculate the system parameters by using the following equations:
Step 4. Reconstruct
,
and
according to
where
and
. Then transform these three arrays into 2D arrays
,
and
, respectively.
Step 5. Reconstruct , and by using the Cat Maps defined in Equation (1), but now the scanning sequence is started from right to left and from bottom to top.