Proceedings of the World Congress on Engineering and Computer Science 2016 Vol I
WCECS 2016, October 19-21, 2016, San Francisco, USA
Secured Cloud Application Platform Using
Elliptic Curve Cryptography
Alowolodu Olufunso Dayo, Alese Boniface Kayode, Adetunmbi Olusola Adebayo, Member, IAENG
Abstract— Computing applications and data are growing
so quickly that increasingly larger servers and disks are depending on their choice of provider or how they want to
needed to process them fast enough within the required time go about their data storage. To put their mind at rest, a
period, which brought about the concept of Cloud
solution in the form of Elliptic Curve Cryptography (ECC)
Computing. Cloud Computing was introduced as a result of
unfriendly environment created by Data Centers due to
to model a secure Cloud application is hereby developed.
carbon emissions in addition to huge maintenance costs. Whichever data to be deployed, ECC which is one of the
Although, the major aim of the Cloud is for storage of data, fastest, robust and smaller key required form of
attention has now shifted from that to the security of data in Cryptography can be used.
the Cloud. One of the ways by which data in the Cloud could
be secured is cryptography. Elliptic Curve Cryptography II. THE ELLIPTIC CURVE CRYPTOGRAPHY
which is a public key cryptographic scheme is employed in Elliptic Curve Cryptography (ECC) is a public key
this work because of the smaller key size. This makes it cryptography. In public key cryptography each user or the
suitable in a situation where resources like processing power,
device taking part in the communication generally have a
storage space, bandwidth and power consumption is limited.
pair of keys, a public key and a private key, and a set of
operations associated with the keys to do the cryptographic
Index Terms—Cloud Computing, Elliptic Curve,
operations. Only the particular user knows the private key
Cryptograpky, Application.
whereas the public key is distributed to all users taking part
in the communication. Some public key algorithm may
I. INTRODUCTION require a set of predefined constants to be known by all the
Cloud Computing is a technology that uses the internet devices taking part in the communication. '
and central remote servers to maintain data and For current cryptographic purposes, an Elliptic Curve is
applications which allows consumers and businesses to use a plane curve which consists of the points satisfying the
applications without installation and access their personal equation:
files at any computer with internet access [6]. This is 𝑦 2 = 𝑥 3 + 𝑎𝑥 = 𝑏 … … … … … 𝑒𝑞𝑛 1
envisioned to achieve not only efficient processing and along with a distinguished point at infinity.
utilization of computing infrastructure, but also minimizes The coordinates here are to be chosen from a fixed finite
energy consumption and is being adopted today as the field of characteristic not equal to 2 or 3, or the curve
latest in the world of Computing technology. This equation will be somewhat more complicated.) This set
technology allows for much more efficient computing by together with the group operation of the elliptic group
centralizing storage, memory, processing and bandwidth theory form an Abelian group, with the point at infinity as
utilization. Cloud Computing utilizes massive scalable identity element. The structure of the group is inherited
computing resources delivered as a service using Internet from the divisor group of the underlying algebraic variety.
technologies. To make operations on Elliptic Curve accurate and more
However, despite the fact that the Cloud is offering a efficient, the curve is defined over two finite fields.
better solution to all and sundry in the sense of scalability, a. Prime field 𝐹𝑝 and
flexibility , availability and so on, people are still skeptical 𝑚
b. Binary field 𝔽2
of relinquishing their data to either a second or third party How it works depends on the cryptographic scheme it is
applied to. As an example, it can be applied to the Diffie-
Manuscript received June 30, 2016; revised July 17, 2016.
Hellman key exchange, which is commonly known as the
This work was supported in part by Nigerian Government under Elliptic Curve Diffie-Hellman (ECDH) key agreement
Tetfund Research Grant. protocol.
O. D. Alowolodu is with Computer Science Department, Federal A. The Justification For ECC
University of Technology, P.M.B. 704, Akure.; e-mail: odalowolodu@
futa.edu.ng
Elliptic Curve Cryptography being a family of Public
B. K. Alese is with Computer Science Department, Federal University Key Cryptography has some criteria that was put into
of Technology, P.M.B. 704, Akure.; e-mail: bkalese@ futa.edu.ng consideration before it was selected as the method of
O. A. Adetunmbi is with Computer Science Department, Federal choice.
University of Technology, P.M.B. 704, Akure.; e-mail: oaadetunmbi@
futa.edu.ng
According to [3], the three main criteria that must be
considered are:
Functionality: Does the public-key family provide the
ISBN: 978-988-14047-1-8 WCECS 2016
ISSN: 2078-0958 (Print); ISSN: 2078-0966 (Online)
Proceedings of the World Congress on Engineering and Computer Science 2016 Vol I
WCECS 2016, October 19-21, 2016, San Francisco, USA
desired capabilities? resource usage. This will make it attractive for mobile
Security: What assurances are available that the applications.
protocols are secure? Also, [7] implemented Elliptic Curve on a low Digital
Performance: For the desired level of security, the Signal Processor, it was ascertained that ECC is more
protocols meet the performance effective in hand held devices and even suggested the
d) Key Size: ECC offers the same amount of possibility of implementing it on smart cards. This is
security with a shorter key than its non-ECC counterpart. because ECC was compared with RSA and discovered that
For example, typical guidelines suggest 160-bit keys in due to the varying key sizes, and that ECC utilizes smaller
ECDH provide the same level of security as 1024-bit keys key sizes than RSA.
in regular Diffie-Hellmann Algorithm. [5] argued and proved that the attraction of ECC
The table below shows the differences in key sizes of compared to RSA is that it offers equal security for a
RSA and ECC under the same security condition. smaller key-size thereby reducing the processing overhead.
The work was proposed over a finite field. It was proved
Table 1. Different key sizes of RSA and ECC using two entities Alice and Bob.
RSA Key Size (in bits) ECC key size (in bits) The random number used in the encryption of each
message point is different from encryption of different
1024 160
message point. That is why the same characters in the
2048 224 message space are encrypted to different characters in the
3072 256 cipher space. The difference between characters of the
7680 384 plaintext is not the same as the difference between
15360 512 characters of the cipher-text. Due to this, the linear
[4] cryptanalysis is highly difficult. Also each character of the
message is coded to the point on the elliptic curve using
B. RELATED WORKS
the code table which is agreed upon by the two
[8] Compared two Public Key Cryptographic algorithms
communicating parties and each message point is
and their variants in generating certificate that is
encrypted to a pair of points on the elliptic curve. Hence
exchanged in a network. It was discovered that Elliptic
the method of encryption proposed provides sufficient
Curve based systems can give better security compared to
security against crypt-analysis at relatively low
RSA with less key size. This study compares the
computational overhead.
performance of ECC based signature schemes and RSA
schemes using NS2 simulation. It was observed that ECC
based certificate authority schemes gives better speed and
III. SYSTEM ARCHITECTURE
security. In their conclusion, Elliptic Curve based schemes
are the best for time and resource constrained wireless
applications.
[2] worked on the use of ECC as an efficient approach
for encryption and decryption of a data sequence. The
work illustrated the procedure of encryption and
decryption of messages by first transforming the message
into an affine point on the curve (EC) over the prime finite
field 𝐺𝐹 𝑃 . The affine point is known as 𝑃𝑚(𝑥, 𝑦)
which lies on the curve (EC). The implementation was
done using text messages. A comparison was performed
between the encrypted message using different key sizes to
calculate the time taken for encryption and decryption. The
work further went on to ascertain the fact that the strength
of ECC lies in the infeasibility of solving the ECDLP. It
also stated that the application areas of ECC in constrained
environments because of the smaller key sizes required
which can lead to faster execution timing for the schemes.
This is discovered to be beneficial to systems where real
time performances are critical factors. Although, the work
stated that not all curves are used for cryptographic
operations and for implementing cryptosystems. To choose
the appropriate elliptic curve is a difficult task.
[1] proposed ECC for Cloud Computing applications. In
this work, it was opined that several attempts had been
made at providing a secured environment for activities in
the Cloud, but Elliptic Curve Cryptography (ECC) can
provide solutions for a secured Cloud environment with
improved performance in computing power and battery Figure 1. The Overall System Architecture.
ISBN: 978-988-14047-1-8 WCECS 2016
ISSN: 2078-0958 (Print); ISSN: 2078-0966 (Online)
Proceedings of the World Congress on Engineering and Computer Science 2016 Vol I
WCECS 2016, October 19-21, 2016, San Francisco, USA
The system architecture as depicted figure 1 is a three- Datacenters are typically made up of thousands of
layered architecture. The first layer consists of the user- servers. As instances of users‘ requests are being sent from
interface where authentication and authorization take various locations into the Cloud, two major concepts are
place. A username, a textual password followed by a applicable:
graphical password are the needed user‘s inputs for access a) A set of dedicated virtual machines are provided
to the system. The graphical password employs the use of solely for the ECC service which will automatically
image positioning system which may be a user preset eliminate any potential performance interference which
picture. In an attempt to mitigate password phishing, the each application deployed in the hypervisors (VM1, VM2)
image positioning is dynamically shuffled with every user may encounter.
login attempt. If the user is not a registered user, the b) Taking the advantage of resource elasticity inherent
system will route to the logon page where the new user in the Cloud environments. Increase in load as there are
will register. more applications and in turn users can be handled by
The second layer is the Cloud service layer. Operations increasing the number of Elliptic Curve Admission (ECAs)
which take place in this layer include: encryption; instances to the Cloud by the controllers to avoid
decryption; archiving; and retrieval of data. However, user deadlocks.
may decide not to encrypt data and just directly access the (i) Admission Control — accepts requests from
Cloud storage engine. application users, performs authentication and generating
The third layer is the virtualization engine which authentication keys through the ECDH algorithm. This is
portrays the virtualization characteristics of the Cloud. The forwarded to the load balancer of the ECAs services, it
Cloud Controller is responsible for directing all elements receives auth-tokens in return and then connect users to the
of the systems. If encryption takes place, the ECC virtual respective application service running in either of the two
machines are activated for data encryption and decryption. nodes in the Data Centers.
Otherwise, the Cloud virtual machines are activated (ii) Load Balancer — The load balancer distributes
directly. Directly attached to the Cloud Controller is the uniformly authentication requests from application users
health monitor. This majorly monitors the virtual machines among the replicas of the ECAS instances. It also prevents
and sends signal to the Cloud Controller when any one deadlocks and avoids unnecessary queues.
malfunctions. The controller responds by scheduling any (iii) ECA Service — this is a set of VMs running
available virtual machine(s) for the waiting jobs. instances of the ECC application which is a self contained
service that can receive authenticated requests and return
A. Secured Cloud Storage Application (SCSA) authentication tokens as requested through the load
The Secured Cloud Storage Application houses balancer to the admission control in form of handshake.
encrypted data or files. The design has an authentication (iv) Physical Machines: hosts a number of VMs running
page to prevent unauthorized access to stored data. different types of application services. Some of the
Notwithstanding, the prospects of an unauthorised access services are self-contained (e.g. VM1, VM2, etc.), while
to information by an intruder is dimmed due to file others may be composed of more than 1 VMs (as in VM3a
encryption. An access control list highlights the multi & VM3b).
tenancy characteristics of the Cloud. This is achieved with
the virtualization technology. A set of operations including IV. RESULTS
Create, Delete, Update, Retrieve or Download can be used When a file or document is to be sent to the Cloud, the
to manage resources. Storage can be delivered on demand document is first compressed using the Compression
based on request for a given quality of service. There is no algorithm to make sure there is no alteration of the file
need to purchase storage or in some cases provision it even in transit and to compact it in such a way that the
before storing data. It is a pay-as-you-go service. space to be occupied in the Cloud is very small. After
passing through the compression algorithm, the ECC is
B. Access to the Cloud. now used to encrypt the file or document irrespective of
the format. Figure 3 shows the screenshot of the homepage
of the encryption and decryption app before the message is
taken to the Cloud.
Figure 2. Flow of information in the Secured Cloud. Figure 3. Encryption Home page.
ISBN: 978-988-14047-1-8 WCECS 2016
ISSN: 2078-0958 (Print); ISSN: 2078-0966 (Online)
Proceedings of the World Congress on Engineering and Computer Science 2016 Vol I
WCECS 2016, October 19-21, 2016, San Francisco, USA
The key sizes definitely show their effect on these two
After the destination path had been chosen for the algorithms. More so, the work of [9] ascertained that ECC
encrypted file, a serialized, randomly generated secret key have higher key strength than RSA. This can be deciphered
is saved for decryption of the data. This is done to prevent from the key size ratio that is depicted in Table 1. The key
possible eavesdropping attack. The system then notifies and signature generation is still faster in ECC. Then the
user with a message on successful encryption as shown in key size difference also goes a long way in giving much
figure 4. strength to ECC
Figure 4 File compression and encryption success
notification.
Next is the Cloud Storage.
Figure 6. The Graph of RSA/ECC Encryption Time on
Windows 7.
Figure 9 proofs the afore-mentioned theory that ECC
encryption is faster. This is due to the smaller key size of
ECC as compared to RSA. This makes the algorithm more
suitable for constrained devices or environments. The time
to break this encryption depends on the solution to the
discrete logarithm problem.
Figure 5. The Welcome Page of SCSA
From this page, available tasks are presented as option
buttons. These includes: app download; file management;
and user account/profile management.
In the administrator‘s view of the storage system. The
files are zipped automatically by the system for security
and compactness and only visible to the storage provider.
The system is designed in a way that individual Cloud
Client has access to their page. Any other Client that shares
the same Cloud Provider cannot access the page of another Figure 7. The decryption time graph.
Client. From here, screen, data or message stored
irrespective of the size is compressed to optimize storage. This also follows the same trend as all the other ones.
The page also provides a view of the storage system with But the strength of ECC lies in the absence of a sub-
features for editing files. However, only filenames can be exponential time algorithm for the ECDLP which means
edited by the user on site. Any necessary modification to that significantly smaller parameters can be used in ECC
the files by the user or owner will require local than with RSA. The advantages that can be gained from
decompression and decryption after a download. smaller parameters include speed and smaller keys or
Thereafter, the system performs the reversal by encrypting, certificates. These advantages are especially important in
compressing and uploading to the Cloud. This forms part environments where at least one of the following resources
of the security system. is limited: Processing power; Storage space; Bandwidth
and Power Consumption.
A. Comparative Analysis of ECC against RSA
Relative to Cloud Services. B. Processing Time
The comparative analysis was done using RSA against When these two algorithms were run on Windows 7, the
ECC. RSA is being used because it is an example of Public ECC key size that was used was 160r1 as against the RSA
key Cryptography that is commonly used for any web 1024. From figure 8, it can be seen that the processing time
service application. The metrics used in this comparative of ECC is faster than that of RSA.
analysis is time of encryption and file size.
ISBN: 978-988-14047-1-8 WCECS 2016
ISSN: 2078-0958 (Print); ISSN: 2078-0966 (Online)
Proceedings of the World Congress on Engineering and Computer Science 2016 Vol I
WCECS 2016, October 19-21, 2016, San Francisco, USA
established as the run time of algorithmic complexity of
ECC is faster than RSA.
V. CONCLUSION
Internet has become the fastest growing aspect of
technology. And as its usage increases, so will malicious
activities increase. In other to cope with this trend, stronger
cryptographic algorithms that are more difficult to break
are needed to make the internet which is the technology
behind the Cloud safe. Although, several attempts had
been made at providing secured environment for activities
Figure 8. The graph of the processing time in the Cloud, Elliptic Curve Cryptography (ECC) provides
It can also be inferred that the processing time of ECC is solutions for a secured Cloud environment with improved
faster than that of RSA. This also shows that the performance in computing power and energy. This makes
processing power required to operate ECC is far less than it attractive for mobile applications. ECC has been proven
that of RSA. to provide a robust and secured model for the development
and deployment of secured application in the Cloud both
from the Client side and the Server side.
C. Server Handling Request Time
The effect of the algorithms could also be determined REFERENCES
from the time taken for each request to be handled in the [1]. Alowolodu O.D, Alese B.K, Adetunmbi A.O,
Cloud Server. According to Nick Sullivan‗s blog [10], Adewale O.S, Ogundele O.S (2013), Elliptic Curve
While RSA could be kept secured by increasing the key Cryptography for securing Cloud Computing
length which comes with a cost of slower cryptographic Applications. International Journal of Computing
performance, implying more cost of computational power Applications (IJCA), USA, (0975-8887) Volume 66-
and time for the client, ECC offer a better tradeoff: high No23.
security with short, fast keys. [2]. Ankita Sim and Nisheeth Saxena (2013), Elliptic
Curve Cryptography: An efficient approach for
Encryption and Decryption of a Data Sequence.
International Journal of Science and Research
(IJSSR), India Online ISSN: 2319-7064. Vol 2 Issue
5.
[3]. Darrel Hankerson, Alfred Menezes, Vanstone
(2004). ―Guide to Elliptic Curve Cryptography‖.
Springer-Verlag New York, INC., 175 fifth avenue,
New York 10010, USA.
[4]. Kerry Matetsky (2015). RSA vs ECC Comparison
for Embedded Systems, A White paper of Atmel-
Figure 9. The Graph of the server handling request time. 8951A-CryptoAuth-RSA-ECC-Comparison-
Embedded-Systems-whitepaper.
[5]. Kumar S.D, Suneetha CH and ChandrasekhAR A
C. Analysis Based on Time Complexity. (2012). Encryption of Data using ECC over Finite
Time Complexity of an algorithm according to [9] Fields. International Journal of Distributed and
measures the amount of time taken for an algorithm to run Parallel Systems (IJDPS) Vol 3, No. 1
as a function of the length of the string representing the [6]. McKinsey and Company (2009).‖ Clearing the Air
input. This is usually denoted by the Big Order Notation on Cloud Computing‖ . A white paper.
() because the coefficients and the lower order terms are Source:http://www.isaca.org/Groups/Professional-
always excluded. To calculate the runtime complexity of English/cloud-
the algorithms used in this research work, snippets of the computing/GroupDocuments/McKinsey_Cloud%2
codes where the major operation is carried out are used. [7]. Muhammad Yasir Malik (2010). Efficient
Summary of the run time complexity is shown in Table Implementation of Elliptic Curve Cryptography
2. Using Low-power Digital Signal Processor. ISBN
Table 2. Run Time Complexity 978-89-5519-146-2 ICACT 2010 News.cnet.com.
Algorithm Encryption Decryption Observations
http://news.cnet.com/8301-1009_3-10150569-
(log
83.html.
ECC (𝑛2 ) 𝑛) Faster
[8]. Shivkumar S. and Umamaheswari G. (2014),
RSA (𝑛) (𝑛) Slower
Certificate Authority Schemes Using ECC, RSA and
their Variants –Simulation Using NS2. American
Journal of Applied Sciences, Vol 11, Issue 2 (171-
From this, the theory that ECC is faster and much more
179).
suitable for resource constrained environments is further
ISBN: 978-988-14047-1-8 WCECS 2016
ISSN: 2078-0958 (Print); ISSN: 2078-0966 (Online)
Proceedings of the World Congress on Engineering and Computer Science 2016 Vol I
WCECS 2016, October 19-21, 2016, San Francisco, USA
[9]. Swadeep Singh, Anupriya Garg Anshulsachdeva
(2013), Comparison of Cryptographic Algorithms:
ECC and RSA, International Journal of Computer
Science and Engineering (IJCSE) Special Issue on
Recent Advances in Engineering and Technology
(NCRAET).
[10]. Thomas H Cormen, Charles E. Leiserson, Ronald L.
Rivest, Clifford Stein (2009), Introduction to
Algorithms (3rd Edition). Published by the
Massachusetts Institute of Technology, USA.
[11]. Nick Sullivan (2015). Bringing Elliptic Curve
Cryptography into the main Stream, Blog of Nick,
www.slideshare.net
ISBN: 978-988-14047-1-8 WCECS 2016
ISSN: 2078-0958 (Print); ISSN: 2078-0966 (Online)