SYSTEM AND METHOD FOR PSEUDO-RANDOM POLYMORPHIC TREE CONSTRUCTION
First Claim
1. A method comprising:
- receiving, at a server, a seed value;
generating a tag stream based on the seed value using a byte-string algorithm, wherein each tag in the tag stream is unique in the tag stream;
generating a pseudo-random polymorphic tree using the tag stream and a data tree; and
transmitting the pseudo-random polymorphic tree to a client.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed herein are systems, methods, and non-transitory computer-readable storage media for obfuscating data via a pseudo-random polymorphic tree. A server, using a seed value shared with a client device, generates a tag stream according to a byte-string algorithm. The server passes the tag stream and the data to be transmitted to the client device through a pseudo-random polymorphic tree serializer to generate a pseudo-random polymorphic tree, which the server transmits to the client device. The client device, using the same seed and byte-string algorithm, generates the same tag stream as on the server. The client passes that tag stream and the received pseudo-random polymorphic tree through a pseudo-random polymorphic tree parser to extract the data. Data to be transmitted from the server to the client device is hidden in a block of seemingly random data, which changes for different seed values. This approach obfuscates data and has low processing overhead.
26 Citations
25 Claims
-
1. A method comprising:
-
receiving, at a server, a seed value; generating a tag stream based on the seed value using a byte-string algorithm, wherein each tag in the tag stream is unique in the tag stream; generating a pseudo-random polymorphic tree using the tag stream and a data tree; and transmitting the pseudo-random polymorphic tree to a client. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a processor; a memory storing instructions for controlling the processor to perform steps comprising; generating a tag stream based on a seed value using a byte-string algorithm; receiving, from a server, a pseudo-random polymorphic tree containing data generated by the server; and parsing the pseudo-random polymorphic tree, based on the tag stream, to extract a data tree containing keys. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A non-transitory computer-readable storage medium storing instructions which, when executed by a computing device, cause the computing device to perform steps comprising:
-
generating a tag stream according to a seed value and a byte string algorithm; processing the tag stream and a data tree with a pseudo-random polymorphic tree serializer to yield a pseudo-random polymorphic tree; and storing the pseudo-random polymorphic tree for later retrieval. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. A method comprising:
-
retrieving, at a client device, a pseudo-random polymorphic tree from a storage location associated with the client device, wherein the pseudo-random polymorphic tree is generated according to a seed value, and wherein the pseudo-random polymorphic tree encodes a tag stream; and parsing the pseudo-random polymorphic tree using the seed value according to a byte-string algorithm to extract the tag stream. - View Dependent Claims (22, 23, 24, 25)
-
Specification