# US 10,455,111 B2 · Encryption device, computer-readable recording medium, and encryption method

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

- Number: US 10,455,111 B2
- Document ID: US10455111B2
- Status: Granted
- Kind: B2
- Application number: 15/472,748
- Filed: 2017-03-29
- Published: 2017-10-05
- Granted: 2019-10-22
- Earliest claimed: 2016-03-31
- Assignees: MegaChips Corporation
- Applicants: MegaChips Corporation
- Inventors: Nobuyuki Takasu
- Web page: https://patentgrep.com/patent/US10455111B2

## CPC

- H04N 1/32272: {Encryption or ciphering}
- H04L 9/0656: {Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher}
- H04N 1/4486: {using digital data encryption}
- H04N 1/4493: {Subsequently rendering the image intelligible using a co-operating image, mask or the like}
- H04L 2209/04: Masking or blinding
- H04N 2201/3281: Encryption; Ciphering
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

An encryption circuit includes a fundamental vector generation circuit configured to generate a random number sequence for serving as a fundamental vector based on an initial vector, an image mask generation circuit configured to generate an image mask with a mask value set for each pixel in a region to be encrypted smaller than a frame size of the image, based on the fundamental vector and coordinate information for specifying the region to be encrypted, and an XOR operation circuit configured to compute an exclusive OR between each mask value of the image mask and each pixel value of the image data to generate encrypted image data.

## Claims

### Claim 1

An encryption device configured to encrypt image data in a stream cipher system, the device comprising:
processing circuitry configured to
generate a random number sequence for serving as a fundamental vector based on an initial vector,
generate an image mask, the image mask having a mask value set for each pixel in a region to be encrypted, the region to be encrypted being smaller than a frame size of the image, the image mask being generated based on the fundamental vector and coordinate information for specifying the region to be encrypted,
rearrange the random number sequence of the fundamental vector in a different sequence for each row of pixels in the image to specify the mask value of each line of the image mask, and
compute an exclusive OR between each mask value of the image mask and each pixel value of the image data to generate encrypted image data.

### Claim 2 (depends on 1)

The encryption device according to claim 1, wherein the processing circuitry is further configured to
variably specify a randomness of the mask value, the randomness being based on a plurality of effective data lengths of an entire data length of the fundamental vector where each effective data length is different from the other effective data lengths, the different effective data lengths being based on strength-specifying information for specifying encryption strength.

### Claim 3 (depends on 2)

The encryption device according to claim 2, wherein the device is configured to allow:
specifying a plurality of regions to be encrypted in one frame of an image by the coordinate information, and
specifying different encryption strength for each of the regions to be encrypted by the strength-specifying information.

### Claim 4 (depends on 1)

The encryption device according to claim 1, wherein the processing circuitry is further configured to
generate the fundamental vector having a data length smaller than a data size of one frame of an image.

### Claim 5 (depends on 4)

The encryption device according to claim 4, wherein the processing circuitry is further configured to
generate the fundamental vector having a power-of-two-byte length, and
specify different offset value and pitch value for each row of pixels in the image for rearranging the random number sequence of the fundamental vector, while setting the pitch value to a value that is not a power of two.

### Claim 6 (depends on 1)

The encryption device according to claim 1, wherein the processing circuitry is further configured to
use the encrypted image data generated for a frame as a basis for generating the initial vector for a subsequent frame.

### Claim 7

A non-transitory computer-readable recording medium having recorded thereon a program for causing a computer to execute instructions comprising:
generating a random number sequence for serving as a fundamental vector based on an initial vector;
generating an image mask, the image mask having a mask value set for each pixel in a region to be encrypted, the region to be encrypted being smaller than a frame size of the image, the image mask being generated based on the fundamental vector and coordinate information for specifying the region to be encrypted;
rearranging the random number sequence of the fundamental vector in a different sequence for each row of pixels in the image to specify the mask value of each line of the image mask; and
computing an exclusive OR between each mask value of the image mask and each pixel value of the image data to generate encrypted image data.

