# US 10,121,022 B1 · Methods and systems for encrypting data using object-based screens

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,121,022 B1
- Document ID: US10121022B1
- Status: Granted
- Kind: B1
- Application number: 15/728,058
- Filed: 2017-10-09
- Granted: 2018-11-06
- Earliest claimed: 2017-10-09
- Applicants: Jason McNutt
- Inventors: Jason McNutt
- Web page: https://patentgrep.com/patent/US10121022B1

## CPC

- G06F 21/6227: {where protection concerns the structure of data, e.g. records, types, queries}
- G06F 3/0623: {in relation to content}
- G06F 3/064: {Management of blocks}
- G06F 3/0673: {Single storage device}
- G06F 21/602: {Providing cryptographic facilities or services}
- G06F 21/606: {by securing the transmission between two devices or processes}
- G06F 21/645: {using a third party}
- H04L 9/008: {involving homomorphic encryption}
- H04L 9/0897: {involving additional devices, e.g. trusted platform module [TPM], smartcard or USB}
- G06F 2221/2107: File encryption
- H04L 9/3231: {Biological data, e.g. fingerprint, voice or retina (network architectures or network communication protocols for supporting authentication of entities using biometrical features in a packet data network H04L63/0861)}
- H04L 9/3247: {involving digital signatures}
- H04L 9/3297: {involving time stamps, e.g. generation of time stamps}
- H04L 63/0876: {based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint}
- H04L 63/168: {above the transport layer}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system and method is provided for encrypting data for secure storage or transport. The method includes identifying a first object comprising a string of binary values and a second object comprising a string of integers, and processing the first and second objects to generate a wave screen comprising a set of remapping instructions associated with a block map layout. For each data segment to be encrypted, the method includes positioning the bits of the data segment within the block map layout to generate a data map, and encrypting the data map by applying the wave screen to remap the positions of the bits within the block map layout in accordance with the set of remapping instructions. The encrypted data map is then stored or transported as a representation of the data segment.

## Claims

### Claim 1

A method for encrypting data for secure storage or transport, comprising:
(a) using a computing device to generate a wave screen associated with a block map layout having a selected block size by:
identifying a first object and a second object, wherein the first object comprises a string of binary values and the second object comprises a string of integers;
generating a set of wave screen production instructions in which the binary values of the first object are paired with the integers of the second object to create a set of binary value/integer pairs, wherein the binary value of each of the binary value/integer pairs indicates a direction of bit movement within the block map layout and the integer of each of the binary value/integer pairs indicates an offset of bit movement within the block map layout;
generating the wave screen based on the set of wave screen production instructions, wherein the wave screen comprises a set of remapping instructions that identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions within the block map layout;
(b) using the computing device to encrypt the data for storage or transport by:
identifying at least one data segment to be encrypted, wherein the data segment comprises a plurality of bits;
positioning the bits of the data segment within the block map layout to generate a data map;
encrypting the data map by applying the wave screen to remap the positions of the bits within the block map layout in accordance with the set of remapping instructions; and
storing or transporting the encrypted data map as a representation of the data segment.

### Claim 2 (depends on 1)

The method of claim 1, wherein each of the first and second objects is associated with one of an identity of the computing device, a user identity, an organizational identity, a network identity, a biometric signature, a software application, a timestamp, and a geographic location.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first object has a string length x and provides 2x possible combinations of binary values for the first object, and wherein the second object has a string length y and provides y-factorial possible combinations of integers for the second object.

### Claim 4 (depends on 1)

The method of claim 1, wherein the selected block size of the block map layout is independent of a number of the binary values and a number of the integers in the first and second objects, respectively.

### Claim 5 (depends on 1)

The method of claim 1, wherein each of the initial bit positions are is transposed to the corresponding one of the remapped bit positions based on the direction of bit movement and the offset of bit movement associated with two of the binary value/integer pairs provided in the set of wave screen production instructions.

### Claim 6 (depends on 1)

The method of claim 1, wherein the computing device is further used to generate a data mask in which the binary values of the first object are striped across the block map layout, wherein each of the binary values in the data mask indicates any additional bit movement within the block map layout, and wherein generating the wave screen is based further on the data mask.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
(a2) using the computing device to generate a second wave screen associated with the block map layout having the selected block size by:
identifying a third object and a fourth object, wherein the third object comprises a string of binary values and the fourth object comprises a string of integers;
generating a second set of wave screen production instructions in which the binary values of the third object are paired with the integers of the fourth object to create a second set of binary value/integer pairs, wherein the binary value of each of the binary value/integer pairs indicates a direction of bit movement within the block map layout and the integer of each of the binary value/integer pairs indicates an offset of bit movement within the block map layout;
generating the second wave screen based on the second set of wave screen production instructions, wherein the second wave screen comprises a second set of remapping instructions that identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions within the block map layout; and
wherein the step of encrypting the data map further comprises applying the second wave screen to remap the positions of the bits within the block map layout in accordance with the second set of remapping instructions.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
(a2) using the computing device to generate a stumbling block associated with the block map layout having the selected block size by:
identifying a stumbling signature comprising a string of integers;
processing the stumbling signature to generate the stumbling block, wherein the stumbling block comprises a second set of remapping instructions associated with the block map layout, wherein the second set of remapping instructions identify a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions, and wherein the initial bit positions are transposed to the remapped bit positions based on the integers of the stumbling signature; and
wherein the step of encrypting the data map further comprises applying the stumbling block to remap the positions of the bits within the block map layout in accordance with the second set of remapping instructions.

