DATA STORAGE INTEGRITY VALIDATION
First Claim
1. A computer-implemented method for data integrity verification, comprising:
- under control of one or more computer systems configured with executable instructions,receiving one or more parts of a data payload;
for each part of at least a subset of the one or more parts, generating a first sub-part as part of partitioning the data payload;
calculating a value based at least in part on the first generated sub-part;
generating at least a root node of a data structure based at least in part on the calculated value;
identifying a top-level value of the data structure associated with the root node of the data structure; and
verifying, based at least in part on the top-level value, that a repartitioned data payload matches the received data payload, the repartitioned data payload based at least in part on a second sub-part of the one or more parts.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the present disclosure are directed to, among other things, validating the integrity of received and/or stored data payloads. In some examples, a storage service may perform a first partitioning of a data object into first partitions based at least in part on a first operation. The storage service may also verify the data object, by utilizing a verification algorithm, to generate a first verification value. In some cases, the storage service may additionally perform a second partitioning of the data object into second partitions based at least in part on a second operation. The second partitions may be different from the first partitions. Additionally, the archival data storage service may verify the data object using the verification algorithm to generate a second verification value. Further, the storage service may determine whether the second verification value equals the first verification value.
-
Citations
29 Claims
-
1. A computer-implemented method for data integrity verification, comprising:
under control of one or more computer systems configured with executable instructions, receiving one or more parts of a data payload; for each part of at least a subset of the one or more parts, generating a first sub-part as part of partitioning the data payload; calculating a value based at least in part on the first generated sub-part; generating at least a root node of a data structure based at least in part on the calculated value; identifying a top-level value of the data structure associated with the root node of the data structure; and verifying, based at least in part on the top-level value, that a repartitioned data payload matches the received data payload, the repartitioned data payload based at least in part on a second sub-part of the one or more parts. - View Dependent Claims (2, 3, 4, 5, 6)
-
7. A computer-implemented method for data integrity verification, comprising:
under control of one or more computer systems configured with executable instructions, receiving one or more parts of a data payload; for each part of at least a subset of the one or more parts, generating a sub-part of a first predefined size, the received one or more parts being a second size that is an integer multiple of the first predefined size; calculating a value based at least in part on the generated sub-part; generating at least a root node of a data structure based at least in part on the calculated value; and determining a top-level value of the data structure associated with the root node of the data structure. - View Dependent Claims (8, 10, 11, 12, 13, 14)
-
9. (canceled)
-
15. A system for verifying data integrity, comprising:
-
at least one memory that stores computer-executable instructions; and at least one processor configured to access the at least one memory, wherein the at least one processor is configured to execute the computer-executable instructions to collectively at least; store at least a chunk of data, the data comprising a plurality of chunks; generate a first sub-chunk of the at least one chunk of data; store at least a digest corresponding to the first sub-chunk; generate a data structure based at least in part on the stored digest corresponding to the first sub-chunk; provide a top-level digest of the generated data structure to a computing device, and verify, based at least in part on the top-level digest, that a repartitioned chunk of data matches the stored at least a chunk of data, the repartitioned chunk of data based at least in part on a second sub-chunk of the one or more parts. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. One or more computer-readable media storing computer-executable instructions for verifying data integrity that, when executed by one or more processors, configure the one or more processors to perform operations comprising:
-
performing a first data operation in connection with a data object, the first data operation based at least in part on a first partitioning of the data object into first partitions; verifying the data object using a data verification algorithm to generate a first verification value based at least in part on the first partitions by generating one or more partitions of the data in a predetermined size; performing a second data operation in connection with the data object, the second data operation based at least in part on a second partitioning of the data object into second partitions, the second partitions being different from the first partitions and at least one of the first partitions or at least one of the second partitions having a size that is a multiple of the predetermined size; verifying the data object using the data verification algorithm to generate a second verification value; and determining whether the second verification value matches the first verification value. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
-
22. (canceled)
Specification