NHCA : Developing New Hybrid Cryptography Algorithm for Cloud Computing Environment

The amount of transmitted data through the internet become larger and larger every day. The need of an encryption algorithm that guarantee transmitting data speedily and in a secure manner become a must. The aim of the research is to encrypt and decrypt data efficiently and effectively protect the transmitted data. This research paper presents a model for encrypting transmitted cloud data. This model uses the following encryption algorithms RSA, Triple DES, RC4, and Krishna to generate a new encryption algorithm that encrypt and decrypt transmitted data. The algorithm will help cloud agencies and users to secure their transmitted data and prevent it from being stolen. Keywords—Hybrid cryptography algorithms; symmetric encryption algorithms; asymmetric encryption algorithms


I. INTRODUCTION
Nowadays the amount of currently stored data on the internet become large, cloud suffers from securing their own data when it transmitted through the internet.Users only think about how to save their own sensitive data from being stolen and when they use encryption algorithms like RSA encryption algorithm or Triple DES encryption algorithm the time become longer to encrypt or decrypt the transmitted data.
RSA is an encryption algorithm used to encrypt and decrypt data, RSA is asymmetric cryptographic algorithm and this is mean that agencies must use two different keys to encrypt the data, one of them is a public key and other is private key.RSA is a relatively slow encryption algorithm [1].
Triple DES is asymmetric block cipher algorithm created from the Data Encryption Standard (DES) by using it three times to each data block.Triple DES key sizes 168, 112 or 56 bits with three options.First one all three keys are independent, second option key one and key two are independent, and key three = key one, and finally third option all three keys are identical.But Triple DES is slow encryption algorithm [2].
Although of the advantage of high security offered by these encryption algorithms it still takes a long time to encrypt data.There are other encryption algorithms that can perform the same process with a high speed, but it suffers from ability of being easily hacked.
Krishna is an encryption algorithm which uses public random bits key merged with a secret key.This key is shared between sender and receiver to encrypt and decrypt data [3].
The Advanced Encryption Standard (AES) is the inheritor of DES as standard symmetric encryption algorithm.This algorithm was developed to solve the small size key on DES encryption algorithm.AES is faster and stronger than DES [4], [5].
Rivest Cipher 4 (RC4) is a symmetric stream cipher algorithm requiring a secure exchange of a shared key.RC4 encryption process is about 10 times faster than DES [6].
The proposed hybrid cryptography algorithm aims to build an efficient and secure encryption algorithm based on merging the encryption algorithms to make hybrid encryption algorithm that can encrypt and decrypt data efficiently and in a secure manner.
In this paper we present a hybrid cryptography algorithm that efficiently encrypts the transmitted data through the cloud.The hybrid cryptography algorithm presents a variety of different encrypting algorithms that allow the user to choose the encrypting method which is suitable with his own type of data.
The proposed hybrid cryptography algorithm studies the time and throughput for a set of encryption algorithms.More than one combination was made to implement hybrid encryption algorithms.User will have different varieties to encrypt and decrypt his own data with any of the hybrid algorithms based on the time consumed by this algorithm to encrypt the data and the level of security provided by this algorithm.Also, the proposed hybrid cryptography algorithm shows the points of strength and weakness of making hybrid encryption algorithms.
The remainder of the paper is organized into five sections: In section 2, presents an overview for the previous works related to our research.In section 3, the materials and methods of the proposed system is described.In section 4, results and discussions are produced, before drawing conclusions and future work in section 5 and 6.Jiehong et al.,[7] provided evaluation of three of the common encryption algorithms: AES, Blowfish, and GOST.A comparison has been conducted for those encryption algorithms at different sizes of data blocks.They presented results of comparison among selected cryptography algorithms.The Blowfish shows better performance independently on plain-text size.They conclude that the weak part of Blowfish algorithm is a key expansion process; it could www.ijacsa.thesai.orgtake even more time to expand the key than perform encryption or decryption if plain-text size is small.Also, they mention that GOST algorithm key expansion takes almost same time as for Blowfish, and both encryption and decryption for GOST algorithm costs almost same time.Lastly, they conclude that decryption is the longest operation for AES algorithm.Bhandari et al.,[8] mentioned that the most challenging issue today in cloud servers is to ensure data security and privacy of the users.They presented HE-RSA or hybrid encryption RSA along with Advanced Encryption Standard or AES to ensure efficiency, consistency and trustworthiness in cloud servers.They aimed to use various cryptography concepts during communication along with its application in cloud computing and to enhance the security of cipher text or encrypted data in cloud servers along with minimizing the consumption of time, cost and memory size during encryption and decryption.They observed that the difference between the running time of the original RSA and Improved Algorithm using Hybrid Encryption-RSA and AES is increasing drastically as the exponent size is increasing.Jakimoski et al. [9] analyzed and evaluated the most important security techniques for data protection that are already accepted from the cloud computing providers.They classified them in four sections according to the security mechanisms that they provide: authentication, confidentiality, access control and authorization.They conclude that if all recommended measures are taken into account providing authentication, confidentiality, access control and authorization, then the cloud computing can be trusted in data protection.They focused on the security issues that should be taken into account in depth in order to have proper data security in the cloud.They recommended important security measures relating to data protection in the cloud that must be taken into account.Waleed et al.,[10] focused on improving the security of the cloud and user's privacy.They emphasized on the security deficiencies and the subsequent repercussions regarding the commonly ignored area of private cloud users' information privacy.They proved that UEC can be a valuable point for cloud database researchers, designers, and the cloud platform vendors.By proving that there is a balance between the duties of the unrestricted cloud administrators and providing only the important identified information based on administrator, they achieved that the UEC ensures security and privacy in cloud computing.Alotaibi et al.,[11] examined the factors contributing to the adoption of SaaS.They drew upon prior research to develop a revised model based on the UTAUT.The proposed model offers a comprehensive explanation for SaaS adoption behavior, by modeling QoS as a primary antecedent of BI, due to its role in online services.Furthermore, education was incorporated into the model as a moderating factor to fit the context of SaaS adoption in developing countries.The revised model was empirically examined using empirical data collected by means of an online questionnaire.D S Abd Elminaam et al., [12] presents a performance evaluation for six of the most common block Symmetric encryption algorithms the selected algorithms are AES, DES, 3DES, RC6, Blowfish and RC2.The results show that Blowfish has better performance than other common encryption algorithms used, followed by RC6.

