THIRD PARTY AUDITING SYSTEM FOR CLOUD STORAGE



Similar documents
Index Terms: Cloud Computing, Third Party Auditor, Threats In Cloud Computing, Dynamic Encryption.

Data Integrity for Secure Dynamic Cloud Storage System Using TPA

EFFICIENT AND SECURE DATA PRESERVING IN CLOUD USING ENHANCED SECURITY

PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD COMPUTING

PRIVACY-PRESERVING PUBLIC AUDITING FOR SECURE CLOUD STORAGE

Keywords-- Cloud computing, Encryption, Data integrity, Third Party Auditor (TPA), RC5 Algorithm, privacypreserving,

PRIVACY PRESERVING PUBLIC AUDITING FOR SECURED DATA STORAGE IN CLOUD USING BLOCK AUTHENTICATION CODE

preliminary experiment conducted on Amazon EC2 instance further demonstrates the fast performance of the design.

Enable Public Audit ability for Secure Cloud Storage

Development of enhanced Third party Auditing Scheme for Secure Cloud Storage

How To Know If A Message Is From A Person Or A Machine

Preserving Data Integrity and Public Auditing for Data Storage in Cloud Computing

Third Party Auditing For Secure Data Storage in Cloud through Trusted Third Party Auditor Using RC5

Cloud Data Storage Services Considering Public Audit for Security

How To Design A Cloud Data Storage Service For A Cloud Computer System

Privacy-Preserving Public Auditing for Secure Cloud Storage

Monitoring Data Integrity while using TPA in Cloud Environment

SECURITY ENHANCEMENT OF GROUP SHARING AND PUBLIC AUDITING FOR DATA STORAGE IN CLOUD

(C) Global Journal of Engineering Science and Research Management

ADVANCE SECURITY TO CLOUD DATA STORAGE

Survey on Enhancing Cloud Data Security using EAP with Rijndael Encryption Algorithm

How To Secure Cloud Computing, Public Auditing, Security, And Access Control In A Cloud Storage System

An Efficient Data Correctness Approach over Cloud Architectures

Keywords Cloud Storage, Error Identification, Partitioning, Cloud Storage Integrity Checking, Digital Signature Extraction, Encryption, Decryption

Cloud Server Storage Security Using TPA

Survey Paper on Integrity Auditing of Storage

Secrecy Maintaining Public Inspecting For Secure Cloud Storage

Keywords : audit, cloud, integrity, station to station protocol, SHA-2, third party auditor, XOR. GJCST-B Classification : C.2.4, H.2.

Secure Privacy Preserving Public Auditing for Cloud storage

AN IMPLEMENTATION OF HYBRID ENCRYPTION-DECRYPTION (RSA WITH AES AND SHA256) FOR USE IN DATA EXCHANGE BETWEEN CLIENT APPLICATIONS AND WEB SERVICES

Public Auditing & Automatic Protocol Blocking with 3-D Password Authentication for Secure Cloud Storage

IMPLEMENTATION CONCEPT FOR ADVANCED CLIENT REPUDIATION DIVERGE AUDITOR IN PUBLIC CLOUD

SECURE CLOUD STORAGE PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, Notes on Algebra

Trusted Public Auditing Process for Secure Cloud Storage

SECURE AND EFFICIENT PRIVACY-PRESERVING PUBLIC AUDITING SCHEME FOR CLOUD STORAGE

Ensuring Data Storage Security in Cloud Computing

Index Terms Cloud Storage Services, data integrity, dependable distributed storage, data dynamics, Cloud Computing.

A Secure & Efficient Data Integrity Model to establish trust in cloud computing using TPA

Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur

CS 758: Cryptography / Network Security

IJESRT. [Padama, 2(5): May, 2013] ISSN:

SeChat: An AES Encrypted Chat

Separable & Secure Data Hiding & Image Encryption Using Hybrid Cryptography

Data Integrity Check using Hash Functions in Cloud environment

Remote Data Auditing Scheme in Secured Cloud Storage Environment

RIGOROUS PUBLIC AUDITING SUPPORT ON SHARED DATA STORED IN THE CLOUD BY PRIVACY-PRESERVING MECHANISM

Authentication requirement Authentication function MAC Hash function Security of

Data Grid Privacy and Secure Storage Service in Cloud Computing

Advanced Cryptography