### Claim 8

An encryption method comprising:
generating a random number sequence for serving as a fundamental vector based on an initial vector;
generating an image mask, the image mask having a mask value set for each pixel in a region to be encrypted, the region to be encrypted being smaller than a frame size of the image, the image mask being generated based on the fundamental vector and coordinate information for specifying the region to be encrypted;
rearranging the random number sequence of the fundamental vector in a different sequence for each row of pixels in the image to specify the mask value of each line of the image mask; and
computing an exclusive OR between each mask value of the image mask and each pixel value of the image data to generate encrypted image data.

### Claim 9 (depends on 8)

The encryption method according to claim 8, further comprising:
variably specifying a randomness of the mask value, the randomness being based on a plurality of effective data lengths of an entire data length of the fundamental vector where each effective data length is different from the other effective data lengths, the different effective data lengths being based on strength-specifying information for specifying encryption strength.

### Claim 10 (depends on 9)

The encryption method according to claim 9, further comprising:
specifying a plurality of regions to be encrypted in one frame of an image by the coordinate information; and
specifying different encryption strength for each of the regions to be encrypted by the strength-specifying information.

### Claim 11 (depends on 8)

The encryption method according to claim 8, further comprising:
generating the fundamental vector having a data length smaller than a data size of one frame of an image.

### Claim 12 (depends on 11)

The encryption method according to claim 11, further comprising:
generating the fundamental vector having a power-of-two-byte length; and
specifying different offset value and pitch value for each row of pixels in the image for rearranging the random number sequence of the fundamental vector, while setting the pitch value to a value that is not a power of two.

### Claim 13 (depends on 8)

The encryption method according to claim 8, further comprising:
using the encrypted image data generated for a frame as a basis for generating the initial vector for a subsequent frame.

### Claim 14

An encryption device configured to encrypt image data in a stream cipher system, the device comprising:
processing circuitry configured to
generate a random number sequence for serving as a fundamental vector based on an initial vector,
generate an image mask, the image mask having a mask value set for each pixel in a region to be encrypted, the region to be encrypted being smaller than a frame size of the image, the image mask being generated based on the fundamental vector and coordinate information for specifying the region to be encrypted,
variably specify a randomness of the mask value, the randomness being based on a plurality of effective data lengths of an entire data length of the fundamental vector where each effective data length is different from the other effective data lengths, the different effective data lengths being based on strength-specifying information for specifying encryption strength, and
compute an exclusive OR between each mask value of the image mask and each pixel value of the image data to generate encrypted image data.

### Claim 15

A non-transitory computer-readable recording medium having recorded thereon a program for causing a computer to execute instructions comprising:
generating a random number sequence for serving as a fundamental vector based on an initial vector;
generating an image mask, the image mask having a mask value set for each pixel in a region to be encrypted, the region to be encrypted being smaller than a frame size of the image, the image mask being generated based on the fundamental vector and coordinate information for specifying the region to be encrypted;
variably specifying a randomness of the mask value, the randomness being based on a plurality of effective data lengths of an entire data length of the fundamental vector where each effective data length is different from the other effective data lengths, the different effective data lengths being based on strength-specifying information for specifying encryption strength; and
computing an exclusive OR between each mask value of the image mask and each pixel value of the image data to generate encrypted image data.

### Claim 16

An encryption method comprising:
generating a random number sequence for serving as a fundamental vector based on an initial vector;
generating an image mask, the image mask having a mask value set for each pixel in a region to be encrypted, the region to be encrypted being smaller than a frame size of the image, the image mask being generated based on the fundamental vector and coordinate information for specifying the region to be encrypted;
variably specifying a randomness of the mask value, the randomness being based on a plurality of effective data lengths of an entire data length of the fundamental vector where each effective data length is different from the other effective data lengths, the different effective data lengths being based on strength-specifying information for specifying encryption strength; and
computing an exclusive OR between each mask value of the image mask and each pixel value of the image data to generate encrypted image data.