II. RELATED WORK
Many other researchers who are recognized in literature such as [13]-[17] reviewed a comparative analysis of encryption algorithms like AES, DES and RSA for data communication by using encryption time; memory usages output byte and battery power.They also studied the evaluation of performance of selected symmetric key algorithms.In [18]-[21] authors studied the security threats and maintain in mobile ad hoc networks.They also studied the main attack types and several security techniques that help the MANETs to protect from internal or external attacks and aspects of intrusion detection.

III. MATERIALS AND METHODS
The proposed hybrid cryptography algorithm developed to secure the data and information which is transmitted through the cloud.The aim of the hybrid cryptography algorithm is to efficiently encrypt and secure the transmitted data.Fig. 1 shows the structure of the implemented hybrid cryptography algorithm.The proposed hybrid cryptography algorithm offer set of encryption algorithms: 1) Hybrid encryption algorithm using Krishna and Triple DES algorithms.
2) Hybrid encryption algorithm using Krishna and AES algorithms.
3) Hybrid encryption algorithm using Krishna and Blowfish algorithms.
4) Hybrid encryption algorithm using RSA and Triple DES algorithms.
5) Hybrid encryption algorithm Krishna and AES and Blowfish algorithms.
The aim of the proposed hybrid cryptography algorithm is to determine the most fast and secure encryption algorithm of the previous presented encryption algorithms.It also allows the user to choose the encryption algorithm which is more suitable for the type of his own data.Also, the hybrid cryptography algorithm implements several encryption algorithms and allow the user to use them to encrypt his own data these algorithms are: 1) AES 2) Blowfish In Krishna algorithm, several steps have to be done to encrypt and decrypt the text.To encrypt the text the algorithm will work as follow: 1) In the Text, each letter is treated as a digit in base 26 2) A block of n letters is considered as a vector of n dimensions.
3) Multiply the vector by a n × n matrix (Key).4) Get the modulo 26 of the resulted matrix.
In order to decrypt, we turn the cipher text back into a vector, then simply multiply by the inverse matrix of the key matrix.
Fig. 2 shows how the system encrypts the data using the Krishna encryption algorithm and Triple DES encryption algorithm.
Fig. 3 shows how the system encrypts the data using the Krishna encryption algorithm and AES encryption algorithm.Fig. 4 shows how the system encrypts the data using the Krishna encryption algorithm and Blowfish encryption algorithm.
Fig. 5 shows how the system encrypts the data using the RSA encryption algorithm and Triple DES encryption algorithm.Fig. 6 shows how the system encrypts the data using the Krishna encryption algorithm, AES encryption algorithm and Blowfish encryption algorithm.In this algorithm the system divides the plain text in to two parts.The first part was encrypted and decrypted using Krishna encryption algorithm and AES encryption algorithm.The second part was encrypted and decrypted using Krishna encryption algorithm and Blowfish encryption algorithm.
The proposed hybrid cryptography algorithm calculates the time and throughput for each of the pervious encryption algorithms.111

