Professional Documents
Culture Documents
CHAPTER 1
1.INTRODUCTION:
1
SMIT
The term “cloud” appears to have its origins in network diagrams that represented the
internet, or various parts of it, as schematic clouds. “Cloud computing” was coined for what
happens when applications and services are moved into the internet “cloud.” It is a pool of
abstracted, highly scalable, and managed compute infrastructure capable of hosting end-
customer applications and billed by consumption. A paradigm in which information is
permanently stored in servers on the Internet and cached temporarily on clients that
include desktops, entertainment centers, table computers, notebooks, wall computers,
handhelds etc. Cloud computing may trace back to a time when computer systems remotely
time-shared computing resources and applications. More currently though, cloud computing
refers to the many different types of services and applications being delivered in the internet
cloud, and the fact that, in many cases, the devices used to access these services and
applications do not require any special applications.
1.1 CHARACTERISTICS:
Cloud computing has a variety of characteristics, with the main ones being:
1.1.1Shared Infrastructure:
Uses a virtualized software model, enabling the sharing of physical services, storage,
and networking capabilities. The cloud infrastructure, regardless of deployment model, seeks
to make the most of the available infrastructure across a number of users.
Network Access:
2
SMIT
Needs to be accessed across the internet from a broad range of devices such as PCs,
laptops, and mobile devices, using standards-based APIs (for example, ones based on
HTTP). Deployments of services in the cloud include everything from using business
applications to the latest application on the newest smartphones.
Managed Metering:
Uses metering for managing and optimizing the service and to provide reporting and
billing information. In this way, consumers are billed for services according to how much
they have actually used during the billing period.
1.2SERVICE MODELS:
Once a cloud is established, how its cloud computing services are deployed in terms
of business models can differ depending on requirements. The primary service models being
deployed are commonly known as:
5
SMIT
CHAPTER 2
2. LITERATURE REVIEW
6
SMIT
In the existing system, single server handles the multiple requests from the
user. Here the server has to process the both the request from the user simultaneously, so the
processing time will high. This may leads to loss of data and corrupted. The server cannot
process the query from the user a proper manner. So processing time gets increased. Software
update/patches could change security settings, assigning privileges too low, or even more
alarmingly too high allowing access to your data by other parties. Security concerns. Experts
claim that their clouds are 100% secure - but it will not be their head on the block when
things go awry. It's often stated that cloud computing security is better than most enterprises.
Control of data/system by third-party. Data - once in the cloud always in the cloud! It is not
sure that a deleted data from an user account, will exist. Implementation data integration
issues are rife due to the difficult.
7
SMIT
Cloud Server utilizes the power of the internet so as to ease the access to
applications as well as add power of scalability and high availability. Where as Cloud Storage
is a way of effectively using the existing data storage technology and resources so as to make
them available over the Cloud. Cloud storage allows a great amount of flexibility in terms of
provisioning as per the changing and ever increasing storage requirements, it is easy to add
more space or even reduce as needs change; best of all aspects is that no upfront investments
are required. The applications can vary from storing files, emails, pictures, media files along
with critical databases and important data backup. It provide secure data while store and
retrieve. It can be used cryptographically encryption and decryption in data store and retrieve.
We have used in third party tool (TPA) to monitoring data store and retrieve between owner
and user. It sends the key to user for access data.
1. The user will be given status by the data owner and according to it the user acts.
2. On acquiring status, the user has only limited functions which prohibit overwriting.
3. The data will be stowed in encrypted format so as to improve the integrity and
security.
4. For an encrypted data, a private key will be sent to the user for decryption.
Three types of feasibility study are studied. They are operational, technical and financial.
8
SMIT
2.3.1 Operational Feasibility
The proposed system does not perform any harm to the clients.
1. The system performance in cloud computing area is excellent.
2. The system does not produce poor results.
1. The cost of hardware and software for the class application being considered.
2. The cost to conduct full system audit.
3. The benefits in the form of reduced cost or fewer costly errors.
Third Party
Cloud
Auditor
9 servers
SMIT
Delegation
One who creates the data and stores it in cloud is known as data owners. The data
owner has the full rights over the data that has been uploaded in net. The data owner gives
status to the user who opts for the usage of the data.
10
SMIT
3.1.1.2 Cloud Server:
It is virtual database where the data of the owner will be saved. All data stored here
will be in encrypted format so as to improve the data privacy and security. Unauthorized
personnel cannot access the data without the prior permission of the data owner.
TPA is the person which helps in auditing purpose of the data that are being stored in
cloud. In order to reduce the work load of data owner TPA has been used for monitoring
purpose.
One who retrieves data from the cloud server with the prior permission of the data
owner is known to be data user. User request for accessing the data from its owner, on
acquiring the status the user acts according to it.
3.1.1.5 Decrypt:
The data stored in cloud will being changed to original format with the help of private
key given by the data owner by the data user.
Owner
Login
No
If valid
11
SMIT
Data
Store data
Cloud
User Decryption
Server
No
User
If
vali Access file
d
3.3 MODULES
3.3.1 Authentication
12
SMIT
3.3.7 Decryption
3.3.1 AUTHENTICATION:
In this module the verification of the user is done in order to avoid the unauthorized
personnel to create account and start using the data in an unintentional way.
Owner
Authenticatio Rejected
n
Accepted
The user requests the data owner for accessing the data. The data owner in turn validates the
request from the user and sets the status accordingly. The data owner may or may not accept
the request given by the user. The status for the user is entirely depends upon the
transparency of the data user. More the reliability of the data user will lead to enjoy more
work permission of the particular data. If the data user fails to accomplish the required
reliability in authentication process, he may be subjected to limited access of data such as
read only. On registering to an owner, the user can access the data related or uploaded to that
particular owner. The user does not have consent about data that are being uploaded by other
data owner. If so the user has to register with that data owner separately.
Owner Login
Profile
Browse
Upload
The data that we work with on computers is kept in a hierarchical file system in which
directories have files and subdirectories beneath them. Although we use the computer
operating system to keep our image data organized, how we name files and folders, how we
arrange these nested folders, and how we handle the files in these folders are the fundamental
aspects of file management. The file management is fully secured, on specific owner and user
file transaction.
14
SMIT
cache files, .tmp files, old and/or large files you have not used in a long time; emptying the
recycle bin; at least a weekly scheduled virus scanning of your system and virus definition
updates; backing up critical data; maintaining an updated list of all software and data files on
your system; renaming files and folders cautiously; and, moving files and folders to
appropriate locations to maintain the integrity of the directory structure.
Priorly the data user does not have any control or access to data that are being
uploaded by the data owner. User may only view the data that are being uploaded in the
cloud, for accessing the data the user has to send request to the particular data owner who has
the required data that the user has. The user without access the data without registering to the
data owner. This ensures avoiding of unauthorized access of data by a third person. Here the
data owner has full authority over the data and also the user from which a REQUEST has
requested upon.
Select User
15
User Request
SMIT
Login
Request for
status
Upon the user request, the data owner accepts or rejects the request given by the user.
If the request is rejected by the owner the user cannot access the files that are available in the
cloud. The data user is then prohibited from using the data that are uploaded in cloud server.
On the other side, if the data owner accepts the request given by the data user then the user is
allowed to view the files that have been uploaded in cloud. Again, here the owner has to set
the status for user regarding the usage of file. Status such as read and write are available in
setting the status of the user. Either one or both the available can be assigned to the user. In
read mode, the user can only view the data in a file while in write mode user can modify the
original content of the file.
Checks Request
16
SMIT
Set Response
File serves lets you easily download and share your files with others online for free.
Your files will get unlimited downloads. With their free hosting account you can download
maximum file size 1024 Mb. It allows you to multiple files download their free web servers.
Specified user can able to download the file by using the decryption algorithm
from the cryptography method by their specified path. When the downloading process starts
the public key will send to the respected user’s mail id. By using that keys the user done the
download process.
User login
YES NO
Key to ID Stat
End
us 17
SMIT
YES
Download
3.3.7 DECRYPTION:
In decryption, the file downloaded from the cloud server with the assent of the data
owner it is subjected to decryption process to obtain the original form of it. The decryption
process is done with comfort of the private key that has been sent to the user’s mail id. After
then the original file is obtained by the user.
Decrypted File
Key
Decryption
18
SMIT
2. RAM : 512 MB
3. Processor : Pentium 4
19
SMIT
The RSA algorithm is named after Ron Rivest, Adi Shamir, and Len Adleman, who
invented it in 1977. The basic technique was first discovered in 1973 by Clifford Cocks of
CESG (part of the British GCHQ) but this first was a secret until 1997. The patent taken out
by RSA labs has expired.
The RSA algorithm can be used for both public key encryption and digital signatures.
Its security is based on the difficulty of factoring large integers.
1. Generate two large random primes, p and q, of approximately equal size such that
their product n=pq is of the required bit length, e.g. 1024 bits.
5. The public key is (n,e) and the private key is (n,d). Keep all the values d, p, q and phi
secret.
3.5.3 Encryption
• Phi, φ = (p-1)(q-1).
• M=Cd mod n.
User File
Access
Third Party
Audit
File Cloud
Encryption Server
21
SMIT
Owner User
Decryption
22
SMIT
23
SMIT
SOURCE CODE
File Transfer:
<html>
<head></head>
24
SMIT
<body background="../FileTransfer.jpg">
</font></b></u> </p>
<div align="center">
<tr>
<td
width="432"> &nbs
p;
<p> </td>
</tr>
</table>
</div>
<p><br>
</p>
</form>
</body>
</html>
25
SMIT
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.util.Date"%>
<%@page import="java.sql.*"%>
<%@page import="java.text.*"%>
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>JSP Page</title>
<script>
function fun()
document.frm.action="suc.jsp";
document.frm.submit(); }
</script>
</head>
<%
String s=(String)session.getAttribute("ownername");
26
SMIT
String contentType = request.getContentType();
int df=request.getContentType().length();
System.out.println("length "+formDataLength);
int byteRead = 0;
int totalBytesRead = 0;
System.out.println("dsffffffffffffffffffffffffffffffffffffffffffffffffffffffff");
totalBytesRead += byteRead; }
int pos;
pos = file.indexOf("filename=\"");
dateFormat.format(date1);
String ff="upload";
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/cloud", "root", "root");
Statement st = con.createStatement();
//fileOut.write(dataBytes);
28
SMIT
//fileOut.write(dataBytes, startPos, (endPos - startPos));
System.out.println("sart "+startPos);
System.out.println("end "+endPos);
System.out.println("ps value");
saveFile+="~"+s;
int d=h.insres(dataBytes,saveFile,startPos,endPos);
System.out.println("d value"+d);
//fileOut.flush();
//fileOut.close();
%>
</html>
import java.io.File;
import java.io.FileOutputStream;
import java.io.ObjectOutputStream;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.PrivateKey;
import java.security.PublicKey;
29
SMIT
import javax.crypto.Cipher;
int state;
byte[] inputBuf;
byte a;
String dd[]=sf.split("~");
String save=dd[0];
String s=dd[1];
String ss1=save.substring(save.lastIndexOf("\\")+1);
System.out.println("save:::::::"+save);
System.out.println("ssssssssssssss:::::::::"+ss1);
System.out.println("b-a "+(b-a));
int j=0;
for(int i=a;i<b;i++)
decryptedFileBytes[j]=(byte) c;
j++;
}
30
SMIT
String ddf=save.substring(save.lastIndexOf("\\")+1,save.lastIndexOf("."));
System.out.println("fe:::::::"+ddf+":::::::::::::"+save);
// System.out.println("str:::::::::: "+m);
System.out.println("bytes "+decryptedFileBytes.toString());
try{
try
{ KeyPairGenerator keyPairGenerator =
KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(1024);
keyPair = keyPairGenerator.generateKeyPair();
}catch (Exception e) {}
objectOutputStream.writeObject(privateKey0);
objectOutputStream.flush();
objectOutputStream.close();
objectOutputStream.flush();
objectOutputStream.close();
//Encrypt
cipher.init(Cipher.ENCRYPT_MODE, publicKey0);
// ENCRYPT Pub0
//Counters
int decryptedByteIndex = 0;
int encryptedByteIndex = 0;
32
SMIT
encryptedByteIndex = encryptedByteIndex + cipher.doFinal(decryptedFileBytes,
decryptedByteIndex, decryptedFileBytesChunkLength, encryptedFileBytes,
encryptedByteIndex);
else
cipher.doFinal(decryptedFileBytes, decryptedByteIndex,
decryptedFileBytes.length - decryptedByteIndex, encryptedFileBytes, encryptedByteIndex);
}}
inputBuf=encryptedFileBytes;
System.out.println("in "+inputBuf.toString());
fileOutputStream.write(encryptedFileBytes);
fileOutputStream.flush();
fileOutputStream.close();
System.out.println("Encryption done");
}catch (Exception e) {
e.printStackTrace();
}
33
SMIT
System.out.println("encrypted");
return state;
34
SMIT
OUTPUT
3.8 SCREENSHOTS
HOME PAGE
35
SMIT
OWNER’S LOGIN
36
SMIT
OWNER’S REGISTRATION
37
SMIT
OWNER’S LOGIN
38
SMIT
OWNER’S DETAILS
39
SMIT
FILE UPLOAD
40
SMIT
FILE’S DETAILS
41
SMIT
TABLE DESIGN
42
SMIT
OWNER’S DETAILS
43
SMIT
USER PROFILE
44
SMIT
USER REGISTRATION
45
SMIT
USER LOGIN
46
SMIT
3.9 CONCLUSION
47
SMIT
services are under proper physical, logical, and personnel controls, cloud
computing moves the application software and databases to servers in large
data centers on the Internet, where the management of the data and services are
not fully trustworthy. This unique attribute raises many new security challenges
in areas such as software and data security, recovery, and privacy, as well as
legal issues in areas such as regulatory compliance and auditing, all of which
have not been well understood. In this article we focus on cloud data storage
security.
1. Till now the trustiness is suspected for user but there may be anonymity of the cloud
service provider.
2. Multi writer model is achieved here that is user can change data and upload in the cloud.
48
SMIT
APPENDIX
APPENDIX I
JSP
JSP may be viewed as a high-level abstraction of Java servlets. JSP pages are loaded
in the server and operated from a structured special installed Java server packet called a Java
EE Web Application, often packaged as a .war or .ear file archive.
49
SMIT
JSP allows Java code and certain pre-defined actions to be interleaved with static web
markup content, with the resulting page being compiled and executed on the server to deliver
an HTML or XML document. The compiled pages and any dependent Java libraries use Java
bytecode rather than a native software format, and must therefore be executed within a Java
virtual machine (JVM) that integrates with the host operating system to provide an abstract
platform-neutral environment.
JSP syntax is a fluid mix of two basic content forms: scriptlet elements and markup.
Markup is typically standard HTML or XML, while scriptlet elements are delimited blocks of
Java code which may be intermixed with the markup. When the page is requested the Java
code is executed and its output is added, in situ, with the surrounding markup to create the
final page. JSP pages must be compiled to Java bytecode classes before they can be executed,
but such compilation is needed only when a change to the source JSP file has occurred.
Java code is not required to be complete (self contained) within its scriptlet element
block, but can straddle markup content providing the page as a whole is syntactically correct
(for example, any Java if/for/while blocks opened in one scriptlet element must be correctly
closed in a later element for the page to successfully compile). This system of split inline
coding sections is called step over scripting because it can wrap around the static markup by
stepping over it. Markup which falls inside a split block of code is subject to that code, so
markup inside an if block will only appear in the output when the if condition evaluates to
true; likewise markup inside a loop construct may appear multiple times in the output
depending upon how many times the loop body runs. The JSP syntax adds additional XML-
like tags, called JSP actions, to invoke built-in functionality. Additionally, the technology
allows for the creation of JSP tag libraries that act as extensions to the standard HTML or
XML tags. JVM operated tag libraries provide a platform independent way of extending the
capabilities of a web server. Note that not all commercial Java servers are Java EE
specification compliant.
Features of JSP
1. Ease of use: - JSP pages are installed simply as web pages using natural structure of web
server document tree.
50
SMIT
2. Platform independence: - JSP runs on virtually any environment that supports JAVA
servlets and hence it is compatible with any web browsers.
3. This version has new expression language (EL ) syntax that allows deferred evaluation of
expressions. It now enables using the expression to both get and set data and to invoke
methods, and facilitates customizing the resolution of a variable or property referenced by an
expression.
5. Qualified functions now take precedence over the ternary operator when the "." operator in
use or we can say that ability to redefine the behavior of the "."Operator through a Property
Resolver API.
6. EL now supports "literal expressions". The expression which was previously considered to
be non-EL value text must now be considered an EL expression.
FRONT PAGE
51
SMIT
designed to hide the details of pages' HTML code from the user, making it possible for
novices to easily create web pages and sites.
FrontPage's initial outing under the Microsoft name came in 1996 with the release of
Windows NT 4.0 Server and its constituent web server Internet Information Services 2.0.
Bundled on CD with the NT 4.0 Server release, FrontPage 1.1 would run under NT 4.0
(Server or Workstation) or Windows 95. Up to FrontPage 98, the FrontPage Editor, which
was used for designing pages was a separate application from the FrontPage Explorer which
was used to manage website folders. With FrontPage 2000, both programs were merged into
the Editor.
FrontPage used to require a set of server-side plug-in originally known as IIS Extensions. The
extension set was significantly enhanced for Microsoft inclusion of FrontPage into the
Microsoft Office line-up with Office 97 and subsequently renamed FrontPage Server
Extensions (FPSE). Both sets of extensions needed to be installed on the target web server for
its content and publishing features to work. Microsoft offered both Windows and Unix-based
versions of FPSE. FrontPage 2000 Server Extensions worked with earlier versions of
FrontPage as well. FPSE 2002 was the last released version which also works with FrontPage
2003 and was later updated for IIS 6.0 as well. With FrontPage 2003, Microsoft began
moving away from proprietary Server Extensions to standard protocols like FTP and
WebDAV for remote web publishing and authoring. FrontPage 2003 can also be used with
Windows SharePoint Services.
Features
• FrontPage 2003 consists of a new Split View option to allow the user to code in Code
View and preview in Design View without the hassle of switching from the Design
and Code View tabs for each review
• Dynamic Web Templates (DWT) were included for the first time in FrontPage 2003
allowing users to create a single template that could be used across multiple pages and
even the whole Web site
52
SMIT
• Interactive Buttons give users a new easy way to create web graphics for navigation
and links, eliminating the need for a complicated image-editing package such as
Adobe Photoshop
• The accessibility checker gives the user the ability to check if their code is standards
compliant and that their Web site is easily accessible for people with disabilities. An
HTML optimizer is included to aid in optimizing code to make it legible and quicker
to process
• Code Snippets give users the advantage to create snippets of their commonly used
pieces of code allowing them to store it for easy access whenever it is next needed
53
SMIT
REFERENCES
REFERENCES
[1] P. Mell and T. Grance, “Draft NIST Working Definition of Cloud Computing,” 2009;
http://csrc.nist.gov/groups/SNS/cloud-computing/index.html
[2] M. Armbrust et al “Above the Clouds: A Berkeley View of Cloud Computing,” Univ.
California, Berkeley, Tech. Rep. UCBEECS-2009-28, Feb. 2009.
[3] Amazon.com, “Amazon s3 Availability Event: July 20, 2008,” July 2008;
http://status.aws.amazon.com/s3-20080720.html
54
SMIT
[4] M. Arrington, “Gmail Disaster: Reports of Mass Email Deletions,” Dec. 2006;
http://www.techcrunch.com/2006/12/28/gmail-disaster-reports-of-mass email-deletions/
[6] A. Juels, J. Burton, and S. Kaliski, “PORs: Proofs of Retrievability for Large Files,”
Proc. ACM CCS ‘07, Oct. 2007, pp. 584–97.
[7] G.Ateniese et al et al., “Provable Data Possession at Untrusted Stores,” CCS ’07 , Oct.
2007, pp. 598–609.
[8] M. A. Shah et al., “Auditing to keep Online Storage Services Honest,” USENIX HotOS
‘07, May 2007.
[9] G. Ateniese et al ., “Scalable and Efficient Provable Data Possession,” ., “Scalable and
Efficient Provable Data Possession,” SecureComm ’08 , Sept. 2008.
[10] H. Shacham and B. Waters, “Compact Proofs of Retrievability,” Crypt ’08 , LNCS, vol.
5350, Dec. 2008, pp. 90–107.
[11] K. D. Bowers, A. Juels, and A. Oprea, “Hail: A High-Availability and Integrity Layer
for Cloud Storage,” Proc. ACM CCS ’09 , Nov. 2009, pp. 187–98.
[12]C.Wang et al .,”Ensuring Data Storage Security in Cloud Computing,” IWQoS ‘09, July
2009, pp. 1–9.
[13] Q. Wang et al., “Enabling Public Verifiability and Data Dynamics for Storage Security
in Cloud Computing,” Proc. ESORICS ‘09
, Sept. 2009, pp. 355–70.
55
SMIT
[14] C. Erway et al ., “Dynamic Provable Data Possession,” Proc. ACM CCS ’09 Nov. 2009,
pp. 213–22.
[15] C. Wang et al. ., “Privacy-Preserving Public Auditing for Storage Security in Cloud
Computing,” Proc. IEEE INFOCOM ‘10
Mar 2010
[16] R. C. Merkle, “Protocols for Public Key Cryptosystems,” Proc. IEEE Symp. Security
privacy 1980
[17] 104th United States Congress, “Health Insurance Portability and Accountability Act of
1996 (HIPAA),” 1996; http://aspe.hhs.gov/admnsimp/pl104191.htm
[18] D. Boneh et al., ., “Aggregate and Verifiably Encrypted Signatures from Bilinear Maps,”
Proc. EuroCrypt ‘03, LNCS, vol. 2656, May 2003, pp. 416–32.
56