CPC G06F 21/6227 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0644 (2013.01); G06F 3/067 (2013.01); G06F 8/65 (2013.01); G06F 11/10 (2013.01); G06F 11/1076 (2013.01); G06F 11/2089 (2013.01); G06F 12/1408 (2013.01); G06F 21/602 (2013.01); G06F 21/6218 (2013.01); G06F 21/64 (2013.01); H04L 9/085 (2013.01); H04L 9/0861 (2013.01); G06F 15/17331 (2013.01); G06F 16/27 (2019.01); G06F 2212/263 (2013.01); G06F 2221/2107 (2013.01); H04L 2209/24 (2013.01); H04L 2209/34 (2013.01)] | 20 Claims |
1. A method comprises:
receiving a data segment;
encoding the data segment into a set of encoded data slices using dispersed error encoding, wherein the data segment is reconstructable from a decode threshold number of encoded data slices of the set of encoded data slices;
storing, in storage units of a storage network, the set of encoded data slices, in accordance with a shared key-based encryption system of the storage units having keys shared with the storage units, wherein sharing the keys with the storage units via the shared key-based encryption system includes sharing a first key between a first subset of the storage units and sharing a second key, that differs from the first key, between a second subset of the storage units that differs from the first subset of the storage units;
retrieving, in accordance with the shared key-based encryption system, the set of encoded data slices from the storage units of the storage unit to verify whether individual slices of the set of encoded data slices have been corrupted; and
when one of the set of encoded data slices stored in one of the storage units has been corrupted, rebuilding the one of the set of encoded data slices by:
retrieving the decode threshold number of other slices of the set of encoded data slices, in accordance with the shared key-based encryption system;
reconstructing the one of the set of encoded data slices based on the dispersed error encoding, to generate a reconstructed data slice; and
storing, in accordance with the shared key-based encryption system, the reconstructed data slice.
|