a novel privacy preserving public auditing for shared data in cloud

73
Chapter 1 INTRODUCTION In Today's cloud Computing is one of the greatest development which uses progressed computational force and it enhances information sharing and information putting away capacities. Primary trouble in cloud computing was issues of information uprightness, information security and information access by unapproved clients. TTA (Trusted Third Party) is utilized to store and offer information in cloud computing. Change and sharing of information is truly straightforward as a gathering. To confirm respectability of the mutual information, individuals in the gathering needs to register marks on all common information squares. Distinctive squares in shared information are for the most part marked by diverse clients because of information changes performed by diverse clients. Client renouncement is one of the greatest security dangers in information partaking in gatherings. Amid client denial shared information square marked by renounced client needs to download and resign by existing client. This assignment is extremely inefficacious because of the vast size of shared information obstructs on cloud. Data intigrity is the new open evaluating system for the keeping up honesty of imparted information to 1

Upload: javvaji-venkata-rao

Post on 15-Apr-2017

463 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: A Novel privacy preserving public auditing for shared data in cloud

Chapter 1

INTRODUCTION In Today's cloud Computing is one of the greatest development which

uses progressed computational force and it enhances information sharing and

information putting away capacities. Primary trouble in cloud computing was issues of

information uprightness, information security and information access by unapproved

clients. TTA (Trusted Third Party) is utilized to store and offer information in cloud

computing. Change and sharing of information is truly straightforward as a gathering.

To confirm respectability of the mutual information, individuals in the gathering needs

to register marks on all common information squares. Distinctive squares in shared

information are for the most part marked by diverse clients because of information

changes performed by diverse clients. Client renouncement is one of the greatest

security dangers in information partaking in gatherings. Amid client denial shared

information square marked by renounced client needs to download and resign by existing

client. This assignment is extremely inefficacious because of the vast size of shared

information obstructs on cloud. Data intigrity is the new open evaluating system for

the keeping up honesty of imparted information to productive client disavowal in the

cloud. This instrument is in light of intermediary resignatures idea which permits the

cloud to resign squares for the benefit of existing clients amid client disavowal, so that

downloading of shared information pieces is not needed. Data intigrity is general society

examiner which reviews the respectability of shared information without recovering

the whole information from the cloud. It additionally screen cluster to confirm various

examining errands all the while.

1

Page 2: A Novel privacy preserving public auditing for shared data in cloud

1.1 Brief Information about the project

Cloud computing is the delivery of computing services over the Internet. Whether

they realize it or not, many people using cloud computing services for their personal

needs. For example, many people use social networking sites or webmail, and these cloud

services. Photographs that people once kept on their own computers are now being stored

on servers owned by third parties. These are also examples of cloud services.

Cloud services are popular because people can access their email, social

networking site or photo service,data shareing from any where in the world, at any time,

at minimal or no charge. Some cloud providers may, however, use the personal

information of users for advertising purposes or to learn more about the users for other

reasons.Users should also protect their own personal information by using any privacy

settings that the service may offer.Instead of keeping data on your own hard drive or

updating applications for your needs, you use a service over the Internet, at another

location, to store your information or use its applications. Doing so may give rise to

certain privacy implications. Cloud computing service providers are those companies that

you turn to for cloud services. There are different clouds such as Amazon and Microsoft

offering cloud services, and there are smaller companies too. They are all striving to offer

cutting edge ,innovative solutions that are compelling enough that you will consider

making you move to the cloud.In this we can easily share data from one to other and we

can protect our data by using different clouds such as email, dropbox and etc.

1.2 Motivation. To motivate the public auditing system of data storage security in Cloud Computing and provide a privacy preserving auditing protocol, my scheme supports an external auditor to audit user’s out sourced data in the cloud without learning knowledge on the data content.To the best of our knowledge, my scheme is the first to support scalable and efficient public auditing in the Cloud Computing. In particular, my scheme achieves batch auditing where multiple delegated auditing tasks from different users can be performed simultaneously by the TPA. to prove the security and justify the performance of proposed schemes through concrete experiments and

2

Page 3: A Novel privacy preserving public auditing for shared data in cloud

comparisons with the state of the art. In cloud, Data trustworthiness is one of

the discriminating issue, as there is absence of character protection, where the clients are

unacquainted with the inspector of the information, over topographically scattered data

centers. This elements of cloud computing developed different concerns identified with

client's personality, information up rightness and clients accessibility. At last this impacts

to propose an improved model so as to review the information respectability and keeping

the personality protection with proficient client disavowal while sharing.

Disadvantages:

Failing to preserve identity privacy on shared data during public auditing will

reveal significant confidential information to public verifiers.

Protect these confidential information is essential and critical to preserve

identity privacy from public verifiers during public auditing.

1.3 Objectives of the project: Data respectability is one of the discriminating issue, as there is absence of

personality protection, where the clients are unacquainted with the inspector of the

information, over topographically scattered data centers.This elements of cloud

computing developed different concerns identified with client's character, information

respectability and clients accessibility. At last this impacts to propose an improved model

to review the information uprightness and keeping the character protection with

proficient client disavowal while sharing. Analyzing the above exploration work we have

proposed another system through which we review the information trustworthiness as

well as preserve personality security with client repudiation.

Advantages:

We present an advanced scheme to support stronger security by encrypting the

file with differential privilege keys.

Reduce the storage size of the tags for integrity check. To enhance the security of

cloud data and protect the data confidentiality.

3

Page 4: A Novel privacy preserving public auditing for shared data in cloud

1.4 Organization of the thesis The chapters of the thesis are organized as follows

Chapter 1: Introduction It provides an introduction to the research topic namely “A Novel privacy preserving public auditing for shared data in cloud”. The research objectives adopted to achieve the goals of research are also described.Chapter 2: Literature Review It covers background work related to the thesis. Chapter 3: Proposed System

This chapter gives brief explanation about the algorithms used in the system.

Chapter 4: System Design In this chapter the simulation results of different scenarios are presented. The data were collected and then analyzed to accomplish the objectives of the thesis.Chapter 5: System Implementation It covers the design and implementation of entire project descriptions.Chapter 6: Results

This chapter represents the workflow of transitions.

Chapter 7: System Testing The purpose of testing is to discover errors. Testing is the process of trying to

discover every conceivable fault or weakness in a work product.

Chapter 8: Conclusion and Future scope This chapter deals with the conclusion and the enhancements need to be in

future.

4

Page 5: A Novel privacy preserving public auditing for shared data in cloud

Chapter 2

LITRATURE SURVEYINTRODUCTION

A Literature review is a body of text that aims to review the critical

points of current knowledge including substantive findings as well as theoretical and

methodological contributions to a particular topic. While started to do this project,

referred the following papers of integrity checking models in cloud storage and decided

to do this project with the existing system, and came to a conclusion that what can be

done in the proposed system.

2.1 A View of Cloud Computing

Authors: M. Armbrust, A. Fox, R. Griffith, In this paper , M. Armbrust, and A. Fox, R. Griffith propose The emergence of

