Patent ID: 7506173

Claim:
A method by which a plurality of client programs connected to a network share storage space for duplicated data items stored in a data repository connected to the network, the method comprising: determining a digital fingerprint of a data item using a hash function that produces digital fingerprints having a pseudorandom distribution; depositing the data item in the data repository in response to a request by a client program communicating with the data repository over the network, the depositing including: comparing the digital fingerprint of the data item to the digital fingerprints of data items already stored in the data repository; determining from the comparing of digital fingerprints, without comparing the entire contents of the deposited data item to the entire contents of the data item already stored, whether a stored data item is identical to the deposited data item; and ensuring that the stored data item identical to the deposited data item exists in the data repository, the ensuring comprising: requiring the client program to communicate the data item to the data repository if comparing establishes that there is no match; and challenging the client program, if comparing establishes that the data item is already stored in the repository, to ascertain that the client program has the full data item and not merely the digital fingerprint; wherein challenging comprises requiring of the client program that supplies additional information representative of the entire contents of the data item other than the digital fingerprint; and wherein the additional information representative of the entire contents of the data item is not sufficient to reconstruct the entire contents of the data item.