Abstract
Nowadays, multimedia data, especially, image security is a challenging task for all cryptographic researchers throughout the world. A time-efficient, secure, and simple bit-plane operated bit-level image encryption scheme is proposed in this paper to secure images. The proposed work performs bit-plane diffusion operation using piece-wise linear chaotic map (PWLCM) and bit-level column–row shuffling operation using Beta map. This method uses hash-based keys to prevent the algorithm against chosen-plaintext attack (CPA) and known-plaintext attack (KPA). The main significance of this algorithm is the improved key space \(\left( {1.0853 \times 2^{676} } \right)\) and time-efficiency (0.148 s required for encryption) using the simple encryption procedures. Security analyses and computer simulations indicate the good encryption result and stronger security in terms of higher key space, better time-efficiency, higher plaintext and key sensitivity of the proposed scheme.
Access provided by Autonomous University of Puebla. Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
Due to the advancements in Internet technology, large numbers of images are transmitted over the internet. As a result, privacy and security of images have become a major issue in the present scenario. Encryption is one of the well-known techniques to secure images against various attacks. Though various traditional encryption techniques [1, 2] are present, they are not much suitable to encrypt images because of some image in-built characteristics such as high-correlation of adjacent pixels, bulky data, high redundancy, etc [3,4,5,6].
Chaos-based image encryption provides a better security to the images. Chaotic maps have certain good characteristics such as sensitivity of their parameters, non-periodicity, ergodicity, nonlinearity [7, 8]. Matthews [9] first proposed chaos-based encryption technique, since then, many encryption techniques are used chaotic maps in image encryption. Chaotic maps are classified into high-dimensional and one-dimensional (1-D) [10]. High-dimensional chaotic maps have the disadvantage of complex structure and therefore requires high amount of hardware resources for implementation. Complexity can be reduced using 1-D chaotic maps which are simple in structure with low hardware resource requirement and high efficiency [11]. Hence, the proposed algorithm uses 1-D chaotic maps to perform image encryption. A number of researches have been done using 1-D chaotic maps. Multiple 1-D chaotic mapbased image encryption is proposed by Ahmed et al. in [12]. A variable-size hash function is developed using multiple chaotic maps by Musheer Ahmad et al. in [13].
This paper contributes the followings.
-
1.
To reduce the total simulation time and also to make the algorithm simple, two stages of bit-plane diffusion operation and bit-level column–row shuffling operation are presented.
-
2.
The Beta map along with the Piece-wise Linear Chaotic Map (PWLCM) system is used in this algorithm to obtain large key space and high key sensitivity.
-
3.
Hash-based key operations are performed to prevent the algorithm against chosen-plaintext attack (CPA) and known-plaintext attack (KPA).
The remaining sections are as follows. Section 2 describes the 1-D chaotic maps. Section 3 presents the proposed key generation and encryption algorithm. The security analyses and the computer simulations are presented in Sect. 4. At last, the conclusion is reached in Sect. 5.
2 One-Dimensional Chaotic Maps
2.1 Beta Map
The Beta function [14] is defined as,
where \(\alpha ,\beta ,x_{1} \;{\text{and}}\;x_{2} \in R,x_{1} < x_{2 } \;{\text{and}}\;x_{0} ,\)
By using the Beta function, the Beta map is defined as,
where
and
where k is the control parameter, r is the bifurcation parameter, and \(\left( {p_{1} ,q_{1} ,p_{2} ,q_{2} } \right)\) are the constants.
2.2 PWLCM System
Recently, in image encryptions, PWLCM systems are widely used because of its good characteristics such as simpler representation, efficient implementation, excellent ergodicity, and good dynamical behavior [15, 16].
The PWLCM system is defined as,
where μ lies in the range (0, 0.5).
3 Proposed Methodology
3.1 Key Generation Operation
The steps for key generation are
-
Step 1: Input an original grayscale image, I.
-
Step 2: Generate 32-decimal values by converting 256-bit hash values of original image. The generated hash values are represented as,
$${\text{hash}} = h1,h2,h3, \ldots ,h31,h32$$(7) -
Step 3: Using the hash values, the secret keys are generated as,
$$\left\{ {\begin{array}{*{20}l} {{\text{mue}} = {\text{mue}}1 + \left( {{\text{mod}}\left( {{\text{sum}}\left( {h1:h2} \right),256} \right)/2^{9} } \right) \times 0.1} \hfill \\ {x1\left( 1 \right) = x\left( 1 \right) + \left( {{\text{mod}}\left( {{\text{sum}}\left( {h3:h5} \right),256} \right)/2^{9} } \right) \times 0.1} \hfill \\ \end{array} } \right.$$(8)
where \(\left( {{\text{mue}}1,{\text{mue}}} \right)\) are the original and generated system parameters, \(\left( {x\left( 1 \right),x1\left( 1 \right)} \right)\) are the original and generated initial values of PWLCM system only.
where \(\left( {xxx\left( 1 \right),xxx1\left( 1 \right)} \right)\) are the original and generated initial values of Beta map only. \(\left( {kk,xx1,xx2,pp1,pp2,qq1,qq2,rr} \right)\) and \(\left( {k,x1,x2,p1,p2,q1,q2,r} \right)\) are the original and generated system parameters of Beta map only.
3.2 Encryption Operation
Figure 1 shows the block diagram of the encryption operation of the proposed cryptosystem. The encryption operation is as follows:
-
Step 1: Input an \(M \times N\) sized grayscale image, I.
-
Step 2: Generate bit-planes of the image, I. The generated 8 bit-planes are,
$$IBBP1,IBBP2,IBBP3,IBBP4,IBBP5,IBBP6,IBBP7,IBBP8$$ -
Step 3: Generate secret keys \(\left( {{\text{mue}},x1\left( 1 \right)} \right)\) of PWLCM system as Step 3 of Sect. 3.1.
-
Step 4: Iterate the PWLCM system of Eq. (6) for \(200 + \left( {M \times N \times 8} \right)\) times. To avoid transit effect, remove 200 iterations from the first position. Therefore, the generated PWLCM sequence is,
$$x1 = \left( {x1\left( 1 \right),x1\left( 2 \right), \ldots ,x1\left( {M \times N \times 8} \right)} \right)$$(10) -
Step 5: Using the sequence \(x1\) of PWLCM system, generate a key image of size \(M \times N\). The key image generation process is as follows:
$$\left\{ {\begin{array}{*{20}l} {for\;i = 1{:}\;\left( {M \times N \times 8} \right)} \hfill \\ {\quad if\;x1\left( i \right) < 0.5} \hfill \\ {\quad \quad x1\left( i \right) = 0;} \hfill \\ {\quad else} \hfill \\ {\quad \quad x1\left( i \right) = 1;} \hfill \\ {\quad end} \hfill \\ {end} \hfill \\ {K = reshape\left( {x1,\left[ {\left( {M \times N} \right),8} \right]} \right);} \hfill \\ {C = bi2de\left( K \right);} \hfill \\ {D = reshape\left( {C,\left[ {M,N} \right]} \right);} \hfill \\ \end{array} } \right.$$(11)where D is the generated key image. Here, the threshold value is taken as 0.5.
-
Step 6: Generate bit-planes of the key image, D. The generated 8 bit-planes are,
\(KBBP1,KBBP2,KBBP3,KBBP4,KBBP5,KBBP6,KBBP7,KBBP8\)
-
Step 7: Perform Stage-1 of bit-plane diffusion operation between bit-planes of the original image and the key image. Let the diffused bit-plane outputs are,
\(IKBP1,IKBP2,IKBP3,IKBP4,IKBP5,IKBP6,IKBP7,IKBP8\)
The diffusion operation is as follows:
$$\left\{ {\begin{array}{*{20}l} {IKBP1 = IBBP1 \oplus KBBP8} \hfill \\ {IKBP2 = IBBP2 \oplus KBBP7} \hfill \\ {IKBP3 = IBBP3 \oplus KBBP6} \hfill \\ {IKBP4 = IBBP4 \oplus KBBP5} \hfill \\ {IKBP5 = IBBP5 \oplus KBBP4} \hfill \\ {IKBP6 = IBBP6 \oplus KBBP3} \hfill \\ {IKBP7 = IBBP7 \oplus KBBP2} \hfill \\ {IKBP8 = IBBP8 \oplus KBBP1} \hfill \\ \end{array} } \right.$$(12) -
Step 8: Perform Stage-2 of bit-plane diffusion operation between the bit-plane outputs of Step 7. Let the diffused bit-plane outputs are denoted as:
$$FDBP1,FDBP2,FDBP3,FDBP4,FDBP5,FDBP6,FDBP7,FDBP8$$The diffusion operation is as follows:
$$\left\{ {\begin{array}{*{20}l} {FDBP1 = IKBP1} \hfill \\ {FDBP2 = IKBP1 \oplus IKBP2} \hfill \\ {FDBP3 = IKBP1 \oplus IKBP3} \hfill \\ {FDBP4 = IKBP1 \oplus IKBP4} \hfill \\ {FDBP5 = IKBP5 \oplus IKBP8} \hfill \\ {FDBP6 = IKBP6 \oplus IKBP8} \hfill \\ {FDBP7 = IKBP7 \oplus IKBP8} \hfill \\ {FDBP8 = IKBP8} \hfill \\ \end{array} } \right.$$(13) -
Step 9: Generate the secret keys \(\left( {xxx1\left( 1 \right),k,x1,x2,p1,p2,q1,q2,r} \right)\) of Beta map as Step 3 of Sect. 3.1.
-
Step 10: Iterate the Beta map of Eq. 1–5 for \(200 + \left( {\left( {N \times 8} \right) + \left( {M \times 8} \right)} \right)\) times. To avoid transit effect, remove 200 iterations from the first position. Therefore, the generated Beta map sequence is,
$$xxx1 = \left( {\begin{array}{*{20}c} {xxx1\left( 1 \right),xxx1\left( 2 \right),xxx1\left( 3 \right), \ldots ,} \\ {xxx1\left( {\left( {N \times 8} \right) + \left( {M \times 8} \right)} \right)} \\ \end{array} } \right)$$(14) -
Step 11: Separate the Beta map sequence into two parts which are represented as:
$$\left\{ {\begin{array}{*{20}l} {xxx11 = \left( {\begin{array}{*{20}c} {xxx1\left( 1 \right),xxx1\left( 2 \right),xxx1\left( 3 \right), \ldots ,} \\ {xxx1\left( {N \times 8} \right)} \\ \end{array} } \right)} \hfill \\ {xxx12 = \left( {\begin{array}{*{20}c} {xxx1\left( {\left( {N \times 8} \right) + 1} \right),xxx1\left( {\left( {N \times 8} \right) + 2} \right),} \\ {xxx1\left( {\left( {N \times 8} \right) + 3} \right), \ldots ,} \\ {xxx1\left( {\left( {N \times 8} \right) + \left( {M \times 8} \right)} \right)} \\ \end{array} } \right)} \hfill \\ \end{array} } \right.$$(15) -
Step 12: Sort the Beta map sequences as,
$$\left\{ {\begin{array}{*{20}c} {\left[ {xxxC{\text{sort}},xxxC{\text{index}}} \right] = {\text{sort}}\left( {xxx11} \right)} \\ {\left[ {xxxR{\text{sort}},xxxR{\text{index}}} \right] = {\text{sort}}\left( {xxx12} \right)} \\ \end{array} } \right.$$(16)where \(xxxC{\text{sort}}\;{\text{and}}\;xxxR{\text{sort}}\) are the sort sequences of \(xxx11\;{\text{and}}\;xxx12\), respectively. \(xxxC{\text{index}}\;{\text{and}}\;xxxR{\text{index}}\) are the index values of \(xxxC{\text{sort}}\;{\text{and}}\;xxxR{\text{sort}}\), respectively.
-
Step 13: Horizontal concatenate the bit-plane outputs of Step 8. Perform column shuffling operation by using the index value, \(xxxC{\text{index}}\).
-
Step 14: Separate the column shuffled bit-plane outputs in Step 13. Vertical concatenate the bit-planes to perform row-shuffling operation by using the index value, \(xxxR{\text{index}}\).
-
Step 15: Separate the bit-planes in Step 14 and then combine all the bit-planes to generate an encrypted image.
The decryption operation is performed in the reverse way of performing encryption operation.
4 Security Analyses and Computer Simulations
Simulation results are shown in Fig. 2. In this algorithm, the keys are taken as \(x\left( 1 \right) = 0.2,{\text{mue}}1 = 0.3,xxx\left( 1 \right) = - 0.2,kk = 0.9,xx1 = - 0.7,xx2 = 1,pp1 = 8,pp2 = 3,qq1 = 1,\) \(qq2 = - 1,rr = - 0.2\). In Fig. 2, we can see that the proposed algorithm encrypts and decrypts images properly using the right keys. This shows that the proposed method is suitable to encrypt and decrypt grayscale images.
The security analyses are as follows.
4.1 Key Space Analysis
Key space is the number of different keys which are used in an encryption–decryption operation. The key space should be larger than \(2^{128}\) to protect brute-force attack [17]. The secret keys used in this scheme are,
-
a.
system parameters and initial values of chaotic maps
-
b.
hash value of 256-bits.
To define the keys of chaotic maps, a precision value of \(10^{ - 15}\) is used in this algorithm and for hash value, a key space of \(2^{128}\) is taken in this algorithm.
So the key space in total is,
\(\left( {10^{15} \times 10^{15} } \right) \times \left( {10^{15} \times 10^{15} \times 10^{15} \times 10^{15} \times 10^{15} \times 10^{15} \times 10^{15} \times 10^{15} \times 10^{15} } \right) \times 2^{128} = 10^{165} \times 2^{128} = 1.0853 \times 2^{676}\) which is larger than \(2^{128}\) [17].
This proves that the proposed scheme strongly protects brute-force attack.
4.2 Statistical Attack Analysis
4.2.1 Histogram Analysis
Figure 3 shows the histogram results of the proposed method. In the results, we see the uniformity of grayscale values in the histograms of encrypted images and also see the differences in the histograms of encrypted and original images. In Fig. 3, we also found the similarity of histograms of decrypted and original images. This confirms the zero losses of information in the decrypted images. These in turn proves the strong resistivity of statistical attack in the encryption scheme.
The histogram uniformity can be evaluated quantitatively by calculating the variance of encrypted images. The lower is the variance, higher the uniformity of grayscale values in histogram images [18]. The variance results are shown in Table 1. In Table 1, we can see the lesser value of variance of encrypted images using the proposed method as compared to the encryption methods in [19, 20]. This proves that a greater uniformity occurs in the histograms of encrypted images using the proposed scheme.
4.2.2 Correlation Analysis
Table 2 shows the correlation results of the proposed scheme. In this result, we can see that, in all the three directions, the original images have correlation value close to 1 and the encrypted images have correlation value close to 0. The correlation plot of “Lena” image is shown in Fig. 4. These plots clearly show the high adjacent pixel correlation of original images and weak adjacent pixel correlation of encrypted images. This proves that the proposed scheme strongly resists statistical attack.
4.3 Differential Attack Analysis
Two measures Unified Average Changing Intensity (UACI) and Numbers of Pixel Changing Rate (NPCR) are mostly used to analyze the differential attack in an encryption scheme. The expected value of UACI and NPCR of 256-level grayscale image are 33.4635% and 99.6094%, respectively [5]. Table 3 shows the min., max., and avg. UACI and NPCR results (100 values) of the proposed scheme. In Table 3, we can see that the average UACI and NPCR results for all the images are very close to the expected UACI and NPCR values, respectively. This proves the high resistivity of differential attack in the proposed scheme.
4.4 Information Entropy
It measures the degree of randomness of pixels in images. For an ideal encryption system, the entropy of encrypted images falls to 8. The higher is the closeness to 8, the stronger is the entropy. The entropy results are shown in Table 4. The results show that the entropies of all the encrypted images are very close to 8. This confirms the high randomness of pixels in the encrypted images by using the proposed scheme.
4.5 Key Sensitivity Analysis
Key sensitivity measures the sensitivity of keys in decryption and encryption of images. That means a small change in the key will lead to large changes in the output. A cryptosystem should have high key sensitivity to protect brute-force attack [18, 21, 22]. The key sensitivity in both decryption and encryption process is as follows.
4.5.1 Encryption Level Key Sensitivity Analysis
In this process, the encryption operation is executed by changing a single bit in \(10^{ - 15}\) position of one key and the remaining keys are unchanged and finally analyze the difference image of two encrypted images. The encryption level key sensitivity results of “Lena” image are shown in Fig. 5. The UACI and NPCR results are shown in Table 5. The difference images of Fig. 5 and the NPCR, UACI results of Table 5 shows that more than 99% pixels are changed in changing of one key. This proves the high encryption level key sensitivity of the proposed algorithm.
4.5.2 Decryption Level Key Sensitivity Analysis
In this process, the decryption operation is executed by changing a single bit in \(10^{ - 15}\) position of one decryption key and the remaining decryption keys are unchanged and finally analyze the key changed decrypted images. The key sensitivity results of “Lena” image are shown in Fig. 6. The NPCR and UACI results are shown in Table 6. Figure 5 and Table 6 results show that more than 99% pixels are changed in changing of one decryption key. This shows the high decryption level key sensitivity of the algorithm.
4.6 Plaintext Sensitivity Analysis
Plaintext sensitivity measures the sensitivity of pixel values in original images. This is done first by randomly changing one-pixel value and constant other pixel values in original image. Then the proposed encryption algorithm is applied to get the difference of two encrypted images (one-pixel value changed encrypted image and original encrypted image). Figure 7 shows the results of plaintext sensitivity at positions (1, 1), (64, 64), (128, 128), and (256, 256). Table 7 shows the corresponding UACI and NPCR results when the pixel values are changed at random positions. The images of Fig. 7b, d, f, h and the UACI, NPCR results of Table 7 shows that more than 99% pixels are changed in encrypted image while changing of one pixel in original image. This proves the high sensitivity of the plaintext of the proposed scheme.
4.7 Chosen-Plaintext Attack (CPA) and Known-Plaintext Attack (KPA) Analysis
The CPA and KPA are easily attacked by the attacker when the algorithm is not much depended on the original image. The proposed scheme highly depends on the original image in both diffusion and permutation operations. This shows the high resistivity of the proposed algorithm against CPA and KPA.
4.8 Comparison Analysis
The comparative results are shown in Table 8. The comparison is done on “Lena” image. By observing Table 8 comparison results, we found the followings:
-
Higher key space of the proposed scheme as compared to the schemes in [19, 20].
-
The correlation values of all the schemes are close to 0.
-
Better UACI and NPCR results of the proposed scheme as compared to the schemes in [19, 20].
-
The entropy values of all the schemes are close to 8.
4.9 Encryption Time
The proposed algorithm is simulated using MATLAB R2012a in a system having configuration 3.40 GHz processor with 4 GB RAM. The total simulation time required to simulate 256 × 256 and 512 × 512 sized images are 0.148 s and 0.733 s, respectively. Due to the requirement of less simulation time, the proposed algorithm is suitable to use in real-time applications.
5 Conclusion
This paper proposes a bit-level image encryption scheme using 1-D chaotic maps. In this proposed method, two-stages of bit-plane diffusion operations using PWLCM system and one-stage of bit-level column–row shuffling operation using Beta map are performed. This scheme yields good encryption outputs, produces higher key space, less simulation time to execute the algorithm, and resists all the widely known security attacks. In this algorithm, simple bit-plane diffusion operations and bit-level column–row shuffling operations are used, and hence, the proposed method provides simplicity in the algorithm. The comparison results show the better security of the proposed scheme as compared to other reported schemes. All these features show that the proposed algorithm is time-efficient, secure, and simple to encrypt grayscale images.
References
Coppersmith D (1994) The Data Encryption Standard (DES) and its strengths against attacks, IBM J Res Dev 38:243–250.
Pub NF. 197 (2001) Advanced encryption standard (AES). Federal Information Processing Standards Publication. 197, 441-0311.
Gao H, Zhang Y, Liang S, Li D (2006) A new chaotic algorithm for image encryption, Chaos Solitons Fractals 29:393–399.
Samhita P, Prasad P, Patro KAK, Acharya B (2016) A Secure Chaos-based Image Encryption and Decryption Using Crossover and Mutation Operator, Int J Cont T Appl 9:17–28.
Gupta A, Thawait R, Patro KAK, Acharya B (2016) A Novel Image Encryption Based on Bit-Shuffled Improved Tent Map, Int J Cont T Appl 9:1–16.
Shadangi V, Choudhary SK, Patro KAK, Acharya B (2017) Novel Arnold Scrambling Based CBC-AES Image Encryption, Int J Cont T Appl 10:93–105.
Guesmi R, Amine M, Farah B et al. (2016) Hash key-based image encryption using crossover operator and chaos, Multimed Tools Appl 75:4753–4769.
Guesmi R, Farah MAB, Kachouri A, Samet M (2016) A novel chaos-based image encryption using DNA sequence operation and Secure Hash Algorithm SHA-2, Nonlinear Dyn 83:1123–1136.
Matthews R (2010) On the derivation of a chaotic encryption algorithm, Cryptologia XIII 37–41.
Liu W, Sun K, Zhu C (2016) A fast image encryption algorithm based on chaotic map, Opt Lasers Eng 84:26–36.
Wang X, Wang S, Zhang Y, Guo K (2017) A novel image encryption algorithm based on chaotic shuffling method, Inf Secur J A Glob Perspect 0:1–10.
Abd El-Latif AA, Li L, Zhang T, Wang N, Song X, Niu X (2012) Digital image encryption scheme based on multiple chaotic systems, Sens Imaging 13:67–88.
Ahmad M, Khurana S, Singh S, AlSharari HD (2017) A Simple Secure Hash Function Scheme Using Multiple Chaotic Maps, 3D Res 8.
Zahmoul R, Ejbali R, Zaied M (2017) Image encryption based on new Beta chaotic maps, Optics and Lasers in Engineering 96:39–49.
Wang XY, Yang L (2012) Design of pseudo-random bit generator based on chaotic maps, Int J Mod Phy B 26:1250208.
Li S, Chen G, Mou X (2005) On the dynamical degradation of digital piecewise linear chaotic maps, Int J Bifurcation Chaos 15:3119–3151.
Kulsoom A, Xiao D, Abbas SA (2016) An efficient and noise resistive selective image encryption scheme for gray images based on chaotic maps and DNA complementary rules, Multimed Tools Appl 75:1–23.
Chai X, Chen Y, Broyde L (2017) A novel chaos-based image encryption algorithm using DNA sequence operations, Opt Laser Engg 88:197–213.
Zhu ZL, Zhang W, Wong KW, Yu H (2011) A chaos-based symmetric image encryption scheme using a bit-level permutation, Information Sciences 181:1171–1186.
Zhang YQ, Wang XY (2014) A symmetric image encryption algorithm based on mixed linear–nonlinear coupled map lattice, Information Sciences 273:329–351.
Patro KAK, Acharya B (2018) Secure multi–level permutation operation based multiple colour image encryption, J Inf Secur Appl 40:111–133.
Patro KAK, Banerjee A, Acharya B (2017) A Simple, Secure and Time Efficient Multi-way Rotational Permutation and Diffusion Based Image Encryption by Using Multiple 1-D Chaotic Maps, In International Conference on Next Generation Computing Technologies, Springer, Singapore, 396–418.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Patro, K.A.K., Acharya, B. (2019). A Simple, Secure, and Time-Efficient Bit-Plane Operated Bit-Level Image Encryption Scheme Using 1-D Chaotic Maps. In: Chattopadhyay, J., Singh, R., Bhattacherjee, V. (eds) Innovations in Soft Computing and Information Technology . Springer, Singapore. https://doi.org/10.1007/978-981-13-3185-5_23
Download citation
DOI: https://doi.org/10.1007/978-981-13-3185-5_23
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-13-3184-8
Online ISBN: 978-981-13-3185-5
eBook Packages: EngineeringEngineering (R0)