Message digest based data synchronization
First Claim
1. A method comprising:
- generating a message digests on a client connected with a network wherein said message digests uniquely identify contents of files stored on the client;
synchronizing contents of said client with a repository connected with the network based on contents of the message digests on the client and corresponding entries in a database of message digests stored on the repository; and
verifying that the contents of the repository match the contents of the client.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus are described for data synchronization between a client and a repository. According to one embodiment, data synchronization between a client and a repository is performed based on the results of a comparison between message digests associated with files stored on the client and a database of message digests stored on the repository. The message digests generated on the client uniquely identify the content of files stored on the client. This unique identification of the contents of the files on the client is accomplished by performing a cryptographic hash of the contents of the individual files. The database of message digests stored on the repository contains message digests from clients that are stored in the database at the time of data synchronization. By comparing message digests generated on the client with those stored on the repository, the need for data synchronization may be efficiently determined.
-
Citations
28 Claims
-
1. A method comprising:
-
generating a message digests on a client connected with a network wherein said message digests uniquely identify contents of files stored on the client;
synchronizing contents of said client with a repository connected with the network based on contents of the message digests on the client and corresponding entries in a database of message digests stored on the repository; and
verifying that the contents of the repository match the contents of the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a repository server connected with a network, to function as a data repository on behalf of a client; and
the client connected with said repository server via the network, wherein said client generates a plurality of message digests that each uniquely identify the content of a corresponding file stored on the client, synchronizes contents of said client with files stored in the repository server based on contents of the message digests on the client and a database of message digests stored on the repository, and verifies whether the contents of the repository match the contents of the client. - View Dependent Claims (11, 12, 13, 14, 16, 17, 18, 19)
-
-
15. A system comprising:
-
a client connected with a repository server via a network, wherein said client generates a plurality of message digests that each uniquely identify the content of a corresponding file stored on the client; and
the repository server connected with the network, to function as a data repository on behalf of the client, wherein said repository server synchronizes contents of said client with files stored in the repository server based on contents of the message digests on the client and a database of message digests stored on the repository, and verifies whether the contents of the repository match the contents of the client.
-
-
20. A machine-readable medium having stored thereon data representing sequences of instructions, said sequences of instructions which, when executed by a processor, cause said processor to:
-
generate message digests on a client connected with a network wherein said message digests uniquely identify contents of files stored on the client;
synchronize contents of said client with a repository connected with the network based on contents of the message digests on the client and corresponding entries in a database of message digests stored on the repository; and
verify that the contents of the repository match the contents of the client. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
Specification