Professional Documents
Culture Documents
File Integrity Checking and Monitoring in Cloud Final Report
File Integrity Checking and Monitoring in Cloud Final Report
File Integrity Checking and Monitoring in Cloud Final Report
IN CLOUD
A PROJECT REPORT
Submitted by
SIVAPRAKASH S (822219104035)
VISWESWARAN R (822219104039)
BACHELOR OF ENGINEERING
IN
APRIL/MAY 2023
ANNA UNIVERSITY: CHENNAI – 600 025
BONAFIDE CERTIFICATE
SIGNATURE SIGNATURE
ii
ACKNOWLEDGEMENT
We would like our gratitude towards all the people who have imparted
their valued time and efforts to help us in completing this project. With Out
whom it would not have been possible for us understand and examine the
project.
First of all, we express our sincere gratitude to our dear parents who
have been the major contributor of inspiration and encouragement to us
throughout our career. We express our heartfelt thanks to our honourable Dean.
Dr. G. ELANGOVAN, M.E., Ph.D., for allowing as to do this project.
We express our sincere thanks to Head of the Department Dr. K. L.
NEELA, M.E., Ph.D., for providing the necessary support in all means in
carry out this project.
We express our deep sense of reverence and offer our thanks with
profound gratitude to our project guide Dr. K. L. NEELA, M.E., Ph.D., for
motivation and encourage infused in us. Her readiness and eagerness for
consolation at all times, him educative inputs, concern and assistance have
been invaluable.
We express our sincere thanks to the project committee co-ordinator
Mr. S. MADHAN, B.E., M.Tech., Department of Computer Science and
Engineering, University College of Engineering, Thirukkuvalai, for their
invaluable guidance and technical Support. We thank all the faculty members
of the Department of Computer Science and Engineering for their valuable
help and guidance.
Finally, we thank god almighty for his blessing without which we would
have not the project and made this project success.
PROJECT TEAM
SIVAPRAKASH S (822219104035)
VISWESWARAN R (822219104039)
iii
ABSTRACT
iv
TABLE OF CONTENTS
v
2.8 Blockchain-based public auditing for big data in
cloud storage 18
2.9 A privacy-preserving and untraceable group data
sharing scheme in cloud computing 19
2.10 Privacy preserving cloud data auditing with
efficient key update 20
3 SYSTEM ANALYSIS 21
3.1 EXISTING SYSTEM 21
3.1.1 DISADVANTAGE 21
3.2 PROPOSED METHOD 22
3.2.1 ADVANTAGE 23
3.3 ALGORITHM 23
3.3.1 BLOCKCHAIN TECHNOLOGY 23
3.3.2 HASHING 25
3.3.3 BLOCKCHAIN HASH GENERATION 27
3.3.4 FEATURES OF BLOCKCHAIN
TECHNOLOGY 28
4 IMPLEMENTATION 31
4.1 MODULE LIST 31
4.2 MODULE DESCRIPTION 31
5 SYSTEM SPECIFICATION 34
5.1 HARDARE REQUIREMENTS 34
5.2 SOFTWARE REQUIREMENTS 34
5.3 SOFTWARE DESCRIPTION 34
5.3.1 FRONT END SOFTWARE 34
5.3.2 SQL SERVER 8.0 43
6 SYSTEM DESIGN 52
6.1 UML DIAGRAMS 52
vi
6.2 USE CASE DIAGRAM 54
6.3 CLASS DIAGRAM 55
6.4 SEQUENCE DIAGRAM 56
6.5 ACTIVITY DIAGRAM 57
6.6 DATA FLOW DIAGRAM 58
7 SYSTEM TESTING 61
7.1 TYPES OF TESTING 61
7.2 UNIT TESTING 64
7.3 INTEGRATION TESTING 65
7.4 ACCEPTANCE TESTING 65
8 SNAPSHOTS 66
9 APPENDIX 69
10 CONCLUSION 73
11 REFERENCES 74
vii
LIST OF FIGURES
FIGURE PAGE
TITLE
NO. NO.
1.1 Cloud Security 5
3.1 Architecture Diagram 23
3.2 Block Creation 25
3.2 Block Creation with Hash Link 27
6.1 Usecase Diagram 55
6.2 Class Diagram 56
6.3 Sequence Diagram 57
6.4 Activity Diagram 58
6.5 Data Flow level 0 59
6.6 Data Flow level 1 60
6.7 Data Flow level 2 60
6.8 Data Flow level 3 61
6.9 Data Flow level 4 61
8.1 Home Page 67
8.2 Owner Login 67
8.3 Owner Registration 68
8.4 Owner File Uploading 68
8.5 TPA approval 69
8.6 User Accessing the File 69
viii
LIST OF ABBREVIATIONS
ix
CHAPTER 1
INTRODUCTION
1.1 CLOUD COMPUTING
Cloud computing is consistently growing and there are many main cloud
computing providers including Amazon, Google, Microsoft, Yahoo and many
others who are offering solutions including Software-as-a-Service (SaaS),
Platform-as-a-Service (PaaS), Storage-as-a- Service and Infrastructure-as-a-
Service (IaaS). In addition, considering the possibility to substantially
minimizing expenses by optimization and also maximizing operating as well as
economic effectiveness, cloud computing is an excellent technology.
Furthermore, cloud computing can tremendously boost its cooperation, speed,
and also range, thus empowering a totally worldwide computing model on the
internet infrastructure. On top of that, the cloud computing has advantages in
delivering additional scalable, fault tolerant services.
1
allows the user to effectively use more` dynamic resources because they no
longer need to concern themselves with storage and cost that accompany new
and old resources.
Cloud computing service models are all inside in the cloud sing and
laptops, desktops, phones and tablets are acts like clients to get services from
the cloud. Servers provide services to clients according to their request or pay
base. Cloud computing provides a shared pool of configurable IT resources on
demand, in which needs minimal effort of management to get better services.
Services are based on various agreement SLA (Service Level Agreement)
between service providers and consumers.
The following are some of the notable challenges associated with cloud
computing, and although some of these may cause a slowdown when
delivering more services in the cloud, most also can provide opportunities, if
resolved with due care and attention in the planning stages.
2
Lack of Standards:
Continuously Evolving:
Compliance Concerns:
The inherent issues of data security, governance, and management with respect
to control in the cloud computing are discussed. The key security, privacy, and
trust issues in the existing environment of cloud computing and help users to
recognize the tangible and intangible threats related to its use. According to the
authors, there are three major potential threats in cloud computing,
namely, security, privacy, and trust. Security plays a critical role in the current
era of long dreamed vision of computing as a utility. It can be divided into four
subcategories: safety mechanisms, cloud server monitoring or tracing, data
confidentiality, and avoiding malicious insiders' illegal operations and service
hijacking.
4
Fig 1.1 Cloud Security
Data Integrity
5
Data Confidentiality
Data confidentiality is important for users to store their private or
confidential data in the cloud. Authentication and access control strategies are
used to ensure data confidentiality. The data confidentiality, authentication,
and access control issues in cloud computing could be addressed by increasing
the cloud reliability and trustworthiness.
Because the users do not trust the cloud providers and cloud storage
service providers are virtually impossible to eliminate potential insider threat,
it is very dangerous for users to store their sensitive data in cloud storage
directly. Simple encryption is faced with the key management problem and
cannot support complex requirements such as query, parallel modification, and
fine-grained authorization.
Data Availability
Data availability means the following: when accidents such as hard disk
damage, IDC fire, and network failures occur, the extent that user's data can be
used or recovered and how the users verify their data by techniques rather than
depending on the credit guarantee by the cloud service provider alone. The
issue of storing data over the transmission boarder servers is a serious concern
of clients because the cloud vendors are governed by the local laws and,
therefore, the cloud clients should be cognizant of those laws. Moreover, the
cloud service provider should ensure the data security, particularly data
confidentiality and integrity. The cloud provider should share all such concerns
with the client and build trust relationship in this connection. The cloud vendor
should provide guarantees of data safety and explain jurisdiction of local laws
to the clients. The main focus of the paper is on those data issues and
challenges which are associated with data storage location and its relocation,
cost, availability, and security.
6
Data Privacy
Privacy is the ability of an individual or group to seclude them or
information about themselves and thereby reveal them selectively. Privacy has
the following elements. In the cloud, the privacy means when users visit the
sensitive data, the cloud services can prevent potential adversary from inferring
the user's behavior by the user's visit model (not direct data leakage).
Researchers have focused on Oblivious RAM (ORAM) technology. ORAM
technology visits several copies of data to hide the real visiting aims of users.
ORAM has been widely used in software protection and has been used in
protecting the privacy in the cloud as a promising technology.
Here are a few situations where cloud computing is used to enhance the
ability to achieve business goals.
8
5. File storage
Cloud can offer you the possibility of storing your files and accessing,
storing and retrieving them from any web-enabled interface. The web services
interfaces are usually simple. At any time and place you have high availability,
speed, scalability and security for your environment. In this scenario,
organizations are only paying for the amount of storage they are actually
consuming, and do so without the worries of overseeing the daily maintenance
of the storage infrastructure.
There is also the possibility to store the data either on or off premises
depending on the regulatory compliance requirements. Data is stored in
virtualized pools of storage hosted by a third party based on the customer
specification requirements.
6. Disaster recovery
This is yet another benefit derived from using cloud based on the cost
effectiveness of a disaster recovery (DR) solution that provides for a faster
recovery from a mesh of different physical locations at a much lower cost that
the traditional DR site with fixed assets, rigid procedures and a much higher
cost.
7. Backup
Backing up data has always been a complex and time-consuming
operation. This included maintaining a set of tapes or drives, manually
collecting them and dispatching them to a backup facility with all the inherent
problems that might happen in between the originating and the backup site.
This way of ensuring a backup is performed is not immune to problems such as
running out of backup media , and there is also time to load the backup devices
for a restore operation, which takes time and is prone to malfunctions and
9
human errors. Cloud-based backup, while not being the panacea, is certainly a
far cry from what it used to be. You can now automatically dispatch data to
any location across the wire with the assurance that neither security,
availability nor capacities are issues.
While the list of the above uses of cloud computing is not exhaustive, it
certainly give an incentive to use the cloud when comparing to more traditional
alternatives to increase IT infrastructure flexibility , as well as leverage on big
data analytics and mobile computing.
10
CHAPTER 2
LITERATURE SURVEY
1. TITLE: Privacy preserving cloud data auditing with efficient key update
AUTHORS: Li, Yannan, Yong Yu, Bo Yang, Geyong Min, and Huai Wu
YEAR: 2019
DESCRIPTION:
AUTHORS: Shen, Jian, Jun Shen, Xiaofeng Chen, Xinyi Huang, and Willy
Susilo
YEAR: 2020
DESCRIPTION:
12
3. TITLE: Remote data possession checking with privacy-preserving
authenticators for cloud storage
AUTHORS: Shen, Wenting, Guangyang Yang, Jia Yu, Hanlin Zhang, Fanyu
Kong, and Rong Hao
YEAR: 2020
DESCRIPTION:
13
4. TITLE: Light-weight and privacy-preserving secure cloud auditing scheme
for group users via the third party medium
AUTHORS: Shen, Wenting, Jia Yu, Hui Xia, Hanlin Zhang, Xiuqing Lu, and
Rong Hao
YEAR: 2019
DESCRIPTION:
Propose a cloud storage auditing scheme for group users, which greatly
reduces the computation burden on the user side. In our scheme, we introduce
a Third Party Medium (TPM) to perform time-consuming operations on behalf
of users. The TPM is in charge of generating authenticators for users and
verifying data integrity on behalf of users. In order to protect the data privacy
against the TPM, we blind data using simple operations in the phase of data
uploading and data auditing. The user does not need to perform time-
consuming decryption operations when using cloud data. In a group, there are
multiple group users and one original user who is the original owner of data
and can create shared data to the cloud. After the original user uploads data to
the cloud, other users in the group can access these shared cloud data. The
original data owner can play the role of the group manager. When the user
wants to upload data to the cloud, he needs to blind the data, and then sends
them to the TPM. After receiving the blinded data from the user, the TPM will
generate the corresponding authenticators for the blinded data, and then
uploads the blinded data and the corresponding authenticators to the cloud
together. The cloud recovers the real data and the real authenticators from the
blinded data and the corresponding authenticators, and stores them. When the
TPM wants to verify the integrity of cloud data, he will send an auditing
challenge to the cloud. After receiving this challenge, the cloud will respond to
this TPM with a proof of data possession. And then, the TPM will check the
correctness of the proof to verify the integrity of cloud data.
14
5. TITLE: Privacy preserving auditing protocol for remote data storage
YEAR: 2019
DESCRIPTION:
15
6. TITLE: A blockchain-based multi-cloud storage data auditing scheme to
locate faults
AUTHORS: Zhang, Cheng, Yang Xu, Yupeng Hu, Jiajing Wu, Ju Ren, and
Yaoxue Zhang
YEAR: 2021
DESCRIPTION:
16
7. TITLE: A blockchain-based secret-data sharing framework for personal
health records in emergency condition
AUTHORS: Rajput, Ahmed Raza, Qianmu Li, and Milad Taleby Ahvanooey
YEAR: 2021
DESCRIPTION:
17
8. TITLE: Blockchain-based public auditing for big data in cloud storage
AUTHORS: Li, Jiaxing, Jigang Wu, Guiyuan Jiang, and Thambipillai
Srikanthan
YEAR: 2020
DESCRIPTION:
18
9. TITLE: A privacy-preserving and untraceable group data sharing scheme in
cloud computing
AUTHORS: Shen, Jian, Huijie Yang, Pandi Vijayakumar, and Neeraj Kumar.
YEAR: 2021
DESCRIPTION:
19
10. TITLE: Privacy preserving cloud data auditing with efficient key update
AUTHORS: Li, Yannan, Yong Yu, Bo Yang, Geyong Min, and Huai Wu.
YEAR: 2019
DESCRIPTION:
20
CHAPTER 3
SYSTEM ANALYSIS
3.1.1 DISADVANTAGES
• Cannot resist a procrastinating auditor who may not perform the data
integrity verification on schedule
21
• Deviate from the original objective of public verification schemes.
• It might be too late to recover the data loss or damage if the auditor
procrastinates on the verification.
• The procrastinating auditor also cannot be detected in the public
verification schemes, even though malicious auditors can be detected
there
22
Fig 3.1 Architecture Diagram
3.2.1 ADVANTAGES
• Allows the cloud server to prove that the outsourced data is well
maintained.
• The communication and computation overhead should be as efficient as
possible.
• Collusion between any two participants cannot break the security of the
proposed scheme.
3.3 ALGORITHM
24
blockchain is granted by the company owning that blockchain. The block
construction and mining speed is far better in the private blockchain as
compared to public blockchain due to the limited nodes. The consortium
blockchain however exists among the companies or group of companies and
instead of the consensus the principles of memberships are designated to
govern the blockchain transactions more effectively. This research uses
consortium blockchain as the blockchain is to be governed by a national
authority in the country. Block is the primary component of the blockchain. A
block consists of the header and the body, the body of the block contains the
transactions being written to the system. The header of the block contains the
information about the block that includes previous hash, nonce value and
difficulty, and the time stamp of the block and the transactions. The length of
the block is variable and deemed to have been among1 to 8 MB of size. The
header of the block uniquely identifies the block to be placed.
3.3.2 HASHING
Hashing is the process of changing the arbitrary and variable size input
to a fixed size output. There are different functions that perform hashing of
different level. MD5 algorithm is widely used for hashing purposes and it
25
provides a 128 nit or 32 symbols long hash value. MD5 is the latest algorithm
in the series while before that Md2, Md3, and Md4 also existed. The algorithm
was designed to be used as a cryptographic hashing algorithm but it faces some
problems that reduce the production of unique hash value and hence it faces
some vulnerability. SHA (Secure Hashing Algorithm) is another
cryptographic hash function that yields 160-bit hash value consisting of 40
hexadecimal characters. The algorithm could not resist the collusion attacks
against it and its usage has declined. In this time several new algorithms have
also been proposed, including SHA 3, and SHA 256. The SHA 2 set of
algorithms is designed by the US's Nation Security Agency. SHA 256 and
SHA 512 are new hash functions that do not have collusion problems and
deemed secure otherwise, at least as yet.
Previous Hash:
This hash address locates the previous block.
Transaction Details:
Details of all the transactions that need to occur.
Nonce:
An arbitrary number given by cryptography to differentiate the block’s
hash address.
Hash Address of the Block:
All of the above (i.e., preceding hash, transaction details, and nonce) are
transmitted through a hashing algorithm. This gives an output containing a
256-bit, 64-character length value, which is called the unique ‘hash address.’
Consequently, it is referred to as the hash of the block. Numerous people
around the world try to figure out the right hash value to meet a pre-determined
condition using computational algorithms. The transaction completes when the
26
predetermined condition is met. To put it more plainly, Blockchain miners
attempt to solve a mathematical puzzle, which is referred to as a proof of work
problem. Whoever solves it first gets a reward.
Mining
In Blockchain technology, the process of adding transactional details to
the present digital/public ledger is called ‘mining.’ Though the term is
associated with Bitcoin, it is used to refer to other Blockchain technologies as
well. Mining involves generating the hash of a block transaction, which is
tough to forge, thereby ensuring the safety of the entire Blockchain without
needing a central system.
27
3. A hash is a string of numbers and letters.
5. The hash depends not only on the transaction but the previous
transaction's hash.
7. The nodes check to make sure a transaction has not been changed by
inspecting the hash.
9. Each block refers to the previous block and together make the
Blockchain.
Better Transparency
Transparency is one of the big issues in the current industry. To improve
transparency, organizations have tried to implement more rules and
regulations. But there is one thing that doesn’t make any system 100%
transparency, i.e., centralization. With blockchain, an organization can go for a
complete decentralized network where there is no need for a centralized
authority, improving the system’s transparency. A blockchain consists of peers
who are responsible for carrying out transactions and validating them. Not
every peer takes part in the consensus method, but they are free to choose if
they want to participate in the validation process. To provide validation
through decentralization, the consensus method is used. Once validated, each
node keeps a copy of the transaction record. This way, the blockchain network
28
handles transparency. Transparency has bigger implications when it comes to
organizations. As mentioned earlier, governments can also utilize transparency
in building government processes or even conduct voting.
Enhanced Security
Blockchain technology utilizes advanced security compared to other
platforms or record-keeping systems. Any transaction that is ever recorded
needs to be agreed upon according to the consensus method. Also, each
transaction is encrypted and has a proper link to the old transaction using a
hashing method.
Security is also enhanced by the fact that each node holds a copy of the
transactions ever performed on the network. So, if any malicious actor ever
wanted to make changes in the transaction, he won’t be able to do so as other
nodes will reject his request to write transactions to the network.
Blockchain networks are also immutable, which means the data, once
written, cannot be reverted by any means. This is also the right choice for
systems that thrive on immutable data, such as systems that citizen’s age.
Reduced Costs
Right now, businesses spend a lot of money to improve to manage their
current system. That’s why they want to reduce cost and divert the money into
building something new or improving current processes.
By using blockchain, organizations can bring down a lot of costs
associated with 3rd party vendors. As blockchain has no inherited centralized
player, there is no need to pay for any vendor costs. On top of that, there is less
interaction needed when it comes to validating a transaction, further removing
the need to spend money or time to do basic stuff.
29
True Traceability
With blockchain, companies can focus on creating a supply chain that
works with both vendors and suppliers. In the traditional supply chain, it is
hard to trace items that can lead to multiple problems, including theft,
counterfeit, and loss of goods.
With blockchain, the supply chain becomes more transparent than ever.
It enables every party to trace the goods and ensure that it is not being replaced
or misused during the supply chain process. Organizations can also make the
most out of blockchain traceability by implementing it in-house.
30
CHAPTER 4
IMPLEMENTATION
• User Enrolment
• Data Auditing
USER ENROLMENT
31
system and then authenticated before he can request server. In a basic
authentication process, a user presents some credentials like user ID to prove
that the user is the true owner of the user ID. Data owner could upload the file
on cloud. Once the file is stored in cloud, the file will get encrypted.
DATA AUDITING
TPA works for the user. It feeds back the verification results to the user
and the cloud server, and detects the data corruption as soon as possible. The
communication between TPA and other entities is authenticated. The
verification period is determined by the user. For a point in time when the data
integrity should be verified, TPA first extracts the hash values of ' successive
blocks that are the latest ones confirmed on the blockchain, where ' denotes the
32
number of blocks deep used to confirm a transaction and sends the challenging
message to the cloud server. Upon receiving the challenging message, the
cloud server computes the corresponding proof. TPA checks the validity of the
proof to verify the data integrity. If the checking fails, TPA informs the user
that the data may be corrupted.
DATA SHARING
In the data sharing concept storage server is most important module. The
storage data store the huge amount of data. This data is securely store in
storage server. It also store encrypted data and key which used for data
encryption. When the user requires his data, user requests to the storage server.
There are two keys used for encryption and decryption purpose. Data sharing
can be done in a secure manner.
33
CHAPTER 5
SYSTEM SPECIFICATION
34
Visual Basic .ASP NET runs on the .NET framework, which means that it has
full access to the .NET libraries. It is a very productive tool for rapid creation
of a wide range of Web, Windows, Office, and Mobile applications that have
been built on the .NET framework.
• Visual Studio .Net backings custom and composite controls. Can make
custom controls that embody a typical usefulness that may need to use in
various applications.
35
• Visual Studio .Net makes a glorious showing of rearranging the creation
and utilization of Web Services. Mush of the software engineer neighborly
stuff (making all the XML-based reports) happens consequently, without much
exertion on the developer's side.
• Object oriented.
• Component oriented.
• Easy to learn.
• Structured language.
VB.NET Features
Advantages of VB.NET
The following are the pros/benefits you will enjoy for coding in VB.NET:
37
• Can connect your applications to other applications created in languages
that run on the .NET framework.
• Will enjoy features like docking, automatic control anchoring, and in-
place menu editor all good for developing web applications.
ASP.NET environment
ASP.NET
FEATURES
➢ Reliable Interoperability
39
Exploit inborn backing for properties, indexers, delegates, single and
multidimensional clusters, propelled legacy, traits, forming, and XML remarks.
. NET Framework
40
Second, it was proposed to improve the advancement of Web
applications and administrations that work in the conventional sense, as well as
on cell phones too. Finally, the structure was intended to give a solitary
arrangement of libraries that would work with various dialects. The .NET
Framework is the base for the new Microsoft .NET Platform. Furthermore, it is
a typical situation for building, conveying, and running Web applications and
Web Services. The .NET Framework contains a typical dialect runtime and
basic class libraries - like ADO .NET, ASP .NET and Windows Forms - to
give propelled standard administrations that can be coordinated into a mixed
bag of PC frameworks. The .NET Framework gives a component rich
application environment, streamlined improvement and simple mix between
various diverse advancement dialects. The .NET Framework is dialect
nonpartisan. At present it bolsters C++, C#, Visual Basic, and Jscript.
Microsoft's Visual Studio.NET is a typical advancement environment for the
new .NET Framework.
IIS is the web server is utilized here. IIS 5.0 or above is key for the
ASP.NET for the earth. This arrival of ASP.NET uses IIS 5.0 as the priKim
host environment. IIS dependably accept that an arrangement of accreditations
maps to a Windows NT record and uses them to verify a client. There are three
various types of validation accessible in IIS 5.0: BASIC, DIGEST, and
INTEGRATED WINDOWS Authentication (NTLM or Kerberos). You can
choose the kind of verification to use in the IIS regulatory administrations.
On the off chance that you ask for a URL containing an ASP.NET
application, the solicitation and confirmation data are given off to the
application. ASP.NET gives the two extra sorts of verification depicted in the
accompanying table.
41
Web Service
42
1. Data Security
2. Data Backup
SQL stands for Structured Query Language. SQL is the language used to
create, edit and manipulate a database. In other words, SQL is used to manage
data held within a relational database management system (RDBMS).
43
➢ The most critical parts of SQL Server 8 are:
• Query advancement
• Data honesty
• Concurrency control
The SQL Server chairman's essential device for connecting with the
framework is Enterprise Manager. The Enterprise Manager has two primary
purposes: Administration of the database server and Management of database
items.
45
the database server to enhance the execution and consistency of monotonous
undertakings. SQL Server backings put away methods and framework
techniques. Put away techniques can be utilized for the accompanying
purposes: to control access approval, to make a review trial of exercises in
database tables, to discrete information definition & information control
articulations concerning a database & every single comparing application.
The Query Optimizer is the piece of SQL Server that chooses how to
best perform a question. It creates a few inquiry executions gets ready for the
given question & chooses the arrangement with the most minimal expense.
• Windows NT
• Mixed
• Views.
• Stored methodology
46
A Windows NT client record or a SQL server login name permits a
client to sign into the SQL server framework. A client who hence needs to get
to a database of the framework needs a database client record to work in the
DB. In this manner clients must have a DB client represent each DB they need
to utilize. In the event that there is no such record the client may be permitted
to work in the DB under the visitor account."
• A name
• The activity
• The execution
47
the exchange must be moved back. SQL server keeps every one of these
records, specifically the previously, then after the fact values, in one or more
documents called the exchange log. Each DB of the SQL server framework has
its own particular exchange log. Concurrency in multi-client frameworks, for
example, SQL Server has chosen impact of execution. At the point when
access to the information is taken care of such that stand out project at once
can utilize the information, preparing moderates significantly. SQL Server like
all different DBMSs takes care of this issue utilizing exchanges. All
announcements inside an exchange manufacture a nuclear unit. This implies
that either all announcements are executed or for the situation of
disappointment, all announcements are wiped out.
➢ Adaptability
The same database motor can be utilized crosswise over stages going
from smart phones Microsoft Windows95 to substantial; multiprocessor
servers running Microsoft Windows NT, Enterprise Edition.
48
SQL API (SQL Application Programming Interface)
Web Clients
• Web program, which renders the pages got from the server.
Within SQL, we have two forms of languages. These forms differ in that
one is used to build and edit the structure of the database while the other is
used to create and edit the actual data within the database. These two languages
are known as data definition language and data manipulation language.
Data manipulation language is used to work with the actual data within
the database. if we looked at an example with a users table, the table is created
with DDL while the value “Caleb Curry” is entered using DML.
SELECT – this is used to select data from our database. We first say
SELECT and then we say what columns to select. After we say what columns,
we specify what tables using FROM. After we select what columns and what
tables we can limit our results using a WHERE clause.
DELETE – this is used to delete values (the database structure stays the
same, only inserted values are removed).
50
HTML
51
CHAPTER 6
SYSTEM DESIGN
The goal is for UML to become a common language for creating models
of object oriented computer software. In its current form UML is comprised of
two major components: a Meta-model and a notation. In the future, some form
of method or process may also be added to; or associated with, UML. The
Unified Modeling Language is a standard language for specifying,
Visualization, Constructing and documenting the artifacts of software system,
as well as for business modeling and other non-software systems.
52
GOALS:
53
6.2 USECASE DIAGRAM
System
Registration
Approval
File Upload
Server
Block Creation using SHA
File storage
Data Owner
File Auditing
TPA
Audit Response
File Request
User
File Access
54
6.3 CLASS DIAGRAM
Data Owner
Server
+Owner Details
+File Details +Data
55
6.4 SEQUENCE DIAGRAM
2 : Enrolment()
3 : Allocate Space()
4 : Upload File()
6 : File Storage()
8 : File Audit()
9 : Audit Response()
12 : File Access()
Owner Registration
File Upload
File Storage
File Auditing
File Sharing
57
6.6 DATA FLOW DIAGRAM
2. The data flow diagram (DFD) is one of the most important modeling tools.
It is used to model the system components. These components are the system
process, the data used by the process, an external entity that interacts with the
system and the information flows in the system.
3. DFD shows how the information moves through the system and how it is
modified by a series of transformations. It is a graphical technique that depicts
information flow and the transformations that are applied as data moves from
input to output.
Level 0
Data Owner
Data User
58
Level 1
Get Approval
Level 2
Upload Data
Data Encryption
59
Level 3
Audit Proof
Level 4
Data Retrieval
60
CHAPTER 7
SYSTEM TESTING
There are several rules that can serve as testing objectives, they are
1. Testing is a process of executing a program with the intent of
finding an error
2. A good test case is one that has high probability of finding an
undiscovered error.
3. A successful test is one that uncovers an undiscovered error.
61
1. For Correctness
2. For Implementation efficiency
3. For Computational Complexity.
Tests for correctness are supposed to verify that a program does exactly
what it was designed to do. This is much more difficult than it may at first
appear, especially for large programs. It is a code-refining process, which
reexamines the implementation phase of algorithm development. Tests for
computational complexity amount to an experimental analysis of the
complexity of an algorithm or an experimental comparison of two or more
algorithms, which solve the same problem.
The testing is carried in the following steps,
1. Unit Testing
2. Integration Testing
3. Validation Testing
4. System Testing
5. Acceptance Testing
6. Functional Testing
1. Unit Testing
2. Integration Testing
3. Validation Testing
Valid and invalid data should be created and the program should be
made to process this data to catch errors. When the user of each module wants
to enter into the page by the login page using the use rid and password .If the
user gives the wrong password or use rid then the information is provided to
the user like “you must enter user id and password”. Here the inputs given by
the user are validated. That is password validation, format of date are correct,
textbox validation. Changes that need to be done after result of this testing.
4. System Testing
System testing is used to test the entire system (Integration of all the
modules). It also tests to find the discrepancies between the system and the
original objective, current specification and system documentation. The entire
system is checked to correct deviation to achieve correctness.
5. Acceptance Teasing
6. Functional Testing
Unit testing is usually conducted as part of a combined code and unit test
phase of the software lifecycle, although it is not uncommon for coding and
unit testing to be conducted as two distinct phases. Test strategy and approach
field testing will be performed manually and functional tests will written in
detail.
Test objectives
Features to be tested
Test Results: All the test cases mentioned above passed successfully. No
defects encountered.
Test Results: All the test cases mentioned above passed successfully. No
defects encountered.
Test Results: All the test cases mentioned above passed successfully. No
defects encountered.
65
CHAPTER 8
SNAPSHOTS
66
Fig 8.3 Owner Registration
67
Fig 8.5 TPA approval
68
CHAPTER 9
APPENDIX
Home.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta charset="utf-8">
<title>Home</title>
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/fontawesome/4.5.0/css/f
ont-awesome.min.css">
mn.js"></script>
<script
src="http://netdna.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min
.js"></script>
<script src="./script/index.js"></script>
</head>
<body id="wrapper">
<section id="top-header">
</div>
</section>
<header>
<div class="container">
<div class="row">
<div class="navbar-header">
<h1>BlockChain</h1>
<span>Data Storage</span></a>
</div>
<li><ahref="Home.aspx">Home</a></li>
<li><ahref="OwnerLogin.aspx">OwnerLogin</a></li>
<li><ahref="NewOwner.aspx">NewOwner</a></li>
<li><a href="UserLogin.aspx">UserLogin</a></li>
<li><ahref="userReg.aspx">NewUser</a></li>
<li><ahref="TPAlogin.aspx">TPALogin</a></li>
<li><ahref="ServerLogin.aspx">ServerLogin</a></li>
</ul>
</div>
<!--/.nav-collapse -->
</div>
</div>
</nav>
</header>
<!--/.nav-ends -->
<ol class="carousel-indicators">
71
<li data-target="#myCarousel" data-slide-to="1"></li>
</ol>
<div class="carousel-inner">
<divclass="fill"style="background-image:url('img/banner-
slide-1.jpg');"></div>
</div>
<div class="item">
</div>
<div class="item">
72
CHAPTER 10
CONCLUSION
73
CHAPTER 11
REFERENCES
[2] H. Ren, H. Li, Y. Dai, K. Yang, and X. Lin, “Querying in internet of things
with privacy preserving: Challenges, solutions and opportunities,” IEEE
Network, vol. 32, no. 6, pp. 144–151, 2018.
[3] J. Li, H. Ye,W.Wang,W. Lou, Y. T. Hou, J. Liu, and R. Lu, “Efficient and
secure outsourcing of differentially private data publication,” in Proc.
ESORICS, 2018, pp. 187–206.
[4] L. Zhong, Q. Wu, J. Xie, J. Li, and B. Qin, “A secure versatile light
payment system based on blockchain,” Future Generation Computer Systems,
vol. 93, pp. 327–337, 2019.
[5] G. Xu, H. Li, Y. Dai, K. Yang, and X. Lin, “Enabling efficient and
geometric range query with access control over encrypted spatial data,” IEEE
Trans. Information Forensics and Security, vol. 14, no. 4, pp. 870–885, 2019.
[12] J. Ni, K. Zhang, Y. Yu, X. Lin, and X. Shen, “Providing task allocation
and secure deduplication for mobile crowd sensing via fog computing,” IEEE
Transactions on Dependable and Secure Computing, to appear, doi.
10.1109/TDSC.2018.2791432.
75