The cloud computing becomes important part of most
people life, although it has a lot of advantages but there is some critical
disadvantages, such as saving your data in unreliable servers, so your data may
be edited, stolen, modified, or deleted from unauthorized users.
The user or data owner mostly haven’t
a copy from his data, so he depend on cloud computing vendor to save their
integrity and safety.
And the data are exposed into deleting or losing when sending and receiving it
from server to server or between server and clients
So, the data integrity is very
important issue in distributed systems over cloud computing.
When we are talking about distributed systems and cloud computing we must be
aware about data immigration, relocation and replication issues! There is a
relationship between data integrity and data immigration & relocation
properties in distributed systems.
When the system immigrate data from server x to server z, the service or
process should not harm, because it impact on the data!
So there is a lot of techniques to ensuring the data integrity in distributed
systems.. We will discuss some of it in this research.
Provable Data Possession (PDP)
by fill meta data from user and compare it without retrieving the files or
data. This method achieving by: MAC(message authentication code), symmetric
– Static PDP:
by hashing & key, the user hash the data and has its own key before
the data to servers, by send the key and
the server reply to if the key valid or not.
– Dynamic PDP:
it is support the dynamic operation like modification, insertion, deletion. The
challenge is with a set of random looking block indices. The data need to
return its owner after the server computes a short integrity check over
Proof Of Retrievability POR
To verity the data on server remotely. Don’t need to retrieve the data back
from the server to the local disk.
– Static POR
The data owner compute an
authentication code with secret key. Data partially(some blocks) encrypted. Then
the file and code sent to server. The data owner just need his private key to
verify server response.
– Dynamic POR
By using merkle hash tree with other
techniques like BLS signature. This method efficient, secure, reduce the computing
operations and storage overhead for owner and server.
Before sending data to remote server,
the user pre-compute MAC for whole data with private key. Each time the user
release the private key to server and compare it’s MAC with the one stored in
his local disk to check integrity of data
Merkle Hash Tree (MHT)
Breaking the file into number of
small pieces and hash it. Then iteratively combine and rehash results in a tree
until a single root hash is created. Integrity verification deal with one or
more paths that from leaves to the root node.
Each fragment of storage data has a
The function take an input as a message
of length and return a fixed length(hash digest). The hash value appended with
message and recomputed by receiver of message. If any changes has been happened
then the value not be the same of data hash value.
Hash Function Technique:
we select this
method to study because it is often used frequently and able for enhancement
Problems of Hash Function:
is a problem in the hash functions system that centric in the hash
attacker modifies some copy of data with its hash collision, the hash function
will calculate the same values as the hash value of original data!
So the hash function must have a collision resistance to prevent this problem.
The supposed techniques take a huge time to check the hash collision because it
is determined by the size of values. So, the function will calculate the hash
value for each fragment every time and compare it with the hash values in hash
store, this process take a huge time and effort.