US2017180334A1PendingUtilityA1
Data security utilizing disassembled data structures
Est. expiryDec 17, 2034(~8.4 yrs left)· nominal 20-yr term from priority
G06F 9/3001G06F 21/6218H04N 21/4408G06F 21/62H04L 63/0428G06F 21/602G06F 17/16H04L 63/0272
48
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
Various examples are directed to machines and methods for disassembling and reassembling data structures. An ordered set of functions may be applied to a data array comprising a plurality of data units, each associated with a unique coordinate set. Data units returned by the ordered set of functions may be written in order to one or more disassembled data containers.
Claims
exact text as granted — not AI-modified1 . A computer-implemented data security system, comprising:
a computing device comprising at least one processor and a memory in communication with the at least one processor, wherein the computing device is programmed to perform operations comprising:
accessing a multi-dimensional array comprising a plurality of data units of a data structure, wherein each data unit of the plurality of data units is described by a unique position in the multi-dimensional array;
applying to the multi-dimensional array, a first function selected from an ordered set of functions, wherein applying the first function comprises:
determining a first multi-dimensional coordinate set based at least in part on the first function and a first range value;
moving a first data unit positioned in the multi-dimensional array at a first location described by the first multi-dimensional coordinate set to a disassembled data container;
determining a second multi-dimensional coordinate set based at least in part on the first function and a second range value; and
moving a second data unit positioned in the multi-dimensional array at a second location described by the first multi-dimensional coordinate set to the disassembled data container; and
applying a second function to the multi-dimensional array, wherein the second function is positioned immediately after the first function in the ordered set of functions.
2 . The system of claim 1 , wherein the computing device is also programmed to perform operations comprising:
selecting the first range value from a first range of an ordered set of ranges; and selecting the second range value from the first range, wherein the second range value is immediately after the first range value in the first range.
3 . The system of claim 1 , wherein applying the first function to the multi-dimensional array further comprises:
writing a first replacement data unit to the first location in the multi-dimensional array; and writing a second replacement data unit to the second location in the multi-dimensional array.
4 . The system of claim 1 , wherein the computing device is also programmed to reassemble the data structure by performing operations comprising:
applying a last function from the ordered set of functions to the multi-dimensional array and the disassembled data container, wherein the last function is at a last position of the ordered set of functions, and wherein applying the last function comprises:
applying a last range value for the last function to generate a last multi-dimensional set of coordinates; and
moving a last data unit from the disassembled data container to a last location at the multi-dimensional array described by the last multi-dimensional set of coordinates; and
applying a next-to-last function from the ordered set of functions to the multi-dimensional array and the disassembled data container.
5 . The system of claim 1 , wherein the determining of the first multi-dimensional coordinate set is based at least in part on a first function parameter selected from the group consisting of a first function offset and a first function coefficient.
6 . The system of claim 1 , wherein the computing device is also programmed to perform operations comprising:
receiving, by the at least one processor, the data structure; and generating the multi-dimensional array based at least in part on the data structure.
7 . The system of claim 1 , wherein the multi-dimensional array is a three-dimensional array, wherein the data structure represents a video comprising a plurality of two-dimensional frames, and further comprising stacking, by the at least one processor, the plurality of two-dimensional frames to generate the multi-dimensional array.
8 . The system of claim 1 , wherein the computing device is also programmed to perform operations comprising encrypting the multi-dimensional array after applying the first function and the second function.
9 . A computer-implemented method, comprising:
accessing, by at least one processor, a multi-dimensional array comprising a plurality of data units of a data structure, wherein each data unit of the plurality of data units is described by a unique position in the multi-dimensional array; applying, by the at least one processor and to the multi-dimensional array, a first function selected from an ordered set of functions, wherein applying the first function comprises:
determining a first multi-dimensional coordinate set based at least in part on the first function and a first range value;
moving a first data unit positioned in the multi-dimensional array at a first location described by the first multi-dimensional coordinate set to a disassembled data container;
determining a second multi-dimensional coordinate set based at least in part on the first function and a second range value; and
moving a second data unit positioned in the multi-dimensional array at a second location described by the first multi-dimensional coordinate set to the disassembled data container; and
applying a second function to the multi-dimensional array, by the at least one processor, wherein the second function is positioned immediately after the first function in the ordered set of functions.
10 . The method of claim 9 , further comprising:
selecting the first range value from a first range of an ordered set of ranges; and selecting the second range value from the first range, wherein the second range value is immediately after the first range value in the first range.
11 . The method of claim 9 , wherein applying the first function to the multi-dimensional array further comprises:
writing a first replacement data unit to the first location in the multi-dimensional array; and writing a second replacement data unit to the second location in the multi-dimensional array.
12 . The method of claim 9 , further comprising reassembling the data structure by performing operations comprising:
applying a last function from the ordered set of functions to the multi-dimensional array and the disassembled data container, wherein the last function is at a last position of the ordered set of functions, and wherein applying the last function comprises:
applying a last range value for the last function to generate a last multi-dimensional set of coordinates; and
moving a last data unit from the disassembled data container to a last location at the multi-dimensional array described by the last multi-dimensional set of coordinates; and
applying a next-to-last function from the ordered set of functions to the multi-dimensional array and the disassembled data container.
13 . The method of claim 9 , wherein the determining of the first multi-dimensional coordinate set is based at least in part on a first function parameter selected from the group consisting of a first function offset and a first function coefficient.
14 . The method of claim 9 , further comprising:
receiving, by the at least one processor, the data structure; and generating the multi-dimensional array based at least in part on the data structure.
15 . The method of claim 9 , wherein the multi-dimensional array is a three-dimensional array, wherein the data structure represents a video comprising a plurality of two-dimensional frames, and further comprising stacking, by the at least one processor, the plurality of two-dimensional frames to generate the multi-dimensional array.
16 . The method of claim 9 , further comprising encrypting the multi-dimensional array after applying the first function and the second function.
17 . At least one computer-readable medium comprising instructions thereon that, when executed by a computer, causes the computer to perform operations comprising:
accessing a multi-dimensional array comprising a plurality of data units of a data structure, wherein each data unit of the plurality of data units is described by a unique position in the multi-dimensional array; applying to the multi-dimensional array, a first function selected from an ordered set of functions, wherein applying the first function comprises:
determining a first multi-dimensional coordinate set based at least in part on the first function and a first range value;
moving a first data unit positioned in the multi-dimensional array at a first location described by the first multi-dimensional coordinate set to a disassembled data container;
determining a second multi-dimensional coordinate set based at least in part on the first function and a second range value; and
moving a second data unit positioned in the multi-dimensional array at a second location described by the first multi-dimensional coordinate set to the disassembled data container; and
applying a second function to the multi-dimensional array, wherein the second function is positioned immediately after the first function in the ordered set of functions.
18 . The at least one computer-readable medium of claim 17 , further comprising instructions that when executed by the computer cause the computer to perform operations comprising:
selecting the first range value from a first range of an ordered set of ranges; and selecting the second range value from the first range, wherein the second range value is immediately after the first range value in the first range.
19 . The at least one computer-readable medium of claim 17 , wherein applying the first function to the multi-dimensional array further comprises:
writing a first replacement data unit to the first location in the multi-dimensional array; and writing a second replacement data unit to the second location in the multi-dimensional array.Join the waitlist — get patent alerts
Track US2017180334A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.