Patents Assigned to Cleversafe, Inc.
-
Patent number: 9116832Abstract: A method begins by a processing module receiving data for storage and interpreting the data to identify the data as redundant array of independent disks (RAID) data. The method continues with the processing module interpreting the RAID data to identify at least one of RAID block data and RAID parity data. When the RAID data includes RAID block data and RAID parity data the method continues with the processing module encoding the RAID block data in accordance with error coding dispersal storage function parameters to produce at least one set of encoded data slices and outputting the at least one set of encoded data slices to a dispersed storage network memory.Type: GrantFiled: August 13, 2014Date of Patent: August 25, 2015Assignee: Cleversafe, Inc.Inventors: Gary W. Grube, Jason K. Resch
-
Publication number: 20150234708Abstract: A method includes storing tasks in a task queue. The method continues with computing devices retrieving at least some of the plurality of tasks for execution. The method includes a computing device issuing read requests and initiate delete requests to storage units regarding an unassigned task, wherein the initiate delete requests instruct the storage units to flag for deletion, but not execute deletion, of a set of encoded task slices corresponding to the unassigned task. The method continues with the computing device receiving responses. When the responses include encoded task slices, the method continues with the computing device decoding them to recover the unassigned task. The method continues with the computing device executing the recovered task and, when execution is successful, issuing commit delete requests to the storage units that instruct the storage units to delete the set of encoded task slices for the unassigned task.Type: ApplicationFiled: May 5, 2015Publication date: August 20, 2015Applicant: CLEVERSAFE, INC.Inventors: Michael Colin Storm, Jason K. Resch
-
Publication number: 20150235032Abstract: A method for storing a data object includes identifying data segments of the data object. The method continues with generating key indexes for the data segments. For a data segment, the method continues with accessing data segment key information based on a corresponding key index of the plurality of key indexes to determine whether an encryption key has been generated for a similar data segment. When the encryption key has been generated for the similar data segment, the method continues with using the encryption key to encrypt the data segment to produce an encrypted data segment. The method continues with compressing the encrypted data segment to produce a compressed and encrypted data segment. The method continues with storing the compressed and encrypted data segment in a storage unit of a dispersed storage network (DSN).Type: ApplicationFiled: May 6, 2015Publication date: August 20, 2015Applicant: CLEVERSAFE, INC.Inventors: Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Kumar Abhijeet, Greg Dhuse, Jason K. Resch
-
Patent number: 9110593Abstract: A method begins by a dispersed storage (DS) processing module encrypting a data segment utilizing an encryption key to produce an encrypted data segment and performing a deterministic function on the encrypted data to produce a transformed representation of the encrypted data. The method continues with the DS processing module masking the encryption key utilizing the transformed representation of the encrypted data to produce a masked key, partitioning the masked key into a plurality masked key partitions, partitioning the encrypted data segment into a plurality of encrypted data segment partitions, and combining the plurality of masked key partitions with the plurality of encrypted data segment partitions to produce a plurality of combined partitions. For a combined partition of the plurality of combined partitions, the method continues with the DS processing module encoding the combined partition using a dispersed storage error coding function to produce a set of encoded data slices.Type: GrantFiled: July 15, 2014Date of Patent: August 18, 2015Assignee: Cleversafe, Inc.Inventor: Jason K. Resch
-
Patent number: 9112535Abstract: A method begins by a first device obtaining data for transmission to a second device and partitioning the data to produce a plurality of data portions. The method continues with the first device dispersed storage error encoding the plurality of data portions using a plurality of sets of error coding dispersal storage function parameters to produce a plurality of sets of encoded data slices and transmitting the plurality of sets of encoded data slices to the second device via a network. The method continues with a second device receiving at least a decode threshold number of encoded data slices and dispersed storage error decoding the at least a decode threshold number of encoded data slices to produce a decoded data portion for each set of the plurality of sets of encoded data slices. The method continues with the second device recapturing the data from a plurality of decoded data portions.Type: GrantFiled: October 3, 2011Date of Patent: August 18, 2015Assignee: Cleversafe, Inc.Inventor: S. Christopher Gladwin
-
Patent number: 9110833Abstract: A method begins by a dispersed storage (DS) processing module receiving data from a plurality of sources and queuing the data for storage in a dispersed storage network (DSN). The method continues with the DS processing module utilizing temporary dispersed storage error encoding parameters for efficient and reliable error encoded temporary storage of the data in the DSN. For a data object of the data temporarily stored in the DSN, the method continues with the DS processing module determining non-temporary storage parameters for the data object, retrieving first encoded data slices regarding the data object from the DSN, reconstructing the data object from the first encoded data slices in accordance with the temporary dispersed storage error encoding parameters, encoding the reconstructed data object in accordance with the non-temporary storage parameters for the data object to produce second encoded data slices, and storing the second encoded data slices in the DSN.Type: GrantFiled: May 8, 2013Date of Patent: August 18, 2015Assignee: Cleversafe, Inc.Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg Dhuse, Thomas Franklin Shirley, Jr., Wesley Leggette, Jason K. Resch, Gary W. Grube
-
Patent number: 9110819Abstract: A method begins with a processing module determining that storage of data requires updating, wherein the data is stored as a plurality of sets of encoded data slices in DSN memory. For a first type of updating, the processing module increases the total number while maintaining the decode threshold number. The processing module then, for each set of encoded data slices, creates another encoded data slice in accordance with the dispersed storage error encoding function and the increased total number and sends the new encoded data slices to the DSN memory. For a second type of updating, the processing module increases the total number and the decode threshold number. The processing module then recovers the data and encodes it in accordance with the dispersed storage error encoding function using the increased total number and the increased decode threshold number to produce an updated plurality of sets of encoded data slices.Type: GrantFiled: January 6, 2014Date of Patent: August 18, 2015Assignee: Cleversafe, Inc.Inventors: Bart Cilfone, Jason K. Resch, S. Christopher Gladwin
-
Patent number: 9110834Abstract: A method begins by a processing module establishing a dispersed storage (DS) error coding function based on a number of local memories associated with the computing device, wherein a decode threshold number of the DS error coding function corresponds to the number of local memories. The method continues with the processing module encoding a data segment of data utilizing the DS error coding function to produce a set of encoded data slices, of which the decode threshold number of encoded data slices is required to recover the data and the set of encoded data slices includes a pillar width number of encoded data slices. The method continues with the processing module storing the decode threshold number of encoded data slices in the local memories and outputting a remaining number of encoded data slices of the set of encoded data slices to the dispersed storage network (DSN) memory for storage therein.Type: GrantFiled: September 9, 2014Date of Patent: August 18, 2015Assignee: Cleversafe, Inc.Inventors: Jason K. Resch, Gary W. Grube, Timothy W. Markison
-
Patent number: 9104541Abstract: A method begins by a dispersed storage (DS) processing module generating a certificate signing request (CSR) that includes a certificate and a certificate extension, wherein the certificate includes information regarding a requesting device and wherein the certificate extension includes information regarding an accessible dispersed storage network (DSN) address range for the requesting device. The method continues with the DS processing module outputting the CSR to a certificate authority of a DSN and receiving a signed certificate from the certificate authority, wherein the signed certificate includes a certification signature of the certificate authority authenticating the certificate and the certificate extension. The method continues with the DS processing module storing the signed certificate for use when generating a DSN access request, wherein the DSN access request is requesting access to dispersed storage error encoded data in the DSN at an address within the accessible DSN address range.Type: GrantFiled: July 8, 2014Date of Patent: August 11, 2015Assignee: Cleversafe, Inc.Inventors: Jason K. Resch, Wesley Leggette, Andrew Baptist
-
Patent number: 9104691Abstract: A method begins by dividing a data segment into data segment portions. The method continues by encoding the data segment portions to produce a plurality of sets of encoded data segment portions. A data segment portion is encoded by, first, selecting an encoding equation and an encoding constant(s). The encoding continues by setting a first variable to the data segment portion. The encoding continues by setting a second variable to one of a set of pillar numbers. The encoding continues by executing the encoding equation using the encoding constant, the first variable, and the second variable to produce one of the plurality of sets of encoded data segment portions. The method continues by arranging the plurality of sets of encoded data segment portions into a plurality of encoded data slices. The method continues by sending the plurality of encoded data slices to distributed storage units of a distributed storage network.Type: GrantFiled: January 16, 2013Date of Patent: August 11, 2015Assignee: Cleversafe, Inc.Inventors: Jason K. Resch, Wesley Leggette
-
Patent number: 9104719Abstract: A method begins with receiving a data search criteria. The method continues by accessing a master database that includes a plurality of entries, wherein an entry includes a data name field, a metadata field, a data DSN address, and a metadata DSN address. The method continues by indexing the database based on a comparison of the data search criteria with metadata contained in the metadata field of the entries. The method continues by, when one or more entries of the database have the metadata that substantially matches the data search criteria, utilizing the data DSN address of the one or more entries to retrieve one or more sets of encode data slices. The method continues by decoding the one or more sets of encoded data slices to retrieve one or more data segments corresponding to the data search criteria.Type: GrantFiled: April 7, 2014Date of Patent: August 11, 2015Assignee: Cleversafe, Inc.Inventor: Wesley Leggette
-
Publication number: 20150220400Abstract: A method begins by a processing module of a dispersed storage network (DSN) identifying a data segment to be retrieved from storage units of the DSN, where the data segment is encoded into a set of encoded data slices that is divided into block sets of encoded data slices, and where each storage unit stores a block set of encoded data slices. The method continues with the processing module generating a set of read requests in accordance with retrieval information which assures that at least a decode threshold number of encoded data slices of the set are retrievable, where each request includes identity of a block set a number of encoded data slices that are to be read from a storage unit. The method continues with the processing module sending the set of read requests to the storage units and decoding received encoded data slices to recover the data segment.Type: ApplicationFiled: November 20, 2014Publication date: August 6, 2015Applicant: CLEVERSAFE, INC.Inventors: Jason K. Resch, Wesley Leggette
-
Publication number: 20150220396Abstract: A method for writing a set of encoded data slices to memory of a dispersed storage network (DSN) begins by a processing module identifying an encoded data slice of the set of encoded data slices for a redundant write operation to produce an identified encoded data slice. The method continues with the processing module generating a set of first write requests regarding the set of encoded data slices less the identified encoded data slice and generating a set of second write requests regarding the identified encoded data slice. The method continues with the processing module sending the set of first write requests to storage units of the DSN and sending the set of second write requests to a set of storage units of the DSN, where each storage unit of the set of storage units is sent a corresponding one of the set of second write requests.Type: ApplicationFiled: December 15, 2014Publication date: August 6, 2015Applicant: CLEVERSAFE, INC.Inventors: Thomas Franklin Shirley, Jr., Gary W. Grube, Bart Cilfone, Ravi Khadiwala, Greg Dhuse, Thomas Darrel Cocagne, Michael Colin Storm, Yogesh Ramesh Vedpathak, Wesley Leggette, Jason K. Resch, Andrew Baptist, Ilya Volvovski
-
Patent number: 9098376Abstract: In a dispersed storage network, data objects are dispersed storage error encoded into pluralities of sets of encoded data slices that are each stored in corresponding sets of storage units. To recover a data object, a read threshold number of encoded data slices from each set of encoded data slices of the plurality of sets of encoded data slices are required. Upon determining that an update is available for the storage units, a dispersed storage managing unit determines an updating sequence pattern that ensures that while one or more storage units are taken off line for the update, a sufficient number of storage units remain on line such that at least the read threshold number of encoded data slices are available for each set of encoded data slices.Type: GrantFiled: May 30, 2014Date of Patent: August 4, 2015Assignee: Cleversafe, Inc.Inventor: Jason K. Resch
-
Patent number: 9098441Abstract: A method begins by a processing module generating an integrity check value for each encoded data slice of a set of encoded data slices to produce a set of integrity check values. The method continues with the processing module encoding the set of integrity check values to produce encoded integrity check values. The method continues with the processing module sending the encoded integrity check values for storage in a memory system.Type: GrantFiled: July 9, 2013Date of Patent: August 4, 2015Assignee: Cleversafe, Inc.Inventor: Jason K. Resch
-
Patent number: 9098409Abstract: A method begins where a processing module accesses at least some of a set of basic input/output system (BIOS) memories to retrieve a decode threshold number of encoded BIOS slices, where a BIOS program is dispersed storage error encoded to produce the set of encoded BIOS slices. The method continues with the processing module reconstructing the BIOS program from the decode threshold number of encoded BIOS slices. The method continues with the processing module detecting a BIOS issue based on one or more of an operational issue with one or more BIOS memories of the set of BIOS memories, a rebuild issue with one or more encoded BIOS slices of the one or more sets of encoded BIOS slices, and a modification to the BIOS program. The method continues with the processing module determining a BIOS change regarding the BIOS issue and implementing the BIOS change.Type: GrantFiled: June 11, 2014Date of Patent: August 4, 2015Assignee: Cleversafe, Inc.Inventors: Gary W. Grube, Timothy W. Markison
-
Publication number: 20150213279Abstract: A method begins with a processing module receiving a request to store a data object from a first requesting device. The method continues with the processing module determining that a substantially similar version of the data object is currently stored in a DSN. The method continues with the processing module determining that a number of unique combinations of retrieving the plurality of sets of encoded data slices has exceeded a threshold and, when so, encoding, with a same decode threshold number and an increased pillar width number, the data object to create and store a plurality of sub-set of redundancy encoded data slices. The method continues with the processing module creating a unique combination of retrieving the data object for the first requesting device based on the plurality of sets of encoded data slices and the plurality of sub-set of redundancy encoded data slices.Type: ApplicationFiled: April 7, 2015Publication date: July 30, 2015Applicant: CLEVERSAFE, INC.Inventors: Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Kumar Abhijeet, Greg Dhuse, Jason K. Resch
-
Publication number: 20150212887Abstract: A method begins by a processing module storing a set of encoded data slices in storage units. A data segment of data is encoded, in accordance with dispersed storage error encoding parameters, to produce the set of encoded data slices. The dispersed storage error encoding parameters include a decode threshold number and a pillar width number, which is at least twice the decode threshold number. The method continues with the processing module processing a first request for retrieval of the data segment by retrieving a first sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a first recovered data segment. The method continues with the processing module processing a second request for retrieval of the data segment by retrieving a second sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a second recovered data segment.Type: ApplicationFiled: April 6, 2015Publication date: July 30, 2015Applicant: CLEVERSAFE, INC.Inventors: Greg Dhuse, Ilya Volvovski, Zachary J. Mark, Sebastien Vas, Andrew Baptist
-
Patent number: 9092140Abstract: A dispersed storage (DS) method begins by issuing a plurality of write commands to a plurality of DS storage units. The method continues by receiving a write acknowledgement from one of the plurality of DS storage units to produce a received write acknowledgement. The method continues by issuing a plurality of commit commands to the plurality of DS storage units when a write threshold number of the received write acknowledgements have been received. The method continues by receiving a commit acknowledgement from a DS storage unit of the plurality of DS storage units to produce a received commit acknowledgement. The method continues by issuing a plurality of finalize commands to the plurality of DS storage units when a write threshold number of the received commit acknowledgements have been received.Type: GrantFiled: April 16, 2013Date of Patent: July 28, 2015Assignee: Cleversafe, Inc.Inventors: Bart Cilfone, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch
-
Patent number: 9092294Abstract: A method of upgrading software components within a dispersed data storage network is disclosed. A list of identifiers corresponding to devices within the dispersed data storage network is assembled. Each member of the list is assigned to an upgrade set based on the devices that are reachable by the vaults associated with the device.Type: GrantFiled: April 20, 2009Date of Patent: July 28, 2015Assignee: Cleversafe, Inc.Inventors: Sanjaya Kumar, Steve Hoffman, Dusty Hendrickson, Bart Cilfone