cloud computing brings users abundant opportunities to utilize the power of cloud to

perform computation on data contributed by multiple users. These cloud data should be

encrypted under multiple keys due to privacy concerns. However, existing secure

computation techniques are either limited to single key or still far from practical.

2.2 Security Challenges for the Public Cloud

Authors:K. Ren, C. Wang, and Q. Wang In this paper,K. Ren, C. Wang, and Q. Wang propose to the Cloud computing is

the newest term for the long dreamed vision of computing as a utility.The cloud provides

convenient on demand network access to a centralized pool of configurable computing

resources that can be rapidly deployed with great efficiency and minimal management

over head.Although cloud computing’s benefits are tremendous, security and privacy

concerns are the primary obstacles to wide adoption.

5

Page 6: A Novel privacy preserving public auditing for shared data in cloud

2.3 Cloud Data Protection for the Masses

Authors. Song, E. Shi, I. Fischer, and U. Shankar In this paper,D. Song, E. Shi, I. Fischer, and U. Shankar propose a new cloud

computing paradigm, data protection as a service(www.mydatacontrol.com).DPaaS is a

suite of security primitives offered by a cloud platform which enforces data security and

privacy and offers evidence of privacy to data owners, even in the presence of potentially

compromised or malicious applications.It’s impossible to develop a single data protection

solution for the cloud because the term means too many different things.

2.4 Privacy-Preserving Public Auditing for Data Storage Security in

Cloud Computing

Authors:C. Wang, Q. Wang, K. Ren, and W. Lou In this paper, Wang, Q. Wang, K. Ren, and W. Lou propose a privacy-preserving

public auditing system for data storage security in Cloud Computing.We utilize the

homomorphic authenticator and random masking to guarantee that TPA would not learn

any knowledge about the data content stored on the cloud server during the efficient

auditing process.

2.5 Computing Encrypted Cloud Data Efficiently under Multiple Keys

Authors:B. Wang, M. Li, S.S. Chow, and H. Li.In this paper ,B. Wang, M. Li, S.S. Chow, and H. Li The emergence of cloud computing

brings users abundant opportunities to utilize the power of cloud to perform computation

on data contributed by multiple users. These cloud data should be encrypted under

multiple keys due to privacy concerns. However, existing secure computation techniques

are either limited to single key or still far from practical.

2.6 Oruta: Privacy-Preserving Public Auditing for Shared Data in the

Cloud

Authors: B. Wang, B. Li, and H. Li, In this paper B. Wang, B. Li, and H. Li propose the first privacy preserving

mechanism that allows public auditing on shared data stored in the cloud.With this

mechanism, the identity of the signer on each block in shared data is kept private from a

6

Page 7: A Novel privacy preserving public auditing for shared data in cloud

third party auditor (TPA), who is still able to verify the integrity of shared data without

retrieving the entire file.An interesting problem in my future work is how to efficiently

audit the integrity of shared data with dynamic groups while still preserving the identity

of the signer on each block from the third party auditor.

3.PROPOSED SYSTEM Triple DES is based on the DES ( Data Encryption Standard ) algorithm,

therefore it is very easy to modify existing software to use Triple DES. It also has the

advantage of proven reliability and a longer key length that eliminates many of the

attacks that can be used to reduce the amount of time it takes to break DES. However,

even this more powerful version of DES may not be strong enough to protect data for

very much longer. As such, the DES algorithm itself has become obsolete and is no

longer used.

A symmetric encryption algorithm that processes the data a bit or a byte at a time

with a key resulting in a randomized ciphertext or plaintext.Encryption is the process of

converting a plaintext message into ciphertext which can be decoded back into the

original message. An encryption algorithm along with a key is used in the encryption and

decryption of data. There are several types of data encryptions which form the basis of

network security.

In conventional symmetric encryption a single key is used. With this key, the

sender can encrypt a message and a recipient can decrypt the message but the security of

the key becomes problematic. In asymmetric encryption, the encryption key and the

decryption key are different. One is a public key by which the sender can encrypt the

message and the other is a private key by which a recipient can decrypt the message.

An encryption mechanism where two keys are used. A public key is used to

encrypt the message and a secret private key to decrypt the message.A single secret key

which is used in conventional symmetric encryption which is used to encrypt and decrypt

a message.

Triple DES is the common name for the Triple Data Encryption Algorithm

(TDEA) block cipher.It is so named because it applies the Data Encryption Standard

7

Page 8: A Novel privacy preserving public auditing for shared data in cloud

(DES) cipher algorithm three times to each data block. Triple DES provides a relatively

simple method of increasing the key size of DES to protect against brute force attacks,

without requiring a completely new block cipher algorithm.

The standards define three keying options:

Keying option 1: All three keys are independent.

Keying option 2: K1 and K2 are independent, and K3 = K1.

Keying option 3: All three keys are identical, i.e. K1 = K2 = K3.

Keying option 1 is the strongest, with 3 x 56 = 168 independent key bits.

Keying option 2 provides less security, with 2 x 56 = 112 key bits. This option is stronger

than simply DES encrypting twice, e.g. With K1 and K2, because it protects against

meet-in-the-middle attacks.

Keying option 3 is no better than DES, with only 56 key bits. This option provides

backward compatibility with DES, because the first and second DES operations simply

cancel out. It is no longer recommended by the National Institute of Standards and

Technology (NIST) and not supported by ISO/IEC 18033-3.

In general Triple DES with three independent keys (keying option 1) has a

key length of 168 bits (three 56-bit DES keys), but due to the meet-in-the-middle attack

the effective security it provides is only 112 bits. Keying option 2, reduces the key size to

112 bits. However, this option is susceptible to certain chosen-plaintext or known-

plaintext attacks and thus it is designated by NIST to have only 80 bits of security.The

following diagram simplifies the working detail of Triple DES Algorithm.

8

Page 9: A Novel privacy preserving public auditing for shared data in cloud

Figure: Working Of Triple Des Algorithm

Triple DES uses a "key bundle" that comprises three DES keys, K1, K2 and K3,

each of 56 bits (excluding parity bits).

The encryption algorithm is:

Step-1:

Ciphertext = EK3(DK2(EK1(plaintext)))

I.e., DES encrypt with K1, DES decrypt with K2, then DES encrypt with K3.

Step-2:

Decryption is the reverse:

Plaintext = DK1(EK2(DK3(Ciphertext)))

I.e., decrypt with K3, encrypt with K2, then decrypt with K1.

9

Page 10: A Novel privacy preserving public auditing for shared data in cloud

Chapter 4

SYSTEM DESIGNThe design of a system is essentially a blueprint or a plan for a solution for the

system. The design process for software systems often has two levels. At the first level

the focus is on deciding which modules are needed for the system, the specifications for

these modules, plus how the modules should be interconnected. In the second level, the

internal design of the modules, or how the specifications of the module can be satisfied,

is decided.

4.1 System architecture:This architecture shows how to keep the files secure by encrypting the files that

are uploaded in the public cloud by the user and also the permissions that provided by

