0% found this document useful (0 votes)
14 views

Mini project Main Documentation

Uploaded by

kamransarwar300
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views

Mini project Main Documentation

Uploaded by

kamransarwar300
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 84

SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

CHAPTER 1
INTRODUCTION

1.1 GENERAL

Cloud computing, an emerging and very promising computing paradigm, connects


large-scale distributed storage resources, computing resources and network
bandwidths together. By using these resources, it can provide tenants with plenty of
high-quality cloud services. Due to the attractive advantages, the services
(especially cloud storage service) have been widely applied, by which the resource-
constraint data owners can outsource their data to the cloud server, which can
greatly reduce the data owners’ local storage overhead. According to the report of
Cisco, the number of Internet consumers will reach about 3.6 billion in 2019, and
about 55 percent of them will employ cloud storage service.

Because of the promising market prospect, an increasing number of companies (e.g., Microsoft,
Amazon, Alibaba) offer data owners cloud storage service with different prices, security, access
speed, etc. To enjoy more suitable cloud storage service, the data owners might change the cloud
storage service providers. Hence, they might migrate their outsourced data from one cloud to
another, and then delete the transferred data from the original cloud. According to Cisco [7], the
cloud traffic is expected to be 95% of the total traffic by the end of 2021, and almost 14% of the
total cloud traffic will be the traffic between different cloud data centers. Foreseeably, the
outsourced data transfer will become a fundamental requirement from the data owners’ point of
view.

To realize secure data migration, an outsourced data transfer app, Cloudsfer,


has been designed utilizing cryptographic algorithm to prevent the data from
privacy

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


1
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

disclosure in the transfer phase. But there are still some security problems in
processing the cloud data migration and deletion. Firstly, for saving network
bandwidth, the cloud server might merely migrate part of the data, or even deliver
some unrelated data to cheat the data owner. Secondly, because of the network
instability, some data blocks may lose during the transfer process. Meanwhile, the
adversary may destroy the transferred data blocks. Hence, the transferred data may
be polluted during the migration process. Last but not least, the original cloud
server might maliciously reserve the transferred data for digging the implicit
benefits. The data reservation is unexpected from the data owners’ point of view. In
short, the cloud storage service is economically attractive, but it inevitably suffers
from some serious security challenges, specifically for the secure data transfer,
integrity verification, verifiable deletion. These challenges, if not solved suitably,
might prevent the public from accepting and employing cloud storage service.

In this work, we study the problems of secure data transfer and deletion in
cloud storage, and focus on realizing the public verifiability. Then we propose a
counting Bloom filter-based scheme, which not only can realize provable data
transfer between two different clouds but also can achieve publicly verifiable data
deletion. If the original cloud server does not migrate or remove the data honestly,
the verifier (the data owner and the target cloud server) can detect these malicious
operations by verifying the returned transfer and deletion evidences. Moreover, our
proposed scheme does not need any Trusted third party (TTP), which is different
from the existing solutions. Furthermore, we prove that our new proposal can
satisfy the desired design goals through security analysis. Finally, the simulation
experiments show that our new proposal is efficient and practical.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


2
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Verifiable data deletion has been well studied for a long time, resulting in
many solutions [12−18]. Xue et al studied the goal of secure data deletion, and
put forward a key policy attribute based encryption scheme, which can achieve
data fine grained access control and assured deletion. They reach data deletion by
removing the attribute and use Merkle hash tree (MHT) to achieve verifiability, but
their scheme requires a trusted authority. Du et al. designed a scheme called
Associated deletion scheme for multi-copy (ADM), which uses pre-deleting
sequence and MHT to achieve data integrity verification and provable deletion.
However, their scheme also requires a TTP to manage the data keys. In 2018, Yang
et al presented a Blockchain-based cloud data deletion scheme, in which the cloud
executes deletion operation and publishes the corresponding deletion evidence on
Blockchain. Then any verifier can check the deletion result by verifying the
deletion proof. Besides, they solve the bottleneck of requiring a TTP. Although
these schemes all can achieve verifiable data deletion, they cannot realize secure
data transfer

1.2 SCOPE OF THE PROJECT

The proposed scheme not only can achieve secure data transfer but also can
realize permanent data deletion. Additionally, the proposed scheme can satisfy the
public verifiability without requiring any trusted third party. Finally, we also
develop a simulation implementation that demonstrates the practicality and
efficiency of our proposal. Moreover, the cloud A should adopt CBF to generate a
deletion evidence after deletion, which will be used to verify the deletion result by
the data owner. Hence, the cloud A cannot behave maliciously and cheat the data
owner successfully. Finally, the security analysis and simulation results validate the
security and practicability of our proposal, respectively.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


3
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

1.3 OBJECTIVE

In our scheme, we aim to achieve verifiable data transfer between two different
clouds and reliable data deletion in cloud storage. Hence, three entities are included
in our new construction, we construct a new counting Bloom filter-based scheme in
this paper. The proposed scheme not only can achieve secure data transfer but also
can realize permanent data deletion. Additionally, the proposed scheme can satisfy
the public verifiability without requiring any trusted third party. Finally, we also
develop a simulation implementation that demonstrates the practicality and
efficiency of our proposal.

1.4 EXISTING SYSTEM

 In Existing approaches to securely migrate the data from one cloud to another

and permanently delete the transferred data from the original cloud becomes a
primary concern of data owners.
 In short, the cloud storage service is economically attractive, but it inevitably

suffers from some serious security challenges, specifically for the secure.
 These challenges, if not solved suitably, might prevent the public from

accepting and employing cloud storage service.

1.4.1 EXISTING SYSTEM DISADVANTAGES

 Does not provide more security  Less Efficient and

practical.
 Not maintained public verifiability

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


4
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

1.5 LITERATURE SURVEY

Title: A Secure and Efficient Data Deletion Mechanism in Cloud Storage Using
Counting Bloom Filters.

Author: Zhang, Z., & Chen,

Year: 2023.

Description:

With the fast growth of cloud storage, a growing number of data owners are opting
to outsource their data to a cloud server, which may significantly reduce local
storage overhead. Because various cloud service providers provide varying levels
of data storage service, such as security, dependability, access speed, and pricing,
cloud data transfer has become a must have for data owners looking to switch
cloud service providers. As a result, data owners' major issue is how to safely
migrate data from one cloud to another while also permanently deleting the
transferred data from the original cloud. In this work, we propose a novel counting
Bloom filter-based technique to tackle this problem. Not only can the suggested
method provide safe data transport, but it can also ensure permanent data erasure.
Furthermore, the suggested system may meet public verifiability requirements
without the need of a trusted third party. Finally, we provide a simulation
implementation to illustrate our proposal's feasibility and efficiency. Cloud
computing is the fusion and evolution of parallel computing, distributed
computing, and grid computing as a new computer paradigm. Cloud storage is one
of the most appealing cloud computing services because it allows customers to
have convenient data storage and business access by connecting a large number of
dispersed storage devices in a network. Users can outsource their data to a cloud
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
5
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

server using cloud storage, which can significantly decrease local


hardware/software overhead and human resource expenses. Cloud storage has
become extensively used in everyday life and at business as a result of its
appealing benefits. As a result, a growing number of resource-constrained
customers, such as individuals and businesses, prefer to use cloud storage services.
Because of the separation of outsourced data ownership and management, cloud
storage unavoidably suffers from several additional security issues, such as data
confidentiality, data integrity, data availability, and data erasure.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


6
A Survey on Privacy-Preserving Techniques in Cloud Computing Using
Bloom Filters.

Author: Patel, M., & Thakkar.

Year: 2023

Description:

