Patent application number | Description | Published |
20090094251 | Virtualized data storage vaults on a dispersed data storage network - A system, method, and apparatus for implementing a plurality of dispersed data storage networks using a set of slice servers are disclosed. A plurality of information records are maintained, with each information record corresponding to a dispersed data storage network. The information record maintains what slice servers are used to implement the dispersed data storage network, as well as other information needed to administer a DDSN, such as the information dispersal algorithm used, how data is stored, and whether data is compressed or encrypted. | 04-09-2009 |
20100169415 | SYSTEMS, METHODS, AND APPARATUS FOR IDENTIFYING ACCESSIBLE DISPERSED DIGITAL STORAGE VAULTS UTILIZING A CENTRALIZED REGISTRY - A centralized depository for storing information regarding a collection of servers and other hardware used to implement a plurality of virtual dispersed data storage containers is disclosed. The centralized depository describes each virtual dispersed data storage container as well as the hardware used to provide the plurality of virtual dispersed data storage containers. Computers operating on or seeking to access specific virtual dispersed data storage containers can obtain the information required for access from the centralized depository. | 07-01-2010 |
20100169500 | SYSTEMS, METHODS, AND APPARATUS FOR MATCHING A CONNECTION REQUEST WITH A NETWORK INTERFACE ADAPTED FOR USE WITH A WITH A DISPERSED DATA STORAGE NETWORK - A gateway module translates access requests from client computers into commands for a plurality of slice servers storing data for a dispersed data storage network. The gateway program maintains a plurality of gateway modules, each providing a different access protocol to the dispersed data storage network, and each also maintaining one or more virtual storage vaults. | 07-01-2010 |
20100179966 | VIRTUALIZED DATA STORAGE VAULTS ON A DISPERSED DATA STORAGE NETWORK - A dispersed data storage system includes a plurality of slice servers. In the system, a first set of the slice servers supports a first virtual digital data storage vault and a second set of the slice servers supports a second virtual digital data storage vault. A slice server is in the first and second sets and functions to: receive a request to access a virtual digital data storage vault; determine whether the virtual digital data storage vault is the first or the second virtual digital data storage vault; when the virtual digital data storage vault is the first or the second virtual digital data storage vault, determine whether the request is valid; and when the request is valid, execute the request to generate a response. | 07-15-2010 |
20100250751 | SLICE SERVER METHOD AND APPARATUS OF DISPERSED DIGITAL STORAGE VAULTS - A slicer server includes a network port, memory, and a central processing module. The central processing unit functions to obtain, via the network port, an information record regarding a virtual dispersed data storage container. The central processing unit further functions to determine whether its list of virtual dispersed data storage containers includes the virtual dispersed data storage container. The central processing unit further functions to, when the list does not include the virtual dispersed data storage container, update the list to include the virtual dispersed data storage container and allocate a portion of the memory to the virtual dispersed data storage container. | 09-30-2010 |
20100266119 | DISPERSED STORAGE SECURE DATA DECODING - A method operating on a computer begins by generating a read command to read at least some of a plurality of data slices from a dispersed storage network. The method continues by receiving the at least some of the plurality of data slices. The method continues by performing a reverse information dispersal algorithm on at least some of the plurality of data slices to produce a plurality of transposed data elements. The method continues by reverse transposing the plurality of transposed data elements to recover data elements of a data segment. | 10-21-2010 |
20100266120 | DISPERSED DATA STORAGE SYSTEM DATA ENCRYPTION AND ENCODING - A computing system securely stores data to a dispersed data storage system. The computing system includes a processing module and a plurality of storage units. The processing module includes an encryptor and error encoder to encrypt and encode the data for dispersal utilizing a write command to the storage units. The storage units store the encrypted and encoded data when receiving the write command and the encrypted and encoded data. | 10-21-2010 |
20100268877 | SECURING DATA IN A DISPERSED STORAGE NETWORK USING SHARED SECRET SLICES - A data element can be encoded into multiple encoded data elements using an encoding algorithm that includes an encoding function and one or more encoder constant. The encoded data elements can be organized into multiple pillars, each having a respective pillar number. Each of the pillars is sent to a different storage unit of a distributed storage network. To recover the original data element, the encoded data elements are retrieved from storage, and the encoder constant is recovered using multiple encoded data elements. Recovering the encoder constant allows the encoding algorithm originally used to encode the data elements to be determined, and used to recover the original data element. The security of the stored data is enhanced, because an encoded data element from a single pillar is insufficient to identify the encoder constant. | 10-21-2010 |
20100268966 | Efficient and secure data storage utilizing a dispersed data storage system - A method of securely storing data to a dispersed data storage system is disclosed. A data segment is arranged along the columns or rows of an appropriately sized matrix. Data slices are then created based on either the columns or the rows so that no consecutive data is stored in a data slice. Each data slice is then stored in a separate storage node. | 10-21-2010 |
20100269008 | DISPERSED DATA STORAGE SYSTEM DATA DECODING AND DECRYPTION - A computing system retrieves securely stored encrypted and encoded data from a dispersed data storage system. The computing system includes a processing module and a plurality of storage units. The processing module includes an error decoder and a decryptor and to decode and decrypt the encrypted and encoded data retrieved from the dispersed data storage system utilizing a read command to the storage units. The storage units retrieve the encrypted and encoded data and send the encrypted and encoded data to the processing module when receiving the read command. | 10-21-2010 |
20110026842 | DISPERSED STORAGE NETWORK DATA MANIPULATION - A method begins by a processing module receiving data for dispersed storage, wherein the data has an associated user identification (ID), and obtaining a codec flag based on the associated user ID. The codec flag may indicate one or more codec types and a codec execution order. The codec types may include two or more of: a null data manipulation, one or more versions of a data integrity function, one or more versions of a compression function, and/or one or more versions of an encryption function. The method continues with the processing module manipulating the data to produce manipulated data utilizing the one or more codec types in the codec execution order, encoding the manipulated data using an error coding dispersal storage function to produce a plurality of encoded data slices, and sending the slices and codec flag to a plurality of DS storage units for storage. | 02-03-2011 |
20110029744 | DISPERSED STORAGE NETWORK VIRTUAL ADDRESS SPACE - A dispersed storage network utilizes a virtual address space to store data. The dispersed storage network includes a processing unit operable to slice a data segment of a data object into data slices and create a slice name for each of the data slices. The slice name includes an identifier of the data object and a virtual memory address of a virtual memory associated with the dispersed storage network. The processing unit further outputs each of the data slices and the respective slice names to a corresponding storage unit for storage of the data slices therein. | 02-03-2011 |
20110055903 | AUTHENTICATING USE OF A DISPERSED STORAGE NETWORK - At least one dispersed storage (DS) processing unit ( | 03-03-2011 |
20110078372 | DISTRIBUTED STORAGE NETWORK MEMORY ACCESS BASED ON MEMORY STATE - A distributed storage unit determines how to handle a read or write request for a data slice based on a state of the memory the data slice is to be read from or written to. When receiving a request to retrieve a data slice, the distributed storage unit, determines a state of the memory in which the data slice is stored. Based on the memory state, one of multiple different methods for obtaining the data slice is selected. The methods include, among others, a direct read from the memory, and reconstructing the data slice using other memories and parity values. In response to a write request, the distributed storage unit can determine whether to use the currently selected memory for writing, or rotate the memory used for writing, based on a state of the memory. | 03-31-2011 |
20110106855 | DISTRIBUTED STORAGE TIMESTAMPED REVISIONS - Various revisions of encoded data slices stored in a distributed storage system can be time stamped to assist in retrieving desired data revisions. Each of the multiple revisions of the encoded data slices may have the same name, but different revision numbers. An encoded data slice, which is received at a distributed storage unit along with a write command, slice name, and the revision number, is time stamped. The timestamp and revision number are stored in conjunction with the data slice. A desired encoded data slice can be retrieved by sending a read command, slice name, and timeframe to the distributed storage unit. The appropriate encoded data slice can be retrieved by determining which revision number has a timestamp most closely matching the requested timeframe. | 05-05-2011 |
20110106904 | DISTRIBUTED STORAGE NETWORK FOR STORING A DATA OBJECT BASED ON STORAGE REQUIREMENTS - A distributed storage network (DSN) includes a user device and a plurality of DSN memories, wherein each of the DSN memories includes a plurality of storage units. The user device includes at least one network interface to the plurality of DSN memories and at least one processing module that is operable to determine one of the plurality of DSN memories for storing a data object based on a comparison of one or more storage requirements of the data object and one or more DSN attributes of the plurality of DSN memories. | 05-05-2011 |
20110107036 | DISTRIBUTED STORAGE REVISION ROLLBACKS - Multiple revisions of an encoded data slice can be stored in a distributed storage unit. Before writing a new revision of an encoded data slice to storage, the distributed storage unit can invoke a write lock for all encoded data slices having the same slice name as the slice being currently written. The slice being currently written can be stored in temporary storage, and a rollback timer started. If a commit command is received before expiration of the rollback timer, the currently written slice can be permanently stored and made accessible for read requests. If the rollback timer expires prior to the storage unit receiving a commit command, however, a previously stored revision will be used. | 05-05-2011 |
20110107180 | INTENTIONALLY INTRODUCED STORAGE DEVIATIONS IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a first request to store a program. The method continues with the processing module determining first error coding dispersal storage function parameters and encoding a data segment of the program. The method continues with the processing module determining whether a second request to store the program is received. The method continues with the processing module encoding a second data segment of the program in accordance with the first error coding dispersal storage function parameters when the second request is not received. The method continues with the processing module changing the first error coding dispersal storage function parameters based on the another request to produce second error coding dispersal storage function parameters when the second request is received. The method continues with the processing module encoding the second data segment in accordance with the second error coding dispersal storage function parameters. | 05-05-2011 |
20110107380 | MEDIA DISTRIBUTION TO A PLURALITY OF DEVICES UTILIZING BUFFERED DISPERSED STORAGE - A method begins by a processing module receiving a plurality of playback requests for a stored program, wherein the stored program is stored in a dispersed storage network (DSN) memory as a plurality of groups of sets of encoded data slices. For each of the plurality of playback requests, the method continues with the processing module storing a first group of the plurality of groups of sets of encoded data slices in a playback DSN memory to produce a first buffered group, outputting the first buffered group to a requesting device corresponding to the each of the plurality of playback requests, storing a second group of the plurality of groups of sets of encoded data slices in the playback DSN memory to produce a second buffered group, and outputting the second buffered group to the requesting device. | 05-05-2011 |
20110161681 | DIRECTORY SYNCHRONIZATION OF A DISPERSED STORAGE NETWORK - A method begins by a processing module dispersed storage error encoding data to produce a set of encoded data slices and generating a transaction identifier regarding storage of the set of encoded data slices. The method continues with the processing module outputting a plurality of write request messages to a plurality of dispersed storage (DS) units, wherein each of the plurality of write request messages includes the transaction identifier and a corresponding one of the set of encoded data slices. The method continues with the processing module receiving write response messages from at least some of the DS units, wherein each of the write response messages includes a reference to the transaction identifier. The method continues with the processing module updating directory information regarding storage of the data to produce updated directory information when at least a write threshold number of the write response messages have been received. | 06-30-2011 |
20110161754 | REVISION SYNCHRONIZATION OF A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a write request message from a dispersed storage (DS) processing module, wherein the write request message includes a slice name, a DS processing module most-recent slice revision, a new slice revision, and an encoded directory slice of directory information regarding storage of data. The method continues with the processing module obtaining, from local memory, a DS unit most-recent slice revision based on the slice name. The method continues with the processing module storing the new slice revision as the DS unit most-recent slice revision and storing the encoded directory slice when the DS unit most-recent slice revision compares favorably to the DS processing module most-recent slice revision. | 06-30-2011 |
20110184912 | DISPERSED STORAGE NETWORK UTILIZING REVISION SNAPSHOTS - A method begins by a processing module obtaining a directory file and determining a new snapshot identifier (ID) for the directory file. The method continues with the processing module identifying a version of a filename to associate with the new snapshot ID and updating the directory file by associating the snapshot ID to the version of the filename to produce an updated directory file. The method continues with the processing module dispersed storage error encoding the updated directory file to produce a set of encoded updated directory file slices and sending the set of encoded updated directory file slices to a dispersed storage network (DSN) memory for storage. | 07-28-2011 |
20110185141 | DATA MIGRATION IN A DISPERSED STORAGE NETWORK - A method begins by processing module determining data to migrate, wherein the data is stored as a plurality of sets of encoded data slices in a first set of dispersed storage (DS) units. The method continues with the processing module retrieving at least a read threshold number of encoded data slices for each set of the plurality of sets of encoded data slices and dispersed storage error decoding the at least the read threshold number of encoded data slices in accordance with error coding dispersal storage function parameters to reproduce the data. The method continues with the processing module dispersed storage error encoding the data in accordance with second error coding dispersal storage function parameters to produce a plurality of sets of second encoded data slices and sending at least a write threshold number of second encoded data slices to a second set of DS units for storage therein. | 07-28-2011 |
20110185253 | DIRECTORY FILE SYSTEM IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a data storage request, wherein the data storage request includes data and a data identifier (ID). The method continues with the processing module dispersed storage error encoding the data to produce a set of encoded data slices and determining a data dispersed storage network (DSN) address. The method continues with the processing module sending the set of encoded data slices to a DSN memory for storage at the data DSN address and updating a directory file with path information corresponding to the data ID and the data DSN address to produce an updated directory file. The method continues with the processing module dispersed storage error encoding the updated directory file to produce a set of encoded updated directory slices and sending the set of encoded updated directory slices to the DSN memory for storage at a directory DSN address. | 07-28-2011 |
20110202568 | VIRTUALIZED DATA STORAGE VAULTS ON A DISPERSED DATA STORAGE NETWORK - A slice server includes a network port, a central processing unit, and memory. The central processing unit (CPU) is operable to receive, via the network port, a request to access a virtual digital data storage vault. The CPU then determines whether the slice server supports the virtual digital data storage vault. When the slice server supports the virtual digital data storage vault, the CPU determines whether the request is valid. When the request is valid, the CPU executes the request to generate a response. | 08-18-2011 |
20110213940 | VIRTUALIZED DATA STORAGE VAULTS ON A DISPERSED DATA STORAGE NETWORK - A method begins with a slice server receiving a request to access a virtual digital data storage vault. The method continues by determining whether the virtual digital data storage vault is a first virtual digital data storage vault or a second virtual digital data storage vault. The slice server supports a portion of each of the first and the second virtual digital data storage vaults. When the virtual digital data storage vault is the first or the second virtual digital data storage vault, the method continues by determining whether the request is valid. When the request is valid, the method continues by executing the request to generate a response. | 09-01-2011 |
20110225362 | ACCESS CONTROL IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a data storage request that includes data and determining dispersed storage error encoding parameters for dispersed error encoding storage of data. The method continues with the processing module dispersed storage error encoding the data in accordance with the dispersed storage error encoding parameters to produce a set of encoded data slices and establishing access control information for each encoded data slice of the set encoded data slices in accordance with the dispersed storage error encoding parameters to produce a set of access control information. The method continues with the processing module appending a corresponding one of the set of access control information to each of the set of encoded data slices to produce a set of appended slices and outputting the set of appended slices to a set of dispersed storage units. | 09-15-2011 |
20110225386 | DISPERSED STORAGE UNIT CONFIGURATION - A dispersed storage (DS) unit for use within a dispersed storage network is capable of self-configuring using registry information provided to the DS unit. The registry information includes a slice name assignment indicating a range of slice names corresponding to a plurality of potential data slices of potential data objects to be stored in the DS unit. Based on the registry information, the DS unit allocates a portion of physical memory to store the potential data slices. | 09-15-2011 |
20110225451 | REQUESTING CLOUD DATA STORAGE - A method begins by a processing module determining that a data storage request is a cloud data storage request. The method continues with the processing module determining at least one of a cloud storage access reliability indication and a cloud storage data reliability indication for the data storage request. The method continues with the processing module sending the data storage request and the at least one of cloud storage access reliability indication and cloud storage data reliability indication to a cloud storage system. | 09-15-2011 |
20110261813 | LIST RANGE OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by a processing module generating a payload section of a dispersed storage network (DSN) frame regarding a list range request operation by generating a start slice name field of the payload section to include a start slice name of a slice name range, generating an end slice name field of the payload section to include an end slice name of the slice name range, and generating a maximum response count field of the payload section to include a maximum slice name response count. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length that represents a length of the payload section and generating remaining fields of the protocol header. | 10-27-2011 |
20110261838 | DISPERSED STORAGE NETWORK FRAME PROTOCOL HEADER - A method to generate a protocol header of a dispersed storage network (DSN) frame begins by a processing module generating a protocol class field and generating a protocol class version field. The method continues with the processing module generating an operation code (opcode) field and generating a request/response field. The method continues with the processing module generating a request number field and generating a payload length field. The method continues with the processing module outputting, in order, the protocol class field, the protocol class version field, the opcode field, the request/response field, the request number field, and the payload length field. | 10-27-2011 |
20110261839 | WRITE OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by a processing module generating a payload of a dispersed storage network frame by generating a transaction number field to include a transaction number corresponding to a write request operation and generating one or more slice payload sections, wherein each slice payload section includes generating a slice name field to include a slice name corresponding to an encoded data slice, generating a slice revision numbering field to include a revision number of the slice name, generating a slice length field to include a length of the encoded data slice, and generating a slice payload field to include the encoded data slice. The method continues with the processing module generating a protocol header by generating a payload length field including a payload length representing length of the transaction number field and length of the one or more slice payload sections and generating remaining fields of the protocol header. | 10-27-2011 |
20110261840 | INTERMEDIATE WRITE OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by a processing module generating a payload of a dispersed storage network (DSN) frame regarding an intermediate write request operation by generating one or more transaction number fields of the payload to include one or more transaction numbers corresponding to a write request operation, wherein the intermediate write request operation is associated with the write request operation. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length that represents a length of the one or more transaction number fields and generating remaining fields of the protocol header. | 10-27-2011 |
20110264823 | READ OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by a processing module generating a payload section of a dispersed storage network (DSN) frame regarding a read request operation by generating one or more slice name fields of the payload section to include one or more slice names corresponding to one or more encoded data slices and generating a transaction number field of the payload section to include a transaction number corresponding to the read request operation. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length that represents a length of the payload section and generating remaining fields of the protocol header. | 10-27-2011 |
20110264869 | CONCLUSIVE WRITE OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by a processing module generating a payload of a dispersed storage network frame regarding a conclusive write request operation by generating one or more slice name fields of a payload to include one or more slice names corresponding to one or more write commit responses of a write request operation, wherein the conclusive write request operation is a conclusive phase of the write request operation. The method continues with the processing module generating one or more slice revision numbering fields of the payload, wherein each slice revision numbering field includes a slice revision number corresponding to an associated slice name of the one or more slice names. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length and generating remaining fields of the protocol header. | 10-27-2011 |
20110264950 | CHECK OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by a processing module generating a payload section of a dispersed storage network (DSN) frame regarding a check request operation by generating one or more slice name fields of the payload section to include one or more slice names corresponding to one or more encoded data slices and generating a transaction number field of the payload section to include a transaction number corresponding to the check request operation. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length that represents a length of the payload section and generating remaining fields of the protocol header. | 10-27-2011 |
20110264962 | CHECKED WRITE OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by a processing module generating a payload of a dispersed storage network frame by generating a transaction number field including a transaction number and generating one or more slice payload sections, wherein each slice payload section includes a slice name field to include a slice name corresponding to an encoded data slice, a last known slice revision numbering field including a last known revision number of the slice name, a new slice revision numbering field including a new revision number of the slice name, a slice length field including a length of the encoded data slice, and a slice payload field including the encoded data slice. The method continues with the processing module generating a protocol header including a payload length field and remaining fields of the protocol header. | 10-27-2011 |
20110264989 | DISPERSED STORAGE NETWORK SLICE NAME VERIFICATION - A method begins by a processing module dispersed storage error encoding data to produce a plurality of sets of encoded data slices in accordance with dispersed storage error coding parameters. The method continues with the processing module determining a plurality of sets of slice names corresponding to the plurality of sets of encoded data slices. The method continues with the processing module determining integrity information for the plurality of sets of slice names and sending the plurality of sets of encoded data slices, the plurality of sets of slice names, and the integrity information to a dispersed storage network memory for storage therein. | 10-27-2011 |
20110286594 | STORAGE OF SENSITIVE DATA IN A DISPERSED STORAGE NETWORK - A method begins by a processing module applying a share encoding function on data to produce a plurality of encoded shares and generating a corresponding plurality of random numbers for the plurality of encoded shares. The method continues with the processing module generating an encryption key based on a common password and a corresponding one of the corresponding plurality of random numbers and encrypting the encoded share utilizing the encryption key to produce an encrypted share for each encoded share of the plurality of encoded shares. The method continues with the processing module facilitating storage of the corresponding plurality of random numbers and each of the encrypted shares. | 11-24-2011 |
20110289283 | MEMORY DEVICE UTILIZATION IN A DISPERSED STORAGE NETWORK - A method begins by a processing module determining whether a memory device of a dispersed storage (DS) unit is unavailable to produce an unavailable memory device. The method continues with the processing module determining a methodology regarding DS encoded data stored in the unavailable memory device based on one or more dispersed storage network (DSN) conditions to produce a determined methodology when the memory device is unavailable. The method continues with the processing module initiating, in accordance with the determined methodology, a rebuilding function to rebuild the DS encoded data to produce rebuilt DS encoded data when the determined methodology includes a rebuilding component. The method continues with the processing module storing the rebuilt DS encoded data within available memory of the DS unit. | 11-24-2011 |
20110311051 | UTILIZING A DETERMINISTIC ALL OR NOTHING TRANSFORMATION IN A DISPERSED STORAGE NETWORK - A method begins by a processing module generating a deterministic key from data and encrypting the data using the deterministic key to produce encrypted data. The method continues with the processing module generating transformed data from the encrypted data and generating a masked key from the deterministic key and the transformed data. The method continues with the processing module combining the masked key and the encrypted data to produce a secure package. | 12-22-2011 |
20110314072 | METADATA ACCESS IN A DISPERSED STORAGE NETWORK - A method begins by a processing module dispersed storage error encoding a data segment to produce a set of encoded data slices and dispersed storage error encoding metadata associated with the data segment to produce a set of encoded metadata slices. The method continues with the processing module creating a set of data slice names for the set of encoded data slices and creating a set of metadata slice names based on the set of data slice names. The method continues with the processing module sending the set of encoded data slices and the set of data slice names to a dispersed storage network (DSN) memory for storage therein. The method continues with the processing module sending the set of encoded metadata slices and the set of metadata slice names to the DSN memory for storage therein. | 12-22-2011 |
20120030371 | RESOLVING A PROTOCOL ISSUE WITHIN A DISPERSED STORAGE NETWORK - A method begins by a processing module detecting a potential dispersed storage network (DSN) protocol issue that effects access of dispersed storage error encoded data within a DSN. The method continues with the processing module identifying a DSN entity based on the DSN protocol issue and generating a DSN protocol inquiry frame. The method continues with the processing module transmitting the DSN protocol inquiry frame to the DSN entity. The method continues with the processing module receiving a DSN protocol response frame from the DSN entity and resolving the DSN protocol issue based on the DSN protocol response frame. | 02-02-2012 |
20120030437 | PROCESSING A WRITE REQUEST IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a write request regarding an encoded data slice and determining whether the write request pertains to deleting the encoded data slice from a memory space. The method continues with the processing module storing a deletion marker regarding the encoded data slice when the write request pertains to deleting the encoded data slice. The method continues with the processing module determining when to delete the encoded data slice based on the deletion marker and in accordance with the deletion scheme. | 02-02-2012 |
20120030736 | AUTHENTICATING A DATA ACCESS REQUEST TO A DISPERSED STORAGE NETWORK - A method begins by a data accessing module of a dispersed storage network (DSN) sending a data access request to a data storage module. The method continues with the data storage module sending an authentication request to an authenticating module. The method continues with the authenticating module outputting a verification request destined for the data accessing module, wherein the verification request includes a verification code that is generated based on the authentication request. The method continues with the data accessing module outputting a verification response that includes a modified verification code that is generated based on the verification code and a credential. The method continues with the authenticating module outputting an authentication response to the data storage module, wherein the authentication response is generated based on the verification response. The method continues with the data storage module facilitating the data access request when the authentication response is favorable. | 02-02-2012 |
20120030740 | AUTHENTICATION OF DEVICES OF A DISPERSED STORAGE NETWORK - A method begins by a first processing module generating a dispersed storage network (DSN) authentication request frame that includes authenticating data and an authenticating code, wherein the authenticating code references a valid authenticating process. The method continues with the first processing module transmitting the DSN authentication request frame to a second processing module. The method continues with the second processing module determining whether the second processing module includes the valid authentication process referenced by the authentication code. When the second processing module includes the valid authentication process, processing, by the second processing module, the authenticating data in accordance with the valid authentication process to produce processed authenticating data. The method continues with the second processing module generating a DSN authentication response frame that includes the processed authenticating data and transmitting the DSN authentication response frame to the first processing module. | 02-02-2012 |
20120166757 | RETRIEVING DATA SEGMENTS FROM A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a file retrieval request for a file, wherein the file includes one or more data regions, and wherein a data region of the one or more data regions is divided into a plurality of data segments and stored as a plurality of sets of encoded data slices in a dispersed storage network (DSN) memory. The method continues with the processing module retrieving a segment allocation table (SAT), wherein a SAT entry of a plurality of SAT entries includes information regarding storing the data region in the DSN memory and a segmentation scheme regarding the dividing of the data region into the plurality of data segments. The method continues with the processing module identifying the plurality of sets of encoded data slices and retrieving at least a sufficient number of the plurality of sets of encoded data slices to regenerate the data region. | 06-28-2012 |
20120166867 | STORING DIRECTORY METADATA IN A DISPERSED STORAGE NETWORK - A method begins by a processing module dispersed storage error encoding data to produce encoded data slices and updating directory metadata regarding storing the data in a dispersed storage network (DSN) memory to produce updated directory metadata. The method continues with the processing module dispersed storage error encoding the updated directory metadata to produce encoded directory metadata slices and transmitting one or more data slice write requests to the DSN that each include a first transaction number. The method continues with the processing module transmitting one or more directory metadata write requests to the DSN memory, wherein the one or more directory metadata write requests includes a second transaction number, and when a favorable write response condition exists, transmitting a commit request to the DSN memory to commit storage of at least one of: the encoded data slices and the encoded directory metadata slices. | 06-28-2012 |
20120166868 | SEGMENTING DATA FOR STORAGE IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving data of a file for storage in a dispersed storage network (DSN) memory and determining a segmentation scheme for storing the data. The method continues with the processing module determining how to store the data in accordance with the segmentation scheme to produce information for storing the data and generating an entry within a segment allocation table associated with the file, wherein the entry includes the information for storing the data and the segmentation scheme. The method continues with the processing module facilitating storage of the segment allocation table in the DSN memory. The method continues with the processing module segmenting the data in accordance with the segmentation scheme to produce a plurality of data segments and facilitating storage of the plurality of data segments in the DSN memory in accordance with the information for storing the data. | 06-28-2012 |
20120198066 | UTILIZING A DISPERSED STORAGE NETWORK ACCESS TOKEN MODULE TO ACQUIRE DIGITAL CONTENT FROM A DIGITAL CONTENT PROVIDER - A method begins with a computing device receiving a request to acquire digital content from a digital content provider and forwarding the request to a dispersed storage network (DSN) pre-paid module. The method continues with the DSN pre-paid module validating the request, generating a plurality of sets of at least a threshold number of digital content read requests, and sending the plurality of sets of the at least a threshold number of digital content read requests to the digital content provider via the computing device when the request to acquire the digital content is validated. The method continues with at least one of the DSN pre-paid module and the computing device receiving a plurality of sets of at least a decoded threshold number of encoded data slices and decoding the plurality of sets of the at least a decoded threshold number of encoded data slices to produce the digital content. | 08-02-2012 |
20120198311 | UTILIZING A DISPERSED STORAGE NETWORK ACCESS TOKEN MODULE TO ACCESS A DISPERSED STORAGE NETWORK MEMORY - A method begins by a computing device determining that dispersed storage network (DSN) memory is to be accessed regarding data. The method continues when the computing device is paired with a DSN access token module with the DSN access token module retrieving a plurality of sets of at least a threshold number of dispersed storage (DS) error coding function slices from the DSN memory via the computing device. The method continues with at least one of the computing device and the DSN access token module decoding the plurality of sets of the at least a threshold number of DS error coding function slices using a default DS error coding function to recapture a DS error coding function and executing, by one or more of the computing device and the DSN access token module, the DS error coding function to access the DSN memory regarding the data. | 08-02-2012 |
20120198536 | UTILIZING A DISPERSED STORAGE NETWORK ACCESS TOKEN MODULE TO STORE DATA IN A DISPERSED STORAGE NETWORK MEMORY - A method for storing data begins with determining, by a computing device, where to store the data and continues with managing, by a dispersed storage network (DSN) access token module, a pairing between the DSN access token module and the computing device. The method continues with sending, by the computing device, at least a portion of the data to the DSN access token module and encoding, by the DSN access token module, the at least a portion of the data using a dispersed storage error encoding function to produce one or more sets of encoded data slices. The method continues with sending, by the DSN access token module, the one or more sets of encoded data slices and storage information to the computing device and sending, by the computing device, the one or more sets of encoded data slices to the DSN memory for storage therein. | 08-02-2012 |
20120198537 | UTILIZING A DISPERSED STORAGE NETWORK ACCESS TOKEN MODULE TO RETRIEVE DATA FROM A DISPERSED STORAGE NETWORK MEMORY - A method begins by a computing device determining that data is stored in dispersed storage network (DSN) memory and sending a data retrieval request to a DSN access token module regarding the data. The method continues with the DSN access token module generating a plurality of sets of data slice read requests and sending the plurality of sets of data slices read requests to the computing device. The method continues with, for a set of data slices read requests, the computing device sending the set of data slices read requests to the DSN memory, receiving data slices from the DSN memory, and sending the data slices to the DSN access token module. The method continues with the DSN access token module decoding the data slices to produce a decoded data segment and sending the decoded data segment to the computing device. | 08-02-2012 |
20120216035 | VALIDATING A CERTIFICATE CHAIN IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a certificate chain and determining whether at least one of one or more signed certificates of the chain has a valid signature. When the at least one of the one or more signed certificates has a valid signature, the method continues with the processing module identifying one or more certificate authorities (CA) to produce identified CAs, accessing registry information that includes one or more realm identifiers (IDs) and a plurality of trusted CA IDs, determining whether one or more of the identified CAs is a trusted CA, and when the one or more of the identified CAs is a trusted CA, indicating that the certificate chain is valid, identifying a realm ID based on a trusted CA ID, and generating certificate chain validation information to include the realm ID, trusted CAs, and the indication of the validity of the certificate chain. | 08-23-2012 |
20120226667 | DETERMINING A STALENESS STATE OF A DISPERSED STORAGE NETWORK LOCAL DIRECTORY - A method begins by a processing module determining a state of a dispersed storage network (DSN) local directory to be an unknown staleness state. When in the unknown staleness state, the method continues with the processing module comparing a local revision level of one of one or more local DSN directory files with a global revision level of a corresponding global DSN directory file. When the local revision level compares unfavorably to the global revision level, the method continues with the processing module updating the state of the DSN local directory to a stale state. When the local revision level compares favorably to the global revision level, the method continues with the processing module updating the state of the DSN local directory to a not-stale state. | 09-06-2012 |
20120226772 | TRANSFERRING DATA UTILIZING A TRANSFER TOKEN MODULE - A method for data transfer from a first computing device to a second computing device begins when the first computing device is paired with a transfer token module by the first computing device sending the data to the transfer token module. The method continues with the transfer token module encoding the data utilizing a dispersed storage error encoding function to produce a set of encoded data slices and sending the set of encoded data slices to a target destination. The method continues, when the second computing device is paired with the transfer token module, with the transfer token module retrieving the set of encoded data slices from the target destination and decoding the set of encoded data slices utilizing the dispersed storage error encoding function to recapture the data. The method continues with the second computing device storing the data. | 09-06-2012 |
20120226933 | MAINTAINING DATA CONCURRENCY WITH A DISPERSED STORAGE NETWORK - A method begins by a processing module generating a transaction number and generating at least a threshold number of dispersed storage network (DSN) concurrency requests, wherein each of the at least the threshold number of DSN concurrency requests includes a header section and a payload section; each of the payload sections includes the transaction number, a last known slice revision number, and a slice name section, wherein a first slice name section of a first one of the payload sections includes one or more first slice names that includes a first slice name corresponding to a first encoded data slice of a set of encoded data slices; and a second slice name section of a second one of the payload sections includes one or more second slice names that includes a second slice name corresponding to a second encoded data slice of the set of encoded data slices. | 09-06-2012 |
20120226960 | RETRIEVAL OF ENCODED DATA SLICES AND ENCODED INSTRUCTION SLICES BY A COMPUTING DEVICE - A computing device includes a central processing unit (CPU) and a memory system module. The CPU includes a data dispersed storage error coding (DSEC) module operable to DSEC decode a set of encoded ingress data slices to recapture ingress data and DSEC encode egress data to produce a set of encoded egress data slices, an instruction DSEC module operable to DSEC decode a set of encoded instruction slices to recapture an instruction, and an arithmetic logic unit (ALU) operable to, execute the instruction on the ingress data and execute the instruction to produce the egress data. The memory system module is operable to coordinate retrieval of the set of encoded ingress data slices from memory, coordinate retrieval of the set of encoded instruction slices from the memory, and coordinate storage of the set of encoded egress data slices in the memory. | 09-06-2012 |
20120254619 | GENERATING A SECURE SIGNATURE UTILIZING A PLURALITY OF KEY SHARES - A method begins by a module to generate a secure signature on an item by selecting a first key representation index of a set of key representation indexes, wherein a first mathematical encoding of a private key generates a first plurality of key shares as a first key representation. The method continues with the module determining whether a first plurality of signature contributions have been received in response to a signature request for the item based on the first key representation index, wherein one of a first set of dispersed storage (DS) units executes a first mathematical signature function using one of the first plurality of key shares on the item to produce a signature contribution of the first plurality of signature contributions and when the first plurality of signature contributions have been received, generating the secure signature on the item from the first plurality of signature contributions. | 10-04-2012 |
20120254687 | PRE-FETCHING DATA SEGMENTS STORED IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a data segment retrieval request regarding a data segment, which is stored in a dispersed storage network (DSN) memory. The method continues with the processing module processing the data segment retrieval request, determining pre-fetch segment buffering information, and when the pre-fetch segment buffering information indicates pre-fetching one or more other data segments, generating one or more pre-fetch segment retrieval requests for the one or more other data segments, receiving, one or more sets of at least a decode threshold number of encoded data slices, decoding, in accordance with a dispersed storage error coding function, the one or more sets of at least a decode threshold number of encoded data slices to reproduce the one or more other data segments, and updating a pre-fetch segment buffer with the one or more other data segments. | 10-04-2012 |
20120290830 | GENERATING AN ENCRYPTED MESSAGE FOR STORAGE - A method begins by a dispersed storage (DS) processing module generating a shared secret key from a public key of another entity and a private key using a first modulo prime polynomial function, wherein a public key is generated from the private key using a second modulo prime polynomial function and wherein the public key of the other entity is derived using the second modulo prime polynomial function on a private key of the other entity. The method continues with the DS module encrypting a message using the shared secret key to produce an encrypted message. The method continues with the DS module outputting the encrypted message to the other entity. | 11-15-2012 |
20120324293 | CONFIGURING A GENERIC COMPUTING DEVICE UTILIZING SPECIFIC COMPUTING DEVICE OPERATION INFORMATION - A method begins with the specific computing device token sending a distributed storage network (DSN) access request to DSN memory via the generic computing device. The DSN access request identifies specific computing device operation information that is stored as one or more of-sets of encoded data slices in the DSN memory. The method continues with the specific computing device token receiving the one or more of sets of encoded data slices from the DSN memory via the generic computing device and decoding the one or more of sets of encoded data slices to retrieve the specific computing device operation information. The method continues with enabling the generic computing device to function as a specific computing device in accordance with the specific computing device operation information. | 12-20-2012 |
20130086442 | STORING ENCODED DATA SLICES IN A DISPERSED STORAGE UNIT - A method begins by a processing module receiving a write request that includes a batch of encoded data slices and a corresponding batch of slice names, wherein the batch of encoded data slices includes encoded data slices that have slices names that have a common data object storage name, a common slice storage name, and a different data segment storage name. The method continues with the processing module determining whether a storage file exists based on the common data object storage name. The method continues with the processing module creating the storage file based on the common data object storage name when the storage file does not exist. The method continues with the processing module storing the batch of encoded data slices in the storage file based on the corresponding batch of slice names. | 04-04-2013 |
20130117560 | PROCESSING A DISPERSED STORAGE NETWORK ACCESS REQUEST UTILIZING CERTIFICATE CHAIN VALIDATION INFORMATION - A method begins by a processing module receiving a dispersed storage network (DSN) access request that includes a requester identifier (ID), wherein the requester ID is associated with a certificate chain. When the certificate chain is valid, the method continues with the processing module accessing registry information for the DSN. The method continues with the processing module identifying one of a plurality of access control lists based on at least one of information associated with the requester ID and information associated with the certificate chain, identifying one or more entries of the one of the plurality of access control lists based on the information associated with the certificate chain to produce one or more identified entries, and generating, for the DSN access request, permissions from one or more sets of permissions associated with the one or more identified entries. | 05-09-2013 |