private cloud in the form of file token to the user.

10

Page 11: A Novel privacy preserving public auditing for shared data in cloud

Figure: Architecture Of System Design

4.2 Data DictionaryAfter carefully understanding the requirements of the client the entire data storage

requirements are divided into tables. The below tables are normalized to avoid any

anomalies during the file uploading and downloading of data entry.

4.2.1 Table for Registration

Column Name Data Type

Username Varchar(45)

Password Varchar(45)Group Varchar(45)Mail Varchar(45)Phone number Varchar(45)Place Varchar(45)

Table 4.1 Registration

4.2.2 Table for user request

Column Name Datatype

11

Page 12: A Novel privacy preserving public auditing for shared data in cloud

Username Varchar(22)Password Varchar(22)

Table 4.2 User Request

4.2.3 Table for Download file

Column Name Datatype

UserName Varchar(22)

Password Varchar(22)

Filename Varchar(22)

Download Varchar(22)

Table 4.3 Download file

4.2.4 Table for Files

Column Name Data Type

Idfiles Int(10)

Filename Varchar(45)

Content BLOB Owner_name Varchar(45)

Upload_time Varchar(45)Size Varchar(45)File_key Varchar(45)

Table 4.2.4 Files

4.2.5 Table for permissions

Column Name Data Type

12

Page 13: A Novel privacy preserving public auditing for shared data in cloud

Username Varchar(10)

Password Varchar(20)

Fileld Varchar(20)

Update Varchar(20) Download Varchar(20)

4.2.5 Permissions

4.2.6 Table for rights

Column Name Data Type

Username Varchar(45)

Password Varchar(45)

Key Varchar(45)

Upload Varchar(45) Update Varchar(45)

Download Varchar(45)

Table 4.2.6 Rights

4.3 UML DIAGRAMS

UML stands for Unified Modeling Language. UML is a standardized general-

purpose modeling language in the field of object-oriented software engineering. The

standard is managed, and was created by, the Object Management Group.

The Unified Modeling Language is a standard language for specifying,

Visualization, Constructing and documenting the artifacts of software system, as well as

for business modeling and other non-software systems.

4.3.1 USE CASE DIAGRAM:This diagram consists of set of use cases and their relationships.The below

diagram consists of actors like user, attribute authority,cloud server provider and the oval

shapes consists of actions done by the actors. Here, the user can register and generate key

attribute and then file are encrypt and upload to down load same file decrypted to the

cloud server. The cloud server provider then accepts the secretkey and sends response to

13

Page 14: A Novel privacy preserving public auditing for shared data in cloud

the user. attiribute are checks the user uploaded file then only it can be uploaded and it

encrypts the file to provide security.

4.3.2 CLASS DIAGRAM: In software engineering, a class diagram in the Unified Modeling Language

(UML) is a type of static structure diagram that describes the structure of a system by

showing the system's classes, their attributes, operations (or methods), and the

relationships among the classes. It explains which class contains information.

14

Page 15: A Novel privacy preserving public auditing for shared data in cloud

user

namepasswordemailidmobilenum

fileupload()downloadfile()Request key()

Admin

namepassword

activateuseracc()acceptuserreq()generateKey()

Cloud server provider

NamePassword Get Key()encryptfile()

There are three classes like user, admin and cloud server provider.The user has

attributes like name, password, email id,mobilenum and functions like request key, file

upload to public cloud, file download, file updation. The Csp has operations like check

for name,password,getKey, encrypting file. The admin has attributes like name, password

and operations like activating user details, generating key and provide rights.

4.3.3 SEQUENCE DIAGRAM

A sequence diagram in Unified Modeling Language (UML) is a kind of

interaction diagram that shows how processes operate with one another and in what

order. It is a construct of a Message Sequence Chart. Sequence diagrams are sometimes

called event diagrams, event scenarios, and timing diagrams.

15

Page 16: A Novel privacy preserving public auditing for shared data in cloud

4.3.4 ACTIVITY DIAGRAM: Activity diagrams are graphical representations of workflows of stepwise

activities and actions with support for choice, iteration and concurrency. In the Unified

Modeling Language, activity diagrams can be used to describe the business and

operational step-by-step workflows of components in a system. An activity diagram

shows the overall flow of control.

16

Page 17: A Novel privacy preserving public auditing for shared data in cloud

Chapter 5

IMPLEMENTATION5.1 MODULES:

Owner registration

Owner login

User registration

17

Page 18: A Novel privacy preserving public auditing for shared data in cloud

User login

Third Party Auditor registration

Third Party Auditor login

Data Sharing

5.2 MODULES DESCRIPTION

5.2.1 Owner Registration:

In this module an owner has to upload files in a cloud server, all users are

should register first. Who are registered those are can be able to do it. Users to fill the

details in the registration form. These details are maintained in a database.

5.2.2 Owner Login:

In this module,any of the above mentioned person have to login, they should

login by giving their email id and password .

5.2.3 User Registration:

In this module if a user wants to access the data which is stored in a cloud,

he/she should register their details first. These details are maintained in a Database.

5.2.4 User Login:

Who are used to the data in cloud so first to login to the user details

5.2.5 Third Party Auditor Registration:

The TPA ought to be accurately check the Integrity of shared information

effectively.

5.2.6 Third Party Auditor Login:

At the point when a client is denied from the gathering, the squares marked by

that client can be re-marked productively. And, just existing individuals in the gathering

can just produce legitimate marks on shared information and the individuals which are

denied from the gathering can't figure the substantial marks on shared information.

5.2.7 Data Sharing:

18

Page 19: A Novel privacy preserving public auditing for shared data in cloud

The Third Party Auditor the trustworthiness of shared information can be

review by Third Party Auditor without recovering the whole information from the cloud,

regardless of the fact that a few squares in shared information have been re-marked by

the cloud. For accomplishing these properties we are going to utilize some predefined

cryptographic primitives.

5.3 Software Environment:Software environment is the term commonly used to refer to support

an application. A software environment for a particular application could include

the operating system, the database system, specific development tools or compiler.

19

Page 20: A Novel privacy preserving public auditing for shared data in cloud

The Java Programming Language

With most programming languages, you either compile or interpret a program so

that you can run it on your computer. The Java programming language is unusual in that

a program is both compiled and interpreted. With the compiler, first you translate a

program into an intermediate language called Java byte codes the platform-independent

codes interpreted by the interpreter on the Java platform. The interpreter parses and runs

each Java byte code instruction on the computer. Compilation happens just once;

interpretation occurs each time the program is executed. The following figure illustrates

how this works.

You can think of Java byte codes as the machine code instructions for the Java

Virtual Machine (Java VM). Every Java interpreter, whether it’s a development

tool or a Web browser that can run applets, is an implementation of the Java VM.

Java byte codes help make “write once, run anywhere” possible. You can compile

your program into byte codes on any platform that has a Java compiler. The byte

codes can then be run on any implementation of the Java VM. That means that as

long as a computer has a Java VM, the same program written in the Java