Privacy is important in applications where people place a high value on their


privacy and want to be able to control who and what knows about them. They do
not want their personal information to be made available to anyone at any time in
the future. Because they meet these requirements, Bloom filters are widely used to
solve the problem of data access while maintaining privacy in a variety of
applications. A Bloom filter is a probabilistic data structure used to represent a set
of elements in supporting membership queries with a reasonable percentage of
false positives. False positives can be controlled by the equations touched upon in
this review, which are related by taking into account the length of the bloom filter,
the number of hash functions used, and the number of elements to be added to the
Bloom filter. In this research, it has presented a review study about the Bloom filter

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


7
and how it works. The present work looks at a variety of recent reviews that use
Bloom filters to either access data or help in preserving privacy.
Optimizing Counting Bloom Filters for Secure Cloud Storage Management.

Author: Huang, L., & Zhao.

Year: 2022.

Description:

Bloom filter (BF) has been widely used to support membership query, i.e., to judge
whether a given element x is a member of a given set S or not. Recent years have
seen a flourish design explosion of BF due to its characteristic of space-efficiency
and the functionality of constant time membership query. The existing reviews or
surveys mainly focus on the applications of BF, but fall short in covering the
current trends, thereby lacking intrinsic understanding of their design philosophy.
To this end, this survey provides an overview of BF and its variants, with an
emphasis on the optimization techniques. Basically, we survey the existing variants
from two dimensions, i.e., performance and generalization. To improve the
performance, dozens of variants devote themselves to reducing the false positives

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


8
and implementation costs. Besides, tens of variants generalize the BF framework in
more scenarios by diversifying the input sets and enriching the output
functionalities. To summarize the existing efforts, we conduct an in-depth study of
the existing literature on BF optimization, covering more than 60 variants. We
unearth the design philosophy of these variants and elaborate how the employed
optimization techniques improve BF. Furthermore, comprehensive analysis and
qualitative comparison are conducted from the perspectives of BF components.
Lastly, we highlight the future trends of designing BFs.
This is, to the best of our knowledge, the first survey that accomplishes such goals.

Dynamic Data Management in Cloud Computing: An Enhanced Counting Bloom


Filter
Approach

Author: Khan, A., & Malik.

Year: 2022.

Description:

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


9
Data deduplication is a common method to improve cloud storage efficiency and
save network communication bandwidth, but it also brings a series of problems
such as privacy disclosure and dictionary attacks. This paper proposes a secure
deduplication scheme for cloud storage based on Bloom filter, and dynamically
extends the standard Bloom filter. A public dynamic Bloom filter array (PDBFA) is
constructed, which improves the efficiency of ownership proof, realizes the fast
detection of duplicate data blocks and reduces the false positive rate of the system.
In addition, in the process of file encryption and upload, the convergent key is
encrypted twice, which can effectively prevent violent dictionary attacks. The
experimental results show that the PDBFA scheme has the characteristics of low
computational overhead and low false positive
rate.
"Secure Data Transfer Protocol Using Counting Bloom Filters in Cloud
Systems.

Author: Lee, H., & Kim.

Year: 2021

Description:

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


10
Cloud computing is the fusion and evolution of parallel computing, distributed
computing, and grid computing as a new computer paradigm. Cloud storage is one
of the most appealing cloud computing services because it allows customers to
have convenient data storage and business access by connecting a large number of
dispersed storage devices in a network. Users can outsource their data to a cloud
server using cloud storage, which can significantly decrease local
hardware/software overhead and human resource expenses. Cloud storage has
become extensively used in everyday life and at business as a result of its
appealing benefits. As a result, a growing number of resource-constrained
customers, such as individuals and businesses, prefer to use cloud storage services.
Because of the separation of outsourced data ownership and management, cloud
storage unavoidably suffers from several additional security issues, such as data
confidentiality, data integrity, data availability, and data erasure. These issues,
particularly those related to data erasure, might stymie public adoption of cloud
storage if not addressed properly. Data deletion, as the last step of the data life
cycle, directly affects whether the data life cycle can be brought to a satisfactory
conclusion, which is critical for data security and privacy preservation. D

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


11
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Title: Data deduplication techniques for efficient cloud storage management: A


systematic review.

Author: R. Kaur, I. Chana and J. Bhattacharya J.

Year: 2018

Description:

The exponential growth of digital data in cloud storage systems is a critical issue
presently as a large amount of duplicate data in the storage systems exerts an extra
load on it. Deduplication is an efficient technique that has gained attention in large-
scale storage systems. Deduplication eliminates redundant data, improves storage
utilization and reduces storage cost. This paper presents a broad methodical
literature review of existing data deduplication techniques along with various
existing taxonomies of deduplication techniques that have been based on cloud
data storage. Furthermore, the paper investigates deduplication techniques based
on text and multimedia data along with their corresponding taxonomies as these
techniques have different challenges for duplicate data detection. This research
work is useful to identify deduplication techniques based on text, image and video
data. It also discusses existing challenges and significant research directions in
deduplication for future researchers, and article concludes with a summary of
valuable suggestions for future enhancements in deduplication.

1.6 PROPOSED SYSTEM

 We construct a new counting Bloom filter-based scheme in this paper.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


12
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

 The proposed scheme not only can achieve secure data transfer but also can

realize permanent data deletion.


 Additionally, the proposed scheme can satisfy the public verifiability

without requiring any trusted third party.


 We aim to achieve verifiable data transfer between two different clouds and

reliable data deletion in cloud storage.

1.6.1 PROPOSED SYSTEM ADVANTAGES

 We prove that our new proposal can satisfy the desired design goals through

security analysis.
 Our new proposal is more efficient and practical.

 We briefly introduce the system framework, security challenges and security


goals.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


13
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

CHAPTER 2

PROJECT DESCRIPTION

2.1 GENERAL

The data owner encrypts the data and outsources the ciphertext to the cloud A.
Then he checks the storage result and deletes the local backup. Later, the data
owner may change the cloud storage service provider and migrate some data from
cloud A to cloud B.

2.2 METHODOLOGIES

2.2.1 MODULES NAME:


This project having the following 4 modules:

 User Interface Design

 Data Owner

 Cloud A

 Cloud B

2.2.2 MODULES EXPLANATION AND DIAGRAM

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


14
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

 User Interface Design

To connect with server user must give their username and password then only
they can able to connect the server. If the user already exits directly can login into
the server else user must register their details such as username, password, Email
id, City and Country into the server. Database will create the account for the entire
user to maintain upload and download rate. Name will be set as user id. Logging in
is usually used to enter a specific page. It will search the query and display the
query.

User Page

User Login Server


Page

Error

Message

Database

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


15
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Data owner
This is the second module in our project where Data Owner process. Data
Owner has to register and login with valid username and password. After login
successful he can do some operations such as user details. If Data Owner what
to Upload Data click on Upload Data and storage status it shows Memory in
cloud A. Data Owner wants to view files in Cloud A click on view files. Data
Owner wants to transfer files/Delete files result click on transfer Result/Delete
result, these files from Cloud B.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


16
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Data Owner

Login Page

Data Owner Page

Upload Data Storage Status View Files Transfer or


Delete Result

Database

Cloud A

This is the third module in our project where Cloud A plays the main server part
of the project role. Enter Cloud A name and password then login to the
application. First verified in database then display home page. When Cloud A
click on View Users it shows Registered Data Owners, when Cloud A click on
Accept User Files it shows User files for Accept. If Cloud A wants to View User
files click on View User files, when click on Transfer Request from DO it
shows Transfer Request Files from Data Owner and send to Cloud B for

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


17
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

transfer the File when click on Feed Back it shows feedback Messages from
clients.

Cloud A

Login Page

Cloud A Home Page

View user & Accept View user files Transfer request Delete request
User files From DO And DO

Database

Cloud B

This is the fourth module in our project where Cloud B plays the main server
part of the project role. Enter Cloud B name and password then login to the
application. First verified in database then display home page. If Cloud B wants
to View User Files click on View User Files in Cloud B. If Cloud B wants to
Accept Transfer request, click on Transfer Request from Cloud A and accept it.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


18
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

If Cloud B wants to View Delete request, click on Delete Request from Cloud A
and accept it.

Cloud B

Login Page

Cloud B Home Page

View user Files in Transfer Request Delete Request Result


Cloud B from Cloud A from Cloud A

Database

2.2.3 GIVEN INPUT EXPECTED OUTPUT:

 User Interface Design

Input : Enter Login name and Password

Output : If valid user name and password then directly open the home page
otherwise show error message and redirect to the registration page.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


19
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

 Data Owner

Input : Data Owner Login name and Password

Output: If valid operator name and password then directly open the operator
home page otherwise show error message and if Data Owner what to Upload Data
click on Upload Data and storage status it shows Memory in cloud A.

 Cloud A

Input : Enter email and password , verify all details.

Output : Cloud A verify all data owner requests and accept DO data then data
send to DO.
Admin will verify all data status and DO feedback also.

 Cloud B

Input : Enter the name and password and stored data.

Output: If valid Cloud B name and password then directly open the Cloud B
home page. All the resources added by some options. If Cloud B wants to Accept
Transfer request, click on Transfer Request from Cloud A and accept it.

2.3TECHNIQUE USED OR ALGORITHM USED

2.3.1 PROPOSED ALGORITHM:

We propose a CBF-based secure data transfer scheme, which can also realize
verifiable data deletion. In our scheme, the cloud B can check the transferred data
integrity, which can guarantee the data is entirely migrated. Moreover, the cloud A

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


20
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

should adopt CBF to generate a deletion evidence after deletion, which will be
used to verify the deletion result by the data owner.

Counting Bloom filter (CBF) is presented As a variant of BF, CBF uses a


counter cell count to replace every “bit” position, as illustrated. As a variant of BF,
CBF uses a counter cell count to replace every “bit” position, as illustrated in Fig.2.
To insert an element y, we require to increase the k related counters by one, the
indexes of the counters are also determined by the hash values h1(y), h2(y), · · · ,
hk(y). On the contrary, the element deletion operation is simply to decrease the k

2.3.2 EXISTING SYSTEM


A Counting Bloom Filter (CBF) is an advanced data structure that enhances the
functionality of a traditional Bloom Filter by allowing dynamic addition and
deletion of elements while maintaining a compact representation of a set. Instead
of using a simple bit array, a CBF employs an array of integer counters, with
multiple hash functions mapping each element to several positions in this array.
When inserting an element, the corresponding counters are incremented, while
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
21
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

deletion involves decrementing them; if all counters for an element reach zero, it is
effectively removed from the set. This structure enables efficient membership
queries, producing false positives but no false negatives—meaning if the CBF
indicates an element is absent, it definitely is. The advantages of CBFs include
their ability to handle dynamic updates and their space efficiency, making them
suitable for memory-constrained environments. However, they can face issues like
counter overflow and increased memory usage compared to traditional Bloom
Filters. Common applications include network traffic monitoring, database
management, data deduplication, and access control in cloud systems. Effective
implementation requires careful selection of hash functions and counter sizes to
prevent overflow, while performance optimizations may be necessary based on
usage patterns. Overall, the Counting Bloom Filter is a versatile tool for managing
large sets of data, especially in cloud computing and large-scale data management
scenarios.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


22
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

CHAPTER 3

REQUIREMENTS ENGINEERING

3.1 GENERAL

The data confidentiality means that adversary cannot get any plaintext
information without the corresponding data decryption key. In our scheme, the data
owner uses IND-CPA secure AES algorithm to encrypt the file.

3.2 HARDWARE REQUIREMENTS

The hardware requirements may serve as the basis for a contract for the
implementation of the system and should therefore be a complete and consistent
specification of the whole system. They are used by software engineers as the
starting point for the system design. It shoulds what the system do and not how it
should be implemented.

HARDWARE
 PROCESSOR : PENTIUM IV 2.6 GHz, Intel Core
2 Duo.
 RAM : 512 MB DD RAM
 MONITOR : 15” COLOR
 HARD DISK : 40 GB
3.3 SOFTWARE REQUIREMENTS

The software requirements document is the specification of the system. It should


include both a definition and a specification of requirements. It is a set of what the
system should do rather than how it should do it. The software requirements
provide a basis for creating the software requirements specification. It is useful in

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


23
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

estimating cost, planning team activities, performing tasks and tracking the teams
and tracking the team’s progress throughout the development activity.

 Front End : J2EE (JSP,


SERVLET)
 Back End : MY SQL 5.5
 Operating System : Windows 7
 IDE : Eclipse

3.3.1 Features of HTML:

HTML (Hyper Text Markup Language) is the standard language used to create web
pages. It is a combination of Hypertext and Markup language, where Hypertext
defines the link between web pages, and Markup defines the text document within
tags to structure the web pages1. Here are some of the key features of HTML:

User-Friendly and Simple

HTML is easy to learn and use. It uses tags to structure the content, making it
human-readable and easy for browsers to interpret. This simplicity allows
developers to create web pages efficiently2.

Semantic Structure

HTML5 introduced semantic tags that provide meaning to the web content. Tags
like <article>, <aside>, <header>, <footer>, and <nav> help in defining the
structure of the web page, making it more accessible and SEO-friendly2.

SEO – Search Engine Optimization


DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
24
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

HTML plays a crucial role in SEO. By using appropriate tags


like <title>, <meta>, <header>, and <footer>, developers can optimize web pages
for search engines. This helps in improving the visibility and ranking of the web
pages on search engine results3.

Media Support

HTML supports the inclusion of images, videos, and audio in web pages. HTML5
introduced <video> and <audio> tags, making it easier to embed multimedia
content. This enhances the user experience by providing rich media content 2.

3.3.2 OBJECTIVE OF HTML:

 Insert a graphic within a web page.

 Create a link within a web page.

 Create a table within a web page.

 Insert heading levels within a web page.

 Insert ordered and unordered lists within a web page.

 Use cascading style sheets.

 Create a web page.

 Validate a web page.

 Publish a web page.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


25
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

3.3.4 HTML OVERVIEW:

HTML stands for Hyper Text Markup Language. It is used to structure the
content on the web by using various elements (commonly known as tags).
These HTML elements define the different sections of a web page, such as
headings, paragraphs, links to other webpages, listings, images, tables, etc.
These elements tell the browser about the content and formatting to display.

HTML is Hyper Text + Markup Language. Where,

 Hyper Text refers to the way in which Web pages (HTML documents) are
linked together. Thus, the link available on a webpage is called “ Hyper
Text".

 Markup Language, which means you use HTML to simply "mark up" a
text document with tags that tell a Web browser how to structure it to
display.

HTML page structure contains <!DOCTYPE html>, <html>,


<head>, <title>, <body>, and other tags that will be shown on
the homepage.

Where,

 <!DOCTYPE html> − It defines the document type as


HTML.
 <html> − It is a root element for an HTML document. All
elements are placed inside this element.
 <head> − The head tag may contain scripts and styles that
are useful page functionalities. Meta tags are also placed
inside this tag.
 <title> − It defines the webpage's title.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


26
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

 <body> − It defines the body of the webpage, all elements