Secure Collaborative Privacy In Cloud Data With Advanced Symmetric Key Block Algorithm

Computer Networks. Network Security 1. Professor Richard Harris School of Engineering and Advanced Technology

Design and Verification of Area-Optimized AES Based on FPGA Using Verilog HDL

CSC474/574 - Information Systems Security: Homework1 Solutions Sketch

Near Sheltered and Loyal storage Space Navigating in Cloud

Improving data integrity on cloud storage services

Outline. Computer Science 418. Digital Signatures: Observations. Digital Signatures: Definition. Definition 1 (Digital signature) Digital Signatures

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography

Surveying Cloud Storage Correctness using TPA with BLS

Enhancing Data Integrity in Cloud Storage by Ensuring Maximum Availability

A Survey on Privacy-Preserving Techniques for Secure Cloud Storage

Data Integrity by Aes Algorithm ISSN

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives

Network Security. Security. Security Services. Crytographic algorithms. privacy authenticity Message integrity. Public key (RSA) Message digest (MD5)

Enabling Public Auditing for Secured Data Storage in Cloud Computing

Cryptography and Network Security Department of Computer Science and Engineering Indian Institute of Technology Kharagpur

A Proposed Secured Cost-Effective Multi-Cloud Storage in Cloud Computing

How To Ensure Data Integrity In Cloud Computing

Verifying Correctness of Trusted data in Clouds

Security Provision in Publicly Auditable Secure Cloud Data Storage Services Using SHA-1 Algorithm

Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms

Secure Way of Storing Data in Cloud Using Third Party Auditor

Network Security. Computer Networking Lecture 08. March 19, HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23

The Advanced Encryption Standard (AES)

IJCSIET-ISSUE5-VOLUME1-SERIES1 Page 1

A REVIEW ON ENHANCING DATA SECURITY IN CLOUD COMPUTING USING RSA AND AES ALGORITHMS

Keywords Cloud Computing, Cloud computing Architecture, Intruder, Security Issues.

How To Ensure Correctness Of Data In The Cloud

AN EFFICIENT AUDIT SERVICE OUTSOURCING FOR DATA IN TEGRITY IN CLOUDS

International Journal of Advanced Research in Computer Science and Software Engineering

Protect Integrity of Data in Cloud Assisted Privacy Preserving Mobile Health Monitoring

SECURITY IN NETWORKS

Enabling Public Auditability, Dynamic Storage Security and Integrity Verification in Cloud Storage

Principles of Public Key Cryptography. Applications of Public Key Cryptography. Security in Public Key Algorithms

Performance Evaluation Panda for Data Storage and Sharing Services in Cloud Computing

AStudyofEncryptionAlgorithmsAESDESandRSAforSecurity

Implementation of Privacy-Preserving Public Auditing and Secure Searchable Data Cloud Storage

Secure Data transfer in Cloud Storage Systems using Dynamic Tokens.

Digital Signature Standard (DSS)

PRIVACY PRESERVING AND BATCH AUDITING IN SECURE CLOUD DATA STORAGE USING AES

EXAM questions for the course TTM Information Security May Part 1

BILINEAR PAIRING BASED PUBLIC AUDITING FOR SECURE CLOUD STORAGE USING TPA

Design and Implementation of Asymmetric Cryptography Using AES Algorithm

Transcription:

