Jurnal
Jurnal
Jurnal
Keerthi K Dr.B.Surendiran
Department of CSE Department of CSE
National Institute of Technology National Institute of Technology
Puducherry India Puducherry India
keerthikamalakshan@gmail.com surendiran@gmail.com
Abstract—Elliptic Curve cryptography is a public key The encryption is by mapping the message into points on
cryptographic system where the message is encrypted using the curve and then performing scalar multiplication using
private key of sender and decryption is done using senders public sender’s private key. After decryption the points are again
key and the receiver’s private key. This paper introduces a new decoded into the actual message.
mapping technique for encoding the message into affine points on
the elliptic curve. Mapping technique convert the plain text into In this paper we have introduced a secured mapping
ASCII values and then convert this into HEXADECIMAL. The technique that maps the message to affine points on the curve.
converted Hex values are grouped together to form the x and y Our technique avoid the overhead of sharing the common look
coordinates. The converted values are encrypted in reverse order up tables between the sender and the receiver. The reverse
to prevent security attacks. This method reduce the overhead of order encryption provides more security for the text encryption.
common look up table shared between the sender and the
receiver. Also it avoids the extra padding bits when group count The plaintext are mapped into affine points on the elliptic
is odd, which can be considered as NULL values. curve by using the proposed method. The encryption is
performed on these points. Let the curve parameter be 192 bit,
Keywords—Elliptic curve cryptography (ECC); Public key then the ASCII values are mapped into 192 bit x and y. These
cryptography; Mapping; Encryption/Decryption. points are encrypted using scalar multiplication algorithm.
Here we have opted binary NAF point scalar multiplication
I. INTRODUCTION method. The steps for encryption and decryption are included
in the following section.
Cryptography is the method of analysis and implementation
of some mathematical concepts that are used for secure
communication channels in the presence of intruders. The II. PRELIMINARIES
major part of cryptography is encryption and decryption. In this section we summarized the basic curve parameter
Encrypted message contain all the information of the original and operations on a finite field curve E(Fp) where p is a prime
transaction but not in human readable format. Common number .The basic operation on a finite field curve are point
cryptographic primitives are RSA, ECC, hash function and addition and point doubling on affine points. Here we have
digital signature etc. introduced Projective coordinates which is obtained from
Elliptic curve cryptography (ECC) was discovered in 1985 affine points. Projective coordinate points helps to reduce the
by Neal Koblitz and Victor Miller .The main advantage of number of inversions, is explained in the following section.
elliptic curve cryptography is that it provides better security
with smaller key size. For example, 160 bit elliptic curve The elliptic curves E over a field is defined as:
provide same security as that of a 1024 bit RSA .It is also
difficult to solve discrete logarithmic problems on elliptic (1)
curve. The elliptic curve over prime field comprises of
coefficients of the elliptic curve and the base point, which is a Equation (1) is called Weierstrass equation. An elliptic
point on the curve. The curve selected showed be known to curve E over a finite field GF(Fp) is the simplified form of the
both sender and the receiver .The major operation in ECC is Weierstrass equations which is:
scalar multiplication which comprises of Point addition and
Point doubling.
(2)
are the communicating parties, then they should have a Koblitz's method. By taking x=mk+1 where k is a constant and
secured channel for communication between them. So this repeat a step until we get y coordinate on the curve.
they need secret keys for converting the actual message into The method proposed by Amounas in [6] states the
known readable format. Key generation is the important part mapping of plaintext into affine points on the curve by using
of ECC, so we need both public key and private key. Alice matrix method .Where the alphanumeric characters is mapped
will encrypt the message using Bob's public key and Bob will into points on the curve and these points are mapped as the
decrypt the message using his private key. matrix coordinates by multiplying it with a non-singular matrix
A having only integers. While decoding the inverse of matrix
For Elliptic Curve Cryptography both the sender and the A is taken for the mapping of the cipher text into the actual
receiver should know the chosen Elliptic curve E(Fp).The key message. A is chosen such that determinant of A = ± 1.In 2015
Generation step is as follows: [7]. Sigh introduced a method of mapping by grouping the
ASCII values to form the big number and these points used for
Select a constant d İ (0 to n-1), where n is the maximum encryption. [8] Paul used the same method as in [5] for
limit, which is a prime number. Generate public key Q: mapping the plaintext to affine points on the curve, but uses
columnar transposition on the mapped values in-order to
provide security. In [9] author have introduced a new method
(4)
for fixed and variable size mapping, by introducing an initial
Where P is the Point on the curve and P is the private key. vector. Based on the initial vector the same text message is
Encryption: mapped onto various points on the elliptic curve.
Message m is transformed into affine point M on the curve.
Select k İ (0 to n-1).The plain text is transformed into two
IV. METHOD
cipher text C1 and C2 and send these both cipher text.
In this paper we proposed a new method for mapping the
(5) plaintext into affine points on the curve. In this method the
main idea is that convert each character of the plaintext into
(6)
ASCII values and the ASCII values are again converted into
Decryption:
HEXADECIMAL values and then perform the grouping of
The d used for generating Public key is used for decryption.
these HEXADECIMAL values based on the size of the curve
Decryption will returns the actual message M from the cipher
parameter. For example if we are using 192 bit NIST prime
text C1 and C2.
then the HEXADECIMAL is grouped to 192 bit (x, y)
(7) coordinate. But the point is that these groups perform the
scalar multiplication in the reverse order of the
HEXADECIMAL input obtained or either you can perform
III. RELATED WORK
any columnar transposition for the input points x and y in
In the literature survey we have highlighted some of the order to provide security. After mapping encryption is
methods that has been used for secure encryption in elliptic performed. In this implementation we have used binary NAF
curve cryptography. In 1985,Neal Koblitz [2] introduced public method [1].
key cryptosystem ,elliptic curve over finite field which uses the
multiplicative group that is more secured. Also states that the A. Proposed Method
discrete logarithmic problem on elliptic curve make it more The proposed method shows a new mapping technique for
harder hence it is more secured compared to other public key mapping the message into affine points on the curve. For
cryptosystems. Victor Miller in [3] states Diffie-Hellman Key performing Elliptic curve encryption and decryption both the
exchange protocol that is secured from malicious attacks. The sender and the receiver must the following:
elliptic curve groups also provides same security with smaller
• The Elliptic curve chosen E(Fp).i.e. For finite field
key size, which can be used in small embedded devices with
less space and helps in lower power consumption. Hackerson curve : y2 = x3+ax+b (mod p),the parameters are a, b
introduced the basic building block for the implementation of and p where p is prime number.
elliptic curve cryptography in the book [1].Also he included • The base point with order N.
varies scalar multiplication and affine projective coordinate • The order in which the mapped HEXADECIMAL
systems and also includes the NIST primes reduction method encryption is performed.
for varies NIST primes. The mapping method proposed in this paper convert
Message M into ASCII values and converting these ASCII
Mapping method introduced in [4] shows how to map a
into HEXADECIMAL and grouping of HEXADECIMAL into
plaintext into affine points on the curve ,by converting the
message into its ASCII values and these integers are converted finite set of input size. Reverse the order of the
into affine points by multiplying the ASCII value with a base HEXADECIMAL value obtained. These results are encrypted
point on the curve.[5] explains decoding using koblitz method, using Scalar multiplication algorithm and convert it into
where the message is converted into ASCII values and these cipher text.
are transformed into x and y coordinate on the curve by using
2017 International Conference on circuits Power and Computing Technologies [ICCPCT]
The figure [1] shows the block diagram of the proposed B. Mapping
method used for encryption of the text using ECC. The first Convert each input symbols into ASCII values. Then
step is key generation generate the public key and the private ASCII values are converted into HEXADECIMAL values.
key. The public key and the private key generated is used for
encryption. The decryption is done using the d value chosen.
(9)
x5: 2A2A2A2F313432333600 size. The security of ECC is more since it has discrete
y5: NULL logarithmic problem, which is difficult to solve.
Before performing text encryption we need to map the text
The Message after performing proposed mapping method is: into points on the curve. In this paper, we have implemented a
#)652323111656565KSHGDSJHDSJKJKJKaFHJHJv^8888* new mapping technique that maps the plaintext into affine
***/14236 points on the chosen elliptic curve. In the proposed method, the
characters in the plaintext are converted into ASCII values and
From the result it is clear that we need not have a common the next step is to convert it into HEXADECIMAL. The entire
look up table for both the sender and the receiver. Sender and HEXADECIMAL values are grouped based on the input size.
receiver should know the Elliptic curve chosen and also the The encryption is done in the reverse order of the
order in which encryption is performed. It is easy to determine HEXADECIMAL result in-order to provide security.
the message if ASCII character is obtained. So in-order to
ECC implementation is more effective compared to RSA
prevent the attack we have converted the ASCII to for key size and also security. It provide more security with
hexadecimal .Hence attacker will have a misunderstanding lesser key size. So this can be utilized in electronic devices
about the message. Also the message is encrypted in reverse with lesser memory and lower power consumption. The
order values which help provide security. The main advantage security in the mapping technique will provide double security
of this method is that we don't have to pad extra bits if the for the text encryption. Here we have implemented a secure
grouped hexadecimal number is odd in number. Since we are mapping technique along with less overhead in mapping.ie, our
using Hexadecimal, the input with length zero is taken as implementation will help to reduce the common look-up table
NULL. between the sender and the receiver and hence reduce the
overhead. So the encryption procedure works faster.
VI. ANALYSIS
One of the major advantage of this method is that we don't
All the implementation is done on Lenovo G580, with have to pad extra bit when the grouped hexadecimal is odd in
Intel i3, 2GB RAM and using 192 bit NIST prime number. Because the length zero group is taken as NULL.
recommended elliptic curve parameter [10]. The
implementation is done using C.
REFERENCES
The input can be of any size. Table 1 shows the time taken [1] D,Hakerson, S.Vanstone, and A.J Menezes, “Guide to Elliptic Curve
Cryptography ” , 2004
for the encryption and the decryption for the given sized
[2] N. Koblitz, “Elliptic Curve Cryptosystems”, Mathematics of
message. Computation, vol. 48. no. 177,pp. 203-203,1987.
[3] V.Miller ,”Use of Elliptic Curve in Cryptograhy”, Advances in
The result shows that, encryption takes more time than Cryptography CRYPTO’85, vol.LNCS 218,PP.417-126,1986. K. Elissa,
decryption, since it contain more number of scalar “Title of paper if known,” unpublished.
multiplications. The method implemented does not require any [4] S .M . C Vigila and Munseeswaran,”Implementation of Text based
cryptosystem using elliptic curve cryptography”, 2009 1st International
mapping prior to encryption and also no common look-up conference on advances computing ,ICAC 2009,pp.82-85,2009.
table is needed. [5] P.Bh,D.Chandeavathi , and P .P. Roja,”Encoding and Decoding of a
message in the Implementation of Elliptic Curve Cryptography using
TABLE 1: TIME TAKEN FOR ENCRYPTION/DECRYPTION Koblitz’s Method”, International Journal on computer science ,vol.02,no
.05,pp-1904-1907,2010.
[6] F.Amounas and E. H. E. Kinani,”Fast Mapping Method based on Matrix
Operations Approach For Elliptic Curve Cryptography”, vol. 1, no. 2, pp. 54-
Time Taken(in secs)
Encryption Decryption 59,2012.
Our method 0.08 0.06 [7] L. D. Singh and K. M. Singh,”Implementation of Text Encryption using
Elliptic Curve Cryptography”, Procedia Computer Science,vol.54, no.1,
Reference[7] 0.09 0.10 pp. 73-82,2015
[8] C. T. M and V. Paul, “Secure Method for embedding plaintext on an
Reference[4] 1.95 0.83 elliptic curve using TDMRC code and Koblitz method”, Journal of
Theorectical and Applied Information Technology,vol. 84,no. 2,pp. 298-
304,2016.
[9] J. Muthukuru, B. Sathyanarayana, “Fixed and Variable Size Text Based
Message Mapping Techniques using ECC”, vol. 12,no. 3, 2012.
VII. CONCLUSION
[10] www.csrc.nist.gov/groups/ST/toolkit/documents/dss/NISTeCur.pdf,
1999
Elliptic Curve Cryptography is a public key cryptographic
system .ECC provides more security than RSA with lesser key