### Claim 9 (depends on 1)

The method of claim 1, wherein the encrypted data map is decrypted by applying another wave screen to decrypt the data map and enable access to the data segment.

### Claim 10

A computing device for encrypting data for secure storage or transport, comprising:
a processor configured to:
(a) generate a wave screen associated with a block map layout having a selected block size by:
identifying a first object and a second object, wherein the first object comprises a string of binary values and the second object comprises a string of integers;
generating a set of wave screen production instructions in which the binary values of the first object are paired with the integers of the second object to create a set of binary value/integer pairs, wherein the binary value of each of the binary value/integer pairs indicates a direction of bit movement within the block map layout and the integer of each of the binary value/integer pairs indicates an offset of bit movement within the block map layout;
generating the wave screen based on the set of wave screen production instructions, wherein the wave screen comprises a set of remapping instructions that identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions within the block map layout;
(b) encrypt the data for storage or transport by:
identifying at least one data segment to be encrypted, wherein the data segment comprises a plurality of bits;
positioning the bits of the data segment within the block map layout to generate a data map;
encrypting the data map by applying the wave screen to remap the positions of the bits within the block map layout in accordance with the set of remapping instructions; and
one or both of (a) a memory device configured to store the encrypted data map as a representation of the data segment and (b) a communications interface configured to transport the encrypted data map as a representation of the data segment.

### Claim 11 (depends on 10)

The computing device of claim 10, wherein the processor retrieves the first and second objects from a storage device comprising one of a mobile phone, a removable storage device, and a smart card.

### Claim 12 (depends on 10)

The computing device of claim 10, wherein each of the first and second objects is associated with one of an identity of the computing device, a user identity, an organizational identity, a network identity, a biometric signature, a software application, a timestamp, and a geographic location.

### Claim 13 (depends on 10)

The computing device of claim 10, wherein the first object has a string length x and provides 2x possible combinations of binary values for the first object, and wherein the second object has a string lengthy and provides y-factorial possible combinations of integers for the second object.

### Claim 14 (depends on 10)

The computing device of claim 10, wherein the selected block size of the block map layout is independent of a number of the binary values and a number of the integers in the first and second objects, respectively.

### Claim 15 (depends on 10)

The computing device of claim 10, wherein each of the initial bit positions is transposed to the corresponding one of the remapped bit positions based on the direction of bit movement and the offset of bit movement associated with two of the binary value/integer pairs provided in the set of wave screen production instructions.

### Claim 16 (depends on 10)

The computing device of claim 10, wherein the processor is further configured to generate a data mask in which the binary values of the first object are striped across the block map layout, wherein each of the binary values in the data mask indicates any additional bit movement within the block map layout, and wherein generating the wave screen is based further on the data mask.

### Claim 17 (depends on 10)

The computing device of claim 10, wherein the processor is further configured to:
(a2) generate a second wave screen associated with the block map layout having the selected block size by:
identifying a third object and a fourth object, wherein the third object comprises a string of binary values and the fourth object comprises a string of integers;
generating a second set of wave screen production instructions in which the binary values of the third object are paired with the integers of the fourth object to create a second set of binary value/integer pairs, wherein the binary value of each of the binary value/integer pairs indicates a direction of bit movement within the block map layout and the integer of each of the binary value/integer pairs indicates an offset of bit movement within the block map layout;
generating the second wave screen based on the second set of wave screen production instructions, wherein the second wave screen comprises a second set of remapping instructions that identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions within the block map layout; and
wherein encrypting the data map further comprises applying the second wave screen to remap the positions of the bits within the block map layout in accordance with the second set of remapping instructions.

### Claim 18 (depends on 10)

The computing device of claim 10, wherein the processor is further configured to:
(a2) generate a stumbling block associated with the block map layout having the selected block size by:
identifying a stumbling signature comprising a string of integers;
processing the stumbling signature to generate the stumbling block, wherein the stumbling block comprises a second set of remapping instructions associated with the block map layout, wherein the second set of remapping instructions identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions, and wherein the initial bit positions are transposed to the remapped bit positions based on the integers of the stumbling signature; and
wherein encrypting the data map further comprises applying the stumbling block to remap the positions of the bits within the block map layout in accordance with the second set of remapping instructions.

### Claim 19 (depends on 10)

The computing device of claim 10, wherein the encrypted data map is decrypted by applying another wave screen to decrypt the data map and enable access to the data segment.