programming language can run on Windows 2000, a Solaris workstation, or on an

iMac.

20

Page 21: A Novel privacy preserving public auditing for shared data in cloud

The Java Platform A platform is the hardware or software environment in which a program

runs. We’ve already mentioned some of the most popular platforms like Windows

2000, Linux, Solaris, and MacOS. Most platforms can be described as a

combination of the operating system and hardware. The Java platform differs

from most other platforms in that it’s a software-only platform that runs on top of

other hardware-based platforms.

The Java platform has two components:

The Java Virtual Machine (Java VM)

The Java Application Programming Interface (Java API)

You’ve already been introduced to the Java VM. It’s the base for the Java

platform and is ported onto various hardware-based platforms.

The Java API is a large collection of ready-made software components that

provide many useful capabilities, such as graphical user interface (GUI) widgets.

The Java API is grouped into libraries of related classes and interfaces; these

libraries are known as packages. The next

section,What Can Java Technology Do? Highlights what functionality some of

the packages in the Java API provide.

The following figure depicts a program that’s running on the Java platform.

As the figure shows, the Java API and the virtual machine insulate the program

from the hardware.

21

Page 22: A Novel privacy preserving public auditing for shared data in cloud

Native code is code that after you compile it, the compiled code runs on a

specific hardware platform. As a platform-independent environment, the Java

platform can be a bit slower than native code. However, smart compilers, well-

tuned interpreters, and just-in-time byte code compilers can bring performance

close to that of native code without threatening portability.

What Can Java Technology Do?

The most common types of programs written in the Java programming language

are applets and applications. If you’ve surfed the Web, you’re probably already

familiar with applets. An applet is a program that adheres to certain conventions

that allow it to run within a Java-enabled browser.However, the Java

programming language is not just for writing cute, entertaining applets for the

Web. The general-purpose, high-level Java programming language is also a

powerful software platform. Using the generous API, you can write many types of

programs.

An application is a standalone program that runs directly on the Java platform. A

special kind of application known as a server serves and supports clients on a

network. Examples of servers are Web servers, proxy servers, mail servers, and

print servers. Another specialized program is a servlet. A servlet can almost be

thought of as an applet that runs on the server side. Java Servlets are a popular

choice for building interactive web applications, replacing the use of CGI scripts.

Servlets are similar to applets in that they are runtime extensions of applications.

Instead of working in browsers, though, servlets run within Java Web servers,

configuring or tailoring the server.

How does the API support all these kinds of programs? It does so with packages

of software components that provides a wide range of functionality. Every full

implementation of the Java platform gives you the following features:

22

Page 23: A Novel privacy preserving public auditing for shared data in cloud

The essentials: Objects, strings, threads, numbers, input and output, data

structures, system properties, date and time, and so on.

Applets: The set of conventions used by applets.

Networking: URLs, TCP (Transmission Control Protocol), UDP (User

Data gram Protocol) sockets, and IP (Internet Protocol) addresses.

Internationalization: Help for writing programs that can be localized for

users worldwide. Programs can automatically adapt to specific locales and

be displayed in the appropriate language.

Security:Both low level and high level, including electronic signatures,

public and private key management, access control, and certificates.

Software components:Known as JavaBeansTM, can plug into existing

component architectures.

Object serialization:Allows lightweight persistence and communication

via Remote Method Invocation (RMI).

Java Database Connectivity (JDBCTM):

Provides uniform access to a wide range of relational databases.

The Java platform also has APIs for 2D and 3D graphics, accessibility, servers,

collaboration, telephony, speech, animation, and more. The following figure

depicts what is included in the Java 2 SDK.

23

Page 24: A Novel privacy preserving public auditing for shared data in cloud

How Will Java Technology Change My Life?

We can’t promise you fame, fortune, or even a job if you learn the Java

programming language. Still, it is likely to make your programs better and

requires less effort than other languages. We believe that Java technology will

help you do the following:

Get started quickly: Although the Java programming language is a

powerful object-oriented language, it’s easy to learn, especially for

programmers already familiar with C or C++.

Write less code: Comparisons of program metrics (class counts, method

counts, and so on) suggest that a program written in the Java programming

language can be four times smaller than the same program in C++.

Write better code: The Java programming language encourages good

coding practices, and its garbage collection helps you avoid memory leaks.

Its object orientation, its JavaBeans component architecture, and its wide-

ranging, easily extendible API let you reuse other people’s tested code and

introduce fewer bugs.

Develop programs more quickly: Your development time may be as

much as twice as fast versus writing the same program in C++. Why? You

write fewer lines of code and it is a simpler programming language than

C++.

24

Page 25: A Novel privacy preserving public auditing for shared data in cloud

Avoid platform dependencies with 100% Pure Java: You can keep

your program portable by avoiding the use of libraries written in other

languages. The 100% Pure JavaTM Product Certification Program has a

repository of historical process manuals, white papers, brochures, and

similar materials online.

Write once, run anywhere: Because 100% Pure Java programs are

compiled into machine-independent byte codes, they run consistently on

any Java platform.

Distribute software more easily: You can upgrade applets easily from a

central server. Applets take advantage of the feature of allowing new

classes to be loaded “on the fly,” without recompiling the entire program.

ODBC

Microsoft Open Database Connectivity (ODBC) is a standard programming

interface for application developers and database systems providers. Before ODBC

became a de facto standard for Windows programs to interface with database systems,

programmers had to use proprietary languages for each database they wanted to connect

to. Now, ODBC has made the choice of the database system almost irrelevant from a

coding perspective, which is as it should be. Application developers have much more

important things to worry about than the syntax that is needed to port their program from

one database to another when business needs suddenly change.

Through the ODBC Administrator in Control Panel, you can specify the particular

database that is associated with a data source that an ODBC application program is

written to use. Think of an ODBC data source as a door with a name on it. Each door will

lead you to a particular database. For example, the data source named Sales Figures

might be a SQL Server database, whereas the Accounts Payable data source could refer

to an Access database. The physical database referred to by a data source can reside

anywhere on the LAN.

The ODBC system files are not installed on your system by Windows 95. Rather,

they are installed when you setup a separate database application, such as SQL Server

Client or Visual Basic 4.0. When the ODBC icon is installed in Control Panel, it uses a

file called ODBCINST.DLL. It is also possible to administer your ODBC data sources

25

Page 26: A Novel privacy preserving public auditing for shared data in cloud

through a stand-alone program called ODBCADM.EXE. There is a 16-bit and a 32-bit

version of this program and each maintains a separate list of ODBC data sources. From a

programming perspective, the beauty of ODBC is that the application can be written to

use the same set of function calls to interface with any data source, regardless of the

database vendor. The source code of the application doesn’t change whether it talks to

Oracle or SQL Server.

JDBC

In an effort to set an independent database standard API for Java; Sun

Microsystems developed Java Database Connectivity, or JDBC. JDBC offers a generic

SQL database access mechanism that provides a consistent interface to a variety of

RDBMSs. This consistent interface is achieved through the use of “plug-in” database

