entropy Article
An Intelligent and Fast Chaotic Encryption Using Digital Logic Circuits for Ad-Hoc and Ubiquitous Computing Ankur Khare 1,† , Piyush Kumar Shukla 2, *, Murtaza Abbas Rizvi 3,† and Shalini Stalin 4,† 1 2 3 4
* †
Regional Institute of Education (RIE), Shyamla Hills, Bhopal 462001, India;
[email protected] Department of Computer Science and Engineering, University Institute of Technology, RGPV, Bhopal 462033, India National Institute of Technical Teachers’ and Research, Shyamla Hills, Bhopal 462001, India;
[email protected] AISECT University, Chiklod Road, Near Bangrasia Square, Dist. Raisen 464993, India;
[email protected] Correspondence:
[email protected]; Tel.: +91-942-537-8576 These authors contributed equally to this work.
Academic Editors: James Park and Wanlei Zhou Received: 21 May 2015; Accepted: 27 October 2015; Published: 23 May 2016
Abstract: Delays added by the encryption process represent an overhead for smart computing devices in ad-hoc and ubiquitous computing intelligent systems. Digital Logic Circuits are faster than other computing techniques, so these can be used for fast encryption to minimize processing delays. Chaotic Encryption is more attack-resilient than other encryption techniques. One of the most attractive properties of cryptography is known as an avalanche effect, in which two different keys produce distinct cipher text for the same information. Important properties of chaotic systems are sensitivity to initial conditions and nonlinearity, which makes two similar keys that generate different cipher text a source of confusion. In this paper a novel fast and secure Chaotic Map-based encryption technique using 2’s Compliment (CET-2C) has been proposed, which uses a logistic map which implies that a negligible difference in parameters of the map generates different cipher text. Cryptanalysis of the proposed algorithm shows the strength and security of algorithm and keys. Performance of the proposed algorithm has been analyzed in terms of running time, throughput and power consumption. It is to be shown in comparison graphs that the proposed algorithm gave better results compare to different algorithms like AES and some others. Keywords: delay; cryptology; encryption technique; chaos function; logistic map; cipher text
1. Introduction As a ubiquitous trend in the environment, chaos is a type of deterministic random process provided by nonlinear dynamical systems. The main characteristics of chaotic systems are sensitive to initial conditions, randomness, diffusion, confusion and ergodicity. Chaotic systems have become an important topic of research because of these properties and are widely used in cryptography [1,2]. The existing-related research about chaos-based cryptography includes symmetric encryptions; security protocols and algorithms, asymmetric encryption and hash functions [3–5]. In recent years, the one way hash functions based on chaotic logistic maps, including 1D & 2D piecewise linear/nonlinear logistical map, high dimensional chaotic map, chaotic neural networks, hyper chaos and chaos S-Box have been modified [6–8]. Chaos map-based different algorithms, techniques and methods are constructed using hash functions, so high dimensionality dynamic systems have become an important and interesting research area in several scientific fields in the Entropy 2016, 18, 201; doi:10.3390/e18050201
www.mdpi.com/journal/entropy
Entropy 2016, 18, 201
2 of 27
areas of computer science and secure communications [9–11]. Chaotic functions are sensitive to initial conditions—any negligible difference in the initial value generates a completely different cipher text. This means the cryptosystem using chaos theory will be strong against brute force attacks [12–15]. These properties of chaos have high potential for several applications in cryptosystems provided long term predictions on chaotic systems [16,17]. A novel chaos-based cryptographic technique using digital logic circuits is proposed in this paper for fast and secure encryption and decryption of information for several real time applications [18,19]. A chaotic logistic map provides a high degree of randomness and ergodicity to resist the linear and differential attacks and also enhances the security by providing confusion and diffusion to the system [20–24]. These previous techniques have solved many problems of cryptography and enhanced security and performance, but these techniques have some major drawbacks. The existing algorithms and methods are not easily understandable for users because they employ many mathematical functions. Symmetric key cryptosystems use the same single key every time for encryption and decryption. If the key is known by an intruder then the message is easily deduced. In a symmetric key cryptosystem, if an intruder knows the chaos function and the initial value of the chaos function, then the intruder can easily deduce the message. The encryption speed of chaotic cryptography is much slower than traditional cryptography, so a symmetric key cryptography technique is proposed, which uses more than one key for encryption and decryption. These keys are the same for encryption and decryption at one time but different keys are used for distinct messages. Security has been enhanced by using multiple keys and the randomness of keys is also enhanced by using digital concepts like 2’s complement. Even if an intruder knows the keys used one time, then the keys are changed the next time for the same message. The speed of encryption has been also increased by using digital concepts like XORing gate rather than difficult mathematical functions. The rest of the paper is organized into several sections. Related works and a literature survey are briefly described in Section 2. In Section 3 the proposed cryptosystem and algorithms are described. In Section 4, an example of the proposed crypto systemis explained. Then the security of keys is analyzed in Section 5 with the help of key parameters. In Section 6, the proposed technique is analyzed against all four cryptanalysis attacks. Its performance is evaluated in terms of encryption time, throughput and power consumption in Section 7. In Section 8, the performance of the algorithm is compared with some algorithms like AES and others, which are described in different papers. In Section 9, the paper is concluded. 2. Related Work Industrial and communication systems largely use unpredictable and practical cryp to systems for highly secure and fast transmission of information with little memory capacity [10,18], so they can satisfy the requirements of industrial control and military used in WiFi and ZigBee networks [6,14]. These proposed methods are analyzed in the UACI, NPCR and NIST environment. An electrocardiogram (ECG) encryption system for biometric recognition collects ECG signals from an encrypted person using a portable instrument [18]. Simulation results show that the secrecy and security are enhanced by using an efficient large key size and complex algorithms widely used in multimedia applications [25].
Entropy 2016, 18, 201
3 of 27
Table 1. Comparison table (Authors’ names and performance comparison of their research papers). Features
Alem Haddush Fitwi et al. [3]
Amir Akhavan1 et al. [12]
Amit Pande et al. [20]
Ashraf Zaher et al. [1]
Ayman Mousa et al. [4]
Bassem Bakhache et al. [6]
Bhavana Agrawal et al. [9]
Security
Secure enough
High
Comparatively high
Secure Enough
High
High
Medium
Cryptanalysis Attack Prevention
Brute Force
Forgery and Birthday Attack
Except Known plaintext
-
-
Linear and Differential
All Four
Cipher type
Stream
Stream
Stream
Stream
Block
Stream
Stream
Application Area
Multimedia System
Real Time Applications
Real Time Embedded Systems
Communication System
-
Industrial Control
Communication System
Space Complexity
High
Medium
High
Medium
Enough High
Low
High
Implementation of algorithm
Complex
Complex
Hard
Hard
Complex Enough
Highly Complex
Complex
Used technique
Hysteresis Switched System
High Dimensional Chaotic Map
MLM based PRNG
Chaos Shift Keying
-
PWLCM
Chaos based RSA and AES
Efficiency/ Reliability
Medium
High
Medium
Medium
Medium
High
High
Methodology/ Environment
NIST and Monte Carlo Test
SP800-22 and DIEHARD Test Suits
XilinxVirtex-6 FPGA
Duffing Oscillator
Microsoft SQL
NIST Environment
-
Speed (Processing)
Low
High
Enough
Medium
High
High
Medium
Prediction Possibility
No
No
No
Yes
No
Slightly
Yes
Feasible
At Some Condition
Yes
No
Yes
Yes
No
Yes
Accuracy
Medium
High
Medium
High
Medium
Medium
Medium
Key length
Large
Large Enough
High
Large Enough
Large
Slightly Large
Large
Cost
High
High
High
Medium
Medium
Low
High
Quality Assurance
High
High
Applicable
High
Reasonable
Resemblance
Applicable
Entropy 2016, 18, 201
4 of 27
Some mathematical properties have also determined the security and performance of distinct algorithms and systems using dynamic, chaotic cryptography [11,26]. Periodic switching of cryptographic keys is a different concept to boost the security of cryptographic systems in which chaotic behavior is combined with the periodic switching of keys [8]. It is represented that the running time complexity of the chosen plaintext, and a cipher text attack can be reduced to yield a simple set of linear equations [27,28]. The performance of the algorithm is measured in terms of cost, time and speed. Several one-dimension chaotic maps have been used to generate independent and approximately uniform pseudo-dynamic sequences for faster and time efficient encryption on blocks of data. Simulation results analyzed the efficiency and resistance against difference and linear cryptanalysis attacks and showed the high performance of the algorithm [5,29]. Fast encryption provides reliability and high security slightly, but at the same time highly reduces the running time [21,30,31]. Table 1 summarizes all the author’s works on chaotic based encryption scheme on the basis of some characteristics. 3. Proposed Methodology/Scheme A novel, fast and secure “Chaotic Map based Encryption Technique using 2’s Compliment (CET-2C)” has been proposed using one or more than one keys for the encryption and decryption process but at any time instant the encryption and decryption keys are similar. It means different messages are encrypted via different multiple keys to increase the security against known cryptanalysis attacks. Firstly, the number of keys has been generated with the help of chaos logistic function (logistic map) providing only the initial condition. These keys have been prohibited from providing some proper condition, so all the characters of the information are encrypted and decrypted with these difference and multiple keys. Multiple keys have been used to increase the randomness as well as security, and it is not necessary that any repeated characters in the information be encrypted and decrypted with a similar key. The complexity of keys has been increased by using some digital logic like 2’s compliment code so the randomness of keys is enhanced with better security. These complex random keys have provided fast, feasible and efficient encryption in secure communication so the intruder is not sure about the generation of keys. The necessary notations which are used for the key generation, encryption and decryption scheme are the following: Pi = Plain text; Ci = Cipher text; EpPi q = Encryption of the plain text Pi ; DpCi q = Decryption of the cipher text Ci . For n = 1 to j: Xn`1 “ tA ˆ Xn pXn ´ 1qu MOD 256 A = any integer (1, 2, 3, ...); Xn = initial value of chaotic function which is 2, 3, 4, . . . . . . , j = Number of keys; Xn`1 = keys K1 , K2 , K3 , . . . . . . . . . . . . . . K j (after applying gray code on Xn`1 ). 3.1. Scheme for Key Generation (1) Initially the pseudo random numbers are generated by using the chaotic map function at both ends (sender and receiver). For n = 1 to j: Xn`1 “ tA ˆ Xn pXn ´ 1qu MOD 256 (2) The multiple different keys are generated by applying 2’s compliment on different values of Xn`1 and the number of keys is fixed by providing some suitable condition j. (3) Complexity and security of keys are enhanced by applying 2’s compliment code on Xn+1 so keys are random and independent with each other. (4) These keys are converted into 8-bit binary form.
Entropy 2016, 18, 201
5 of 27
3.2. Scheme for Encryption Process Each character is represented in ASCII character format which are converted into 8-bit binary numbers with respect to their decimal numbers. These characters are encrypted by using a digital logic bitwise XNOR gate function. This XNOR operation is performed on each character by a single binary coded key. Keys are also repeated for encrypting and decrypting the whole information. P1 = ASCII (Character 1); P1 is represented in 8-bit binary numbers: Ek1 pP1 q “ C1 P2 = ASCII (Character 2); P2 is represented in 8-bit binary numbers: Ek2 pP2 q “ C2 ... , Pi = ASCII (Character i); Pi is represented in 8-bit binary numbers: Ekm pPi q “ Ci where m = 1 to j. 3.3. Scheme for Decryption Process The cipher texts have been decrypted (converted into plain text) by using the reverse process of the encryption technique: P1 “ Dk1 pC1 q P1 is represented into ASCII (P1 ) with respect to its decimal value. Character 1 = ASCII (P1 ): P2 “ Dk2 pC2 q P2 is represented into ASCII (P2 ) with respect to its decimal value. Character 2 = ASCII (P2 ): ... , Pi “ Dkm pCi q where m = 1 to j; Pi is represented in ASCII (Pi ) with respect to its decimal value; Character i = ASCII (Pi ) 3.4. Key Generation Algorithm (1) Select the values of parameter (M, A, Xn ). (2) Generate the pseudo random numbers from the logistic map equation. For n = 1 to j: Xn`1 “ tA ˆ Xn pXn ´ 1qu MOD 256 (3) Apply 2’s compliment code on these pseudo random numbers which are generated from Xn`1 to generate the keys K1 , K2 , K3 , . . . . . . . . . . . . . . K j . (4) Keys are converted into 8-bit binary form. 3.5. Encryption Algorithm (1) Each character is converted into an ASCII character,Pi = ASCII (Character i). ASCII character Pi is represented into 8-bit binary form. Ekm pPi q “ Ci for all i > 0, and m = 1 to j, using this equation for encrypting the message. Where Ekm pPi q is bit wise XNOR perform on plaintext Pi with a single key Km .
Entropy 2016, 18, 201
6 of 27
3.6. Decryption Algorithm (1) Pi “ Dkm pCi q for all i > 0 and m = 1 to j, using this equation for decrypting the cipher text. where Dkm pCi q is bit wise XNOR perform on cipher text Ci with a single key Km . (2) Plain text Pi is represented into ASCII (Pi ) with respect to its decimal value. (3) So Character i = ASCII (Pi ). 4. Example Given plain text–PIYUSHS Letter P I Y U S H S
ASCII 80 73 89 85 83 72 83
Binary Number 01010000 01001001 01011001 01010101 01010011 01001000 01010011
4.1. Key Generation Xn`1 “ tA ˆ Xn pXn ´ 1qu MOD 256 Let A = 6, Xn = 4, Number of Keys j = 5 For j = 1 Xn`1 = {6 ˆ 4 ˆ (4 ´ 1)} MOD 256 Xn`1 = 72 For j = 2 Xn`1 = {6 ˆ 72 ˆ (72 ´ 1)} MOD 256 Xn`1 = 208 For j = 3 Xn`1 = {6 ˆ 208 ˆ (208 ´ 1)} MOD 256 Xn`1 = 32 For j = 4 Xn`1 = {6 ˆ 32 ˆ (32 ´ 1)} MOD 256 Xn`1 = 64 For j = 5 Xn`1 = {6 ˆ 64 ˆ (64 ´ 1)} MOD 256 Xn`1 = 128 Xn`1 = 72, 208, 32, 64, 128. The keys are established by applying 2’s compliment code on pseudo random numbers Xn`1 . 1’s compliment is generated by converting 0 to 1 and 1 to 0 then 2’s compliment is generated by adding 1 in 1’s compliment of numbers:
Entropy 2016, 18, 201 Entropy 2016, 18, x
7 of 27 7 of 27
XXn` = 72 = 01001000 n11 = 72 = 01001000 1’s compliment 10110111 1’s compliment 10110111 +1 + 1 2’s compliment 10111000 = 184 2’s compliment 10111000 = 184 72 72 = 01001000 = Entropy 2016, 18, x 01001000 2’s2’s compliment compliment = = 208208 = 11010000 = 11010000 2’s2’s compliment compliment = = 32 32 = 00100000 = 00100000X n1 = 72 = 01001000 2’s2’s compliment compliment = = 1’s compliment 10110111 64 64 = 01000000 = 01000000 2’s2’s compliment compliment = = + 1 128128 = 10000000 = 10000000 2’s2’s compliment compliment = = 2’s compliment 10111000 = 184 Keys (K 3 = 224, K4 = 192, K5 = 128). Keys (K11 = 184, K = 184, K2 2= 48, K = 48, K 3 = 224, K4 = 192, K5 = 128).
10111000 10111000 00110000 00110000 11100000 11100000 11000000 11000000 10000000 10000000
= = = = = = = = = =
7 of 27
184 184 48 48 224 224 192 192 128 128
72 = 01001000 2’s compliment = 10111000 = 184 4.2. Encryption Algorithm 4.2. Encryption Algorithm 208 = 11010000 2’s compliment = 00110000 = 48 Encryption scheme converts the plain text into unreadable cipher text by using different multiple Encryption scheme32 = 00100000 converts the plain text into unreadable cipher by using different 2’s compliment = text11100000 = multiple224 keys (Table 2). keys (Table 2). 64 = 01000000 2’s compliment = 11000000 = 192 Given Text: -PIYUSHS 128 = 10000000 2’s compliment = 10000000 = 128 Given Text: ‐PIYUSHS P Keys (K1 = 184, K2 = 48, K3 = 224, K4 = 192, K5 = 128). P ASCII–80 ASCII–80 01010000 4.2. Encryption Algorithm 01010000 Key = 184 (10111000) Key ((KK11)) = 184 (10111000) Encryption scheme converts the plain text into unreadable cipher text by using different multiple keys (Table 2). Cipher Text– Cipher Text– Plaintext XNOR Key Given Text: ‐PIYUSHS Plaintext XNOR Key XNOR 184 P P XNOR 184 80 XNOR 184 ASCII–80 80 XNOR 184 01010000 XNOR 10111000 01010000 01010000 XNOR 10111000 Key ( K1 ) = 184 (10111000) 0 Cipher Text– 0 XNOR XNOR 1 1 0 = = 1 Plaintext = 0 XNOR XNOR 0 0 = 0 Key XNOR 0 XNOR 1 = 0 XNOR 1 = 0 184 P XNOR 1 = = 1 XNOR 1 1 1 184 80 XNOR XNOR 0 01010000 = 0 XNOR XNOR 1 1 = 0 XNOR 10111000 0 1 XNOR XNOR 0 0 = 1 = XNOR XNOR 0 0 1 0 = = 1 0 XNOR 1 = = = XNOR XNOR 0 0 1 0 1 1 XNOR 0 = Cipher Text–00010111 = 23 Cipher Text–00010111 = 23 == ↨ 0 XNOR 1 = 1 XNOR 1 = Table 2. Cipher text for plain text. Table 2. Cipher text for plain text. 0 XNOR 1 = Key K j 0 Plain Text (ASCII) XNOR Cipher Text 0 XNOR Key Kj Plain Text (ASCII) XNOR Cipher Text= P XNOR 184 00010111 0 0 = P 184 00010111 80 XNOR 0 80 0 = 23 23 ↨ 01010000 10111000 Cipher Text–00010111 = 23 = ↨ 01010000 XNOR XNOR 10111000 I 48 48 10000110 I 10000110 Table 2. Cipher text for plain text. 73 73 134 134 01001001 XNOR XNOR 00110000 00110000 Å 01001001 Å Key K j Plain Text (ASCII) XNOR Cipher Text Y 224 224 01000110 Y 01000110 P 184 00010111 89 70 70 89 80 23 01011001 XNOR 11100000 F 01011001 XNOR 11100000 F ↨ 01010000 XNOR 10111000 U 192 01101010 I 48 10000110 85 106 73 134 01010101 XNOR 11000000 j 01001001 XNOR 00110000 Å Y 224 01000110 89 70
0 1 0 1 0 0 0 0
0 0 0 1 0 1 1 1
2’s compliment = 10000000 128 iment = 11000000 = 192 = 0110111 Given Text: ‐PIYUSHS 3iment = 224, K 4 = 192, K 5 = 128). = 10000000 = 128 + 1 P 192, K 5 = 128). 0111000 = 184 ASCII–80 01010000 Entropy 2016, 18,= 201 00 2’s compliment 10111000 = 184 erts the plain text into unreadable cipher text by using different multiple Key ( K1 ) = 184 (10111000) 00 2’s compliment = 00110000 = 48 n text into unreadable cipher text by using different multiple 00 2’s compliment = 11100000 = 224 Cipher Text– Table 2. Cont. 00 2’s compliment 11000000 = 192 Plaintext = XNOR 00 2’s compliment = 10000000 = 128 P Key Kj Plain Text (ASCII)XNOR XNOR = 48, K3 = 224, K4 = 192, K 80 5 = 128). XNOR
0) hm
01010000
U 85 01010101
192
XNOR
XNOR
11000000
S me converts the plain text into unreadable cipher text by using different multiple 1 0 XNOR = 128 83 Key 0 1 XNOR XNOR 01010011 = XNOR 10000000
8 of 27
Key 184 Cipher Text 184 01101010 10111000 106 j 00101100 0 44 0 ,
184 1 0 XNOR XNOR Key = 0 H 184 00001111 XNOR 184 184 1 XNOR 1 = 72 151 0 XNOR XNOR 184 1 = 0100100010111000 XNOR 10111000 ☼0 10111000 0 XNOR 0 = 1 S 48 10011100 0 XNOR = 83 0 0 = 1 156 NOR 1 0111000) 01010011 XNOR 00110000 £ 0 XNOR 0 = 1 NOR 0 = 0 1 = 0 xt– Cipher Text–00010111 = 23 = ↨ Cipher NOR 1 = 0 text— ÅFj,☼£ 0 = 0 XNOR Key NOR 1 = 1 1 = 0 Table 2. Cipher text for plain text. 184 NOR 1 XNOR = 0 1 = 1 4.3. Decryption Algorithm 184 NOR 0 XNOR = 1 Plain Text (ASCII) = 0 Key1 K j XNOR Cipher Text XNOR 10111000 NOR 0 Decryption = converts 1 0 = 1 the unreadable scheme cipher text into readable plain text by using the P 184 00010111 NOR 0 keys 1 0 = (Table 3). = 1 similar 80 23 Cipher Text–00010111 = 23 = ↨ ÅFj,☼£ 0 = text– 1 Cipher XNOR 1 = 0 ↨ 01010000 XNOR 10111000 r Text–00010111 = 23 = ↨ XNOR 0 = 0 I 48 10000110 Table 2. Cipher text for plain text. ASCII–23 XNOR 1 = 0 73 134 . Cipher text for plain text. 00010111 XNOR 1 = 1 K Key 01001001 XNOR Cipher Text 00110000 Å XNOR j Key (K XNOR 1 1 ) = 184 (10111000)= 0 K Key Cipher Text 01000110 j Y 184 00010111 224 XNOR 0 = 1 70 23 184 89 00010111 XNOR 0 = Plain1 Text: 01011001 XNOR 11100000 F ↨ XNOR 10111000 23 XNOR 0 1 Cipher Text= XNOR Key 01101010 ↨ 10111000 U 48 10000110 192 Cipher Text–00010111 = 23 = ↨ XNOR 184 106 134 48 85 10000110 23 XNOR 184 XNOR j XNOR Table 2. Cipher text for plain text. 00110000 Å 11000000 01010101 134 00010111 XNOR 10111000 Å 00110000 224 01000110 I) j XNOR Key K01000110 70 Cipher Text 224 0 XNOR 1 = 0 XNOR 11100000 184 F 00010111 70 0 XNOR 0 = 1 F 11100000 192 01101010 23 0 XNOR ↨ 1 = 0 XNOR 10111000 106 192 01101010 1 XNOR 1 = 1 XNOR 11000000 48 j 10000110 106 0 XNOR 1 = 0 134 11000000 j 1 XNOR 0 = 0 XNOR 00110000 Å 1 XNOR 0 = 0 224 01000110 1 XNOR 0 = 0 70 Plain Text–01010000 = 80 = P XNOR 11100000 F 192 01101010 106 XNOR 11000000 j
XNOR USHS XNOR XNOR XNOR
XNOR XNOR XNOR XNOR XNOR XNOR XNOR XNOR
1 = 0 = 1 = Entropy 2016, 18, 201 1 = 1 = 0 = 0 = Cipher Text 0 = Entropy 2016, 18, x Cipher Text–00010111 = 23 = ↨
0 0 0 1 0 Table 3. Plain 1 text for cipher text. 1 Key Kj XNOR Plain Text (ASCII) 1
Entropy 2016, 18, x 23 Entropy 2016, 18, x 00010111 XNOR X n1 = 72 = 01001000 Table 2. Cipher text for plain text. Entropy 2016, 18, x X
XNOR XNOR XNOR XNOR XNOR
184 10111000
01010000 80 P
9 of 27
7 of 27 7 of 27 7 of 27 7 of 27
n1 = 72 = 01001000 48 01001001 Å 1’s compliment 10110111 Key K j X Cipher Text n1 = 72 = 01001000 134 73 1’s compliment 10110111 + 1 X n1 = 72 = 01001000 10000110 XNOR 00110000 I 184 2’s compliment 10111000 = 184 00010111 1’s compliment 10110111 + 1 1’s compliment 10110111 2’s compliment 10111000 = 184 23 F 224 01011001 + 1 70 89 + 1 ↨ 10111000 2’s compliment 10111000 = 184 72 = 01001000 2’s compliment = 10111000 = 184 01000110 XNOR 11100000 Y 2’s compliment 10111000 = 184 48 10000110 72 = 01001000 2’s compliment = 10111000 = 184 208 = 11010000 2’s compliment = 00110000 = 48 j72 = 01001000 134 2’s compliment 192 01010101 2’s compliment = 10111000 = 184 208 = 11010000 = = 00110000 = = 48 32 = 00100000 2’s compliment 11100000 224 85 72 = 01001000 Å 2’s compliment 2’s compliment = 10111000 = 184 208 = 11010000 2’s compliment = 00110000 = 48 00110000 106 32 = 00100000 = 11100000 = 224 64 = 01000000 XNOR 2’s compliment = 11000000 = 192 01101010 11000000 U 208 = 11010000 2’s compliment = 00110000 = 48 32 = 00100000 2’s compliment = 11100000 = 224 224 01000110 64 = 01000000 2’s compliment = = 11000000 = = 192 128 = 10000000 2’s compliment 10000000 128 ,64 = 01000000 128 01010011 32 = 00100000 2’s compliment = 11100000 = 224 2’s compliment = 11000000 = 192 Keys (K 70 3 = 224, K 128 = 10000000 2’s compliment = 10000000 = 128 1 = 184, K2 = 48, K 4 = 192, K5 = 128). 44 83 64 = 01000000 2’s compliment = 11000000 = 192 128 = 10000000 2’s compliment = 10000000 = 128 11100000 F 3 = 224, K4 = 192, K Keys (K 1 = 184, K2 = 48, K 5 = 128). 00101100 XNOR 10000000 S 128 = 10000000 2’s compliment = 10000000 = 128 Keys (K 1 = 184, K2 = 48, K 3 = 224, K 4 = 192, K5 = 128). 192 01101010 4.2. Encryption Algorithm ☼ 184 01001000 1 = 184, K2 = 48, K3 = 224, K4 = 192, K5 = 128). 4.2. Encryption Algorithm Keys (K 106 15 72 Encryption scheme converts the plain text into unreadable cipher text by using different multiple 4.2. Encryption Algorithm 00001111 XNOR 10111000 H 11000000 j Encryption scheme converts the plain text into unreadable cipher text by using different multiple keys (Table 2). 4.2. Encryption Algorithm £ 48 01010011 Encryption scheme converts the plain text into unreadable cipher text by using different multiple keys (Table 2). Given Text: ‐PIYUSHS 156 83 Encryption scheme converts the plain text into unreadable cipher text by using different multiple keys (Table 2). Given Text: ‐PIYUSHS XNOR 00110000 S P 10011100 keys (Table 2). Given Text: ‐PIYUSHS Plain text–PIYUSHS. P ASCII–80 Given Text: ‐PIYUSHS P ASCII–80 01010000 P ASCII–80 5. Analysis of01010000 Key Security K1 ) = 184 (10111000) Key ( ASCII–80 01010000 K Key ( 1 ) = 184 (10111000) To find and compute all the values (J, A, Xn ) is difficult. In this section the sensitivity of the secret 01010000 Key ( KCipher Text– 1 ) = 184 (10111000) key has been represented with negligible difference in the key parameters: Key ( KCipher Text– Plaintext XNOR Key 1 ) = 184 (10111000) Cipher Text– Plaintext XNOR Key P XNOR 184 X “ tA ˆ X pX ´ 1qu MOD 256 n n n ` 1 Cipher Text– Plaintext XNOR Key P XNOR 184 80 XNOR 184 Plaintext XNOR Key P XNOR 184 80 XNOR 184 01010000 XNOR 10111000 Plain text–PIYUSHS; Parameter (J, A, Xn ); Keys (K1 , K 2 , K3 , . . . . . . . . . . . . . . K j ). P XNOR 184 80 XNOR 184 01010000 XNOR 10111000 80 XNOR 184 01010000 XNOR 10111000 5.1. Sensitivity of Number of Keys J 0 01010000 XNOR 1 = XNOR 10111000 0 0 1 XNOR 1 = = texts are also fully0 0 XNOR of keys are changed, It has been described that if a number then the cipher 0 0 XNOR 1 = 0 1 XNOR 0 = = 0 XNOR changed from one another for the same plain text. In Table 4 1 negligible dissimilarity in the j (number0 0 0 XNOR 1 = 0 1 XNOR 0 = 0 0 1 XNOR 1 1 = = 0 1 XNOR of keys) generates different cipher text. 1 XNOR 0 = 0 0 XNOR 1 = 0 1 0 XNOR 1 1 = = 1 0 XNOR 0 XNOR 1 = 0 1 XNOR 1 = 1 0 0 = = 0 1 TableXNOR 4. Sensitivity of Number 1 of XNOR 0 Keys j. 1 XNOR 1 = 1 0 XNOR 1 = 0 0 0 XNOR 0 0 = = 1 1 XNOR 0 XNOR 1 = 0 0 Xn XNOR 0 = 1 Keys (K0 ) j A0 Xn`1 Cipher Text XNOR = = 1 1 j0 0 XNOR 0 XNOR 0 = 1 0 XNOR 0 = XNOR Cipher Text–00010111 = 23 0 = 1 1 = ↨ ÅNÜç 2 60 4 72,208 184,48,184,48,184,48,184 0 XNOR 0 = 1 XNOR Cipher Text–00010111 = 23 0 = 1 = ↨ ÅFÙ£W 3 6 0 4 72,208,32 184,48,224,184,48,224,184 0 XNOR 0 = 1 Cipher Text–00010111 = 23 = ↨ 4 6 4 72,208,32,64 184,48,224,192,184,48,224 ÅFjçL Table 2. Cipher text for plain text. Cipher Text–00010111 = 23 = ↨ ÅFj,☼£ 5 6 4 72,208,32,64,128 Table 2. Cipher text for plain text. 184,48,224,192,128,184,48 Key K j Plain Text (ASCII) XNOR Cipher Text Table 2. Cipher text for plain text. Key K j Plain Text (ASCII) XNOR Cipher Text Table 2. Cipher text for plain text. P A 184 00010111 5.2. Sensitivity of Constant Key K j Plain Text (ASCII) XNOR Cipher Text P 184 00010111 80 23 K j fully different Cipher Text Key Plain Text (ASCII) XNOR It has been described that negligible changes in constant A produce keys so cipher P 184 00010111 80 23 ↨ 01010000 XNOR 10111000 P 5 it has been shown 184 00010111 texts are also different from each other. In Table that little difference in the values 80 23 ↨ 01010000 XNOR 10111000 I 48 10000110 80 23 of constant A produced ↨ 01010000 XNOR 10111000 I different cipher text. 48 10000110 73 134 ↨ 01010000 XNOR 10111000 I 48 10000110 73 134 01001001 XNOR 00110000 Å I 48 10000110 73 134 01001001 XNOR 00110000 Å Y 224 01000110 73 134 01001001 XNOR 00110000 Å Y 224 01000110 89 70 01001001 XNOR 00110000 Å Y 224 01000110 89 70 01011001 XNOR 11100000 F Y 224 01000110 89 70 01011001 XNOR 11100000 F U 192 01101010 89 70 01011001 XNOR 11100000 F
3 4 5
6 6 6
4 4 4
72,208,32 72,208,32,64 72,208,32,64,128
↨ÅF↕£W ↨ÅFjçL ↨ÅFj,☼£
184,48,224,184,48,224,184 184,48,224,192,184,48,224 184,48,224,192,128,184,48
5.2. Sensitivity of Constant A Entropy 2016, 18, 201 It has been described that negligible changes in constant A produce fully different keys so cipher
10 of 27
texts are also different from each other. In Table 5 it has been shown that little difference in the values of constant A produced different cipher text.
Table 5. Sensitivity of Constant A. Table 5. Sensitivity of Constant A.
j
A
Xjn A
5 5 5 5
2 3 5 6
4 5 4 5 4 5 4 5
2 3 5 6
Xn
Keys K j )(Kj ) Keys (
Xn`1
X n1
Cipher Text Cipher Text
24,80,96,64,128 4 24,80,96,64,128 232,176,160,192,128,232,176 232,176,160,192,128,232,176 36,196,228,132,164 4 36,196,228,132,164220,60,28,124,92,220,60 220,60,28,124,92,220,60 196,176,64,1,1,196,176 460,80,192,0,0 60,80,192,0,0 196,176,64,1,1,196,176 72,208,32,64,128 4 72,208,32,64,128 184,48,224,192,128,184,48 184,48,224,192,128,184,48
G♠♠j,_∟ sè║╓≡kÉ k♠μ½¡s∟ ↨ÅFj,☼£
5.3. Sensitivity of Initial Condition Xn
5.3. Sensitivity of Initial Condition Xn
It has been described that little changes in the initial condition Xn produces fully different keys,
so cipher texts are completely different. This is known as confusion. In Table 6 it has been shown that It has been described that little changes in the initial condition Xn produces fully different keys, X n produced fully different cipher text. little difference in values of initial variable so cipher texts are completely different. This is known as confusion. In Table 6 it has been shown that little difference in values of initial variable Xn produced fully different cipher text.
Entropy 2016, 18, x
10 of 27
Table 6. Sensitivity of initial condition Xn .
Table 6. Sensitivity of initial condition X n . j
A
Xn
5 5 5 5
6 6 6 6
2 3 4 5
j
A
X Xnn1
K j ) (Kj ) Keys ( Keys
Xn`1
Cipher Text Cipher Text
244,232,16,160,64,244,232 5 12,24,240,96,192 6 2 12,24,240,96,192 244,232,16,160,64,244,232 220,120,176,224,192,220,120 5 636,136,80,32,64 3 36,136,80,32,64 220,120,176,224,192,220,120 184,48,224,192,128,184,48 5 72,208,32,64,128 6 4 72,208,32,64,128 184,48,224,192,128,184,48 Entropy 2016, 18, x 136,80,32,64,128,136,80 5120,176,224,192,128 6 5 120,176,224,192,128 136,80,32,64,128,136,80
[^╢LF∞CD s╬▬Jlk╘ ↨ÅFj,☼£ ʹμÅΩ,?ⁿ
10 of 27
Table 6. Sensitivity of initial condition X n .
6. Cryptanalysis
j
6. Cryptanalysis
Xn
A
Keys ( K j )
X n1
Cipher Text
5 6 2 12,24,240,96,192 244,232,16,160,64,244,232 Cryptanalysis is a method which is used to verify the security of an algorithm by breaking the 5 6 3 36,136,80,32,64 220,120,176,224,192,220,120 5 6 4 72,208,32,64,128 184,48,224,192,128,184,48 codes of the algorithm and getting the possible encryption keys and plain text as well. 5 6 5 120,176,224,192,128 136,80,32,64,128,136,80
[^╢LF∞CD s╬▬Jlk╘
Cryptanalysis is a method which is used to verify the security of an algorithm by breaking the ↨ÅFj,☼£ ʹμÅΩ,?ⁿ codes of the algorithm and getting the possible encryption keys and plain text as well.
6.1. Cipher Text Only Attacks
6. Cryptanalysis
6.1. Cipher Text Only Attacks
Cryptanalysis is a method which is used to verify the security of an algorithm by breaking the
Parameter (j = 5, A = 6, X n =4)
Parameter (j = 5, A = 6, Xn codes of the algorithm and getting the possible encryption keys and plain text as well. = 4) Keys (184,48,224,192,128) 6.1. Cipher Text Only Attacks Keys C1 (184,48,224,192,128) Ek1 (P1 ), C2 Ek2 (P2 ),................, Ci Ekm (Pi ) where m = 1 to j. Given: Parameter (j = 5, A = 6, Given: C1 “ Ek1 pP1 q, C2 “ Ek2 pP q, . . . . . . . . . . . . .X. . =4) ., Ci “ Ekm pPi q where m = 1 to j. ; 2 Deduce: ‐Either P1 , P2 , P3 ,.....................Pi Keys (184,48,224,192,128) Deduce: -Either P1 , P2 , P3 , . . . . . . . . . . . . . . . . . . . . . Pi ; Given: C1 Ek (P1 ), C2 Ek (P2 ),................, Ci Ek (Pi ) where m = 1 to j. K1 , K2 , K3 , K4 , K5 ; 4 , K5 ; K1 , K2 , K3 , K Deduce: ‐Either P1 , P2 , P3 ,.....................Pi ; Or an algorithm to deduce Pi 1 Or an algorithm to deduce Pi`K11 , K2 , K3 , K4 , K5 ; Ci 1 CEkm (Pi“ pPi`1 q From From 1 )E Or an algorithm to deduce Pi 1 i`1 km From Ci 1 Ek (Pi 1 ) Keys (184,48,224,192,128) Keys (184,48,224,192,128) n
1
2
m
m
Keys (184,48,224,192,128)
Example: Example:
P1 = QP1then = Q then
Example:
C1 Ek1 P(1P1=) Q CE C1 Ek (P1 ) (Q) E184 = ▬ then “ Ek1 pP1 q “ E184 1184 C E ( P ) E184,48 P = QQ then C “ E pP q “ E 2 k 2 C2 Ek1,2 (2P2 ) 2E184,48k1,2 2 184,48 (QQ) = ▬₧ 1
(Q) = ▬
(QQ) = ▬₧ P2 =then QQ then P2 = QQ C E ( P ) E P = QQQ then C “ Ek1,2,3 pP3 q “ E184,48,224 (QQQ) = ▬₧N P3 = QQQ then 3 k 3 184,48,224 C3 Ek1,2,3 (3P3 ) 3 E184,48,224 P3 = QQQ then = ▬₧N (QQQQ) = ▬₧Nn ((QQQ) P4 ) E184,48,224,192 P4 C=4 QQQQ thenpP4 q “ EC184,48,224,192 “ Ek1,2,3,4 P4 = QQQQ then 4 Ek EE184,48,224,192 P4 = QQQQ then then C4 Ek1,2,3,4PC5(5P=4“)QQQQQ (P5 ) E184,48,224,192,128 (QQQQ) = ▬₧Nn pP5 q “ EC184,48,224,192,128 (QQQQQ) = ▬₧Nn. P5 = QQQQQ 5 Ek k1,2,3,4,5then C E ( P ) E P = QQQQQQ then C “ E pP q “ E P = QQQQQQ then 6 k 6 184,48,224,192,128,184 C E ( P ) E 6 6 6 184,48,224,192,128,184 6 k P5 = QQQQQ then 1,2,3,4,5,1 (QQQQQ) = ▬₧Nn.(QQQQQQ) = ▬₧Nn.▬ 5 k1,2,3,4,5 5 184,48,224,192,128 1,2
1,2,3
1,2,3,4
1,2,3,4,5
1,2,3,4,5,1
C6 Ek1,2,3,4,5,1 (From the above example, it is to be said that if any character is repeated many times in the text, P ) E184,48,224,192,128,184 P6 = QQQQQQ then (QQQQQQ) = ▬₧Nn.▬ From the above example, itthe cipher text is completely different for same letter Q. The Cipher text of Character Q finding as the is to6 be said that if any character is repeated many times in the text, first letter is dissimilar from Q finding as nth character in plaintext. the cipher text is completely different for same letter Q. The Cipher text of Character Q finding as the From the above example, it is to be said that if any character is repeated many times in the text, first letter is dissimilar from Q finding as nth character in plaintext. 6.2. Known Plain Text Attack
the cipher text is completely different for same letter Q. The Cipher text of Character Q finding as the Parameter (j = 5, A = 6, X n = 4) first letter is dissimilar from Q finding as nth character in plaintext.
6.2. Known Plain Text Attack
Keys (184,48,224,192,128)
Given: P1 , C1 Ek (P1 ), P2 , C2 E k (P2 ),..............Pi , Ci Ek (Pi ) where m = 1 to j 6.2. Known Plain Text Attack Parameter (j = 5, A = 6, Xn = 4) 1
Keys (184,48,224,192,128) Parameter (j = 5, A = 6, X n = 4)
2
m
Deduce: ‐Either K1 , K2 , K3 , K4 , K5 ; Or an algorithm to deduce Pi 1
Given: P1 , C1 “ Ek1 pP1 q, P2 , C2 From “ EkC2 ipP q, . . . . . . . . . . . . . . Pi , Ci “ Ekm pPi q where m = 1 to j 1 2Ek (Pi 1 ) Keys (184,48,224,192,128) Keys (184,48,224,192,128) Pi , Ci Ekm (Pi ) where m = 1 to j Given: P1 , C1 Ek1 (P1 ), P2 , C2 E k2 (P2 ),.............. m
Deduce: ‐Either K1 , K2 , K3 , K4 , K5 ; Or an algorithm to deduce Pi 1 From Ci 1 Ekm (Pi 1 )
Example:
P1 = R then
C1 Ek1 (P1 ) E184
(R) = §
P2 = RR then
C2 Ek1,2 (P2 ) E184,48
(RR)= §¥
Entropy 2016, 18, 201
11 of 27
Deduce: -Either K1 , K2 , K3 , K4 , K5 ; Or an algorithm to deduce Pi`1 From Ci`1 “ Ekm pPi`1 q Keys (184,48,224,192,128) Example: P1 = R then P2 = RR then P3 = RRR then P4 = RRRR then P5 = RRRRR then P6 = RRRRRR then
C1 “ Ek1 pP1 q “ E184 C2 “ Ek1,2 pP2 q “ E184,48 C3 “ Ek1,2,3 pP3 q “ E184,48,224 C4 “ Ek1,2,3,4 pP4 q “ E184,48,224,192 C5 “ Ek1,2,3,4,5 pP5 q “ E184,48,224,192,128 C6 “ Ek1,2,3,4,5,1 pP6 q “ E184,48,224,192,128,184
(R) = § (RR)= §¥ (RRR) = §¥M (RRRR) = §¥Mm (RRRRR) = §¥Mm(RRRRRR) = §¥Mm-§
From the example, it can be said that there are several plain texts with their corresponding cipher text. It is hard to compute the key or the algorithm which is used for encryption of plain texts for decrypting them. Keys are generated by very restricted and sensitive parameters. The cipher text of the Character R found as the first letter is different as that of the letter R found as the nth character in the plaintext. 6.3. Chosen Plaintext Attacks Parameter (j = 5, A = 6, Xn = 4) Keys (184,48,224,192,128) Given: P1 , C1 “ Ek1 pP1 q, P2 , C2 “ Ek2 pP2 q, . . . . . . . . . . . . . . Pi , Ci “ Ekm pPi q Where the cryptanalysis gets to decide P1 , P2 , P3 , . . . . . . . . . . . . . . . . . . . . . Pi and m = 1 to j. Deduce: -Either P1 , P2 , P3 , . . . . . . . . . . . . . . . . . . . . . Pi ; Or an algorithm to deduce Pi`1 From Ci`1 “ Ekm pPi`1 q Keys (184,48,224,192,128) Example: P1 = DE then cipher text C1 “ Ek1,2 pP1 q “ E184,48 (DE) = ªè P2 = ED then cipher text C2 “ Ek1,2 pP2 q “ E184,48 (ED) = -ï
It is not easy to find out the key or the algorithm to decrypt the cipher text which is to be encrypted with the same keys. 6.4. Chosen Cipher Text Attack Parameter (j = 5, A = 6, Xn = 4) Keys (184,48,224,192,128) Given: C1 , P1 “ Dk1 pC1 q, C2 , P2 “ Dk2 pC2 q, . . . . . . . . . ., Ci , Pi “ Dkm pCi q where m = 1 to j Deduce: -K1 , K2 , K3 , K4 , K5 ; Example: C1 = ªè then plaintext P1 “ Dk1,2 pC1 q “ D184,48 (ªè) = DE C2 = -ï then plain text P2 “ Dk1,2 pC2 q “ D184,48 (-ï) = ED
Keys are produced by two different parameters Xn and A which are very sensitive and independent, so it is not easy to deduce the keys by knowing the cipher text and its decrypted plaintext.
Entropy 2016, 18, 201
12 of 27
7. Performance Analysis In this paper, pertinent metrics are recognized. Performance of the proposed chaotic algorithm(CET-2C) is measured, and finally compared with the existing one secret key, AES, encryption algorithm and also compared with different algorithms using same data size published in Springer [12], Entropy 2016, 18, x 12 of 27 Hindawi [17] and EEA [3] publications. It is to be shown that CET-2C is not affected by the data set, and only depends upon the data size. Metrics and Performance Metrics and Performance In this paper, five significant metrics is described to estimate the performance of the proposed In this paper, five significant metrics is described to estimate the performance of the proposed algorithm (CET‐2C). The metrics include: encryption/decryption time, CPU time, cipher size, power algorithm (CET-2C). The metricsthroughput. include: encryption/decryption time, CPU time, cipher size, power consumption, and encryption Then the experiment is performed, and performance consumption, and encryption throughput. Then the experiment is performed, and performance results results are measured using a laptop having a Intel (R) Core (TM) i3‐3110M processor CPU @ 2.40GHz, are measured using a laptop having a Intel (R) Core (TM) i3-3110M processor CPU @ 2.40GHz, and a and a RAM of 2GB. The results are also calculated using a laptop having an Intel Pentium Dual‐Core RAM of 2GB. The results are also calculated using a laptop having an Intel Pentium Dual-Core CPU @ CPU @ 2.60 GHz processor and 2 GB RAM and a laptop having an Intel (R) Pentium (R) Dual CPU 2.60 GHz processor and 2 GB RAM and a laptop having an Intel (R) Pentium (R) Dual CPU T2370 @ T2370 @ 1.73 GHz processor and 1 GB RAM for comparison with other algorithms. 1.73 GHz processor and 1 GB RAM for comparison with other algorithms. Encryption Time Encryption Time The encryption time is based on the running time complexity of the algorithm, length of the key, The encryption time is based on the running time complexity of the algorithm, length of the key, and the plaintext size to be encrypted with various encryption algorithms. Hence, in this paper, a and the plaintext size to be encrypted with various encryption algorithms. Hence, in this paper, a number of encryption times for different plaintext sizes and key length are selected and analyzed by number of encryption times for different plaintext sizes and key length are selected and analyzed by using CPU clock time [3]. A variety of data sizes ranging from 0 MB to 80 MB are encrypted and their using CPU clockencryption time [3]. Atimes varietyare of collected. data sizes ranging from by 0 MB to 80 MB arethe encrypted and time their corresponding It is shown a graph that encryption corresponding encryption times are collected. It is shown by a graph that the encryption time increases increases with increasing the data size. The encryption time and data size are linearly increased in with increasing the data size. The encryption time and data size are linearly increased in Figure 1. Figure 1.
Encryption Time (Miliseconds)
Encryption Time 5000 4000 3000 2000
CET‐2C
1000 0 10
20
30
40
50
60
70
80
Message Size (Mega Bytes)
Figure 1. Message size versus encryption time. Figure 1. Message size versus encryption time.
Encryption Throughput, X Encryption Throughput, Xee It is defined as the number of bytes of plaintext encrypted (cipher text completed) during an It is defined as the number of bytes of plaintext encrypted (cipher text completed) during an observation period (encryption time) [3]. Mathematically: observation period (encryption time) [3]. Mathematically:
Numberof ofCompletions Completions ininBytes Number Bytes XeX“e Encryption Time(s(sq Encryption Time )
In the the proposed proposed algorithm, algorithm, Throughput Throughput linearity linearity is is enhanced enhanced as as the the data data size size is is increased increased in in In Figure 2. Figure 2.
ughput Mega Bytes/ Sec
Throughput 25 20 15 10
CET‐2C
5 0 10
20
30
40
50
60
70
80
Xe
Number of Completions in Bytes
Encryption Time (s )
In 2016, the proposed algorithm, Throughput linearity is enhanced as the data size is increased in 27 Entropy 18, 201 13 of Figure 2.
Throughput Mega Bytes/ Sec
Throughput 25 20 15 10
CET‐2C
5 0 10
20
30
40
50
60
70
80
Message Size (Mega Bytes)
Figure 2. Message size versus throughput. Figure 2. Message size versus throughput.
Entropy 2016, 18, x
13 of 27
Power Consumption Power Consumption Power usability of devices and Power is is needed needed for for running running fast fast CPUs CPUs and and memory memory based based on on the the usability of devices and algorithms. The energy cost of the encryption process is defined as the product of the total number of algorithms. The energy cost of the encryption process is defined as the product of the total number of clock cycles required by the encryption process and average current drawn by each CPU clock cycle clock cycles required by the encryption process and average current drawn by each CPU clock cycle in the ampere cycle. The total energy cost is calculated in ampere seconds by dividing the ampere in the ampere cycle. The total energy cost is calculated in ampere seconds by dividing the ampere cycles by the clock frequency in cycles/second of a processor [3]. Then results are multiplied with the cycles by the clock frequency in cycles/second of a processor [3]. Then results are multiplied with the processor`s operating voltage to obtain the energy cost in joule. The CET‐2C consumed the amount processor’s operating voltage to obtain the energy cost in joule. The CET-2C consumed the amount of of energy for encryption or decryption is given by: energy for encryption or decryption is given by:
E V I T J E “ Vcccc ˆ I ˆ T J
where Vcc = Processor’s operating voltage; T = Encryption time; I = Average current per CPU cycle. where Vcc = Processor’s operating voltage; T = Encryption time; I = Average current per CPU cycle. In this paper, paper, the experiments were performed and results were collected using equipped a laptop In this the experiments were performed and results were collected using a laptop equipped with Intel (R) i3-3110M Core (TM) i3‐3110M processor CPU. The approximate average current with an Intel (R)an Core (TM) processor CPU. The approximate average current consumed is V consumed is 100 mA and the CPU voltage is 100 mA and the CPU voltage is Vcc = 1.25 V (both obtained from the Intel Manual). cc = 1.25 V (both obtained from the Intel Manual). The variations of energy consumption with different data sizes are shown in the graph which is The variations of energy consumption with different data sizes are shown in the graph which is represented that the energy consumed during an encrypting process is directly proportional to the represented that the energy consumed during an encrypting process is directly proportional to the encryption time in Figure 3. encryption time in Figure 3.
Energy Consumed in Joules
Energy Consumption 0.6 0.5 0.4 0.3 0.2 0.1 0
CET‐2C
10
20
30
40
50
60
70
80
Message Size (Mega Bytes)
Figure 3. Message size versus energy consumption. Figure 3. Message size versus energy consumption.
CPU Time CPU Time The CPU process time is defined as the time when the CPU is busy in the calculation of a The CPU process time is defined as the time when the CPU is busy in the calculation of a particular particular process. When the load of CPU is increased then CPU time is also enhanced linearly [3]. In process. When the load of CPU is increased then CPU time is also enhanced linearly [3]. In this paper, this paper, the CPU time is given by: the CPU time is given by:
CPU utilization CPU busytime, TCPU CPU utilization CPU busytime, TCPU “ Observation period Observation period
where CPU utilization = Obtained from the task manager; Observation period = Encryption Time in Figure 4.
CPU Time
The CPU process time is defined as the time when the CPU is busy in the calculation of a particular process. When the load of CPU is increased then CPU time is also enhanced linearly [3]. In this paper, the CPU time is given by: Entropy 2016, 18, 201
CPU busytime, TCPU
CPU utilization Observation period
14 of 27
where CPU utilization = Obtained from the task manager; Observation period = Encryption Time in where CPU utilization = Obtained from the task manager; Observation period = Encryption Time in Figure 4. Figure 4.
CPU Time (Utilization/Sec)
CPU Time 0.2 0.15 0.1 CET‐2C
0.05 0 10
20
30
40
50
60
70
80
Message Size (Mega Bytes)
Figure 4. Message size versus CPU time. Figure 4. Message size versus CPU time.
Cipher Size Shannon’s Characteristics of “Good” Ciphers states that the size of the encrypted text should be no larger than the plaintext of the original message. In this work, the size of plaintext and cipher text are shown to be the same, thus satisfying Shannon’s size Characteristics of “Good” Ciphers rule. 8. Comparison with AES and Chaotic Algorithms [3] The performance of the proposed algorithm (CET-2C) is compared with a popular secret key encryption algorithm, AES, and with Chaotic Algorithms [3,12] using the data size same as provided in [3,12,17]. The plaintexts used in the proposed algorithm, are encrypted using AES, and a Chaotic Algorithm [3,12] and their performance is evaluated and analyzed using the same metrics as above. 8.1. Encryption Time Encryption times for the same set of several data sizes (200 KB to 450 KB) are collected using a laptop equipped with an Intel (R) Pentium (R) Dual CPU T2370 @ 1.73 GHz processor, and 1 GB RAM and used to analyze the performance of the CET-2C, and the results put into graphic form and tabular form (Table 7). Table 7. Encryption times of Chaotic Algorithm [3], AES [3] and CET-2C. Encryption Time in Seconds
Message Sizes in KB 200 250 300 350 400 450
Chaotic Algorithm [3]
AES [3]
CET-2C
1.65 2.05 2.48 2.83 3.35 3.75
1 1 1 1 1 1
0.0698 0.076 0.082 0.0891 0.0976 0.1054
Figure 5 shows the proposed algorithm CET-2C is much faster compared to AES [3] and the Chaotic Algorithm for multiple message sizes from 200 KB to 450 KB [3]. CET-2C is also applied for large data sizes with lower encryption time. The results illustrate that the encryption time increases linearly when it is compared with other algorithms.
450
3.75
1
0.1054
Figure 5 shows the proposed algorithm CET‐2C is much faster compared to AES [3] and the Chaotic Algorithm for multiple message sizes from 200 KB to 450 KB [3]. CET‐2C is also applied for large data sizes with lower encryption time. The results illustrate that the encryption time increases Entropy 2016, 18, 201 15 of 27 linearly when it is compared with other algorithms.
Encryption Time (Seconds)
Encryption Time 4 3.5 3 2.5 2 1.5 1 0.5 0
Chaotic Algorithm [3] AES [3] CET‐2C 200
250
300
350
400
450
Message Size (Kilobits)
Figure 5. Encryption times of Chaotic Algorithm [3], AES [3] and CET‐2C. Figure 5. Encryption times of Chaotic Algorithm [3], AES [3] and CET-2C.
Overall % Gain of CET‐2C over Chaotic Algorithm [3] for Encryption Time with increasing the Overall % Gain of CET-2C over Chaotic Algorithm [3] for Encryption Time with increasing the message size: message size: ETCET 2 C (atDifferentMessageSizes) ETCA (atDifferentMessageSizes) Gp of CET-2C over ET CACET ´2C pat Different Message Sizesq ´ ETCA pat Different MessageSizesq G p o f CET-2C over CA “ ETCA (at Different Message Sizes) ET pat Different Message Sizesq CA Here G p = Overall % Gain at Different Message Sizes; ET = Encryption Time; CA = Chaotic Algorithm; CET-2C = Chaotic Map based Encryption Technique using 2’s Compliment. % Gain of CET-2C over Chaotic Algorithm [3] when message size is 200 KB ˇ ˇ ˇ 0.0698 ´ 1.65 ˇ ETCET´2C ´ ETCA ˇ ˇ ˆ 100 “ 95.77 ˆ 100 “ ˇ % Gain of CET-2C “ ˇ ETCA 1.65 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 250 KB ˇ ˇ ˇ 0.076 ´ 2.05 ˇ ETCET´2C ´ ETCA ˇ ˇ ˆ 100 “ 96.29 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETCA 2.05 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 300 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.082 ´ 2.48 ˇ ETCET´2C ´ ETCA ˇ ˆ 100 “ 96.69 ˆ 100 “ ˇˇ ˇ ETCA 2.48
% Gain of CET-2C over Chaotic Algorithm [3] when message size is 350 KB ˇ ˇ ˇ 0.0891 ´ 2.83 ˇ ETCET´2C ´ ETCA ˇ ˇ ˆ 100 “ 96.85 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETCA 2.83 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 400 KB ˇ ˇ ˇ 0.0976 ´ 3.35 ˇ ETCET´2C ´ ETCA ˇ ˆ 100 “ 97.09 ˇ % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETCA 3.35 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 450 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.1054 ´ 3.75 ˇ ETCET´2C ´ ETCA ˇ ˆ 100 “ 97.19 ˆ 100 “ ˇˇ ˇ ETCA 3.75
Overall % Gain of CET-2C over AES [3] for Encryption Time with increasing the message size G p of CET-2C over AES “
ETCET´2C pat Different Message Sizesq ´ ETAES pat Different Message Sizesq ETAES pat Different Message Sizesq
Entropy 2016, 18, 201
16 of 27
where, AES = Advance Encryption Standard. % Gain of CET-2C over AES [3] when message size is 200 KB ˇ ˇ ˇ 0.0698 ´ 1 ˇ ETCET´2C ´ ETAES ˇ ˇ ˆ 100 “ 93.02 ˆ 100 “ ˇ % Gain of CET-2C “ ˇ ETAES 1 % Gain of CET-2C over AES [3] when message size is 250 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.076 ´ 1 ˇ ETCET´2C ´ ETAES ˇ ˆ 100 “ 92.4 ˆ 100 “ ˇˇ ˇ ETAES 1
% Gain of CET-2C over AES [3] when message size is 300 KB ˇ ˇ ˇ 0.082 ´ 1 ˇ ETCET´2C ´ ETAES ˇ ˇ ˆ 100 “ 91.8 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETAES 1 % Gain of CET-2C over AES [3] when message size is 350 KB ˇ ˇ ˇ 0.0891 ´ 1 ˇ ETCET´2C ´ ETAES ˇ ˇ ˆ 100 “ 91.09 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETAES 1 % Gain of CET-2C over AES [3] when message size is 400 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.0976 ´ 1 ˇ ETCET´2C ´ ETAES ˇ ˆ 100 “ 90.24 ˆ 100 “ ˇˇ ˇ ETAES 1
% Gain of CET-2C over AES [3] when message size is 450 KB ˇ ˇ ˇ 0.1054 ´ 1 ˇ ETCET´2C ´ ETAES ˇ ˇ ˆ 100 “ 89.46 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETAES 1 Table 8 illustrates that overall gain % of CET-2C for encryption time is higher as compared with the Chaotic Algorithm [3] and AES [3]. For the 350 KB message size the overall % gain of CET-2C is 96.85% and 91.09% when it is compared with the Chaotic Algorithm [3] and AES [3]. It shows that the performance of CET-2C is increased with multiple message sizes. The encryption time is also calculated for large data sizes in MB (10 MB to 80 MB) using a laptop with an Intel (R) Pentium (R) Dual CPU T2370 processor of @ 1.73 GHz, and 1 GB RAM (Table 9). Table 8. Overall % Gain of CET-2C over Chaotic Algorithm [3] and AES [3] for encryption time. Message Sizes in KB 200 250 300 350 400 450
Overall % Gain for Encryption Time of CET-2C CET-2C over Chaotic Algorithm [3]
CET-2C over AES [3]
95.77 96.29 96.69 96.85 97.09 97.19
93.02 92.4 91.8 91.09 90.24 89.46
Figure 6 shows that the time required for encryption in the proposed CET-2C algorithm is lower compared to the algorithm [12] for different message sizes in MB. For 80 MB message the encryption time of CET-2C is 12 sand for the comparison algorithm [12] it is 13.8 s. This shows that CET-2C is much faster than the comparable algorithm [12].
Entropy 2016, 18, 201
17 of 27
Table 9. Encryption time of compared Algorithm [12] and CET-2C. Encryption Time in Milliseconds
Message Sizes in MB
Compared Algorithm [12]
CET-2C
1500 3500 5300 6800 8500 10,300 12,100 13,800
1250 2400 4876 6050 8000 9700 10,800 12,000
10 20 30 40 50 60 70 80 Entropy 2016, 18, x
17 of 27
Encryption Time (Miliseconds)
Encryption Time 16000 14000 12000 10000 8000 6000 4000 2000 0
Compared Algorithm [12] CET‐2C
10
20
30
40
50
60
70
80
Message Size (Mega Bytes) Figure 6. Encryption time of compared Algorithm [12] and CET‐2C. Figure 6. Encryption time of compared Algorithm [12] and CET-2C.
Overall % Gain of CET‐2C over Compared Algorithm [12] for Encryption Time with increasing Overall % Gain of CET-2C over Compared Algorithm [12] for Encryption Time with increasing message size. message size. ETCET 2C (atDifferentMessageSizes) ETCA (atDifferentMessageSizes) Gp of CET-2C over CA ´2C pat Different Message Sizesq ´ ETCA pat Different Message ETCET Sizesq G p of CET-2C over CA “ ETCA (at Different MessageSizes) ET pat Different Message Sizesq CA Here Here G Gpp == Overall % Gain at Different Message Sizes; ET = Encryption Time; CA = Compared Overall % Gain at Different Message Sizes; ET = Encryption Time; CA = Compared Algorithm; CET‐2C = Chaotic Map based Encryption Technique using 2’s Compliment Algorithm; CET-2C = Chaotic Map based Encryption Technique using 2’s Compliment % Gain of CET‐2C over Compared Algorithm [12] when message size is 10 MB % Gain of CET-2C over Compared Algorithm [12] when message size is 10 MB ˇ ˇ ET ´2C ETCA 1250 1500 ˇ 1250 ˇ ET ´ 1500 2C´ET CA CETCET ˇ ˇ ˆ % Gain of CET-2C 100 100 16.67 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ 100 “ 16.67 ETET 1500 1500 CA CA % Gain of CET-2C over Compared Algorithm [12] when message size is 20 MB % Gain of CET‐2C over Compared Algorithm [12] when message size is 20 MB ˇ ˇ ˇ 2400 ETCA 2400 3500 ETETCET 2C´ET ´ 3500 ˇˇ CA % Gain of CET-2C ˆ100 100 31.43 % Gain of CET-2C “ CET´2C 100“ ˇˇ “ 31.43 ˇ ˆ 100 ET 3500 3500 ET CA CA % Gain of CET-2C over Compared Algorithm [12] when message size is 30 MB % Gain of CET‐2C over Compared Algorithm [12] when message size is 30 MB ˇ ˇ ˇ 4876 ET ETCA 4876 5300 ´ 5300 ˇˇ ETET CET ´2C CET 2C´ CA ˇ % Gain of CET-2C “ 100 “ ˇ 100 “ 8.00 % Gain of CET-2C 8.00 ˆ100 100 ˇˆ ET CA 5305300 0 ET
CA
% Gain of CET‐2C over Compared Algorithm [12] when message size is 40 MB
% Gain of CET-2C
ETCET 2C ETCA 6050 6800 100 100 11.03 ETCA 6800
% Gain of CET‐2C over Compared Algorithm [12] when message size is 50 MB
% Gain of CET-2C
ETCET 2C ETCA
100
8000 8500
100 5.88
Entropy 2016, 18, 201
18 of 27
% Gain of CET-2C over Compared Algorithm [12] when message size is 40 MB % Gain of CET-2C “
ˇ ˇ ˇ 6050 ´ 6800 ˇ ETCET´2C ´ ETCA ˇ ˆ 100 “ 11.03 ˆ 100 “ ˇˇ ˇ ETCA 6800
% Gain of CET-2C over Compared Algorithm [12] when message size is 50 MB ˇ ˇ ˇ 8000 ´ 8500 ˇ ETCET´2C ´ ETCA ˇ ˇ ˆ 100 “ 5.88 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETCA 8500 % Gain of CET-2C over Compared Algorithm [12] when message size is 60 MB ˇ ˇ ˇ 9700 ´ 10300 ˇ ETCET´2C ´ ETCA ˇ ˇ ˆ 100 “ 5.83 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETCA 10300 % Gain of CET-2C over Compared Algorithm [12] when message size is 70 MB % Gain of CET-2C “
ˇ ˇ ˇ 10800 ´ 12100 ˇ ETCET´2C ´ ETCA ˇ ˆ 100 “ 10.74 ˆ 100 “ ˇˇ ˇ ETCA 12100
% Gain of CET-2C over Compared Algorithm [12] when message size is 80 MB ˇ ˇ ˇ 12000 ´ 13800 ˇ ETCET´2C ´ ETCA ˇ ˇ ˆ 100 “ 13.04 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETCA 13800 Table 10 illustrates that the overall encryption time gain % of CET-2C is higher as compared with the compared algorithm [12]. At the message size 20 MB the overall % gain of CET-2C is 31.43% when compared with the compared algorithm [12]. This shows that the performance of CET-2C is increased with multiple message sizes. Table 10. Overall %Gain of CET-2C over the compared Algorithm [12] for encryption time. Overall % Gain for Encryption Time of CET-2C
Message Sizes in MB
CET-2C over Compared Algorithm [12] 10 20 30 40 50 60 70 80
16.67 31.43 8.00 11.03 5.88 5.83 10.74 13.04
The data sizes was also taken in bytes and experiments performed to calculate the encryption time using a laptop with an Intel (R) Core (TM) i3-3110M processor @ 2.40GHzCPU, and a RAM of 2GB (Table 11). Table 11. Encryption time of compared Algorithms 1 and 2 [17] and CET-2C. Encryption Time in Milliseconds
Message Sizes in Bytes 100,000 500,000 600,000 700,000 800,000
Compared Algorithm1 [17]
Compared Algorithm2 [17]
CET-2C
1 4 204 410 640
3 5 620 1230 1930
54 75 82 97 120
Bytes 100,000 500,000 600,000 700,000 Entropy 2016, 18, 201 800,000
Compared Algorithm1 [17] 1 4 204 410 640
Compared Algorithm2 [17] 3 5 620 1230 1930
CET‐2C 54 75 82 1997 of 27 120
Figure 7 shows that for small dataset sizes (100 KB and 500 KB) the comparison algorithms [17] Figure 7 shows that for small dataset sizes (100 KB and 500 KB) the comparison algorithms [17] performed the encryption with slightly higher speed, but for large data sizes (larger than 500 KB) the performed the encryption with slightly higher speed, but for large data sizes (larger than 500 KB) the encryption instantly increased. TheThe graph of our algorithm CET-2CCET‐2C increased linearly encryption time time isis instantly increased. graph of proposed our proposed algorithm increased for small to large data sizes. linearly for small to large data sizes.
Encryption Time (Mili Seconds)
Encryption Time 3000
Compared Algorithm1 [17]
2000 1000
Compared Algorithm2 [17]
0 100000 500000 600000 700000 800000
CET‐2C
Message Size (Bytes) Figure 7. Encryption times of compared Algorithms 1 and 2 [17] and CET‐2C. Figure 7. Encryption times of compared Algorithms 1 and 2 [17] and CET-2C.
Overall % Gain of CET-2C over compared Algorithm 1 [17] for encryption time with increasing the message size: G p of CET-2C over CA1 “
ETCET´2C pat Different Message Sizesq ´ ETCA1 pat Different Message Sizesq ETCA1 pat Different Message Sizesq
Here G p = Overall % Gain at Different Message Sizes; ET = Encryption Time; CA1 = Compared Algorithm 1; CET-2C = Chaotic Map based Encryption Technique using 2’s Compliment. % Gain of CET-2C over Compared Algorithm 1 [17] when message size is 100,000 Bytes ˇ ˇ ˇ 54 ´ 1 ˇ ETCET´2C ´ ETCA1 ˇ ˇ ˆ 100 “ 98.15 ˆ 100 “ ˇ % Gain of CET-2C “ ETCA1 54 ˇ % Gain of CET-2C over compared Algorithm 1 [17] when message size is 500,000 Bytes % Gain of CET-2C “
ˇ ˇ ˇ 75 ´ 4 ˇ ETCET´2C ´ ETCA1 ˇ ˆ 100 “ 94.67 ˆ 100 “ ˇˇ ETCA1 75 ˇ
% Gain of CET-2C over compared Algorithm 1 [17] when message size is 600,000 Bytes ˇ ˇ ˇ 82 ´ 204 ˇ ETCET´2C ´ ETCA1 ˇ ˇ ˆ 100 “ 59.08 ˆ 100 “ ˇ % Gain of CET-2C “ ETCA1 204 ˇ % Gain of CET-2C over compared Algorithm 1 [17] when message size is 700,000 Bytes % Gain of CET-2C “
ˇ ˇ ˇ 97 ´ 410 ˇ ETCET´2C ´ ETCA1 ˇ ˆ 100 “ 76.34 ˆ 100 “ ˇˇ ETCA1 410 ˇ
% Gain of CET-2C over Compared Algorithm 1 [17] when message size is 800,000 Bytes ˇ ˇ ˇ 120 ´ 640 ˇ ETCET´2C ´ ETCA1 ˇ ˇ ˆ 100 “ 81.25 % Gain of CET-2C “ ˆ 100 “ ˇ ETCA1 640 ˇ Overall % Gain of CET-2C over Compared Algorithm 2 [17] for Encryption Time with increasing the message size G p of CET-2C over CA2 “
ETCET´2C pat Different Message Sizesq ´ ETCA2 pat Different Message Sizesq ETCA2 pat Different Message Sizesq
Entropy 2016, 18, 201
20 of 27
Here G p = Overall % Gain at Different Message Sizes; ET = Encryption Time; CA2 = Compared Algorithm 2; CET-2C = Chaotic Map based Encryption Technique using 2’s Compliment. % Gain of CET-2C over compared Algorithm 1 [17] when message size is 100,000 Bytes ˇ ˇ ˇ 54 ´ 3 ˇ ETCET´2C ´ ETCA2 ˇ ˇ ˆ 100 “ 94.44 ˆ 100 “ ˇ % Gain of CET-2C “ ETCA2 54 ˇ % Gain of CET-2C over compared Algorithm 1 [17] when message size is 500,000 Bytes ˇ ˇ ˇ 75 ´ 5 ˇ ETCET´2C ´ ETCA2 ˇ ˇ ˆ 100 “ 93.33 % Gain of CET-2C “ ˆ 100 “ ˇ ETCA2 75 ˇ % Gain of CET-2C over compared Algorithm 1 [17] when message size is 600,000 Bytes % Gain of CET-2C “
ˇ ˇ ˇ 82 ´ 620 ˇ ETCET´2C ´ ETCA2 ˇ ˆ 100 “ 86.77 ˆ 100 “ ˇˇ ETCA2 620 ˇ
% Gain of CET-2C over compared Algorithm 1 [17] when message size is 700,000 Bytes ˇ ˇ ˇ 97 ´ 1230 ˇ ETCET´2C ´ ETCA2 ˇ ˇ ˆ 100 “ 92.11 ˆ 100 “ ˇ % Gain of CET-2C “ ETCA2 1230 ˇ % Gain of CET-2C over compared Algorithm1 [17] when message size is 800,000 Bytes ˇ ˇ ˇ 120 ´ 1930 ˇ ETCET´2C ´ ETCA2 ˇ ˇ ˆ 100 “ 93.78 % Gain of CET-2C “ ˆ 100 “ ˇ ETCA2 1930 ˇ Table 12 illustrates that the overall gain % of CET-2C for encryption time is negative as compared with the compared Algorithms 1 and 2 [17] for small data sizes (up to 500 KB), meaning that CET-2C takes a longer time for encryption. After 500 KB the encryption time is lower than for comparable Algorithms 1 and 2 [17] so the overall performance of CET-2C is enhanced for larger data sizes. At the message size of 700 KB the overall % gain of CET-2C is 76.34% and 92.11% when it is compared with compared Algorithm 1 and 2, respectively [17].This shows that the performance of CET-2C is increased with increased message size. Table 12. Overall %Gain of CET-2C over compared Algorithms 1 and 2 [17] for encryption time. Overall % Gain for Encryption Time of CET-2C Message Sizes in Bytes
100,000 500,000 600,000 700,000 800,000
CET-2C over Compared Algorithm 1 [17]
CET-2C over Compared Algorithm 2 [17]
´98.15 ´94.67 59.80 76.34 81.25
´94.44 ´93.33 86.77 92.11 93.78
8.2. Encryption Throughput The graph representing the throughput performance of the proposed algorithm CET-2C is much higher for any data size compared to the AES and Chaotic Algorithm [3]. It was analyzed using a laptop having an Intel (R) Pentium (R) Dual T2370 @ 1.73 GHz processor CPU, and 1 GB RAM (Table 13).
Entropy 2016, 18, 201
21 of 27
Table 13. Encryption throughput of Chaotic Algorithm [3], AES [3] and CET-2C. Encryption Throughput in Bytes/Second
Message Sizes in Bytes 10,000 20,000 30,000 40,000 50,000
Chaotic Algorithm [3]
AES [3]
CET-2C
20,000 17,000 16,700 16,500 16,400
2000 2000 2000 2000 2000
50,000 44,847 49,342 57,405 64,049
Figure 8 shows that the throughput of the proposed algorithm CET-2C is much higher compared to the chaotic algorithm [3] and AES [3] for different message sizes in bytes. For a 50,000 byte message the throughput of CET-2C is 64,049 bytes/s and the Chaotic Algorithm [3] and AES [3] have throughputs of 16,400 and 2000 bytes/s, respectively. This shows that CET-2C is much faster than the comparable algorithm [3]. Entropy 2016, 18, x 21 of 27
Throughput in Bytes/Sec
Encryption Throughput 80000 60000 40000
Chaotic Algorithm [3]
20000
AES [3] CET‐2C
0 10000
20000
30000
40000
50000
Message Size in Bytes Figure 8. Encryption throughput of Chaotic Algorithm [3], AES [3] and CET‐2C. Figure 8. Encryption throughput of Chaotic Algorithm [3], AES [3] and CET-2C.
Overall % Gain of CET‐2C over Chaotic Algorithm [3] for Encryption Throughput with Overall % Gain of CET-2C over Chaotic Algorithm [3] for Encryption Throughput with increasing increasing the message size the message size EThCET 2 C (atDifferentMessageSizes) EThCA (atDifferentMessageSizes) G p of CET-2C over ETh CA CET ´2C pat Different Message Sizesq ´ EThCA pat Different Message Sizesq G p of CET-2C over CA “ EThCA (atDifferentMessageSizes)
EThCA pat Different Message Sizesq
= Overall % Gain at Different Message Sizes; ETh = Encryption Throughput; Here Here GGpp= Overall % Gain at Different Message Sizes; ETh = Encryption Throughput; CA = Chaotic Algorithm. CA = Chaotic Algorithm. % Gain of CET‐2C over Chaotic Algorithm [3] when message size is 10,000 bytes % Gain of CET-2C over Chaotic Algorithm [3] when message size is 10,000 bytes ˇ 00 20000 ˇ EThCET 2´ EThCA 500 ˇ 50000 ´ 20000 ˇ ETh CET ´2C C EThCA % Gain of CET-2C 100 ˇ100 150 % Gain of CET-2C “ ˆ 100 “ ˇˇ ˇ ˆ 100 “ 150 ETh 2000 0 EThCACA 20000
% Gain of CET‐2C over Chaotic Algorithm [3] when message size is 20,000 bytes % Gain of CET-2C over Chaotic Algorithm [3] when message size is 20,000 bytes ˇ ˇ ETh ETh 448 47 ´ 17000 ˇ 44847 CET C CA ETh ETh 17000ˇˇ100 164 CET ´ 2C2´ CA ˇ % Gain of CET-2C 100 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ˆ 100 “ 164 ETh 1700 0 ETh 17000 CACA % Gain of CET-2C over Chaotic Algorithm [3] when message size is 30,000 bytes % Gain of CET‐2C over Chaotic Algorithm [3] when message size is 30,000 bytes ˇ ˇ ETh ˇ 49342 493 42 ´ 16700 EThEThCET 2´ ETh 16700 ˇˇ C CA CA % Gain of CET-2C 100 ˇ100 195 % Gain of CET-2C “ CET´2C ˆ 100 “ ˇˇ ˆ 100 “ 195 ETh 16700 1670 0 ETh CACA
% Gain of CET‐2C over Chaotic Algorithm [3] when message size is 40,000 bytes
% Gain of CET-2C
EThCET 2C EThCA 57405 16500 100 100 248 EThCA 16500
% Gain of CET‐2C over Chaotic Algorithm [3] when message size is 50,000 bytes
Entropy 2016, 18, 201
22 of 27
% Gain of CET-2C over Chaotic Algorithm [3] when message size is 40,000 bytes % Gain of CET-2C “
ˇ ˇ ˇ 57405 ´ 16500 ˇ EThCET´2C ´ EThCA ˇ ˆ 100 “ 248 ˆ 100 “ ˇˇ ˇ EThCA 16500
% Gain of CET-2C over Chaotic Algorithm [3] when message size is 50,000 bytes ˇ ˇ ˇ 64049 ´ 16400 ˇ EThCET´2C ´ EThCA ˇ ˇ ˆ 100 “ 490 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ EThCA 16400 Overall % Gain of CET-2C over AES [3] for Encryption Throughput with increasing the message size G p of CET-2C over CA “
EThCET´2C pat Different Message Sizesq ´ ETh AES pat Different Message Sizesq ETh AES pat Different Message Sizesq
where AES = Advance Encryption Standard. % Gain of CET-2C over Chaotic Algorithm [3] when message size is 10,000 bytes ˇ ˇ ˇ 50000 ´ 2000 ˇ EThCET´2C ´ ETh AES ˇ ˇ ˆ 100 “ 2400 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETh AES 2000 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 20,000 bytes % Gain of CET-2C “
ˇ ˇ ˇ 44847 ´ 2000 ˇ EThCET´2C ´ ETh AES ˇ ˆ 100 “ 2142 ˆ 100 “ ˇˇ ˇ ETh AES 2000
% Gain of CET-2C over Chaotic Algorithm [3] when message size is 30,000 bytes ˇ ˇ ˇ 49342 ´ 2000 ˇ EThCET´2C ´ ETh AES ˇ ˇ ˆ 100 “ 2367 ˆ 100 “ ˇ % Gain of CET-2C “ ˇ ETh AES 2000 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 40,000 bytes % Gain of CET-2C “
ˇ ˇ ˇ 57405 ´ 2000 ˇ EThCET´2C ´ ETh AES ˇ ˆ 100 “ 2770 ˆ 100 “ ˇˇ ˇ ETh AES 2000
% Gain of CET-2C over Chaotic Algorithm [3] when message size is 50,000 bytes ˇ ˇ ˇ 64049 ´ 2000 ˇ EThCET´2C ´ ETh AES ˇ ˇ ˆ 100 “ 3102 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ETh AES 2000 Table 14 illustrates that overall gain % of CET-2C for encryption throughput is much higher as compared with the chaotic algorithm [3] and AES [3]. For the message size of 30,000 bytes the overall % gain of CET-2C is 195% and 2367% when it is compared with the Chaotic Algorithm [3] and AES [3]. This shows that the performance of CET-2C is increased with increasing message size. AES provides sconstant encryption time, so the throughput of AES is also constant. This indicates that CET-2Cprovidesmuchhigher encryption throughput than AES [3]. Table 14. Overall %Gain of CET-2C over Chaotic Algorithm [3] and AES [3] for encryption throughput. Message Sizes in Bytes 10,000 20,000 30,000 40,000 50,000
Overall % Gain for Encryption Throughput of CET-2C CET-2C over Chaotic Algorithm [3]
CET-2C over AES [3]
150 164 195 248 490
2400 2142 2367 2770 3102
Entropy 2016, 18, 201
23 of 27
8.3. Encryption Power Consumption The graph demonstrates that the proposed algorithm has lesser power consumption than AES and the Chaotic Algorithm [3] for any data size. This was analyzed using a laptop having an Intel (R) Pentium (R) Dual processor T2370 @ 1.73 GHzCPU, and 1 GB RAM (Table 15). Table 15. Energy consumption of AES [3], Chaotic Algorithm [3] and CET-2C. Energy Consumption in J
Message Sizes in Kb
Chaotic Algorithm [3]
AES [3]
CET-2C
0.20625 0.25625 0.31 0.35375 0.41875 0.46875
0.125 0.125 0.125 0.125 0.125 0.125
0.008725 0.0095 0.01025 0.011138 0.0122 0.0225
200 250 300 350 400 450
Entropy 2016, 18, x
23 of 27
Figure 9 shows the proposed algorithm CET-2C has less power consumption compared to AES [3] Figure 9 shows the proposed algorithm CET‐2C has less power consumption compared to AES and the chaotic algorithm for multiple message sizes sizes ranging from 200 KB200 to 450 KB450 [3]. KB The[3]. results [3] and the chaotic algorithm for multiple message ranging from KB to The illustrate that the energy consumptionincreases linearly like the encryption time when it is compared results illustrate that the energy consumptionincreases linearly like the encryption time when it is with other algorithms. compared with other algorithms.
Energy Consumed (Joules)
Energy Consumption 0.5 0.4 0.3
Chaotic Algorithm [3]
0.2
AES [3]
0.1
CET‐2C
0 200
250
300
350
400
450
Message Size (Kilo Bits)
Figure 9. Energy consumption of AES [3], Chaotic Algorithm [3] and CET‐2C. Figure 9. Energy consumption of AES [3], Chaotic Algorithm [3] and CET-2C.
Overall % Gain of CET‐2C over Chaotic Algorithm [3] for Energy Consumption with increasing Overall % Gain of CET-2C over Chaotic Algorithm [3] for Energy Consumption with increasing the message size. the message size. ECCET 2 C (atDifferentMessageSizes) ECCA (atDifferentMessageSizes) G of CET-2C over CA ´2C pat Different Message Sizesq ´ ECCA pat Different Message ECCET Sizesq ECCA (atDifferentMessageSizes)
p G p of CET-2C over CA “
ECCA pat Different Message Sizesq
Here = Overall % Gain at Different Message Sizes; EC = Energy Consumption; Here GGpp = Overall % Gain at Different Message Sizes; EC = Energy Consumption; CA = Chaotic Algorithm. CA = Chaotic Algorithm. % Gain of CET‐2C over Chaotic Algorithm [3] when message size is 200 KB % Gain of CET-2C over Chaotic Algorithm [3] when message size is 200 KB ˇ ˇ EC 2´ ECAES 0.008725 0.20625 ˇ 0.008725´ EC 0.20625ˇˇ100 95.77 CETCET ´2C C EC AES % Gain of CET-2C 100 ˇ % Gain of CET-2C “ ˆ 100 “ ˇ ˇ ˆ 100 “ 95.77 0.20625 ECEC 0.20625 AES AES
% Gain of CET‐2 Cover Chaotic Algorithm [3] when message size is 250 KB % Gain of CET-2 Cover Chaotic Algorithm [3] when message size is 250 KB ˇ ˇ EC 0.0095 0.25625 ˇ 0.0095´ C AES EC ECCET 2´ EC 0.25625ˇˇ100 96.29 AES % Gain of CET-2C 100 % Gain of CET-2C “ CET´2C ˆ 100 “ ˇˇ ˇ ˆ 100 “ 96.29 0.25625 ECEC 0.25625 AESAES
% Gain of CET‐2C over Chaotic Algorithm [3] when message size is 300 KB
% Gain of CET-2C
ECCET 2C ECAES 0.01025 0.31 100 100 96.69 0.31 ECAES
% Gain of CET‐2C over Chaotic Algorithm [3] when message size is 350 KB
Entropy 2016, 18, 201
24 of 27
% Gain of CET-2C over Chaotic Algorithm [3] when message size is 300 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.01025 ´ 0.31 ˇ ECCET´2C ´ EC AES ˇ ˆ 100 “ 96.69 ˆ 100 “ ˇˇ ˇ EC AES 0.31
% Gain of CET-2C over Chaotic Algorithm [3] when message size is 350 KB ˇ ˇ ˇ 0.011138 ´ 0.35375 ˇ ECCET´2C ´ EC AES ˇ ˇ ˆ 100 “ 96.85 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ EC AES 0.35375 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 400 KB ˇ ˇ ˇ 0.0122 ´ 0.41875 ˇ ECCET´2C ´ EC AES ˇ ˇ ˆ 100 “ 97.09 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ EC AES 0.41875 % Gain of CET-2C over Chaotic Algorithm [3] when message size is 450 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.013175 ´ 0.46875 ˇ ECCET´2C ´ EC AES ˇ ˆ 100 “ 97.19 ˆ 100 “ ˇˇ ˇ EC AES 0.46875
Overall % Gain of CET-2C over AES [3] for Encryption Time with increasing the message size G p of CET-2C over AES “
ECCET´2C pat Different Message Sizesq ´ EC AES pat Different Message Sizesq EC AES pat Different Message Sizesq
where AES = Advance Encryption Standard. % Gain of CET-2C over AES [3] when message size is 200 KB ˇ ˇ ˇ 0.008725 ´ 0.125 ˇ ECCET´2C ´ EC AES ˇ ˇ ˆ 100 “ 93.02 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ EC AES 0.125 % Gain of CET-2C over AES [3] when message size is 250 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.0095 ´ 0.125 ˇ ECCET´2C ´ EC AES ˇ ˆ 100 “ 92.4 ˆ 100 “ ˇˇ ˇ EC AES 0.125
% Gain of CET-2C over AES [3] when message size is 300 KB ˇ ˇ ˇ 0.01025 ´ 0.125 ˇ ECCET´2C ´ EC AES ˇ ˇ ˆ 100 “ 91.8 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ EC AES 0.125 % Gain of CET-2C over AES [3] when message size is 350 KB ˇ ˇ ˇ 0.011138 ´ 0.125 ˇ ECCET´2C ´ EC AES ˇ ˇ ˆ 100 “ 91.09 % Gain of CET-2C “ ˆ 100 “ ˇ ˇ EC AES 0.125 % Gain of CET-2C over AES [3] when message size is 400 KB % Gain of CET-2C “
ˇ ˇ ˇ 0.0122 ´ 0.125 ˇ ECCET´2C ´ EC AES ˇ ˆ 100 “ 90.24 ˆ 100 “ ˇˇ ˇ EC AES 0.125
% Gain of CET-2C over AES [3] when message size is 450 KB ˇ ˇ ˇ 0.013175 ´ 0.125 ˇ ECCET´2C ´ EC AES ˇ ˇ ˆ 100 “ 89.46 ˆ 100 “ ˇ % Gain of CET-2C “ ˇ EC AES 0.125 Table 16 illustrates that the overall gain % of CET-2C of energy consumption is lower as compared with the chaotic algorithm [3] and AES [3]. At the message size of 450 Kb the overall % gain of CET-2C
Entropy 2016, 18, 201
25 of 27
is 97.19% and 89.46% when it is compared with the chaotic algorithm [3] and AES [3]. This shows that the performance of CET-2C is increased with increasing message size. Table 16. Overall % Gain of CET-2C over Chaotic Algorithm [3] and AES [3] for energy consumption. Message Sizes in Kb 200 250 300 350 400 450
Overall % Gain for Energy Consumption of CET-2C CET-2C over Chaotic Algorithm [3]
CET-2C over AES [3]
95.77 96.29 96.69 96.85 97.09 97.19
93.02 92.4 91.8 91.09 90.24 89.46
9. Conclusions Chaotic functions have been widely used in different applications to generate pseudo-random numbers to produce random values in short times, which may be used for various real time applications. In this paper a novel digital logic-based, chaotic encryption technique has been developed, which works based on chaos theory, using the sensitivity of parameters like a constant A and initial condition Xn with the properties of chaotic systems for ubiquitous and ad-hoc computing. The efficiency of the encryption technique also depends on the number of keys, which are generated by the use of the chaotic function. It has been also shown that keys are completely different when the parameters are changed slightly. This demonstrates the security of the keys. Cryptanalysis of the proposed algorithm shows the strength and security of the algorithm and keys. The performance of a proposed algorithm has been analyzed in terms of running time, throughput and power consumption. It is to be shown in comparison graphs that the proposed algorithm gave better results compared to different algorithms like AES and some others. The graphs show that the CET-2C gives 97% better encryption time, 95% better throughput and 98% better power consumption as compared to the other algorithms. This could be used for providing a better trade-off between security and computational complexity. In the future chaos theory could be used in highly secure and fast encryption systems, capable of processing very large dataset sizes on the order of GB with low space complexity. Digital circuits are very useful for fast encryption, as they are easily understandable and maintainable for processing messages compared to mathematical models. The private networks have security concerns and they need several techniques for hiding and encoding the messages moving between their private systems. This could be achieved by using chaos-based cryptography in the future. Author Contributions: Ankur Khare and Piyush Kumar Shukla studied the chaotic map based encryption techniques which are used both stream cipher and block cipher. They generate an encryption algorithm using chaos function and digital circuits with the help of other information for fast and secure encryption using multiple keys and compare the performance of encryption technique with some standard research papers on the basis of encryption time, energy consumption and CPU time etc and show the performance result on the tabular and graphical format. Murtaza Abbas Rizvi is studied the digital circuit systems and help us to make an encryption algorithm using digital logic concept like XOR and XNOR gates for secure and fast encryption and decryption. He helps us to improve the security of keys which are used for encryption and decryption by using 2’s compliment concept. Shalini Stalin helps us to check the robustness and security of algorithm against all four cryptanalysis attacks like cipher text only, known plain text, chosen cipher text, chosen plain text attacks. So we show that the algorithm is highly attack resilient. Conflicts of Interest: The authors declare no conflict of interest.
References 1.
Zaher, A.A. Digital Communication using a Novel Combination of Chaotic Shift Keying and Duffing Oscillators. Int. J. Innov. Comput. Inf. Control 2013, 9, 1865–1879.
Entropy 2016, 18, 201
2. 3. 4. 5. 6. 7.
8. 9. 10.
11. 12. 13.
14. 15. 16. 17. 18.
19. 20. 21.
22. 23. 24. 25.
26 of 27
Ozkaynak, F.; Yavuz, S. Designing chaotic S-boxes on time-delay chaotic system. Nonlinear Dyn. 2013, 74, 551–557. [CrossRef] Fitwi, A.H.; Nouh, S. Performance Analysis of Chaotic Encryption using a Shared Image as a Key. Zede J. 2011, 28, 17–29. Mousa, A.; Nigm, E.; El-Rabaie, S.; Faragallah, O. Query Processing Performance on Encrypted Databases by Using the REA Algorithm. Int. J. Netw. Secur. 2012, 14, 280–288. Yuan, W.X.; Qing, Y. A block encryption algorithm based on dynamic sequences of multiple chaotic systems. Commun. Nonlinear Sci. Numer. Simul. 2009, 14, 574–581. Bakhache, B.; Ahmad, K.; El Assad, S. A New Chaotic Encryption Algorithm to Enhance the Security of ZigBee and Wi-Fi networks. Int. J. Intell. Comput. Res. 2011, 2, 219–227. Mansour, I.; Chalhoub, G.; Barkhache, B. Evaluation of a fast symmetric cryptographic algorithm based on the chaos theory for wireless sensor networks. In Proceedings of the IEEE 11th International Conference on Trust, Security and Privacy in Computing and Communications, Liverpool, UK, 25–27 June 2012; pp. 913–919. Assad, S.E. Chaos Based Information Hiding and Security. In Proceedings of the 7th International Conference for Internet Technology and Secured Transactions, London, UK, 10–12 December 2012; pp. 67–72. Agrawal, B.; Agrawal, H. Implementation of AES and RSA using Chaos System. Int. J. Sci. Eng. Res. 2013, 4, 1413–1417. Pan, J.; Ding, Q.; Qi, N. The Research of Chaos-Based SMS Encryption in Mobile Phone. In Proceedings of the Second International Conference on Instrumentation & Measurement, Computer, Communication and Control, Harbin, China, 8–10 December 2012; pp. 501–504. Beltran, R.H. Low-complexity chaotic encryption system. Rev. Mex. Fis. 2007, 53, 58–65. Akhvan, A.; Samsudin, A.; Akhshani, A. A novel parallel hash function based on 3D chaotic map. EURASIP J. Adv. Signal Process. 2013, 126, 1–12. [CrossRef] Linda, F.R.; Hammami, S.; Benrejeb, M.; Borne, P. Synchronization of discrete-time hyperchaotic maps based on an aggregation technique for encryption. In Proceedings of the 9th International Multi-Conference on systems, Signals and Devices, Chemnitz, Germany, 20–23 March 2012; pp. 1–6. Amigo, J.M.; Kocarev, L.; Szczepanski, J. Theory and practice of chaotic cryptography. Phys. Lett. A 2007, 366, 211–216. [CrossRef] Kocarev, L. Chaos-Based Cryptography: A Brief Overview. IEEE Circuits Syst. Mag. 2001, 1, 1–16. [CrossRef] Soltani, M. A new Secure Cryptography Algorithm based on Symmetric Key Encryption. J. Basic Appl. Sci. Res. 2013, 3, 465–472. Wang, X.; Chen, D. A Parallel Encryption Algorithm based on the Piecewise Linear Chaotic Map. Math. Probl. Eng. 2013, 1–7. [CrossRef] Wei, J.; Zheng, J.; Yu, J.; Shuai, Y. Selection of chaotic states in cryptosystem based on chaos with differential analysis. In Proceedings of the 7th International Conference on Computer Science & Education, Melbourne, Australia, 14–17 July 2012; pp. 325–330. Wong, K.-W.; Lin, Q.; Chen, J. Simultaneous Arithmetic Coding and Encryption Using Chaotic Maps. IEEE Trans. Circuits Syst. 2010, 57, 146–150. [CrossRef] Pande, A.; Zambreno, J. A Chaotic Encryption Scheme for Real-Time Embedded Systems: Design and Implementation. Telecommun. Syst. 2013, 52, 551–561. Guo, X.; Zhang, J. Cryptanalysis of the Chaotic-based Key Agreement Protocols. In Proceedings of the International Symposium on Biometrics and Security Technologies (ISBAST), Islamabad, Pakistan, 23–24 April 2008; pp. 1–3. Zhao, G.; Chen, G.; Fang, J.; Xu, G. Block Cipher Design: Generalized Single-Use-Algorithm Based on Chaos. Tsinghua Sci. Technol. 2011, 16, 194–206. [CrossRef] Tong, X.; Liu, Y.; Zhang, M.; Xu, H.; Wang, Z. An Image Encryption Scheme Based on Hyperchaotic Rabinovich and Exponential Chaos Maps. Entropy 2015, 17, 181–196. [CrossRef] Soleymani, A.; Nordin, M.J.; Sundararajan, E. A Chaotic Cryptosystem for Images Based on Henon and Arnold Cat Map. Sci. World J. 2014. [CrossRef] [PubMed] Wei, J.; Zheng, X.; Yu, J.; Shuai, Y. A novel authentication scheme based on chaos. In Proceedings of the 8th International Conference on Computer Science & Education, Colombo, Sri Lanka, 26–28 April 2013; pp. 879–882.
Entropy 2016, 18, 201
26.
27.
28.
29.
30. 31.
27 of 27
Rani, P.J.; Bhavani, S.D. Symmetric Encryption using the logistic map. In Proceedings of the 1st International Conference on Recent Advances in Information Technology (RAIT), Dhanbad, India, 15–17 March 2012; pp. 1–5. Azzaz, M.S.; Tanougast, C.; Sadoudi, S.; Dandache, A. New Hardware Cryptosystem Based Chaos for the Secure Real-Time of Embedded Applications. In Proceedings of the IEEE Workshop Signal Processing System SIPS, Beirut, Lebanon, 4–7 October 2011; pp. 251–254. Sheng, S.; Wu, X. A New Digital Anti-counterfeiting Scheme Based on Chaotic Cryptography. In Proceedings of the International Conference on ICT Convergence (ICTC), Jeju Island, Korea, 15–17 October 2012; pp. 687–691. Zhang, Z.; Liu, K.; Niu, X.; Bai, X. The Research of Hardware Encryption Card Based on Chaos. In Proceedings of The International Conference on Sensor Network Security Technology and Privacy Communication System (SNS & PCS), Nangang, Taiwan, 18–19 May 2013; pp. 116–119. Shukla, P.K.; Khare, A.; Rizvi, M.A.; Stalin, S.; Kumar, S. Applied Cryptography Using Chaos Function for Fast Digital Logic-Based Systems in Ubiquitous Computing. Entropy 2015, 17, 1387–1410. [CrossRef] Shi, Z.; Bi, S.; Zhang, H.; Lu, R.; Shen, X. Improved auxiliary particle filter-based synchronization of chaotic Colpitts circuit and its application to secure communication. Wirel. Commun. Mob. Comput. 2013, 1–15. [CrossRef] © 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC-BY) license (http://creativecommons.org/licenses/by/4.0/).