Claims
- 1-67. (Canceled).
- 68. A method by which more than one client program connected to a network stores the same data item on a storage device of a data repository connected to the network, the method comprising:
determining a digital fingerprint of the data item; testing for whether the data item is already stored in the repository by comparing the digital fingerprint of the data item to the digital fingerprints of data items already in storage in the repository; and challenging a client that is attempting to deposit a data item already stored in the repository, to ascertain that the client has the full data item and not merely the digital fingerprint; wherein challenging comprises requiring of the client that it supply additional information representative of the content of the data item other than the digital fingerprint.
- 69. The method of claim 68 wherein the repository gives the client a deposit receipt which allows the user to prove that the deposit occurred.
- 70. The method of claim 68 wherein the challenging comprises requiring that the client provide correct answers to inquiries as to the content of portions of the data item, or inquiries that require knowledge of this content.
- 71. The method of claim 70 wherein the data item content on which the challenge is based is not easily predicted by the user or client program.
- 72. The method of claim 70 wherein the data item content on which the challenge is based can be determined by the client program without the aid of the repository.
- 73. The method of claim 68 wherein future access to the data item deposited is provided by creating an access-authorization credential which can be presented at a later time to prove that the challenge has been met for that data item.
- 74. The method of claim 73 wherein each access authorization credential is uniquely associated with a access owner.
- 75. The method of claim 73 wherein each access authorization credential includes information sufficient to identify the access owner.
- 76. The method of claim 73 wherein the access authorization credential includes a fingerprint.
- 77. The method of claim 73 wherein the access authorization credential is associated with a fingerprint in the repository.
- 78. The method of claim 76 or 77 wherein the fingerprint is different from the fingerprint used for testing whether the data item is already stored in the repository.
- 79. The method of claim 73 wherein the access authorization credential is associated directly with the data-item or with a record in the repository that is associated with the data-item.
- 80. The method of claim 79 wherein the record in the repository with which the access authorization credential is associated is an access identifier that is associated with the credential by computation of a one way hash function.
- 81. The method of claim 80 wherein the access identifier is stored in the repository and is compared with a later hash of an access authorization credential to verify access permission to a named object.
- 82. The method of claim 73 wherein the access authorization credential may include information sufficient to respond to a challenge.
- 83. The method of claim 73 wherein the access authorization credential includes data proof information created during a challenge process that is sufficient to prove to the repository that the challenge was passed.
- 84. The method of claim 83 wherein the data proof information comprises the actual challenge response, so that it can be directly verified against the data-item.
- 85. The method of claim 73 wherein at least some access-authorization credentials can be transferred between users without the aid of the repository.
- 86. The method of claim 85 wherein the usage of some access authorization credential is restricted for at least one class of access owners.
- 87. The method of claim 86 wherein the access authorization credential is only usable by the access owner.
- 88. The method of claim 86 wherein the aggregate bandwidth available to all users of the access authorization credential is limited.
- 89. The method of claim 68 wherein at the time of deposit at least some data items are associated with a minimum expiration time.
- 90. The method of claim 89 wherein at least some data items that expire are removed and their storage space reused.
- 91. The method of claim 90 wherein the repository keeps track of which access owners have deposited a given data item.
- 92. The method of claim 91 wherein upon an access owner informing the repository that a data item is no longer needed, the data item is deleted or the expiration of the data item is accelerated.
- 93. The method of claim 92 wherein the repository truncates the list of depositors associated with a data-item, and never accelerates the expiration of this data item.
- 94. The method of claim 68 further comprising encrypting the data item using a key derived from the content of the data item.
- 95. The method of claim 94 wherein the encrypting of the data item is performed by the client prior to transmitting the data item to the storage device.
- 96. The method of claim 94 further comprising encrypting the key and storing the encrypted key on the storage device or on another storage device connected to the network.
- 97. The method of claim 96 wherein a client or user specific key is used to encrypt the key derived from the content of the data item.
- 98-153. (Canceled).
- 154. The method of claim 68 wherein records are kept of the association between data items and names in order to define named objects, and wherein data items recorded as being associated with named objects are not deleted from the repository, and wherein named objects are backed up by preserving copies of the named object records in existence at the time of the backup.
- 155. The method of claim 68 wherein a backup of data items stored on the storage device is accomplished by preserving copies of the current versions of named objects in existence at the time of the backup.
- 156. The method of claim 68 wherein depositors use the client to store data items in the repository, and at least some depositors are required to provide identification.
- 157. The method of claim 156 wherein rules for when a depositor must provide identification are selected in order to discourage unlawful distribution of access to the data item.
- 158. The method of claim 157 wherein there is a greater degree of user identification or a higher likelihood that user identification will be required when the data item being stored by the depositor has been indicated to be shareable with other users.
- 159. The method of claim 157 wherein for a class of data items the items may only be shared if the depositor has provided adequate identification.
- 160. The method of claim 158 or 159 wherein identity information about the depositor is made available to anyone able to access the data item, to discourage unlawful sharing.
- 161. The method of claim 160 wherein the identity information is stored in an encrypted form that the depositor and users subsequently accessing the shared data item can both read.
- 162. The method of claim 161 wherein the repository is not able to decrypt the identity information about the depositor.
- 163. The method of claim 158 wherein the identity of some users has not been well verified, but restrictions are placed on sharing of data items deposited by such poorly verified users.
- 164. The method of claim 163 further comprising limiting access to data items deposited by a poorly verified user.
- 165. The method of claim 164 wherein the limited access is provided by limiting the aggregate bandwidth provided for such accesses.
- 166. The method of claim 164 wherein the limited access is provided by limiting the number of simultaneous accesses to the data items.
- 167. The method of claim 73 wherein the access-authorization credential is determined in part by computing a hash involving elements of the pathname for a file on the client computer.
- 168. The method of claim 167 wherein the path name hash is made unique to a client by introducing a reproducible but randomly chosen element into it.
- 169. The method of claim 68 wherein the additional information can be determined by the client without the aid of the repository.
- 170. The method of claim 68 wherein the additional information for a plurality of challenges can be determined by the client without receiving separate information from the repository for each challenge.
- 171. The method of claim 68 wherein requiring of the client that it supply additional information representative of the content of the data item other than the digital fingerprint comprises requesting of the client that it supply additional information representative of the content of the data item other than the digital fingerprint.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority from U.S. Provisional Application Ser. No. 60/183,466, filed Feb. 18, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60183466 |
Feb 2000 |
US |
Continuations (1)
|
Number |
Date |
Country |
Parent |
09785535 |
Feb 2001 |
US |
Child |
10870133 |
Jun 2004 |
US |