connectivity modules, or drivers. If a database vendor wishes to have JDBC support, he

or she must provide the driver for each platform that the database and Java run on.

To gain a wider acceptance of JDBC, Sun based JDBC’s framework on ODBC.

As you discovered earlier in this chapter, ODBC has widespread support on a variety of

platforms. Basing JDBC on ODBC will allow vendors to bring JDBC drivers to market

much faster than developing a completely new connectivity solution.

JDBC was announced in March of 1996. It was released for a 90 day public

review that ended June 8, 1996. Because of user input, the final JDBC v1.0 specification

was released soon after. The remainder of this section will cover enough information

about JDBC for you to know what it is about and how to use it effectively. This is by no

means a complete overview of JDBC. That would fill an entire book.

JDBC Goals

Few software packages are designed without goals in mind. JDBC is one that,

because of its many goals, drove the development of the API. These goals, in conjunction

with early reviewer feedback, have finalized the JDBC class library into a solid

framework for building database applications in Java.

The goals that were set for JDBC are important. They will give you some insight as to

why certain classes and functionalities behave the way they do. The eight design goals

for JDBC are as follows:

1. SQL Level API

26

Page 27: A Novel privacy preserving public auditing for shared data in cloud

The designers felt that their main goal was to define a SQL

interface for Java. Although not the lowest database interface level possible, it is at a

low Enough level for higher level tools and APIs

to be created.Conversely,it is at a high enough level for application programmers to

use it confidently.Attaining this goal allows for future tool vendors to “generate”

JDBC code and to hide many of JDBC’s complexities from the end user.

2. SQL Conformance

SQL syntax varies as you move from database vendor to database vendor. In an

effort to support a wide variety of vendors, JDBC will allow any query statement to

be passed through it to the underlying database driver. This allows the connectivity

module to handle non-standard functionality in a manner that is suitable for its users.

3. JDBC must be implemental on top of common database interfaces

The JDBC SQL API must “sit” on top of other common SQL level APIs. This

goal allows JDBC to use existing ODBC level drivers by the use of a software

interface. This interface would translate JDBC calls to ODBC and vice versa.

4. Provide a Java interface that is consistent with the rest of the Java system

Because of Java’s acceptance in the user community thus far, the designers feel

that they should not stray from the current design of the core Java system.

5. Keep it simple

This goal probably appears in all software design goal listings. JDBC is no

exception. Sun felt that the design of JDBC should be very simple, allowing for only

one method of completing a task per mechanism. Allowing duplicate functionality

only serves to confuse the users of the API.

6. Use strong, static typing wherever possible

Strong typing allows for more error checking to be done at compile time; also,

less error appear at runtime.

7. Keep the common cases simple

Because more often than not, the usual SQL calls used by the programmer are

simple SELECT’s, INSERT’s, DELETE’s and UPDATE’s, these queries should be

simple to perform with JDBC. However, more complex SQL statements should also

be possible.

27

Page 28: A Novel privacy preserving public auditing for shared data in cloud

What is a Java Web Application?

A Java web application generates interactive web pages containing various types of

markup language (HTML, XML, and so on) and dynamic content. It is typically

comprised of web components such as JavaServer Pages (JSP), servlets and JavaBeans to

modify and temporarily store data, interact with databases and web services, and render

content in response to client requests.

Because many of the tasks involved in web application development can be repetitive or

require a surplus of boilerplate code, web frameworks can be applied to alleviate the

overhead associated with common activities. For example, many frameworks, such as

JavaServer Faces, provide libraries for templating pages and session management, and

often promote code reuse.

What is Java EE?

Java EE (Enterprise Edition) is a widely used platform containing a set of

coordinated technologies that significantly reduce the cost and complexity of developing,

deploying, and managing multi-tier, server-centric applications. Java EE builds upon the

Java SE platform and provides a set of APIs (application programming interfaces) for

developing and running portable, robust, scalable, reliable and secure server-side

applications.

Some of the fundamental components of Java EE include:

Enterprise JavaBeans (EJB): a managed, server-side component architecture used

to encapsulate the business logic of an application. EJB technology enables rapid

and simplified development of distributed, transactional, secure and portable

applications based on Java technology.

Java Persistence API (JPA): a framework that allows developers to manage data

using object-relational mapping (ORM) in applications built on the Java Platform.

JavaScript and Ajax Development

JavaScript is an object-oriented scripting language primarily used in client-side

interfaces for web applications. Ajax (Asynchronous JavaScript and XML) is a Web 2.0

technique that allows changes to occur in a web page without the need to perform a page

refresh.Java Script tool kits can be leveraged to implement Ajax-enabled components and

functionality in web pages.

28

Page 29: A Novel privacy preserving public auditing for shared data in cloud

Web Server and Client

Web Server is a software that can process the client request and send the response

back to the client. For example, Apache is one of the most widely used web server. Web

Server runs on some physical machine and listens to client request on specific port.

A web client is a software that helps in communicating with the server. Some of the most

widely used web clients are Firefox, Google Chrome, Safari etc. When we request

something from server (through URL), web client takes care of creating a request and

sending it to server and then parsing the server response and present it to the user.

HTML and HTTP

Web Server and Web Client are two separate softwares, so there should be some

common language for communication. HTML is the common language between server

and client and stands for HyperText Markup Language.

Web server and client needs a common communication protocol, HTTP (HyperText

Transfer Protocol) is the communication protocol between server and client. HTTP runs

on top of TCP/IP communication protocol.

Some of the important parts of HTTP Request are:

HTTP Method – action to be performed, usually GET, POST, PUT etc.

URL – Page to access

Form Parameters – similar to arguments in a java method, for example

user,password details from login page.

Sample HTTP Request:

GET /FirstServletProject/jsps/hello.jsp HTTP/1.1

1.Host: localhost:8080

2.Cache-Control:

3.no-cache

Some of the important parts of HTTP Response are:

Status Code – an integer to indicate whether the request was success or not.

Some of the well known status codes are 200 for success, 404 for Not Found and

403 for Access Forbidden.

Content Type – text, html, image, pdf etc. Also known as MIME type

Content – actual data that is rendered by client and shown to user.

29

Page 30: A Novel privacy preserving public auditing for shared data in cloud

MIME Type or Content Type: If you see above sample HTTP response header, it

contains tag “Content-Type”. It’s also called MIME type and server sends it to client to

let them know the kind of

data it’s sending. It helps client in rendering the data for user. Some of the mostly used

mime types are text/html, text/xml, application/xml etc.

Why we need Servlet and JSPs?

Web servers are good for static contents HTML pages but they don’t know how to

generate dynamic content or how to save data into databases, so we need another tool that

we can use to generate dynamic content. There are several programming languages for

dynamic content like PHP, Python, Ruby on Rails, Java Servlets and JSPs.Java Servlet

and JSPs are server side technologies to extend the capability of web servers by providing

support for dynamic response and data persistence.

Web Container

Tomcat is a web container, when a request is made from Client to web server, it passes