THIRD PARTY AUDITING SYSTEM FOR CLOUD STORAGE 1 PRAJAKTA R. AMRUTKAR, 2 HEMLATA R. GOSAVI, 3 SAGAR A. KATHE, 4 ROMA G. SHEHA, 5 TEJASWINI R. SHINDE 1,2,3,4,5 Department of Information Technology, MET s Institute of Engineering, BKC, Nashik. Abstract- Cloud computing is the long dreamed vision of computing as a utility, where users can remotely store their data into the cloud so as to enjoy the on-demand high quality applications and services from a shared pool of configurable computing resources. By data outsourcing, users can be relieved from the burden of local data storage and maintenance. However, the fact that users no longer have physical possession of the possibly large size of outsourced data makes the data integrity protection in Cloud computing a very challenging and potentially formidable task, especially for users with constrained computing resources and capabilities. Thus, enabling public auditability for cloud data storage security is of critical importance so that users can resort to an external audit party to check the integrity of outsourced data when needed. To securely introduce an effective third party auditor (TPA), the following two fundamental requirements have to be met: 1) TPA should be able to efficiently audit the cloud data storage without demanding the local copy of data, and introduce no additional on-line burden to the cloud user; 2) The third party auditing process should not bring in no new vulnerabilities towards user data privacy. In this paper, we uniquely combine the public key algorithm for generating integrity checker to achieve the privacy-preserving public cloud data auditing system, which meets all above requirements. We further extend our result to enable the TPA to perform audit for multiple users simultaneously and efficiently. Extensive security and performance analysis shows the proposed schemes are provably secure and highly efficient. Index Terms- Cloud Computing, Privacy, Cryptography, Outsourcing. I. INTRODUCTION To fully ensure the data integrity and save the cloud users computation resources as well as online burden, it is of critical importance to enable public auditing service for cloud data storage, so that users may resort to an independent third party auditor (TPA) to audit the outsourced data when needed. The TPA, who has expertise and capabilities that user, may periodically check the integrity of all the data stored in the cloud on behalf of the users, which provides a much more easier and affordable way for the users to ensure their storage correctness in the cloud [1]. As a result, the correctness of the data in the cloud is being put at risk due to the following reasons. First of all, although the infrastructures under the cloud are much more powerful and reliable than personal computing devices, they are still facing the broad range of both internal and external threats for data integrity. Examples of outages and security breaches of not trustworthy cloud services appear from time to time. Secondly, there do exist various motivations for CSP to behave unfaithfully towards the cloud users regarding the status of their outsourced data. For examples, CSP might reclaim storage for monetary reasons by discarding data that has not been or is rarely accessed, or even hide data loss incidents so as to maintain a reputation short, although outsourcing data to the cloud is economically attractive for long-term large-scale data storage, it does not immediately offer any guarantee on data integrity and availability. This problem, if not properly addressed, may impede the successful deployment of the cloud architecture. II. BACKGROUND The traditional cryptographic technologies for data integrity and availability, based on Hash functions and signature schemes cannot work on the outsourced data [4]. It is not a practical solution for data validation by downloading them due to the expensive communications, especially for large size files. Moreover, the ability to audit the correctness of the data in a cloud environment can be formidable and expensive for the cloud users. Therefore, it is crucial to realize public audit ability for CSS, so that data owners may resort to a third party auditor, who has expertise and capabilities that a common user does not have, for periodically auditing the outsourced data. This audit service is significantly important for digital forensics and credibility in clouds. To implement public audit ability, the notions of proof of retrievability and provable data possession have been proposed by some researchers. Their approach was based on a probabilistic proof technique for a storage provider to prove that clients data remain intact. Drawbacks of the existing system are first, lack of rigorous performance analysis for constructed audit system greatly affects the practical application of this scheme. Second, it is crucial to develop a more efficient and secure mechanism for dynamic audit services, in which possible adversary advantage through dynamic data operations should be prohibits. Third, single TPA to audit for all files and to take more time for auditing the files. In this paper, we introduce a dynamic audit service for integrity verification of untrusted and outsourced 134