IV. RESULTS AND DISCUSSION
Extensive experiments are preformed to study the efficiency of the implemented hybrid cryptography algorithm encrypt and decrypt data in a minimum time.The hybrid cryptography algorithm was tested on different file sizes.The system runs 50 times for each file size to calculate the average time for each encryption algorithm.Table 1 show the time consumed in encrypting data using the eight algorithms.
As shown in Table 1, the proposed hybrid cryptography algorithm allows the user to encrypt his data with hybrid encryption algorithms that uses two strong encryption algorithms without taking large time in encrypting data.For example, encrypting a file with 1 MB using Blowfish algorithm takes 11.99 seconds and at the same time encrypting the same file using Blowfish and Krishna takes 9,28 seconds.This is because at the second algorithm the plain text was encrypted using Krishna algorithm at the first then the cipher text was re-encrypted using Blowfish algorithm and because that Krishna minimize the size of the plain text in on word the size of the cipher text sent to Blowfish will be small and the algorithm will take minimum time to encrypt it.Table 2 and Fig. 8 illustrate the throughput of the algorithms.Throughput was calculated by dividing the size of the file in bytes over the consumed time in seconds.The throughput was calculated using the following equation:   To use the hybrid cryptography algorithm the user, choose the algorithm he wants to encrypt his own data with as shown in Fig. 9.The user will choose the algorithm and press "use" to begin the encryption process.The user determines the place of the file as shown in Fig. 10 then he will enter the keys of the algorithm and press encrypt.As shown in Fig. 11 the hybrid cryptography algorithm retrieves the time consumed in encrypting the data on the selected file.The same steps will be made in the decrypting process but the selected file will be the encrypted file resulted from the encryption process; Fig. 12 and 13 illustrate the decryption process.

V. CONCLUSION AND FUTURE WORK
In this paper, we present a hybrid cryptography algorithm that efficiently encrypts the transmitted data through the cloud.Firstly our hybrid cryptography algorithm presents a variety of different encrypting algorithms that allow the user to choose the encrypting method which is suitable with his own type of data.Secondly, the hybrid cryptography algorithm improves the performance of the encryption algorithms since it encrypts the data in a minimum time and in a secure way.Thirdly, the proposed hybrid cryptography algorithm allows the users to send and receive data in a secure way without facing the problem of attacking data.Fourthly, the encryption times for encrypting a file with a size 1 MB using difference hybrid algorithms come in the following ascending order: using Triple DES & Krishna hybrid algorithm takes 3.13 seconds, using AES & Krishna hybrid algorithm takes 3.493 seconds, using Triple DES & RSA hybrid algorithm takes 8.53 seconds and using Blowfish and Krishna hybrid algorithm takes 9,28 seconds.Fifthly, the proposed hybrid cryptography algorithm prove that merging the three encrypting algorithms AES, Blowfish and Krishna to have AES & Blowfish & Krishna hybrid algorithm increases the security level and also saves the encryption time, so we can encrypt a file with a size 1 MB using AES & Blowfish & Krishna hybrid algorithm in 6.968 seconds.Sixthly, after calculating the throughput for all hybrid algorithms on a file with a size 1 MB, the Triple DES & Krishna hybrid algorithm shows the largest value for the throughput and on the other side the Blowfish & Krishna hybrid algorithm shows the lowest value for the throughput.Lastly, the proposed hybrid cryptography algorithm proves that using hybrid algorithms increase the level of securing the encrypted transmitted data and also minimize the time taken to encrypt it.As a future work, new hybrid algorithms will be constructed from different existence algorithms to improve the encryption process and compare it with the results of our current work.

Fig. 7 .
Fig. 7.The time consumed in encrypting data for each algorithm.

Fig. 13 .
Fig. 13.Retrieves the time consumed in decrypting the data.

TABLE I .
THE TIME CONSUMED IN ENCRYPTING DATA FOR EACH ALGORITHM