the request to web container and it’s web container job to find the correct resource to

handle the request (servlet or JSP) and then use the response from the resource to

generate the response and provide it to web server. Then web server sends the response

back to the client.When web container gets the request and if it’s for servlet then

container creates two Objects HTTP Servlet Request and HTTP Servlet Response. Then

it finds the correct servlet based on the URL and creates a thread for the request. Then it

invokes the servlet service() method and based on the HTTP method service() method

invokes doGet() or doPost() methods. Servlet methods generate the dynamic page and

write it to response. Once servlet thread is complete, container converts the response

to HTTP response and send it back to client. Some of the important work done by web

container are:

Communication Support – Container provides easy way of communication

between web server and the servlets and JSPs. Because of container, we don’t

need to build a server socket to listen for any request from web server, parse the

request and generate response. All these important and complex tasks are done by

container and all we need to focus is on our business logic for our applications.

30

Page 31: A Novel privacy preserving public auditing for shared data in cloud

Lifecycle and Resource Management – Container takes care of managing the

life cycle of servlet. Container takes care of loading the servlets into memory,

initializing servlets, invoking servlet methods and destroying them. Container also

provides utility like JNDI for resource pooling and management.

Multithreading Support – Container creates new thread for every request to the

servlet and when it’s processed the thread dies. So servlets are not initialized for

each request and saves time and memory.

JSP Support – JSPs doesn’t look like normal java classes and web container

provides support for JSP. Every JSP in the application is compiled by container

and converted to Servlet and then container manages them like other servlets.

Miscellaneous Task – Web container manages the resource pool, does memory

optimizations, run garbage collector, provides security configurations, support for

multiple applications, hot deployment and several other tasks behind the scene

that makes our life easier.

Web Application Directory Structure

Java Web Applications are packaged as Web Archive (WAR) and it has a defined

structure. You can export above dynamic web project as WAR file and unzip it to check

the hierarchy. It will be something like below image.

31

Page 32: A Novel privacy preserving public auditing for shared data in cloud

Deployment Descriptor

web.xml file is the deployment descriptor of the web application and contains mapping

for servlets (prior to 3.0), welcome pages, security configurations, session timeout

settings etc.

Thats all for the java web application startup tutorial, we will explore Servlets and JSPs

more in future posts.

MySQL:

MySQL, the most popular Open Source SQL database management system, is

developed, distributed, and supported by Oracle Corporation.

The MySQL Web site (http://www.mysql.com/) provides the latest information about

MySQL software.

MySQL is a database management system.

A database is a structured collection of data. It may be anything from a simple

shopping list to a picture gallery or the vast amounts of information in a corporate

network. To add, access, and process data stored in a computer database, you need a

database management system such as MySQL Server. Since computers are very good

at handling large amounts of data, database management systems play a central role

in computing, as standalone utilities, or as parts of other applications.

MySQL databases are relational.

A relational database stores data in separate tables rather than putting all the data in

one big storeroom. The database structures are organized into physical files optimized

for speed. The logical model, with objects such as databases, tables, views, rows, and

columns, offers a flexible programming environment. You set up rules governing the

relationships between different data fields, such as one-to-one, one-to-many, unique,

required or optional, and “pointers” between different tables. The database enforces

these rules, so that with a well-designed database, your application never sees

inconsistent, duplicate, orphan, out-of-date, or missing data. The SQL part of

“MySQL” stands for “Structured Query Language”. SQL is the most common

standardized language used to access databases. Depending on your programming

32

Page 33: A Novel privacy preserving public auditing for shared data in cloud

environment, you might enter SQL directly (for example, to generate reports), embed

SQL statements into code written in another language, or use a language-specific API

that hides the SQL syntax.

SQL is defined by the ANSI/ISO SQL Standard. The SQL standard has been evolving

since 1986 and several versions exist. In this manual, “SQL-92” refers to the standard

released in 1992, “SQL:1999” refers to the standard released in 1999, and “SQL:2003”

refers to the current version of the standard. We use the phrase “the SQL standard” to

mean the current version of the SQL Standard at any time.

5.3 Sample code 5.3.1 Registration.jsp

<%@page import="Action.mail_Senddd"%>

<%@page import="java.sql.DriverManager"%>

<%@page import="Action.TrippleDes"%>

<%@page import="java.sql.Statement"%>

<%@page import="java.sql.Connection"%>

<%

String user = request.getParameter("user");

String pass = request.getParameter("pass");

String s = request.getParameter("sex");

String mail = request.getParameter("mail");

String contact = request.getParameter("contact");

Class.forName("com.mysql.jdbc.Driver");

Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/"A

Novel, "root", "root");

Statement st = con.createStatement();

33

Page 34: A Novel privacy preserving public auditing for shared data in cloud

int i = st.executeUpdate("insert into regpage values('" + user + "','" + pass + "','" + s +

"','" + mail + "','" + contact + "','" + new TrippleDes().encrypt(s) + "')");

if (i != 0) {

mail_Senddd.sendMail(new TrippleDes().encrypt(s), user, mail);

response.sendRedirect("Login.jsp?msg=Register success");

} else {

response.sendRedirect("Register.jsp?msgr=Reg fail");

}

%>

5.3.2 Home.jsp

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<!--Design by http://www.bluewebtemplates.com

Released for free under a Creative Commons Attribution 3.0 License-->

<html xmlns="http://www.w3.org/1999/xhtml">

<head> <title>A Novel</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<link href="style.css" rel="stylesheet" type="text/css" />

<!-- CuFon: Enables smooth pretty custom font rendering. 100% SEO friendly. To

disable, remove this section -->

<script type="text/javascript" src="js/cufon-yui.js"></script>

<script type="text/javascript" src="js/arial.js"></script>

<script type="text/javascript" src="js/cuf_run.js"></script>

<!-- CuFon ends --> </head> <body>

<div class="main"> <div class="header">

<div class="header_resize">

<divclass="logo"><br></br>

<br></br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<img src="images/144.jpg" />

</div>

<div class="menu_nav"> <ul>

34

Page 35: A Novel privacy preserving public auditing for shared data in cloud

<liclass="active"><a href="Home.jsp"><strong>Home</strong></a></li>

<li><a href="Reg.jsp"><strong>Member_Register</strong></a></li>

<li><ahref="Mem_Log.jsp"><strong>Group_Member</strong> </a></li>

<li><a href="Group_Manager_Login.jsp"><strong>Group_Manager</strong></a></li>

<li><ahref="PublicAudting.jsp"><strong>Public_Audting</strong></a></li>

</ul> </div>

<div class="clr"></div>

</div> </div>

<div class="content">

<div class="content_resize">

<div align="center" >

<h2>ABSTRACT </h2><p align="justify" style="font: sans-serif"> In

today's cloud Computing is one of the greatest development which uses progressed

computational force and it enhances information sharing and information putting away

capacities. Primary trouble in cloud computing was issues of information uprightness,

information security and information access by unapproved clients. TTA (Trusted Third

Party) is utilized to store and offer information in cloud computing. Change and sharing