that are used to display content on the browser placed inside
the body tag.
 <h1> and <p> − The h1 tag defines page heading, and p
tag defines paragraph.

3.3.4 Features of CSS:

CSS (Cascading Style Sheets) is a powerful language used to style and layout web
pages. It allows developers to control the appearance of HTML elements, making
websites more visually appealing and user-friendly. Here are some key features of
CSS:

Selectors and Specificity

Selectors are a core concept in CSS that allow you to target specific HTML
elements for styling. They can be based on IDs, classes, element names, and
other attributes. Understanding selector specificity is crucial for determining
which styles take precedence when multiple rules apply to the same
element2.

Cascading

The term "cascading" refers to how styles are applied in CSS. Styles can be
inherited from parent elements, and more specific rules can override these
inherited styles. This cascading effect allows for a flexible and consistent
styling system across a website

Box Model

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


27
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

The box model is a fundamental concept in CSS that describes how elements
are structured on a webpage. Each HTML element is considered a "box"
with properties such as content, padding, border, and margin. Understanding
the box model is essential for creating layouts and positioning elements on a
webpage.

Typography

CSS provides various properties to customize text on a webpage, including


font family, font size, font weight, line height, and more. These properties
help create readable and visually appealing text that enhances the overall
user experience

Colours and Backgrounds

CSS allows developers to control the colours of text, backgrounds, and


borders. It also supports advanced features like gradients, background
images, and transparency using RGBA and HSLA methods

Layout and Positioning

CSS offers properties to control the layout and positioning of elements,


including setting dimensions and controlling content flow. This helps create
responsive websites that look good on different devices and screen sizes

Transitions and Animations

CSS provides tools for adding interactivity and animation to web pages.
Properties like transition and animation allow developers to create smooth

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


28
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

transitions between states and add dynamic motion to elements, enhancing


the user experience

3.3.6 Objective of CSS:

 Styling HTML Documents: CSS is used to style HTML documents, adding


colours, spacing, and arranging the structure to create eye-catching designs 2.

 Print Friendly Styles: CSS can define how a webpage should be printed,
optimizing content for printing2.

 Cross Browser Compatibility: CSS ensures consistent visual rendering


across different web browsers2.

 Optimizing Page Load Times: CSS can reduce the amount of data needed
to be downloaded, improving page load times2.

 Enhancing SEO: Well-organized and optimized CSS can improve a


website's search engine ranking2.

 Creating Print and PDF Documents: CSS can be used to create printable
versions of web pages2.

 Animation and Transitions: CSS animations and transitions add movement


and interactivity to web elements without using JavaScript2.

 Brand Consistency: CSS ensures uniform use of branding elements like


colours, logos, and fonts across a website2.

CSS is an incredibly flexible and powerful language that gives web


developers complete control over the appearance of their pages.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


29
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Understanding its core features is essential for creating modern, user-


friendly websites

3.3.7 CSS Overview:

Cascading Style Sheets (CSS) is a stylesheet language used to describe the


presentation of a document written in HTML or XML (including XML
dialects such as SVG, MathML or XHTML). CSS describes how elements
should be rendered on screen, on paper, in speech, or on other media.

CSS is among the core languages of the open web and is standardized
across Web browsers according to W3C specifications. Previously, the
development of various parts of CSS specification was done synchronously,
which allowed the versioning of the latest recommendations. You might
have heard about CSS1, CSS2.1, or even CSS3. There will never be a CSS3
or a CSS4; rather, everything is now just "CSS" with individual CSS
modules having version numbers.

After CSS 2.1, the scope of the specification increased significantly and the
progress on different CSS modules started to differ so much, that it became
more effective to develop and release recommendations separately per
module. Instead of versioning the CSS specification, W3C now periodically
takes a snapshot of the latest stable state of the CSS specification and
individual modules progress. CSS modules now have version numbers, or
levels, such as CSS Colour Module Level 5.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


30
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

3.3.8 Features of JavaScript:

JavaScript is a versatile and widely-used programming language, especially


popular in web development. It offers numerous features that make it a powerful
tool for both client-side and server-side applications.

Lightweight Scripting Language

JavaScript is designed to be lightweight, making it ideal for client-side


execution in web applications. Its minimalist syntax and low CPU usage
contribute to its efficiency

Dynamic Typing

JavaScript supports dynamic typing, meaning the type of a variable is


determined based on the value assigned to it. This flexibility allows
developers to store different types of data in the same variable without
explicitly declaring the type1.

let x = "Hello"; // x is a string

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


31
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

x = 42; // x is now a number

Object-Oriented Programming Support

Starting from ES6, JavaScript introduced better support for object-oriented


programming (OOP) with the concept of classes. It also supports
encapsulation and inheritance, allowing for more structured and reusable
code

Functional Style

JavaScript embraces a functional programming style, allowing functions to


be treated as first-class objects. Functions can be passed as arguments,
returned from other functions, and assigned to variables1.

