IP Library Granted Patent US 10,931,402
Granted Patent B2
US 10,931,402 · App. 16/362,209 · Granted Feb 23, 2021

Distributed storage system data management and security

Inventors: David Yanovsky (Tallinn, EE); Teimuraz Namoradze (Tallinn, EE); Vera Dmitriyevna Miloslavskaya (Saint-Peterberg, RU)
Assignee: Cloud Storage, Inc.
H04L1/0057G06F3/065G06F3/067G06F3/0619G06F11/1076G06F11/1088G06F12/0253G06F12/0848G06F12/1408G06F12/1466G06F16/1752G06F21/00G06F21/6218H03M13/13H03M13/1515H03M13/2921H03M13/616H04L9/0863H04L9/0894H04L9/3226H04L63/0428H04L67/1097G06F2212/1052G06F2212/282G06F2212/702G06F2221/2107
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,931,402
App. No.
16/362,209
Granted
Feb 23, 2021
Kind
B2
Abstract

Secure distributed storage and transmission of electronic content is provided over at least one communication network. At least one data file is received and parsed into a plurality of segments, wherein each one of the segments has a respective size. Thereafter, each of the plurality of segments is divided into a plurality of slices, wherein each one of the slices has a respective size. A plurality of data chunks are encoded, each data chunk comprising a portion of at least two of the slices, wherein no portion comprises an entire slice. The data chunks are packaged with at least metadata, and each of the packages is assigned to respective remote storage nodes. Each of the packages is transmitted to the respectively assigned remote storage node.

Claims (36)

1. A method for providing secure distributed storage and transmission of electronic content over at least one communication network, the method comprising:

receiving, by at least one processor configured by executing instructions stored on non-transitory processor-readable media, at least one data file;

parsing, by the at least one processor, the at least one data file into a plurality of segments, wherein each one of the segments has a respective size;

dividing, by the at least one processor, each of the plurality of segments into a plurality of slices, wherein each one of the slices has a respective size;

encoding, by the at least one processor, a plurality of data chunks, each data chunk comprising i) a portion of at least two of the slices from a first segment and ii) a plurality of portions of at least one respective slice from each of at least two other of the plurality of segments, wherein no portion comprises an entire slice;

generating, by the at least one processor, metadata that represents at least the respective encoding of the plurality of data chunks;

packaging, by the at least one processor, each of the data chunks with at least the metadata;

assigning, by the at least one processor, each of the packages to respective remote storage nodes; and

transmitting, by the at least one processor, each of the packages to the respectively assigned remote storage node.

2. The method of claim 1 , wherein the step of packaging includes erasure coding, wherein the metadata is encoded and not visible to unauthorized users.

3. The method of claim 2 , further comprising abstracting, by the at least one processor, the metadata with two or more of: additional metadata associated with a respective remote storage node; a configuration of a data vault; a hyperlink to an active data vault; and information representing a current state of data blocks.

4. The method of claim 1 , wherein the metadata includes information for reconstructing related segments from corresponding packages and/or information for reconstructing the at least one data file from the plurality of segments.

5. The method of claim 1 , wherein each of the packages include at least some redundant information from at least one other package.

6. The method of claim 1 , further comprising determining by the at least one processor at least one parameter representing at least one of available network bandwidth, geographic proximity, and node availability, wherein selection of respective remote storage nodes is made as a function of the at least one parameter.

7. The method of claim 1 , further comprising applying, by the at least one processor, categories of data, wherein the step of encoding is based at least in part on a respective category.

8. The method of claim 1 , wherein the respective storage nodes are provided as network addressable storage.

9. The method of claim 1 , further comprising providing, by the at least one processor, a graphical user interface that is configured to display at least one map showing locations of the respective storage nodes and a respective operational status of the respective storage nodes.

10. The method of claim 9 , wherein the graphical user interface includes an interactive dashboard that identifies information associated with available storage space, used space, and a number of stored data objects.