of information is truly straightforward as a gathering. To confirm respectability of the

mutual information, individuals in the gathering needs to register marks on all common

information squares. Distinctive squares in shared information are for the most part

marked by diverse clients because of information changes performed by diverse clients.

Client renouncement is one of the greatest security dangers in information partaking in

gatherings. Amid client denial shared information square marked by renounced client

needs to download and resign by existing client. This assignment is extremely

inefficacious because of the vast size of shared information obstructs on cloud. data

intigrity is the new open evaluating system for the keeping up honesty of imparted

information to productive client disavowal in the cloud.This instrument is in light of

intermediary resignatures idea which permits the cloud to resign squares for the benefit of

existing clients amid client disavowal, so that downloading of shared information pieces

is not needed.data intigrity is general society examiner which reviews the respectability

35

Page 36: A Novel privacy preserving public auditing for shared data in cloud

of shared information without recovering the whole information from the cloud. It

additionally screen cluster to confirm various examining errands all the while.

</p>

</div>

<div class="sidebar">

</div> <div class="clr"></div>

</div>

<div class="footer">

<div class="footer_resize">

<div class="clr"></div>

</div>

</div>

</div>

</body>

</html>

Chapter 6

SYSTEM TESTINGINTRODUCTION

The main idea is to ascertain errors. It is the procedure of trying to find

out each possible mistake or disadvantage in a work product. It produces a way to verify

the functionality of components, sub assemblies, assemblies and/or a finished product. It

is the sprocedure for analyzing software with objective of establishing that software

system meets its necessities and user prospective and does not fail in an improper

manner. There are different kinds of test. Each test kind addresses a detailed testing

condition.

6.1 Types of tests:

6.1.1 Integration Testing:

Integration tests are planned to test integrated software workings to decide if they

actually run as one program.Testing is event driven and is more alarmed with the basic

outcome of screens or fields. Integration tests reveal that although the workings were

36

Page 37: A Novel privacy preserving public auditing for shared data in cloud

individually satisfaction, as shown by successfully unit testing, the combination of

workings is correct and steady. This testing is particularly intended at exposing the

problems that arise from the blend of workings.

6.1.2 Functional test

Functional tests provide systematic demonstrations that functions tested are

available as specified by the business and technical requirements, system documentation,

and user manuals.

Functional testing is centered on the following items:

Valid Input : identified classes of valid input must be accepted.

Invalid Input : identified classes of invalid input must be rejected.

Functions : identified functions must be exercised.

Output : identified classes of application outputs must be exercised.

Systems/Procedures: interfacing systems or procedures must be invoked.

Organization and preparation of functional tests is focused on requirements, key

functions, or special test cases. In addition, systematic coverage pertaining to identify

Business process flows; data fields, predefined processes, and successive processes must

be considered for testing. Before functional testing is complete, additional tests are

identified and the effective value of current tests is determined.

6.1.3 System Test

System testing ensures that the entire integrated software system meets requirements.

It tests a configuration to ensure known and predictable results. An example of system

testing is the configuration oriented system integration test. System testing is based on

process descriptions and flows, emphasizing pre-driven process links and integration

points.

6.1.4 Acceptance Testing

User Acceptance Testing is a critical phase of any project and requires significant

participation by the end user. It also ensures that the system meets the functional

requirements.

6.1.5 Test Results: All the test cases mentioned above passed successfully. No defects

encountered.

6.2 Test cases:

37

Page 38: A Novel privacy preserving public auditing for shared data in cloud

6.2.1 Test Case for Registration

Test Case ID Input Description Expected Result

NCADPO _01 Login id blank Login id and

password is

mandatory

Enter login id and password

NCADPO _02 Password

blank

Password is

mandatory

Enter user password

NCADPO _03 group

blank/invalid

Group is mandatory

Enter group

NCADPO _04 Email id blank Email id is mandatory

Enter email id

Table 6.2.1 Test Case for Registration

6.2.2 Test case for Login

Test case ID Input Description Expected Result

NCADPO_01Login id blank,

password blank

Login id and

password fields

are mandatory

Enter login id &password

NCADPO _02Valid id and

blank password

Password

mandatoryEnter owner password

NCADPO _03Valid password

and blank id

Login id is

mandatoryEnter login id

NCADPO _04Valid id and

passwordLogin success Login

NCADPO _05In valid id, in

valid password

In valid id, in

valid password

Enter user id & Password

correctly

Table 6.2.2 Test case for Login.

38

Page 39: A Novel privacy preserving public auditing for shared data in cloud

6.2.3 Test Case for Registration form Password

Test Case ID Input Description Expected Result

NCADPO _01 Blank password Blank password given by user

Enter user password

NCADPO _02 Password with symbols or any character or digits

Password with symbols or any character or digits given by administrator

Accepted

Table 6.2.3 Test Case for Password

6.2.4 Test Case for Registration form Email id

Test Case ID Input Description Expected Result

NCADPO_01 Blank email id A blank email id field is left by the user

Display that email id is mandatory

NCADPO _02 Email id without @

Email id without @ is given by user

Display that email id is mandatory

 NCADPO _03  Email id with /Without dot (.) after @

 Email id with/ Without dot (.) after @is given by the user 

 Display that email id is mandatory

 NCADPO _04 Valid  Email id With @

 Valid Email id With @is given.

 Accepted

Table 6.4 Test Case for Email id

39

Page 40: A Novel privacy preserving public auditing for shared data in cloud

From the above test cases it can be observed that, software system meets its requirements

plus user expectations and does not fail in an unacceptable manner.

Chapter 7

SCREEN SHOTS

7.1 Home Page

40

Page 41: A Novel privacy preserving public auditing for shared data in cloud

This is a home page which appears as the user enters into the website. Once

user clicks on register the control navigates to registration page

7.2 Registration page

41

Page 42: A Novel privacy preserving public auditing for shared data in cloud

In this module if a user wants to access the data which is stored in a cloud,

he/she should register their details first. These details are maintained in a Database.User

can register with the valid details and he can login after registartion. If any invalid or

blank inputs then the resultant test case7.2 is below.

7.2 Resultant Test case of user registration.

Test Case ID Input Description Expected

Result

Status

NCADPO _01 Login id blank Login id is mandatory Enter login id P

NCADPO _02 Password blank Password id is

mandatory

Enter user

password

P

NCADPO _03 Mobile noblank/

invalid

Mobile no is

mandatory

Enter mobile no P

NCADPO _04 Email id blank Emailid is mandatory Enter email id P

7.3 Group Manager Login

42

Page 43: A Novel privacy preserving public auditing for shared data in cloud

The above figure 7.3 It is one of the option that shows in homepage.The work of

this screenshot is the admin to check the complete user details such as

uploading,downloading and updating files with the date and time.These all can be done

after the login of admin only. In this module,any of the above mentioned person have to

login, they should login by giving their email id and password

7.4 Member Login

43

Page 44: A Novel privacy preserving public auditing for shared data in cloud

Who are used to the data in cloud so first to login to the valid username and