function greet(name) {

return `Hello, ${name}

let say Hello = greet;

console.log (say Hello("World")); // Output: Hello, World!

Platform Independent

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


32
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

JavaScript is platform-independent, meaning you can write your code once


and run it on any platform or browser without modification. This portability
makes it a versatile choice for web development1.

Prototype-Based Language

JavaScript uses prototypes instead of classes for inheritance. Objects can


inherit properties and methods from other objects, allowing for flexible and
dynamic object creation

Interpreted Language

JavaScript is an interpreted language, meaning the code is executed line by


line by the JavaScript engine in the browser. Modern JavaScript engines,
like V8 in Chrome, use just-in-time (JIT) compilation to optimize
performance

3.3.9 Objective of Java Script:

JavaScript is a versatile and powerful programming language primarily used


for creating dynamic and interactive content on websites. Here are some key
objectives of JavaScript:

Enhancing User Experience: JavaScript allows developers to create


interactive elements such as sliders, forms, and animations, making websites
more engaging and user-friendly.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


33
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Client-Side Scripting: It runs directly in the user's browser, enabling real-


time updates and interactions without needing to reload the page. This
improves performance and responsiveness.

Form Validation: JavaScript can validate user input on the client side before
sending data to the server, reducing server load and providing immediate
feedback to users.

Manipulating HTML and CSS: JavaScript can dynamically change the


content and style of web pages by manipulating the Document Object Model
(DOM), allowing for real-time updates and customization.

Asynchronous Programming: With features like AJAX and Fetch API,


JavaScript can handle asynchronous operations, such as fetching data from a
server without interrupting the user experience.

Cross-Platform Development: JavaScript is not limited to web development;


it can also be used for server-side programming (Node.js), mobile app
development (React Native), and even desktop applications (Electron).

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


34
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

By achieving these objectives, JavaScript plays a crucial role in modern web


development, enabling the creation of rich, interactive, and efficient web
applications.

3.3.10 JavaScript overview:

JavaScript is a multi-paradigm, dynamic language with types and operators,


standard built-in objects, and methods. Its syntax is based on the Java and C
languages — many structures from those languages apply to JavaScript as
well. JavaScript supports object-oriented programming with object
prototypes and classes. It also supports functional programming since
functions are first-class objects that can be easily created via expressions and
passed around like any other object.

This page serves as a quick overview of various JavaScript language


features, written for readers with background in other languages, such as C
or Java.

Data types

Let's start off by looking at the building blocks of any language: the types.
JavaScript programs manipulate values, and those values all belong to a
type. JavaScript offers seven primitive types:

 Number: used for all number values (integer and floating point) except
for very big integers.

 Big Int: used for arbitrarily large integers.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


35
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

 String: used to store text.

 Boolean: true and false — usually used for conditional logic.

 Symbol: used for creating unique identifiers that won't collide.

 Undefined: indicating that a variable has not been assigned a value.

 Null: indicating a deliberate non-value.

Everything else is known as an Object. Common object types include:

 Function

 Array

 Date

 Reg Exp

 Error

3.4 FUNCTIONAL REQUIREMENTS

A functional requirement defines a function of a software-system or its


component. A function is described as a set of inputs, the behaviour, and outputs.
The outsourced computation is data is more secured.

Data Owner
1. Upload Data

2. Storage Status

3. View Files
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
36
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4. Transfer Result/Delete Result

5. Logout
Cloud A
1. View Users

2. Accept User Files

3. View User Files

4. Transfer Request From DO

5. Delete Request From DO

6. Feed Back

7. Logout
Cloud B
1. View User Files in Cloud B

2. Transfer Request from Cloud A

3. Delete Request from Cloud A

4. Logout

3.5 NON-FUNCTIONAL REQUIREMENTS

The major non-functional Requirements of the system are as follows

 Usability

The system is designed with completely automated process hence there is no or


less user intervention.

 Reliability

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


37
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

The system is more reliable because of the qualities that are inherited from the
chosen platform java. The code built by using java is more reliable.

 Performance

This system is developing in the high level languages and using the advanced
front-end and back-end technologies it will give response to the end user on client
system with in very less time.

 Supportability

The system is designed to be the cross platform supportable. The system is


supported on a wide range of hardware and any software platform, which is having
JVM, built into the system.

 Implementation

The system is implemented in web environment using struts framework. The


apache tomcat is used as the web server and windows professional is used as the
platform. Interface the user interface is based on Struts provides HTML Tag

3.6 Domain requirements

Domain requirements are specific to the domain or industry in which the


software operates. They include terminology, rules, and standards relevant to
that particular domain. These requirements ensure that the software is
relevant and compliant with industry-specific regulations and standards1.

Examples of Domain Requirements

1. Healthcare: The software must comply with HIPAA regulations for


handling patient data.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


38
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

2. Finance: The system should adhere to GAAP standards for financial


reporting.

3. E-commerce: The software should support various payment gateways


like PayPal, Stripe, and credit cards1.

CHAPTER 4

DESIGN ENGINEERING

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


39
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.1 GENERAL

Design Engineering deals with the various UML [Unified Modelling


language] diagrams for the implementation of project. Design is a meaningful
engineering representation of a thing that is to be built. Software design is a
process through which the requirements are translated into representation of the
software. Design is the place where quality is rendered in software engineering.
Design is the means to accurately translate customer requirements into finished
product.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


40
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.2 System Architecture

Our scheme, we
aim to achieve verifiable data transfer between two different clouds and reliable
data deletion in cloud storage. Hence, three entities are included in our new
construction, as shown in Fig.3. In our scenario, the resource-constraint data owner
might outsource his largescale data to the cloud server A to greatly reduce the local
storage overhead. Besides, the data owner might require the cloud A to move some
data to the cloud B, or delete some data from the storage medium. The cloud A and
cloud B provide the data owner with cloud storage service. We assume that the
cloud A is the original cloud, which will be required to migrate some data to the
target cloud B, and remove the transferred data. However, the cloud A might not
execute these operations sincerely for economic reasons.

Moreover, we assume that the cloud A and cloud B will not collude together
to mislead the data owner because they belong to two different companies. Hence,
the two clouds will independently follow the protocol. Furthermore, we assume
that the target cloud B will not maliciously slander the original cloud A.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


41
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3 UML
The UML stands for Unified modelling language, is a standardized general-
purpose visual modelling language in the field of Software Engineering. It is used
for specifying, visualizing, constructing, and documenting the primary artifacts of
the software system. It helps in designing and characterizing, especially those
software systems that incorporate the concept of Object orientation. It describes the
working of both the software and hardware systems.
The UML was developed in 1994-95 by Grady Booch, Ivar Jacobson, and James
Rumbaugh at the Rational Software. In 1997, it got adopted as a standard by the
Object Management Group (OMG).

4.3.1 USE CASE DIAGRAM

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


42
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

EXPLANATION:

The main purpose of a use case diagram is to show what system functions are
performed for which actor. Roles of the actors in the system can be depicted. The
above diagram consists of user as actor. Each will play a certain role to achieve the
concept. This use case diagram illustrates the interactions between the user and the
system, outlining the primary functionalities needed for secure cloud data transfer
and deletion. If you need help creating an actual diagram

4.3.2 Class Diagram

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


43
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

EXPLANATION

In this class diagram represents how the classes with


attributes and methods are linked together to
perform the verification. The relationships among these
classes include associations where the User class has a one-to-many
relationship with the File class (a user can have multiple files), and
the Transfer Manager class interacts with both the File and Cloud
Service Provider classes to facilitate the transfer
process. This structure encapsulates the core
functionalities needed for the secure migration and
deletion of data in the cloud.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


44
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3.3 Object Diagram

Cloud A : Cloud A Register : Register

Database : Database

Login : Login DataOwner : DataOwner

Cloud B : Cloud B

EXPLANATION:

In the above diagram tells about the flow of objects between the classes. It is a
diagram that shows a complete or partial view of the structure of a modelled
system. In this object diagram represents how the classes with attributes and
methods are linked together to perform the verification with security. This object
diagram encapsulates the relationships and states of the objects involved in the
cloud data management process, illustrating how users interact with files and cloud
services during transfers.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


45
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3.4 State Chart Diagram

Register / Login

Cloud B
Data Owner Cloud A

View Users View User Files in Cloud B


Upload Data

Transfer Request From Cloud


Storage Status Accept User Files

Delete Request From Cloud


Transfer Result/Delete View User Files

View Files Transfer/Delete Request From DO Result

Database

EXPLANATION:

State diagram are a loosely defined diagram to show workflows of stepwise


activities and actions, with support for choice, iteration and concurrency. This state
diagram effectively captures the lifecycle of a file in the cloud data transfer
process, detailing how it transitions through different states based on user
interactions and system operations. It helps in understanding the workflow and
ensuring that each state is managed correctly throughout the process.
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
46
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3.5 Sequence Diagram

Data Owner Login Home Files Transfer Logout

1 : login ()
2 : verification ()

3 : if fail ()
4 : if success ()

5 : upload file ()

6 : success ()

7 : file storage ()

8 : view files ()
9 : Transfer file ()

10 : success ()
11 : Delete request ()

12 : success ()

13 : Transfer or delete result ()

14 : logout request ()

15 : loggedout ()

EXPLANATION:

A sequence diagram in Unified Modelling 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. A sequence diagram shows

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


47
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

object interactions arranged in time sequence. It depicts the objects and classes
involved in the scenario and the sequence of messages exchanged between the
objects needed to carry out the functionality of the scenario.

This sequence diagram captures the step-by-step interactions, showcasing the flow
of messages and actions taken by each participant throughout the file transfer
lifecycle.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


48
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3.6 Collaboration Diagram

Logout Transfer

11 : logout request
() 10 : Transfer or delete ()
result 9 : Delete request
()
12 : loggedout
()

() Home
4 : if success
2: () 6 : file storage
()
verification
Login
8 : Transfer ()
file
5 : upload file
()

7 : view ()
1: () files
login

Files
3 : if ()
fail

Data Owner

EXPLANATION:
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
49
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

A collaboration diagram, also called a communication diagram or interaction


diagram, is an illustration of the relationships and interactions among software
objects in the Unified Modelling Language (UML). At the Center the User object
interacts with the File Upload Servlet to initiate the file upload. Upon receiving the
upload request, the servlet creates an instance of the File object, which stores
relevant attributes like file name and size, transitioning its state to Uploaded.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


50
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3.7 Activity Diagram

Data Owner

Login

No

yes
Home

Data Storage Logout

Upload Data View Data Transfer Data Delete Data

EXPLANATION:

Activity diagrams are graphical representations of workflows of stepwise


activities and actions with support for choice, iteration and concurrency. This
activity diagram visually represents the flow of actions and decisions, highlighting
the key steps involved in securely transferring a file from one cloud provider to
another while ensuring the original file is permanently deleted. It effectively
captures the user interactions and system processes necessary for managing cloud
data.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


51
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3.8 Component Diagram

Cloud Trasnsf Cloud


A er B

Secure Data Transfer and Deletion from Counting Bloom Filter


in Cloud Computing

Data
Owner Fil Dele
es te

EXPLANATION:

In the Unified Modelling Language, a component diagram depicts how


components are wired together to form larger components and or software systems.
They are used to illustrate the structure of arbitrarily complex systems. User gives
main query and it converted into sub queries and sends through data dissemination
to data aggregators. Results are to be showed to user by data aggregators. All boxes
are components and arrow indicates dependencies.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


52
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.3.9 Deployment Diagram:

Cloud A Login Register

Database

Cloud B Data
Owner

EXPLANATION:

They are used to illustrate the structure of arbitrarily complex systems. User gives
m ain query and it converted into sub queries and sends through data
dissemination. Results are to be showed to user by data aggregators. All boxes are
arrow indicates dependencies.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


53
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.4 E-R Diagram:

DO
Cloud A, B

UID Email
Register
PWD
Login
PWD
Login

View Request
Data
Details Upload Files

Name
Verify Transfer
Send
Result/Delete
Requirements
Result

Request &
Response
Database

EXPLANATION:

Entity-Relationship Model (ERM) is an abstract and conceptual representation of


data. Entity relationship modelling is a database modelling method, used to
produce a type of conceptual schema or semantic data model of a system, often a
relational database. The process begins when the user decides to manage their Files

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


54
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

The user logs into their account, verifying their Identity.The user chooses a file
from their local system to upload.The application processes the upload request,
saving the file details in the database and updating the file status to Uploaded.

4.5 Data Flow Diagram:

Level 0:

User Page

User Login Server


Page
Error
Message

Database

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


55
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Level 1:
Cloud A

Login Page

Cloud A Home Page

View Users & Accept View User Files Transfer request Delete request
Users Files from DO and DO

Database

EXPLANATION:

A data flow diagram (DFD) is a graphical representation of the "flow" of


data through an information system, modelling its process aspects. Often they are a
preliminary step used to create an overview of the system which can later be
elaborated. DFDs can also be used for the visualization of data processing
(structured design).

A DFD shows what kinds of data will be input to and output from the
system, where the data will come from and go to, and where the data will be stored.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


56
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

It does not show information about the timing of processes, or information about
whether processes will operate in sequence or in parallel.

4.6 GUI DIAGRAM

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


57
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

4.6.1 COMPONENTS OF GUI

A Graphical User Interface (GUI) is a system of interactive visual


components for computer software. It allows users to interact with electronic
devices through graphical elements such as icons, buttons, and windows,
rather than text-based commands1. This makes it easier for people with
limited computer skills to use software applications.

Key Components of GUI

Pointers

Pointers are symbols that appear on the screen and move according to the
user's input from a pointing device like a mouse or touchpad. They are used
to select and interact with various elements on the screen.

Icons

Icons are small visual representations of files, programs, or commands. They


provide a quick way to execute commands, open documents, and run
programs. Icons help users easily identify and access different functionalities

Windows

A window is an area on the screen that displays information independently


from the rest of the screen. Users can manipulate windows by resizing,
moving, minimizing, or maximizing them. Windows can contain other
elements like text, images, or controls

Menus

Menus allow users to execute commands by selecting from a list of options.


They can be displayed horizontally across the top of the screen (menu bar)
or appear when a specific action is performed (context menu). Menus help
users navigate and access different features of the software

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


58
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Controls (Widgets)

Controls, also known as widgets, are interactive elements that allow users to
input or manipulate data. Common controls include buttons, checkboxes,
radio buttons, sliders, and text fields. They provide a consistent way for
users to interact with the software2.

Tabs

Tabs are rectangular boxes that contain text labels or icons associated with
different views or sections. They allow users to switch between different
views or functionalities within the same window. Tabs are commonly used in
web browsers and settings panes

Cursors

Cursors indicate the position on the screen that will respond to input from a
text input or pointing device. They help users know where their actions will
take effect

Selection

Selection allows users to choose one or more items from a list or area. It is
often used in conjunction with other controls to perform actions on the
selected items

4.6.2 FEATURES OF GUI

A GUI, or Graphical User Interface, transforms your interaction with digital


devices into a more intuitive, visually appealing experience. It does this
through various features, including:

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


59
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

1. Windows: These are the movable boxes on your screen that can contain
different content and applications.

2. Icons: These small pictorial representations make it easy to identify and


access different files, folders, and applications.

3. Menus: Providing a list of options or commands to help you navigate


through software functions.

4. Buttons: Clickable elements that perform a specific function when


pressed.

5. Toolbars: These usually contain buttons, icons, and menus for quick
access to functions.

6. Dialog Boxes: Small windows that prompt users to make decisions or


enter information.

7. Text Boxes: Fields where you can input text.

8. Scrollbars: Allow you to move the content in windows up, down, or


sideways.

9. Pointers and Cursor: Visual indicators that show your position on the
screen, often changing shape to indicate different functions.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


60
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

CHAPTER 5
IMPLEMENTATION

5.1 GENERAL

The Implementation is nothing but sores code of project.

5.2 IMPLEMENTATION Coding:

Login.jsp
<!DOCTYPE html>
<html lang="en">
<head>
<title>Login</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,
initial-scale=1, shrink-tofit=no">

<link rel="stylesheet" href="css/font-


awesome.min.css">
<link rel="stylesheet" href="css/fontFamily.css">
<link rel="stylesheet" href="css/fontFamily-1.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet"
href="css/owl.carousel.min.css">
<link rel="stylesheet"
href="css/owl.theme.default.min.css">
<link rel="stylesheet" href="css/magnific-
popup.css">
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
61
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

<link rel="stylesheet" href="css/flaticon.css">


<link rel="stylesheet" href="css/style.css">
</head>
<body>

<div id="colorlib-page">
<a href="#" class="js-colorlib-nav-toggle
colorlib-nav-
toggle"><i></i></a>
<jsp:include page="Menu.jsp"></jsp:include>
<!-- END COLORLIB-ASIDE -->
<div id="colorlib-main" style="margin-top: 5%;margin-
left: 10%;">
<section class="ftco-section ftco-no-
pt ftco-no-pb">
<div class="container px-md-0">
<div class="row d-flex no-
gutters">
<div class="col-lg-8 col-md-7 order-md-
last d-flex align-items-stretch">
<div class="contact-wrap w-100
p-md-5 p-4">
<h3 class="mb-4
heading">Login</h3>
<form method="POST"
action="./LoginServlet" id="contactForm"
name="contactForm" class="contactForm">
<div class="row">
<div
class="col-md-12">
<div class="form-group">

<label class="label" for="email">Email


Address</label>

<input type="email" class="form-control"


name="email" id="email" placeholder="Email">
</div>
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
62
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

</div>
<div
class="col-md-12">
<div class="form-group">

<label class="label" for="email">Password</label>


<input type="password" class="form-control"
name="password" id="password" placeholder="Password"
required="">
</div>
</div>

<div
class="col-md-12">
<div class="form-group">

<input type="submit" value="Login" class="btn btn-


primary">
<%String status =

request.getParameter("statu

s"); if(status!=null) {%>

<h2><%out.print(status); %></h2>

<%}

%>

<%String s = request.getParameter("s");

if(s!

=null)

{%>

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


63
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

<h3><font color="green"><%out.print(s);
%></font></h3>

<%}

%>
</div>

</div>
</div>
</form>
</div>
</div>

</div>
</div>
</section>
</div><!-- END COLORLIB-MAIN -->
</div><!-- END COLORLIB-PAGE -->

<!-- loader -->

<script src="js/jquery.min.js"></script>
<script src="js/jquery-migrate-
3.0.1.min.js"></script>
<script src="js/popper.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.easing.1.3.js"></script>
<script
src="js/jquery.waypoints.min.js"></script>
<script
src="js/jquery.stellar.min.js"></script>
<script src="js/owl.carousel.min.js"></script>
<script src="js/jquery.magnific-
popup.min.js"></script>
<script
src="js/jquery.animateNumber.min.js"></script>
<script src="js/scrollax.min.js"></script>
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
64
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

<script
src="https://maps.googleapis.com/maps/api/js?
key=AIzaSyBVWaKrjvy3MaE7SQ74_uJiULgl1JY0
H2s&sensor=false"></script>
<script src="js/google-map.js"></script>
<script src="js/main.js"></script>
</body>
</html>
RegisterServlet.java

package servlet; import

java.io.IOException; import

javax.servlet.ServletException; import

javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import

javax.servlet.http.HttpServletRequest;

import

javax.servlet.http.HttpServletResponse;

import dao.SecurityDAO; import

util.Bean;

@WebServlet("/RegisterServlet") public

class RegisterServlet extends HttpServlet

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


65
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

protected void doPost(HttpServletRequest request, HttpServletResponse


response)
throws ServletException, IOException {

String target="";

Bean b = new

Bean();

b.setName(request.getParameter("name"));

b.setPassword(request.getParameter("password"));

b.setEmail(request.getParameter("email"));

b.setMobile(request.getParameter("mobile"));

b.setDob(request.getParameter("dob"));

b.setAddress(request.getParameter("address"));

try { int i = new

SecurityDAO().reg(b); if(i!

=0)

target="register.jsp?status=Registration Successfull";

else

{ target="register.jsp?status=Not

Successfull";

}catch (Exception e) {
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
66
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

e.printStackTrace(); target="register.jsp?

status=Check Console Error";

response.sendRedirect(tar

get);

TransferFileServlet_DataOwner.java

package servlet;

import java.io.IOException; import

javax.servlet.ServletException; import

javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import

javax.servlet.http.HttpServletRequest;

import

javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

import dao.SecurityDAO;

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


67
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

@WebServlet("/TransferFileServlet_DataOwner") public

class TransferFileServlet_DataOwner extends

HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse

response) throws ServletException, IOException { String t = ""; int fid

=Integer.parseInt(request.getParameter("fid")); HttpSession ses =

request.getSession(); int uid = (Integer)ses.getAttribute("uid");

if(fid!=0)

try { int i = new

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


68
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

CHAPTER 6

SNAPSHOTS

6.1 GENERAL

This project is implements like web application using COREJAVA and the
Server process is maintained using the SOCKET & SERVERSOCKET and the
Design part is played by Cascading Style Sheet.

6.2 VARIOUS SNAPSHOTS

Fig 6.1: User login page

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


69
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Fig 6.2: User Registration page

Fig:6.3: Admin Login Interface

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


70
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Fig:6.4: User 1 Page Interface

Fig:6.5:User 1 data Upload file

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


71
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Fig:6.6: User1 Data uploaded successful

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


72
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Fig:6.7 Chose file to upload from Cloud A

Fig: 6.8: Storage status of Cloud A

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


73
SECURE DATA TRANSFER AND DELETION FROM BLOOM FILTER

Fig:6.9: File Status of Cloud A

Fig:6.10: Data Files Successfully Updated

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


74
CHAPTER 7

SOFTWARE TESTING

7.1 GENERAL
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. It provides a
way to check the functionality of components, sub assemblies, assemblies and/or a
finished product It is the process of exercising software with the intent of ensuring
that the Software system meets its requirements and user expectations and does not
fail in an unacceptable manner. There are various types of test. Each test type
addresses a specific testing requirement.

7.2 DEVELOPING METHODOLOGIES


The test process is initiated by developing a comprehensive plan to test the
general functionality and special features on a variety of platform combinations.
Strict quality control procedures are used. The process verifies that the application
meets the requirements specified in the system requirements document and is bug
free. The following are the considerations used to develop the framework from
developing the testing methodologies.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


75
7.3 Test Strategy

The Test strategy document is a high-level document that outlines the testing
technique used in the Software Development Life Cycle and confirms the test
kinds or levels that will be performed on the product. One can’t change the test
strategy once it’s been written, and it’s been accepted by the Project Manager and
development team.

7.3.1 Levels of Testing

Testing involves the design of test cases that validate that the internal program
logic is functioning properly, and that program input produce valid outputs. All
decision branches and internal code flow should be validated. It is the testing of
individual software units of the application .it is done after the completion of an
individual unit before integration. This is a structural testing, that relies on
knowledge of its construction and is invasive. Unit tests perform basic tests at
component level and test a specific business process, application, and/or system
configuration. Unit tests ensure that each unique path of a business process
performs accurately to the documented specifications and contains clearly defined
inputs and expected results.
7.3.2 Types of Testing
Active Testing
Type of testing consisting in introducing test data and analyzing the execution
results. It is usually conducted by the testing team.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


76
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.

7.3.3 Test Case Type-GUI


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.

7.3.4 Test Design Techniques


The Performance test ensures that the output be produced within the time limits,
and the time taken by the system for compiling, giving response to the users and
request being send to the system for to retrieve the results.

Any project can be divided into units that can be further performed for detailed
processing. Then a testing strategy for each of this unit is carried out. Unit testing
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)
77
helps to identity the possible bugs in the individual component, so the component
that has bugs can be identified and can be rectified from errors.

7.3.5 Test Environment


Software integration testing is the incremental integration testing of two or more
integrated software components on a single platform to produce failures caused by
interface defects. The task of the integration test is to check that components or
software applications, e.g. components in a software system or – one step up –
software applications at the company level – interact without error.

7.4 Acceptance Criteria

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.

Acceptance testing for Data Synchronization:


 The Acknowledgements will be received by the Sender Node after the

Packets are received by the Destination Node


 The Route add operation is done only when there is a Route request in need

 The Status of Nodes information is done automatically in the Cache Update


process

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


78
CHAPTER 8

CONCLUSION & REFERENCE

8.1 CONCLUSION

In cloud storage, the data owner does not believe that the cloud server might
execute the data transfer and deletion operations honestly. To solve this problem,
we propose a CBF-based secure data transfer scheme, which can also realize
verifiable data deletion. In our scheme, the cloud B can check the transferred data
integrity, which can guarantee the data is entirely migrated. Moreover, the cloud A
should adopt CBF to generate a deletion evidence after deletion, which will be
used to verify the deletion result by the data owner. Hence, the cloud A cannot
behave maliciously and cheat the data owner successfully. Finally, the security
analysis and simulation results validate the security and practicability of our
proposal, respectively.

8.2 FUTURE ENHANCEMENT

Future work Similar to all the existing solutions, our scheme considers the data
transfer between two different cloud servers. However, with the development of
cloud storage, the data owner might want to simultaneously migrate the outsourced
data from one cloud to the other two or more target clouds. However, the multi-
target clouds might collude together to cheat the data owner maliciously. Hence,
the provable data migration among three or more clouds requires our further
exploration.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


79
8.3 REFERENCE

[1] C. Yang and J. Ye, “Secure and efficient fine-grained data access control
scheme in cloud computing”, Journal of High Speed Networks, Vol.21, No.4,
pp.259–271, 2015.

[2] X. Chen, J. Li, J. Ma, et al., “New algorithms for secure outsourcing of
modular exponentiations”, IEEE Transactions on Parallel and Distributed Systems,
Vol.25, No.9, pp.2386–2396, 2014.

[3] P. Li, J. Li, Z. Huang, et al., “Privacy-preserving outsourced classification in


cloud computing”, Cluster Computing, Vol.21, No.1, pp.277–286, 2018.

[4] B. Varghese and R. Buyya, “Next generation cloud computing: New trends
and research directions”, Future Generation Computer Systems, Vol.79, pp.849–
861, 2018.

[5] W. Shen, J. Qin, J. Yu, et al., “Enabling identity-based integrity auditing and
data sharing with sensitive information hiding for secure cloud storage”, IEEE
Transactions on Information Forensics and Security, Vol.14, No.2, pp.331–346,
2019.

[6] R. Kaur, I. Chana and J. Bhattacharya J, “Data deduplication techniques for


efficient cloud storage management: A systematic review”, The Journal of
Supercomputing, Vol.74, No.5, pp.2035–2085, 2018.

[7] Cisco, “Cisco global cloud index: Forecast and methodology, 2014–2019”,
available at: https://www.cisco.com/c/en/us- /solutions/collateral/service-
provider/global-cloud-index-gci/white-paperc11-738085.pdf, 2019-5-5.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


80
[8] Cloudsfer, “Migrate & backup your files from any cloud to any cloud”,
available at: https://www.cloudsfer.com/, 2019-5-5.

[9] Y. Liu, S. Xiao, H. Wang, et al., “New provable data transfer from provable
data possession and deletion for secure cloud storage”, International Journal of
Distributed Sensor Networks, Vol.15, No.4, pp.1–12, 2019.

[10] Y. Wang, X. Tao, J. Ni, et al., “Data integrity checking with reliable data
transfer for secure cloud storage”, International Journal of Web and Grid Services,
Vol.14, No.1, pp.106–121, 2018.

[11] Y. Luo, M. Xu, S. Fu, et al., “Enabling assured deletion in the cloud storage
by overwriting”, Proc. of the 4th ACM International Workshop on Security in
Cloud Computing, Xi’an, China, pp.17–23, 2016. [12] C. Yang and X. Tao, “New
publicly verifiable cloud data deletion scheme with efficient tracking”,

Proc. of the 2th International Conference on Security with Intelligent Computing


and Big-data Services, Guilin, China, pp.359–372, 2018.

[13] Y. Tang, P.P Lee, J.C. Lui, et al., “Secure overlay cloud storage with access
control and assured deletion”, IEEE Transactions on Dependable and Secure
Computing, Vol.9, No.6, pp.903–916, 2012.

[14] Y. Tang, P.P.C. Lee, J.C.S. Lui, et al., “FADE: Secure overlay cloud storage
with file assured deletion”, Proc. Of the 6th International Conference on
Security and Privacy in Communication Systems, Springer, pp.380-397, 2010.

[15] Z. Mo, Y. Qiao and S. Chen, “Two-party fine-grained assured deletion of


outsourced data in cloud systems”, Proc. of the 34th International Conference
on Distributed Computing Systems, Madrid, Spain, pp.308–317, 2014.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


81
[16] M. Paul and A. Saxena, “Proof of eras ability for ensuring comprehensive data
deletion in cloud computing”, Proc. of the International Conference on
Network Security and Applications, Chennai, India, pp.340–348, 2010.

[17] A. Rahumed, H.C.H. Chen, Y. Tang, et al., “A secure cloud backup system
with assured deletion and version control”, Proc. of the 40th International
Conference on Parallel Processing Workshops, Taipei City, Taiwan, pp.160–
167, 2011.

[18] B. Hall and M. Govindarasu, “An assured deletion technique for cloud-based
IoT”, Proc. of the 27th International Conference on Computer Communication
and Networks, Hangzhou, China, pp.1–8, 2018.

[19] L. Xue, Y. Yu, Y. Li, et al., “Efficient attribute based encryption with attribute
revocation for assured data deletion”, Information Sciences, Vol.479, pp.640–
650, 2019.

[20] L. Du, Z. Zhang, S. Tan, et al., “An Associated Deletion Scheme for Multi-
copy in Cloud Storage”,
Proc. of the 18th International Conference on Algorithms and Architectures for
Parallel Processing, Guangzhou, China, pp.511–526, 2018.

[21] C. Yang, X. Chen and Y. Xiang, “Blockchain-based publicly verifiable data


deletion scheme for cloud storage”, Journal of Network and Computer
Applications, Vol.103, pp.185–193, 2018.

[22] Y. Yu, J. Ni, W. Wu, et al., “Provable data possession supporting secure data
transfer for cloud storage”, Proc. Of 2015 10th International Conference on
Broadband and Wireless Computing, Communication and
Applications(BWCCA 2015), Krakow, Poland, pp.38–42, 2015.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


82
[23] J. Ni, X. Lin, K. Zhang, et al., “Secure outsourced data transfer with integrity
verification in cloud storage”, Proc. of 2016 IEEE/CIC International
Conference on Communications in China, Chengdu, China, pp.1–6, 2016.

[24] L. Xue, J. Ni, Y. Li, et al., “Provable data transfer from provable data
possession and deletion in cloud storage”, Computer Standards & Interfaces,
Vol.54, pp.46–54, 2017.

[25] Y. Liu, X. Wang, Y. Cao, et al., “Improved provable data transfer from
provable data possession and deletion in cloud storage”, Proc. of Conference
on Intelligent Networking and Collaborative Systems, Bratislava, Slovakia,
pp.445–452, 2018.

[26] C. Yang, J. Wang, X. Tao, et al., “Publicly verifiable data transfer and deletion
scheme for cloud storage”, Proc. of the 20th International Conference on
Information and Communications Security (ICICS 2018 ), Lille, France,
pp.445–458, 2018.

[27] B.H. Bloom, “Space/time trade-offs in hash coding with allowable errors”,
Communications of the ACM, Vol.13, No.7, pp.422–426, 1970.

[28] A. Broder and M. Mitzenmacher, “Network applications of bloom filters: A


survey”, Internet Mathematics, Vol.1, No.4, pp.485–509, 2004.

[29] J. Wang, X. Chen, X. Huang, et al., “Verifiable auditing for outsourced


database in cloud computing”, IEEE transactions on computers, Vol.64, No.11,
pp.3293–3303, 2015

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


83
[30] L. Fan, P. Cao, J. Almeida, et al., “Summary cache: A scalable wide-area web
cache sharing protocol”, IEEE/ACM Transactions on Networking, Vol.8, No.3,
pp.281–293, 2000.

[31] O. Rottenstreich, Y. Kanizo and I. Keslassy, “The variable increment counting


Bloom filter”, IEEE/ACM Transactions on Networking, Vol.22, No.4,
pp.1092–1105, 2014.

[32] F. Hao, D. Clarke and A. F. Zorzo, “Deleting secret data with public
verifiability”, IEEE
Transactions on Dependable and Secure Computing, Vol.13, No.6, pp.617–629,
2015

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING (SCET)


84

You might also like