storages. Our audit system, based on novel audit system architecture, can support dynamic data operations and timely abnormal detection with the help of several effective techniques, such as fragment structure, random sampling, and index-hash table. Furthermore, we propose an efficient approach based on probabilistic query and periodic verification for improving the performance of audit services. A proof of- concept prototype is also implemented to evaluate the feasibility and viability of our proposed approaches. Our experimental results not only validate the effectiveness of our approaches, but also show our system has a lower computation cost, as well as a shorter extra storage for integrity verification. III. PROPOSED SYSTEM Fig 1: - Architecture of Cloud Storage Service We consider a cloud data storage service involving three different entities, as illustrated in Fig.1: the cloud user (U), who has large amount of data files to be stored in the cloud; the cloud server (CS), which is managed by the cloud service provider (CSP) to provide data storage service and has significant storage space and computation resources (we will not differentiate CS and CSP hereafter); the third party auditor (TPA), who has expertise and capabilities that cloud users do not have and is trusted to assess the cloud storage service reliability on behalf of the user upon request. fixed a priori. Once all possible secret keys are exhausted, the user then has to retrieve data in full to re-compute and re-publish new MACs to TPA; 2) it can only support static data, and cannot efficiently deal with dynamic data at all. However, supporting data dynamics is also of critical importance for cloud storage systems. An Audit System for privacy preserving cloud storage is proposed for data storage security in cloud computing. Hash based message authentication code (HMAC) is cryptographic hash function which is all about the concatenation of message and the key and hash them together. It is the method of calculating message authentication code with cryptographic hash function by using secret cryptographic key. The hash algorithm used to generate the authentication code is SHA. The authentication code used to verify the data integrity and authentication of the message using the security key which is necessary for producing the code. The authentication code produced by the normal hash function can be reproduced without any normal constraints. The cryptographic strength of the hash function, the size of the hash output and the size and quality of the key determines the cryptographic strength of HMAC. HMAC doesn t serve the purpose of being a provider of message integrity by itself. It is one of the components in the protocol that provides message integrity. Though the HMAC is not designed to encrypt the message itself it serves as a protection shield for man in the middle attack [10]. We are going to use cloud computing technology to implement the work. In cloud computing, the word cloud is used as a metaphor for "the Internet," so the phrase cloud computing means "a type of Internet-based computing," where different services such as servers, storage and applications are delivered to an organization's computers and devices through the Internet. There is a way to make use of MAC to authenticate the data. A trivial way is just uploading the data blocks with their MACs to the server, and sends the corresponding secret key to the TPA. Later, the TPA can randomly retrieve blocks with their MACs and check the correctness via secret key. Apart from the high (linear in the sampled data size) communication and computation complexities, the TPA requires the knowledge of the data blocks for verification. This is also not a secure way, 1) the number of times a particular data file can be audited is limited by the number of secret keys that must be Fig 2:- Communication between each components So, we have proposed Third Party Auditor System that is efficient than HMAC. As shown in figure 2, where 1) File will be encrypted that user wants to upload. 1.1) File is divided into blocks, and then calculates the message digest of encrypted data using SHA-1. The user then encrypts the message digest of each block with his private key; the output of this process is called as digital signature of that file. 2) Sender uploads the original message along with digital signature on the cloud. 3) When user will make a request for auditing the file blocks, then user will send the digital signature to TPA. TPA decrypts this digital signature public key of user. TPA will throw a challenge with random block number to the 135

server. 4) Server regenerates the message digest of corresponding block and sends it to the TPA as a response. 5) TPA will match the message digest and the proof by the server. 6) If any data is altered then it will send the message to the user. This also proves that the data was not altered by the cloud server, because the server cannot encrypt the digital signature as it doesn t have private key. Modules of the Audit System for Privacy Preserving Secure Cloud Storage:- 1) User Registration:- Users register on the website for storage purpose on cloud. 2) Encryption/Decryption:- In this phase data is encrypted. Encryption will be done using encryption AES algorithm. 2. Initial Round AddRoundKey each byte of the state is combined with the round key using bitwise xor. 3. Rounds SubBytes a non-linear substitution step where each byte is replaced with another according to a lookup table. ShiftRows a transposition step where each row of the state is shifted cyclically a certain number of steps. MixColumns a mixing operation which operates on the columns of the state, combining the four bytes in each column. Add Round Key 4. Final Round (no MixColumns) SubBytes ShiftRows AddRoundKey AES algorithm for encrypting file AES is a variant of Rijndael which has a fixed block size of 128 bits, and a key size of 128, 192, or 256 bits. By contrast, the Rijndael specification per se is specified with block and key sizes that may be any multiple of 32 bits, both with a minimum of 128 and a maximum of 256 bits. Throughout the remainder of this standard, the algorithm specified herein will be referred to as the AES algorithm. The algorithm may be used with the three different key lengths indicated above, and therefore these different flavors may be referred to as AES-128, AES- 192, and AES-256 [9]. AES operates on a 4 4 column-major order matrix of bytes, termed the state, although some versions of Rijndael have a larger block size and have additional columns in the state. Most AES calculations are done in a special finite field. The key size used for an AES cipher specifies the number of repetitions of transformation rounds that convert the input, called the plaintext, into the final output, called the cipher text. The numbers of cycles of repetition are as follows: 10 cycles of repetition for 128 bit keys. 12 cycles of repetition for 192 bit keys. 14 cycles of repetition for 256 bit keys. Each round consists of several processing steps, including one that depends on the encryption key itself. A set of reverse rounds are applied to transform cipher text back into the original plaintext using the same encryption key. High-level description of the AES algorithm 1. KeyExpansion Round keys are derived from the cipher key using Rijndael's key schedule. 3) Signature Generation:- In this phase signature is generated using SHA-1 on file blocks and it is encrypted using user s private key.[6] SHA-1 algorithms for Generating Hash Code on File Blocks SHA1 stands for Secure Hashing Algorithm. It is a hashing algorithm designed by the United States National Security Agency and publishe d by NIST. It is the improvement upon theoriginal SH A0 and was first published in 1995. SHA1 is currentl y the most widely used SHAhash function, although i t will soon be replaced by the newer and potentially more secure SHA2family of hashing functions. It is c urrently used in a wide variety of applications, includi ng TLS,SSL, SSH and PGP.SHA1 outputs a 160 bit d igest of any sized file or input. In construction it is si milar to theprevious MD4 and MD5 hash functions, i n fact sharing some of the initial hash values. It uses a512 bit block size and has a maximum message size of 2 64 1 bits.[8] 1. Given an m-bit message, a single bit 1 is appended as the m + 1th bit and then (448 (m + 1)) mod 512 (between 0 and 511) zero bits are appended. As a result, the message becomes 64-bit short of being a multiple of 512 bits long. 2. Append the length:a 64-bit representation of the original length of m is appended, making the result a multiple of 512 bits long. 3. Division into Blocks The result is divided into 512- bit blocks, denoted by M1, M2,..., Ml The internal state of SHA-1 is composed of five 32- bit words A, B, C, D and E, used to keep the 160-bit chaining value hi Initialization: The initial value (h0) is (in hexadecimal) A = 67452301x 136