password.then after to click on to the submit button.

7.5.View Group

44

Page 45: A Novel privacy preserving public auditing for shared data in cloud

In this page to display the registration details,once login to the registration page then

after to show users group and also view login details, and view file details.

7.6.Public Verifier

45

Page 46: A Novel privacy preserving public auditing for shared data in cloud

In this module, if a third party auditor TPA (maintainer of clouds) wants to do

some cloud offer, they should register first. After third party auditor gets logged in, He/

She can see how many data owners have uploaded their files into the cloud.

46

Page 47: A Novel privacy preserving public auditing for shared data in cloud

In this page to shows the Tpa is gives valid user id name and password it is successfully verified

In this page to shows the Tpa is gives Invalid user id,name and password Now will shows Error.

Chapter-8

47

Page 48: A Novel privacy preserving public auditing for shared data in cloud

CONCLUSION AND SCOPE CONCLUSION

Cloud computing is world's greatest development which uses progressed

computational power and enhances information sharing and information putting away

abilities. It expands the simplicity of utilization by giving access through any sort of web

association. As every coin has two sides it likewise has some drawbacks. Protection

security is a fundamental issue for cloud storage. To guarantee that the dangers of

protection have been moderated a mixture of systems that may be utilized as a part of

request to accomplish security. This paper showcase some security systems and diverse

strategies for defeating the issues in protection on untrusted information stores in cloud

computing. There are still some methodologies which are not secured in this paper. This

paper classes the techniques in the writing as encryption based strategies, access control

based systems, inquiry uprightness/decisive word hunt plans, and auditability plans.

Despite the fact that there are numerous systems in the writing for considering the

concerns in security, no methodology is very created to give a protection safeguarding

stockpiling that defeats the various protection concerns. In this manner to handle all these

protection concerns, we have to create privacy safeguarding system which handle every

one of the stresses in protection security and reinforce cloud storage administration.

Future scope

I am, going to raise the privacy level of data and confidentiality of the data in a

better way through the multiple cloud environment Security cloud is one of the present

research project to improve its appropriateness by using map reduce technique.It helps

the cloud clients obtain something from data identification while uploading and to

improve the accuracy of data which is stored in cloud.

REFERENCES

48

Page 49: A Novel privacy preserving public auditing for shared data in cloud

[1] B. Wang, B. Li, and H. Li, “Oruta: Privacy-Preserving Public Auditing for Shared

Data in the Cloud,” Proc. IEEE Fifth Int’l Conf. Cloud Computing, pp. 295-302, 2012.

[2] 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, “A View of Cloud Computing,”

Comm. ACM, vol. 53, no. 4, pp. 50-58, Apr. 2010.

[3] K. Ren, C. Wang, and Q. Wang, “Security Challenges for the Public Cloud,” IEEE

Internet Computing, vol. 16, no. 1, pp. 69-73, 2012.

[4] D. Song, E. Shi, I. Fischer, and U. Shankar, “Cloud Data Protection for the Masses,”

Computer, vol. 45, no. 1, pp. 39-45, 2012.

[5] C. Wang, Q. Wang, K. Ren, and W. Lou, “Privacy-Preserving Public Auditing for

Data Storage Security in Cloud Computing,” Proc. IEEE INFOCOM, pp. 525-533, 2010.

[6] B. Wang, M. Li, S.S. Chow, and H. Li, “Computing Encrypted Cloud Data Efficiently

under Multiple Keys,” Proc. IEEE Conf. Comm. and Network Security (CNS ’13), pp.

90-99, 2013.

[7] R. Rivest, A. Shamir, and L. Adleman, “A Method for Obtaining Digital Signatures

and Public Key Cryptosystems,” Comm. ACM, vol. 21, no. 2, pp. 120-126, 1978.

[8] The MD5 Message-Digest Algorithm (RFC1321). https://tools. ietf.org/html/rfc1321,

2014.

[9] G. Ateniese, R. Burns, R. Curtmola, J. Herring, L. Kissner, Z. Peterson, and D. Song,

“Provable Data Possession at Untrusted Stores,” Proc. 14th ACM Conf. Computer and

Comm. Security (CCS ’07), pp. 598-610, 2007.

[10] H. Shacham and B. Waters, “Compact Proofs of Retrievability,” Proc. 14th Int’l

Conf. Theory and Application of Cryptology and Information Security: Advances in

Cryptology (ASIACRYPT ’08), pp. 90-107, 2008.

49

Page 50: A Novel privacy preserving public auditing for shared data in cloud

[11] C. Erway, A. Kupcu, C. Papamanthou, and R. Tamassia, “Dynamic Provable Data

Possession,” Proc. 16th ACM Conf. Computer and Comm. Security (CCS’09), pp. 213-

222, 2009.

[12] Q. Wang, C. Wang, J. Li, K. Ren, and W. Lou, “Enabling Public Verifiability and

Data Dynamic for Storage Security in Cloud Computing,” Proc. 14th European Conf.

Research in Computer Security (ESORICS’09), pp. 355-370, 2009.

[13] C. Wang, Q. Wang, K. Ren, and W. Lou, “Ensuring Data Storage Security in Cloud

Computing,” Proc. 17th Int’l Workshop Quality of Service (IWQoS’09), pp. 1-9, 2009.

[14] B. Chen, R. Curtmola, G. Ateniese, and R. Burns, “Remote Data Checking for

Network Coding-Based Distributed Storage Systems,” Proc. ACM Workshop Cloud

Computing Security Workshop (CCSW’10), pp. 31-42, 2010.

[15] Y. Zhu, H. Wang, Z. Hu, G.-J. Ahn, H. Hu, and S.S Yau, “Dynamic Audit Services

for Integrity Verification of Outsourced Storages in Clouds,” Proc. ACM Symp. Applied

Computing (SAC’11), pp. 1550-1557, 2011.

[16] N. Cao, S. Yu, Z. Yang, W. Lou, and Y.T. Hou, “LT Codes-Based Secure and

Reliable Cloud Storage Service,” Proc. IEEE INFOCOM, 2012.

[17] B. Wang, B. Li, and H. Li, “Certificateless Public Auditing for Data Integrity in the

Cloud,” Proc. IEEE Conf. Comm. and Network Security (CNS’13), pp. 276-284, 2013.

[18] C. Wang, S.S. Chow, Q. Wang, K. Ren, and W. Lou, “Privacy-Preserving Public

Auditing for Secure Cloud Storage,” IEEE Trans. Computers, vol. 62, no. 2, pp. 362-375,

Feb. 2013.

[19] B. Wang, B. Li, and H. Li, “Public Auditing for Shared Data with Efficient User

Revocation in the Cloud,” Proc. IEEE INFOCOM, pp. 2904-2912, 2013.

[20] B. Wang, B. Li, and H. Li, “Panda: Public Auditing for Shared Data with Efficient

User Revocation in the Cloud,” IEEE Trans. Services Computing, 20 Dec. 2013, DOI:

10.1109/TSC.2013.2295611.

50