### Claim 20

A computing device for encrypting data for secure storage or transport, comprising:
a processor configured to:
(a) generate a wave screen associated with a block map layout having a selected block size by:
identifying a first object and a second object, wherein the first object comprises a string of binary values and the second object comprises a string of integers;
generating a set of wave screen production instructions in which the binary values of the first object are paired with the integers of the second object to create a set of binary value/integer pairs, wherein the binary value of each of the binary value/integer pairs indicates a direction of bit movement within the block map layout and the integer of each of the binary value/integer pairs indicates an offset of bit movement within the block map layout;
generating a data mask in which the binary values of the first object are striped across the block map layout, wherein each of the binary values in the data mask indicates any additional bit movement within the block map layout;
generate generating the wave screen based on the set of wave screen production instructions and the data mask, wherein the wave screen comprises a set of remapping instructions that identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions within the block map layout;
(b) encrypt the data for storage or transport by:
identifying at least one data segment to be encrypted, wherein the data segment comprises a plurality of bits;
positioning the bits of the data segment within the block map layout to generate a data map;
encrypting the data map by applying the wave screen to remap the positions of the bits within the block map layout in accordance with the set of remapping instructions; and
one or both of (a) a memory device configured to store the encrypted data map as a representation of the data segment and (b) a communications interface configured to transport the encrypted data map as a representation of the data segment.

### Claim 21 (depends on 20)

The computing device of claim 20, wherein the processor retrieves the first and second objects from a storage device comprising one of a mobile phone, a removable storage device, and a smart card.

### Claim 22 (depends on 20)

The computing device of claim 20, wherein each of the first and second objects is associated with one of an identity of the computing device, a user identity, an organizational identity, a network identity, a biometric signature, a software application, a timestamp, and a geographic location.

### Claim 23 (depends on 20)

The computing device of claim 20, wherein the first object has a string length x and provides 2x possible combinations of binary values for the first object, and wherein the second object has a string lengthy and provides y-factorial possible combinations of integers for the second object.

### Claim 24 (depends on 20)

The computing device of claim 20, wherein the processor is further configured to:
(a2) generate a stumbling block associated with the block map layout having the selected block size by:
identifying a stumbling signature comprising a string of integers;
processing the stumbling signature to generate the stumbling block, wherein the stumbling block comprises a second set of remapping instructions associated with the block map layout, wherein the second set of remapping instructions identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions, and wherein the initial bit positions are transposed to the remapped bit positions based on the integers of the stumbling signature; and
wherein encrypting the data map further comprises applying the stumbling block to remap the positions of the bits within the block map layout in accordance with the second set of remapping instructions.

### Claim 25 (depends on 20)

The computing device of claim 20, wherein the encrypted data map is decrypted by applying another wave screen to decrypt the data map and enable access to the data segment.

### Claim 26

A computing device for encrypting data for secure storage or transport, comprising:
a processor configured to:
(a) generate a wave screen associated with a block map layout having a selected block size by:
identifying a first object comprising a plurality of first object values and a second object comprising a plurality of second object values, wherein each of the first and second objects is associated with one of an identity of the computing device, a user identity, an organizational identity, a network identity, a biometric signature, a software application, a timestamp, and a geographic location;
generating a set of wave screen production instructions in which the first object values are paired with the second object values to create a set of first object value/second object value pairs, wherein the first object value of each of the first object value/second object value pairs indicates a direction of bit movement within the block map layout and the second object value of each of the first object value/second object value pairs indicates an offset of bit movement within the block map layout, wherein the first object values are binary values and the second object values are integers;
generating the wave screen based on the set of wave screen production instructions, wherein the wave screen comprises a set of remapping instructions that identifies a correspondence between a plurality of initial bit positions and a plurality of remapped bit positions within the block map layout;
(b) encrypt the data for storage or transport by:
identifying at least one data segment to be encrypted, wherein the data segment comprises a plurality of bits;
positioning the bits of the data segment within the block map layout to generate a data map;
encrypting the data map by applying the wave screen to remap the positions of the bits within the block map layout in accordance with the set of remapping instructions; and
one or both of (a) a memory device configured to store the encrypted data map as a representation of the data segment and (b) a communications interface configured to transport the encrypted data map as a representation of the data segment.

### Claim 27 (depends on 26)

The computing device of claim 26, wherein the processor retrieves the first and second objects from a storage device comprising one of a mobile phone, a removable storage device, and a smart card.

### Claim 28 (depends on 26)

The computing device of claim 26, wherein the selected block size of the block map layout is independent of a number of the first object values and a number of the second object values in the first and second objects, respectively.

### Claim 29 (depends on 26)

The computing device of claim 26, wherein the processor is further configured to generate a data mask in which the binary values of the first object are striped across the block map layout, wherein each of the binary values in the data mask indicates any additional bit movement within the block map layout, and wherein the wave screen is based further on the data mask.
