IP Library › Granted Patent US 11,329,799
Granted Patent B2
US 11,329,799 · App. 16/777,973 · Granted May 10, 2022

Calculation device for encryption using public key and encryption method thereof

Inventors: Jung Hee Cheon (Seoul, KR); Joo Hee Lee (Seoul, KR)
Assignee: Crypto Lab Inc.
H04L9/0631H04L9/0869H04L9/30H04L2209/20
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 11,329,799
App. No.
16/777,973
Granted
May 10, 2022
Kind
B2
Abstract

An encryption method includes: calculating a second random matrix using a first random matrix and a secret key, and generating a ciphertext corresponding to a message using the second random matrix. The generating of the ciphertext includes: performing a rounding process for sending the generated ciphertext to a smaller modulus area. The generating of the ciphertext includes performing message encryption without Gaussian sampling.

Claims (47)

1. An encryption method, comprising:

calculating a second random matrix using a first random matrix and a secret key;

generating a ciphertext corresponding to a message using the second random matrix; and

transmitting, over a network, the ciphertext to a server device that decrypts the ciphertext, wherein

the generating the ciphertext comprises:

performing a rounding process for sending the generated ciphertext to a smaller modulus area,

the generating the ciphertext further comprises:

calculating a first value which is obtained by calculating the first random matrix and a random vector, and calculating a second value which is obtained by adding a value obtained by encoding the message to a result value obtained by calculating the second random matrix and the random vector, and

performing a rounding process for the first value, and performing a rounding process for the result value obtained by calculating the second random matrix and the random vector.

2. The encryption method as claimed in claim 1 , wherein the generating the ciphertext comprises performing message encryption without Gaussian sampling.

3. The encryption method as claimed in claim 1 , further comprising:

calculating the first random matrix including randomly-determined values;

calculating the secret key;

calculating a public key using the second random matrix.

4. The encryption method as claimed in claim 3 , wherein the calculating the secret key comprises calculating the secret key by randomly combining a column vector of which each component has one value from among −1, 0 and 1 in a matrix form.

5. The encryption method as claimed in claim 3 , further comprising:

extracting an error from a discrete Gaussian distribution or a distribution that is within a short statistical distance to the discrete Gaussian distribution,

wherein a size of the error is determined by an error parameter which is greater than zero and less than one.

6. A calculation device, comprising:

a memory configured to store a second random matrix obtained by calculating a first random matrix and a secret key; and

a processor configured to generate a ciphertext corresponding to a message using the second random matrix and transmit, over a network, the ciphertext to a server device that decrypts the ciphertext, wherein

the processor is configured to:

perform a rounding process for sending the generated ciphertext to a smaller modulus area, and

the processor is further configured to:

calculate a first value which is obtained by calculating the first random matrix and a random vector, and

calculate a second value which is obtained by adding a value obtained by encoding the message to a result value obtained by calculating the second random matrix and the random vector,

perform a rounding process for the first value, and

perform a rounding process for the result value obtained by calculating the second random matrix and the random vector.

7. The calculation device as claimed in claim 6 , wherein the processor performs message encryption without Gaussian sampling.

8. The calculation device as claimed in claim 6 , wherein the processor is configured to:

extract an error from a discrete Gaussian distribution or a distribution that is within a short statistical distance to the discrete Gaussian distribution,

wherein a size of the error is determined by an error parameter which is greater than zero and less than one.

9. The calculation device as claimed in claim 6 , wherein the processor is configured to:

calculate the first random matrix including randomly-determined values;

calculate the secret key;

calculate a public key using the second random matrix.

10. The calculation device as claimed in claim 9 , wherein the processor is configured to:

calculate the secret key by randomly combining a column vector of which each component has one value from among −1, 0 and 1 in a matrix form.

11. A non-transitory computer-readable medium on which a program code is stored, the program code sequentially performing the steps for:

calculating a second random matrix using a first random matrix and a secret key;

generating a ciphertext corresponding to a message using the second random matrix; and

transmitting, over a network, the ciphertext to a server device that decrypts the ciphertext, wherein

the generating the ciphertext comprises:

performing a rounding process for sending the generated ciphertext to a smaller modulus area, and

the generating the ciphertext further comprises:

calculating a first value which is obtained by calculating the first random matrix and a random vector, and calculating a second value which is obtained by adding a value obtained by encoding the message to a result value obtained by calculating the second random matrix and the random vector, and

performing a rounding process for the first value, and performing a rounding process for the result value obtained by calculating the second random matrix and the random vector.

Priority Claims (2)
KR 10-2016-0154160 · Nov 18, 2016 · national
KR 10-2017-0149881 · Nov 10, 2017 · national
Continuity (2)
Continuation 16462091
Related Publication 20200169384A1 · May 28, 2020