Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Prashant Kumar Arya et al , International Journal of Computer Science & Communication Networks,Vol 5(1),17-21
Abstract
to perform these opposite functions each being the
Cryptography is one of the main constituents of
computer security. Public cryptography is the art of inverse of the other as contrasted with conventional
protecting information by transforming it (encrypting it) ("symmetric") cryptography which relies on the same
into an unreadable format, called cipher text. Only key to perform both. The present paper discusses
those who possess a secret key can decrypt the message various aspects of public-key encryption techniques
into plain text. This paper reviews five commonly used with their relative merits and demerits. The description
asymmetric key cryptography algorithms namely RSA, of various categories of public-key cryptography
DiffieHellman, ElGamal, DSA and ECC and present
techniques is presented in Section 2. Section 3 presents
their comparative study.
the comparative study of these algorithms based on
Keywords : Public, assymetric, encryption, security. different security aspects. Section 4 concludes the
paper.
1. Introduction 2. Public-Key Cryptography
chosen carefully. It is important to note that each of the insecure communications channel. This key can then be
three families can be used to provide the main public- used to encrypt subsequent communications using a
key mechanisms of key establishment, nonrepudiation symmetric key cipher. The algorithm is itself limited to
the exchange of keys. The DiffieHellman key
through digital signatures and encryption data.
exchange algorithm depends for its effectiveness on the
difficulty of computing discrete logarithms [3].
2.1 RSA Algorithm
2.2.1 Key exchange Algorithm
Let us assume the A and B want to agree upon a key to
RSA is a cryptosystem, which is known as one of the be used for encryption / decrypting messages that would
first practicable public-key cryptosystems and is widely be exchanged between them . The Diffie-Hellman key
used for secure data transmission. In such a exchange algorithm works as follows [2].
cryptosystem, the encryption key is public and differs
from the decryption key which is kept secret. In RSA,
this asymmetry is based on the practical difficulty of 1. Firstly, A and B agree on two large prime
factoring the product of two large prime numbers, ie on numbers n and g. These two integers need not
the factoring problem. RSA stands for Ron Rivest, Adi be kept secret. A and B can use an insecure
Shamir and Leonard Adleman, who first publicly channel to agree on them .
described the algorithm in 1977[1].
2. A chooses another large random number x and
2.1.1. RSA Key generation encryption and calculates c such that
Decryption
c=g x mod n
RSA involves a public key and a private key. The public
key can be known by everyone and is used for 3. A sends the number c to B
encrypting messages. Messages encrypted with the
public key can only be decrypted in a reasonable 4. B independently chooses another large random
amount of time using the private key. The keys for the
integer y and calculate d such that
RSA algorithm are generated in the following way
1.
Choose two distinct prime numbers p and q. d=g y mod n
2.
Compute n = p*q. 5. B sends number d to A
3.
Select the public key ( i.e. the encryption key) 6. A now compute the secreate key K1 as follows
e such that it is not factor of (p-1) and (q-1)
K1= d x mod n
4.
Select the public key ( i.e. the decryption key)
d such that the following equation is true. 7. B now computes the secret key K2 as follows.
5.
For encryption calculate the cipher text CT 2.3 Digital Signature Algorithm
from the plane text PT as follows
The Digital Signature Algorithm (DSA) is a Federal
CT=PT e mod n
Information Processing Standard for digital signatures.
6.
Send CT as the cipher text to the receiver. It was proposed by the National Institute of Standards
and Technology (NIST) in August 1991 for use in their
7.
For decryption, calculate the plane text PT Digital Signature Standard (DSS) and adopted as FIPS
from the cipher text CT as follows. 186 in 1993.
has prime order n. then the cyclic subgroup E(Fp ) 1. Compute Pm =C2-d*C1
generated P is <P>={ ,P, 2P, 3P, 4P...........(n-1)P}.The
prime P , the equation of the Elliptic curve E, and the 2. Compute ( Pm ).
point P and its order n are the public domain parameter.
A private key is an integer d that is selected uniformly
at random from the range [1,(n-1)] and the
corresponding public key is Q=d*P [4], [5]. 3. Comparative Study
2.5.1 Key pair generation All three of the established public-key algorithms
Input Elliptic curve domain parameter (p,E,P,n) families are based on number theoretic functions. One
of their distinguishing feature is that they require
Output Public key Q and private key d. arithmetic with very long operands and keys. Not
surprisingly, the longer the operand and keys, the more
1. Select d =R[1,(n-1)] secure the algorithm become. In order to compare
different algorithms, one often considers the security
2. Compute Q=d*P. level. An algorithms is said to have a secure level of n
bit if the best known attack requires 2n steps. This is a
3.Return (Q,d) quite natural definition because symmetric algorithms
with a security level of n have a key of length of n bit.
The first task is to encode the plane text message m to
Table 1 show recommended bit length for public key
be sent as an x-y point Pm. It is the point Pm that will be
algorithms for the four security levels 80, 128, 192, and
encrypted as cipher text and subsequently decrypted. To
256 bit. We see from the table the RSA-like schemes
encrypt and send a message Pm to B, A Chosses a
and discrete logarithms schemes require very long
random positive intger k and produces the the cipher
operands and keys. The key length of elliptical key
text Cm ={K*P, Pm + k*Q}, where Q is B's public key.
schemes is significantly smaller, and hence require less
The sender transmits the point C1=k*P and
computing power. The advantages and disadvantages
C2=Pm+K*q to the recipent. To decrypt the cipher text,
of each algorithm are also pointed out in the table
B multiplies by the first point in the pair by B's secret
1.[6], [7], [8]
key and subtract the result from the second point as
Pm+k*q-d(k*P)=Pm+k(d*P)-d(kP)=Pm..
4. Conclusion
2.5.2 Elliptic Curve Encryption
Input : Elliptic curve domain parameter (p,E,P,n), The paper reviews asymmetric key algorithms RSA ,
public key Q, plane text m DSA, ECC, Diffie-Hellman and ElGamal. RSA is the
most widely used public key technology today but the
Output : Cipher text Cm use of more simpler connected devices and demand for
higher level of security will make continued reliance
1. Represent the plane text m as a point on RSA more challenging over time. These trends
highlight a clear need for an efficient public key
Pm in E (Fp). cryptosystem that can lower the capacity threshold for
small devices to perform strong cryptography and
2. Select k [1,(n-1)]. increase a server's capacity to handle the secure
communication. The RSA keys will need to grow to
2048 bits. ECC is an efficient alternative of RSA as a
3. Compute C1=k*p
mean of improving SSL performance without restoring
to expensive special purpose hardware. Compared to its
4. Compute C2=Pm+K*q.
traditional counterparts, ECC offers the same level of
security using much smaller keys .This results in faster
5. Return (C1,C2).
computations and saving in memory power and band
2.5.3 Elliptical Curve Decryption width that are especially important in constrained
Input : Elliptic curve domain parameter (p,E,P,n), environment, e.g. mobile phones, PDA's and smart
cards. ECC offers equal security for a far smaller key
private key d, Cipher text Cp.
size, thereby reducing processing overhead[8].
Output : Plane Text m. It looks though public-key schemes can provide all
functions required by modern security protocols., but
20
ISSN:2249-5789
Prashant Kumar Arya et al , International Journal of Computer Science & Communication Networks,Vol 5(1),17-21
the major drawback in practice is that encryption of International Conference on Intelligent Network and
data is extremely slow- with public key algorithms. Computing(ICINC 2010), pp V2-475-V2-478.
Many block and stream ciphers can encrypt about one
[4] Vivak Kapoor, Vivak Sonny Abraham, Ramesh Singh,
hundred to one thousand times faster than public key
Elliptic Curve Cryptography, ACM Ubiquity Volume 9,
algorithms. Thus somewhat ironically, public key Issuse 20, May 2008 .
cryptography is rarely used for actual encryption of
data. On the other hand, symmetric algorithms are poor [5] P. K. Shau, Dr. R. K. Chhotray, Dr. Gunamani Jena, Dr. S
at providing non-repudiation and key establishment Pattnaik, An Implementation of Elliptic Curve
functionality. In order to use the best of both worlds, Cryptography, International Journal of Engineering Research
and Technology(IJERT) ISNN: 2278-0181, Vol 2 Issue 1,
most practical protocols are hybrid protocols which
January 2013.
incorporate both symmetric and public key algorithms.
example include the SSL/TLS protocols that is [6] Swadeep Singh, Anupriya Garg, Anshul Sachdeva,
commonly used for secure web connection, or IPsec, Comparision of Cryptograpic Algorithms ECC and RSA,
the security part of the Internet communication International Journal of Computer Science and
protocol. Communication Engineering (IJCSC), Special issue on
Recent Advances in Engineering & Technology NCRAET-
5. References 2013, ISSN 2319-7080.
[1] William Stalling, Cryptography and Network Security [7] S Nithya, Dr E. George, Pankaj Raj, Survey on
Principal and Practice, Third Edition, Pearson 2006. Asymmetric key Cryptography Algorithms, Journal of
Advanced Computing Technologies (ISSN: 2347-2804)
[2] Atul Kahate, Cryptography and Network Security, Tata
Volume NO. 2 Issue No. 1, Febuary 2014.
McGraw Hill Education Private Limited, Seventh Edition
2009. [8] Christof Paar, Jan Pelzl, Understanding Cryptography,
[3] Himanshu Gupta, Dr Vinod Kumar Sharma, Multiphase Sprigner, ISBN 978-3-642-04100-6, 2010, page no. 170-172.
Encryption: A New Concept in Modern Cryptography,
Algorithm Crypto Security Level( in bit) Advantage Disadvantage
Family system
80 128 192 256
Integer RSA 1024 307 7680 15360 Only intended user can read Many secret key encryption
factorization 2 the message using their private methods that is significantly
key. faster than any current
available public-key
encryption.
Discrete logarithm DH 1024 307 7680 15360 The shared key (i.e the secret) Lack of authentication.
2 is never itself transmitted over
the channel.
Discrete logarithm DSA 1024 307 7680 15360 It is used for authentication and The security of private key
2 integrity. depends entirely on the security
of the computer.
Discrete logarithm ElGamal 1024 307 7680 15360 The same planetext gives a The need for randomness and
2 different ciphertext(with near slower speed and has long
certainly ) each time it is ciphertext.
encrypted.
Elliptic Curves ECC 160 256 384 512 Short key is faster and requires It is more expensive and it
less computing power. shortens the life time of
batteries.
Table 1
21