Verifying data integrity utilizing dispersed storage
First Claim
1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:
- retrieving at least a threshold number of error coded data slices of a set of error coded data slices from storage units of the DSN, wherein a dispersed storage error encoding function has been altered to include an intentional error pattern to produce an altered dispersed storage error encoding function, wherein a data segment was encoded using the altered dispersed storage error encoding function to produce the set of error coded data slices, and wherein, as a result of the intentional error pattern, one or more error coded data slices of the set of error coded data slices is intentionally altered to include an error;
identifying, based on the intentional error pattern, error coded data slices of the at least a threshold number of error coded data slices that were intentionally altered to include the error to produce identified error coded data slices;
modifying the identified error coded data slices to extract the intentionally included error to produce adjusted error coded data slices;
decoding the adjusted error coded data slices and remaining ones of the at least a threshold number of error coded data slices using the dispersed storage error encoding function to produce a recovered data segment;
encoding the recovered data segment using the altered dispersed storage error encoding function to produce a test set of error coded data slices;
comparing the error coded data slices of the test set of error coded data slices with the error coded data slices of the at least a threshold number of error coded data slices; and
when, on a corresponding slice by slice basis, the error coded data slices of the test set of error coded data slices substantially match the error coded data slices of the at least a threshold number of error coded data slices, indicating that the recovered data segment has not been corrupted.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a processing module retrieving at least a threshold number of error coded data slices of a set of error coded data slices from storage units of a dispersed storage network (DSN) and identifying, based on an intentional error pattern, error coded data slices that were intentionally altered to produce identified error coded data slices. The method continues with the processing module decoding the set of error coded data slices to produce a recovered data segment and encoding the recovered data segment using an altered dispersed storage error encoding function to produce a test set of error coded data slices for comparing with corresponding error coded data slices. When the test set of error coded data slices substantially match the corresponding error coded data slices, the method continues with the processing module indicating that the recovered data segment has not been corrupted.
80 Citations
16 Claims
-
1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:
-
retrieving at least a threshold number of error coded data slices of a set of error coded data slices from storage units of the DSN, wherein a dispersed storage error encoding function has been altered to include an intentional error pattern to produce an altered dispersed storage error encoding function, wherein a data segment was encoded using the altered dispersed storage error encoding function to produce the set of error coded data slices, and wherein, as a result of the intentional error pattern, one or more error coded data slices of the set of error coded data slices is intentionally altered to include an error; identifying, based on the intentional error pattern, error coded data slices of the at least a threshold number of error coded data slices that were intentionally altered to include the error to produce identified error coded data slices; modifying the identified error coded data slices to extract the intentionally included error to produce adjusted error coded data slices; decoding the adjusted error coded data slices and remaining ones of the at least a threshold number of error coded data slices using the dispersed storage error encoding function to produce a recovered data segment; encoding the recovered data segment using the altered dispersed storage error encoding function to produce a test set of error coded data slices; comparing the error coded data slices of the test set of error coded data slices with the error coded data slices of the at least a threshold number of error coded data slices; and when, on a corresponding slice by slice basis, the error coded data slices of the test set of error coded data slices substantially match the error coded data slices of the at least a threshold number of error coded data slices, indicating that the recovered data segment has not been corrupted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A dispersed storage network (DSN) comprises:
-
a first module, when operable within a device of the DSN, causes the device to; retrieve at least a threshold number of error coded data slices of a set of error coded data slices from storage units of the DSN, wherein a dispersed storage error encoding function has been altered to include an intentional error pattern to produce an altered dispersed storage error encoding function, wherein a data segment was encoded using the altered dispersed storage error encoding function to produce the set of error coded data slices, and wherein, as a result of the intentional error pattern, one or more error coded data slices of the set of error coded data slices is intentionally altered to include an error; identify, based on the intentional error pattern, error coded data slices of the at least a threshold number of error coded data slices that were intentionally altered to include the error to produce identified error coded data slices; modify the identified error coded data slices to extract the intentionally included error to produce adjusted error coded data slices; and decode the adjusted error coded data slices and remaining ones of the at least a threshold number of error coded data slices using the dispersed storage error encoding function to produce a recovered data segment; a second module, when operable within the device, causes the device to; encode the recovered data segment using the altered dispersed storage error encoding function to produce a test set of error coded data slices; and a third module, when operable within the device, causes the device to; compare the error coded data slices of the test set of error coded data slices with the error coded data slices of the at least a threshold number of error coded data slices; and when, on a corresponding slice by slice basis, the error coded data slices of the test set of error coded data slices substantially match the corresponding error coded data slices of the at least a threshold number of error coded data slices, indicate that the recovered data segment has not been corrupted. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification