Proof of retrievability for archived files
First Claim
1. A method comprising:
- identifying a set of validation portions from a plurality of data portions comprising a data object, the set of validation portions including one or more subsets of validation portions for verifying recoverability of the data object;
determining, for each of the one or more subsets of the set of validation portions, recoverability attributes applicable to the subset of the set of validation portions;
defining a validation function, the validation function responsive to a challenge and for computing validation values, the validation values for comparison with corresponding recoverability attributes based on a particular subset of the set of validation portions from which the recoverability attributes were derived, the recoverability attributes for subsequent comparison with the corresponding validation values;
receiving a challenge indicative of a request to validate recoverability of the data object;
identifying the validation function responsive to the challenge for computing validation values;
determining, as a function of the received challenge, an indication of the subset of validation portions;
applying the validation function to each of the validation portions in the indicated subset to compute a validation value; and
comparing the validation value to a corresponding recoverability attribute to assess recoverability of the data object.
9 Assignments
0 Petitions
Accused Products
Abstract
A proof of retrievability (POR) mechanism is applicable to a data object for providing assurances of data object possession to a requesting client by transmitting only a portion of the entire data object. The client compares or examines validation values returned from predetermined validation segments of the data object with previously computed validation attributes for assessing the existence of the data object. Since the archive server does not have access to the validation function prior to the request, or challenge, from the client, the archive server cannot anticipate the validation values expected from the validation function. Further, since the validation segments from which the validation attributes, and hence the validation values were derived, are also unknown to the server, the server cannot anticipate which portions of the data object will be employed for validation.
-
Citations
18 Claims
-
1. A method comprising:
-
identifying a set of validation portions from a plurality of data portions comprising a data object, the set of validation portions including one or more subsets of validation portions for verifying recoverability of the data object; determining, for each of the one or more subsets of the set of validation portions, recoverability attributes applicable to the subset of the set of validation portions; defining a validation function, the validation function responsive to a challenge and for computing validation values, the validation values for comparison with corresponding recoverability attributes based on a particular subset of the set of validation portions from which the recoverability attributes were derived, the recoverability attributes for subsequent comparison with the corresponding validation values; receiving a challenge indicative of a request to validate recoverability of the data object; identifying the validation function responsive to the challenge for computing validation values; determining, as a function of the received challenge, an indication of the subset of validation portions; applying the validation function to each of the validation portions in the indicated subset to compute a validation value; and comparing the validation value to a corresponding recoverability attribute to assess recoverability of the data object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
identifying an error correction function operable to generate error correction values on portions of a data object, the error correction (ECC) values operable to recreate the data object; identifying a portioning function for portioning the data object, the portioning generating a set of more than one portion, the combined generated portions sufficient for recovery of the data object; applying the error correcting function individually to said portions to generate a set of ECC values, and associating said generated ECC values with the data object to create an augmented data object; receiving a challenge indicative of a request to validate recoverability of the data object; identifying a validation function, the validation function responsive to the challenge and for computing validation values, the validation values for comparison with corresponding recoverability attributes based on a particular subset of a set of validation portions from which the recoverability attributes were derived, the set of validation portions including one or more subsets of validation portions for verifying recoverability of the data object, the recoverability attributes applicable to the subset of the set of validation portions and for subsequent comparison with the corresponding validation values; determining, as a function of the received challenge, an indication of the subset of validation portions, applying the validation function to each of the validation portions in the indicated subset to compute a validation value; comparing the validation value to a corresponding recoverability attribute to assess recoverability of the data object; determining that the data object is not recoverable according to the validation portions; recreating the data object according to augmented data object comprising the data object associated with the ECC. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A POR (proof of recoverability) processor, comprising:
-
a portioner configured to identify a set of validation portions from a plurality of data portions comprising a data object, the set of validation portions including one or more subsets of validation portions for verifying recoverability of the data object; a retrievability processor configured to determine, for each of the one or more subsets of the set of validation portions, recoverability attributes applicable to the subset of the set of validation portions and configured to generate a challenge indicative of a request to validate recoverability of the data object from an archive server and invoking a validation generator for identifying, the validation function; an authenticator configured to define a validation function, the validation function responsive to a challenge for computing validation values, the validation values for comparison with corresponding recoverability attributes based on a particular subset of the set of validation portions from which the recoverability attributes were derived, the recoverability attributes for subsequent comparison with the corresponding validation values; and a validator configured to receive an indication of the subset of validation portions, the indication previously unknown to the archive server, apply the validation function to each of the validation portions in the indicated subset to compute a validation value, and compare the validation value to a corresponding recoverability attribute to assess recoverability of the data object. - View Dependent Claims (17)
-
-
18. A computer program product having a non-transitory computer readable storage medium operable to store computer program logic embodied in computer program code encoded as a set of processor based instructions thereon for storing a data object for subsequent proof of recoverability comprising:
-
computer program code for identifying a set of validation portions from a plurality of data portions comprising a data object, the set of validation portions including one or more subsets of validation portions for verifying recoverability of the data object; computer program code for determining, for each of the one or more subsets of the set of validation portions, recoverability attributes applicable to the subset of the set of validation portions; computer program code for defining a validation function, the validation function responsive to a challenge for computing validation values, the validation values for comparison with corresponding recoverability attributes based on a particular subset of the set of validation portions from which the recoverability attributes were derived, the recoverability attributes for subsequent comparison with the corresponding validation values; and computer program code for receiving a challenge indicative of a request to validate recoverability of the data object by identifying the validation function, determining, as a function of the received challenge, an indication of the subset of validation portions, applying the validation function to each of the validation portions in the indicated subset to compute a validation value, and comparing the validation value to a corresponding recoverability attribute to assess recoverability of the data object.
-
Specification