B = EFCDAB89x C = 98BADCFEx D = 10325476x E = C3D2E1F0x. Compression: For each block, the compression function hi = H(hi 1, Mi) is applied on the previous value of hi 1 = (A, B, C, D, E) and the message block. Output: The hash value is the 160-bit value hl = (A, B, C, D, E). RSA algorithm for encrypting signature The RSA algorithm claim that computing M (mod n) requires at most 2log2 (e) multiplications and 2log2 (e) divisions" if we use their procedure below. It is important for us to know the amount of steps it would take a computer to encrypt the message so we can see if a method is fast and efficient, or not.[5] We now exponentiation by repeated squaring and multiplication": Step1. Let e k, e k-1 e 1 e 0 be the binary representation of e. Step2. Set the variable C to 1. Step3. Repeat steps 3a and 3b for i = k, k 1, 0: Step3a. Set C to the remainder of C 2 when divided by n. Step3b. If e i = 1 then set C to the remainder of C. M when divided by n. Step4. Halt. Now C is the encrypted form of M. There are more efficient procedures out there, but this one is good too. Also, since decryption follows the same identical procedure as encryption, we can implement the whole operation on a few integrated chips. According to the authors of RSA, the encryption time per block increases no faster than the cube of the number of digits in n. Finding large prime numbers Finding n is the first step to the entire process. The number n will be revealed in the encryption and decryption keys, but the numbers p and q, whose product make up n, will not be explicitly shown. They are essentially impossible to derive from n, in fact, especially if we pick, say, 100-digit primes p and q, which would make a 200-digit n. These figures were at least sufficient in 1978. However, today we must use far larger numbers. Each user needs to privately choose his own two large prime numbers p and q. To do this, we need to generate, say, random odd 100-digit numbers until a prime is found. We will have to test each number, and according to the prime number theorem, there will be about (ln 10 100 )=2 = 115 number to test. To test a large b for primarily, we can use an algorithm due to Solovay and Strassen. First, we pick a random number a from a uniform distribution on 1, b - 1 and test whether gcd (a, b) = 1 and J (a, b) = a(b 1)_2 (mod b) ; where J(a, b) is the Jacobi symbol, which can also be represented as 137 Where b = p 1 α1,p 2 α2,,p k αk Where k is the primal factorization of b, and the Legendre symbol is defined for all integers a and all odd primes p by The Jacobi symbol is only defined when a is an integer and b is a positive odd integer. Also, J(a, b) is 1 and ±1 if gcd(a, b). Equation (10) is always true if b is prime, otherwise (if b is composite), (10) will have a chance of being false of over 50%. If (10) is true 100 times for randomly chosen a's, then b is almost certainly prime, with a chance of being composite of 1 in 2 100. If accidentally a composite were used for p or q in the process, the recipient would see junk" and realize the decryption wasn't done correctly. I now present an efficient program for computing J(a,b) that the authors of RSA. To protect against sophisticated factoring algorithms, p and q should differ in length by a few digits, gcd (p - 1; q - 1) should be small, and both (p - 1) and (q - 1) should contain large prime factors. To assure the latter, we generate a large random prime number u and take the first prime in the sequence i, u + 1, i = 2, 4, 6. This process would be very fast on a computer. When the authors of RSA published their article, on a high-speed computer, testing a 100-digit number for primarily would take several seconds, while finding the next prime would take around a minute and a half. Imagine how quickly an average PC can do this today! Perhaps this is why the RSA algorithm has survived so long. We could also find large primes by taking a number whose factorization we know, add 1 to it, and test for primarily. If we get a number we think is prime, we could potentially prove that it is prime by using the factorization of (p - 1). Finding d This is very easy. We want to find a number d coprime to Ø(n); any prime number greater than max(p, q) is fine. Since the set of primes P is large, it assures that a cryptanalyst cannot find d by a direct search. In fact, any method of finding d that picks d out of a big set would do. Finding e from d and Ø (n) Here, we use a variation of Euclid's algorithm for computing the greatest common divisor of Ø (n) and

