Comparative Study and Performance Analysis of Encryption in RSA, ECC and Goldwasser-Micali Cryptosystems
Comparative Study and Performance Analysis of Encryption in RSA, ECC and Goldwasser-Micali Cryptosystems
Comparative Study and Performance Analysis of Encryption in RSA, ECC and Goldwasser-Micali Cryptosystems
Web Site: www.ijaiem.org Email: [email protected], [email protected] Volume 3, Issue 1, January 2014 ISSN 2319 - 4847
Comparative Study and Performance Analysis of Encryption in RSA, ECC and GoldwasserMicali Cryptosystems
Gururaja.H.S1, M. Seetha2, Anjan K Koundinya3, Shashank.A.M4 and Prashanth.C.A5
1
Assistant Professor, Department of Information Science & Engineering, B.M.S. College of Engineering, Bangalore, India
2
Professor, Department of Computer Science & Engineering, G.Narayanamma Institute of Technology and Science, Hyderabad, India
Assistant Professor, Department of Computer Science & Engineering, R.V. College of Engineering, Bangalore, India
4,5
Department of Information Science & Engineering, B.M.S. College of Engineering, Bangalore, India
ABSTRACT
Today, the whole world is going wireless. The time has come to control gadgets like Smart Cards, PDAs and Mobile Phones remotely using new and faster cryptosystems. This paper helps to outline the key concepts of RSA, ECC and Goldwasser-Micali public-key cryptosystems giving a comparative study and performance analysis of encryption in these cryptosystems. The key considerations for choosing an encryption algorithm like encryption time, decryption time, throughput and ciphertext size with varying plaintext sizes are used as comparision metrics and the readings are used to record inferences.
1. INTRODUCTION
Today, the world is growing fast with electronic revolution in our day-to-day life. In this environment, any information is available at the click of a mouse button. When information is available so freely in the web, there are people who might use this information against us. So it has become mandatory to check this behaviour and control the act of attack against us. This made people to think about a solution named Encryption [1], [3]. The process of Encryption is to convert your information into a form which cannot be read or understood by anyone.
Figure 1 Process of Cryptography Figure 1 shows the process of Cryptography which is the science of secrect sharing. Any character or alphabet we press on the keyboard is represented as a binary information. If the entire document is converted into binary information, just imagine how difficult it would be to recognize the information. In the process of encryption, we try to mix these binary numbers after performing a few mathematical operations which converts the huge set of binary information in a newer arrangement which is difficult to understand. The entire process of encryption is to perform mathematical operations on the text that scrambles the text binaries. This is done with the help of a key. Key acts as a parameter which is passed in the encryption function along with the text which needs to be encrypted. The process of encryption then generates a Ciphertext which is nothing but a coded information difficult for others to understand. This can be mathematically represented as Ciphertext = Encryption (Key, Plaintext) (1)
Page 111
Figure 2 Symmetric Key Encryption Figure 2 shows the process of Symmetric Key Encryption involving the use of a single key. The equations (1) and (2) gives us the method of generating Ciphertext and Plaintext in Symmetric Key Encryption.
Figure 3 Asymmetric/Public Key Encryption Figure 3 shows the process of Asymmetric Key Encryption or Public Key Encryption which involves the use of two distict keys one to encrypt and a different one to decrypt. This paper presents the evaluation of Rivest, Shamir, Adleman (RSA), Elliptic Curve Cryptography (ECC) & Goldwasser-Micali (GM) asymmetric encryption algorithms. Encryption algorithms plays a main role in any security system by providing a secure communication over the internet. These algorithms depend on resources such as memory, CPU time, battery power and computation time to encrypt and decrypt data. In this paper, different experiments have been conducted to compare these algorithms in terms of encryption time, decryption time, throughput and ciphertext size with varying plaintext sizes. The rest of the paper is organized as follows: Section 2 presents Encryption in RSA, Section 3 presents Encryption in ECC, Section 4 presents Encryption in GM cryptosystem and Section 5 describes the parameters used for evaluation. Results are discussed in Section 6 and Section 7 concludes the research work.
2. ENCRYPTION IN RSA
Encryption
Page 112
3. ENCRYPTION IN ECC
Encryption Here, we essentially encode a message on the curve. Note that we cannot simply encode the message as the x or y coordinate of a point, because not all such coordinates are in Ep(a, b), where Ep(a, b) denotes the elliptic group mod p whose elements (x, y) are pairs of nonnegative integers less than p, satisfying: y2 = x3 + ax + b (mod p) As with the Key Exchange system, an Encryption/Decryption [4], [6], [8] system requires a point P and an elliptic group as parameters. Each user A selects a private key d and generates a public key as follows Q=d*P where d = The random number that we have selected within the range of 1 to (n-1). P is the point on the curve. Q is the public key and d is the private key.
Page 113
4. ENCRYPTION IN GM
Encryption Entities A and B create a public key and a corresponding private key for Encryption [2], [7], [9]. Each of these entities must: 1. Select two large distinct primes p & q. 2. Compute n = p*q 3. Select y Zn such that y is a quadratic non-residue modulo n and the Jacobi symbol y/n = 1 (y is a pseudo square modulo n). 4. As public key is (n,y) and As private key is the pair (p,q). B encrypts a message m for A, which A decrypts. B should do the following: (a) Obtain As authentic public key (n,y) (b) Represent the message m as a binary string m = m1m2mt of length t. (c) For i from 1 to t do: i. Choose x Zn ii. If mi = 1 then set ci y x2mod n, otherwise set ci x2mod n (d) Send the t-tuple c=(c1, c2, ct) to A. Decryption: To recover the message (m) from the ciphertext (c)
Page 114
5. EVALUATION PARAMETERS
The following parameters [1], [12] are considered for evaluation of RSA, ECC & GM asymmetric encryption algorithms for both encryption and decryption schemes. Encryption time (Computation Time/ Response Time) The encryption time is the time that an encryption algorithm takes to produce a ciphertext from a plaintext. Decryption time (Computation Time/ Response Time) The decryption time is the time that a decryption algorithm takes to reproduce a plaintext from a ciphertext. Throughput Throughput is equal to total plaintext in bytes encrypted divided by the encryption time. Higher the throughput, higher will be the performance. Plaintext Size Vs Ciphertext Size In any cryptographic algorithm, it is essential to understand the size of the input and the size of output. Larger the size of the Ciphertext compared with the Plaintext, more secure is the Ciphertext against any Brute-Force attack.
Page 115
Figure 4 Plaintext Size Vs Ciphertext Size in RSA, ECC & GM Cryptosystems Encryption Time Figure 5 shows the performance analysis of encryption time in RSA, ECC and GM cryptosystems. The encryption time has its paramount importance for varied plaintext sizes as this determines the time involved in converting plaintext into ciphertext. Here, we can observe that RSA and ECC cryptosystems take less time for encryption compared to GM cryptosystem for the given plaintext size.
Figure 5 Comparision of Encryption Time in RSA, ECC & GM Cryptosystems Decryption Time Figure 6 shows the performance analysis of decryption time in RSA, ECC and GM cryptosystems. The decryption time has its paramount importance for varied ciphertext sizes as this determines the time involved in converting ciphertext back to plaintext. Here, we can observe that RSA and ECC cryptosystems take less time for decryption compared to GM
Page 116
Figure 6 Comparision of Decryption Time in RSA, ECC & GM Cryptosystems Throughput Figure 7 and Figure 8 shows the performance analysis of throughput for the process of encryption and decryption in RSA, ECC and GM cryptosystems. We can observe that the throughput of ECC overtakes the throughput of RSA and GM cryptosystems.
7. CONCLUSIONS
This research work presents the comparison of RSA, ECC and GM cryptosystems in terms of encryption time, decryption time, throughput and ciphertext size with varying plaintext sizes. Different experiments were conducted on the mentioned parameters for comparison of these algorithms and the results concluded that ECC performed better in terms of encryption time and decryption time. Throughput is the most important parameter that demonstrates the performance of any algorithm. It is observed that the throughput of ECC is better compared to RSA and GM cryptosystems.
Acknowledgement
Gururaja.H.S. thanks M.S.Sudhi, Retired Professor and Head, Dept. of Electronics and Communication Engineering, MSRIT, Bangalore for his guidance and constant support.
References
[1] Gururaja, H.S., Seetha, M., Koundinya, A.K., Design and Performance Analysis of Secure Elliptic Curve Cryptosystem, International Journal of Advanced Research in Computer and Communication Engineering, Vol. 2, Issue 8, 2013.
Page 117
Prashanth.C.A is pursuing his Bachelors in Information Science and Engineering at BMS College of Engineering, Bangalore. His areas of interest include Cryptography and Web Technologies.
Page 118