11. A system for providing secure distributed storage and transmission of electronic content over at least one communication network, the system comprising:

at least one processor, wherein the at least one processor is configured by executing instructions stored on non-transitory processor-readable media to perform the steps of:

receiving at least one data file;

parsing the at least one data file into a plurality of segments, wherein each one of the segments has a respective size; dividing each of the plurality of segments into a plurality of slices, wherein each one of the slices has a respective size;

encoding a plurality of data chunks, each data chunk comprising i] a portion of at least two of the slices from a first segment and ii) a plurality of portions of at least one respective slice from each of at least two other of the plurality of segments, wherein no portion comprises an entire slice;

generating, by the at least one processor, metadata that represents at least the respective encoding of the plurality of data chunks;

packaging each of the data chunks with at least the metadata;

assigning each of the packages to respective remote storage nodes; and

transmitting each of the packages to the respectively assigned remote storage node.

12. The system of claim 11 , wherein the step of packaging includes erasure coding, wherein the metadata is encoded and not visible to unauthorized users.

13. The system of claim 12 , wherein the non-transitory processor-readable media further have instructions that, when executed by the at least one processor, cause the at least one processor to abstract the metadata with two or more of: additional metadata associated with a respective remote storage node; a configuration of a data vault; a hyperlink to an active data vault; and information representing a current state of data blocks.

14. The system of claim 11 , wherein the metadata includes information for reconstructing related segments from corresponding packages and/or information for reconstructing the at least one data file from the plurality of segments.

15. The system of claim 11 , wherein each of the packages include at least some redundant information from at least one other package.

16. The system of claim 11 , wherein the non-transitory processor-readable media further have instructions that, when executed by the at least one processor, cause the at least one processor to determine at least one parameter representing at least one of available network bandwidth, geographic proximity, and node availability, wherein selection of respective remote storage nodes is made as a function of the at least one parameter.

17. The system of claim 11 , wherein the non-transitory processor-readable media further have instructions that, when executed by the at least one processor, cause the at least one processor to apply categories of data, wherein the step of encoding is based at least in part on a respective category.

18. The system of claim 11 , wherein the respective storage nodes are provided as network addressable storage.

19. The system of claim 11 , wherein the non-transitory processor-readable media further have instructions that, when executed by the at least one processor, cause the at least one processor to provide a graphical user interface that is configured to display at least one map showing locations of the respective storage nodes and a respective operational status of the respective storage nodes.

20. The system of claim 19 , wherein the graphical user interface includes an interactive dashboard that identifies information associated with available storage space, used space, and a number of stored data objects.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2021
From: CLINEHAIR COMMERCIAL ENDEAVORS, LLC
To: CLOUD STORAGE, INC.
Reel/Frame 055654/0430 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED AT REEL: 053763 FRAME: 0432. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Mar 19, 2021
From: DATOMIA RESEARCH LABS OÜ
To: CLINEHAIR COMMERCIAL ENDEAVORS, LLC
Reel/Frame 055661/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2020
From: DATOMIA RESEARCH LABS OÜ
To: CLINE HAIR COMMERCIAL ENDEAVORS (CHCE) LLC
Reel/Frame 053763/0432 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2019
From: YANOVSKY, DAVID; NAMORADZE, TEIMURAZ; MILOSLAVSKAYA, VERA DMITRIYEVNA
To: DATOMIA RESEARCH LABS OU
Reel/Frame 050733/0364 →
Continuity (8)
Continuation In Part 15460119 · Mar 15, 2017
Continuation 15460093 · Mar 15, 2017
Provisional Application 62646396 · Mar 22, 2018
Provisional Application 62308223 · Mar 15, 2016
Provisional Application 62332002 · May 5, 2016
Provisional Application 62349145 · Jun 13, 2016
Provisional Application 62434421 · Dec 15, 2016
Related Publication 20190356416A1 · Nov 21, 2019