d. First, we compute a series x 0, x 1, x 2 where x 0 = Ø (n), x 1 = d, x i+1 = x i-1 (mod x i ), until an x k = 0 is found. Then gcd(x 0, x 1 ) = x k-1. Now we find numbers a i and b i such that x i = a i.x 0 +b i. x 1. If x k-1 = 1 then b k-1 is the multiplicative inverse of x 1 (mod n), and is precisely e. Since k < 2 log2 (n), this can be computed quickly. Since the difficulty in computing complicated modular arithmetic in part contributes to the difficulty in cracking RSA, we need to use this to our advantage. Therefore, if e < log2 (n), we find another e that's not too small so that the encrypted message undergoes reduction in modulo n ( wraparound"). 4) Cloud Server:- In this phase the cloud server will generate signature on the stored user data and give to third party auditor for auditing.the signature will be calculates using SHA-1 algorithm as discussed above. 5) Auditing:- In this phase the signature generated by the cloud server and the stored signature will be compared and auditing will be done. CONCLUSION An Audit System for privacy preserving cloud storage is proposed for data storage security in cloud computing. The public key cryptography and random challenge to guarantee that the TPA would not learn any knowledge about the data content stored on the cloud server during the efficient auditing process, which not only eliminates the burden of cloud user from the tedious and possibly expensive auditing task, but also alleviates the users fear of their outsourced data leakage. Considering TPA may concurrently handle multiple sessions form different users for their outsourced data files efficiently. REFERENCES [1] Cong Wang, Sherman S.-M, Qian wang Privacy- Preserving Public Auditing for Secure Cloud Storage, IEEE 2012. [2] P. Mell and T. Grance, Draft NIST working definition of cloud computing, Referenced on June. 3rd, 2009 online at http://csrc.nist.gov/groups/sns/cloudcomputing/index.html, 2009. [3] M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. H. Katz, A. Konwinski, G. Lee, D. A. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, Above the clouds: A berkeley view of cloud computing, University of California, Berkeley, Tech. Rep. UCB-EECS-2009-28, Feb 2009. [4] Cloud Security Alliance, Security guidance for critical areas of focus in cloud computing, 2009, http://www.cloudsecurityalliance.org. [5] Evgeny Milanov, The RSA Algorithm,3 June 2009 [6] Hash FunctionsMD5 and SHA1, Orr Dunkelman, Computer Science Department, 14 March, 2012, http://www.cs.haifa.ac.il/~orrd/hashfuncseminar/lecture2. pdf [7] Advanced Encryption Standard, Eric Conrad https://www.giac.org/cissp-papers/42.pdf [8] SHA-1 Description, NIST Paper http://www.cs.rit.edu/~bcw5910/482/teamflux.pdf [9] Federal Information Processing Standards Publication, ADVANCED ENCRYPTION STANDARD (AES) 26 November 2001, http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf. [10] S.Ezhil Arasu, B.Gowri, S.Ananthi Privacy-Preserving Public Auditing In Cloud Using HMAC Algorithm, International Journal of Recent Technology and Engineering (IJRTE) ISSN: 2277-3878, Volume-2, Issue-1, March 2013. 138