Suppose we have a single unknown -dimensional vector as a secret key, many publicly known -dimensional vectors .
And suppose we have a large set of the following dot products :
Suppose that all tuples are publicly known. An attacker only needs such tuples to derive the secret vector . Specifically, as there are unknown variables (i.e., ), the attacker can solve for those variables with equations by using linear algebra.
However, suppose that in each equation above, we randomly add an unknown small noise (i.e., error) as follows:
Then, even if the attacker has a sufficient number of tuples, it is not feasible to derive , because even a small noise added to each equation prevents linear-algebra-based direct derivation of the unknown variables. For each above equation, the attacker has to consider as many possibilities as the number of the possible values of . For example, if there are possible values of each noise , the attacker’s brute-force search space of applying linear algebra to those equations is: . Thus, the number of noisy equations grows, the aggregate possibilities of s grow exponentially, which means that the attacker’s cost of attack grows exponentially.
Based on this intuition, the mathematical hard problem that constitutes lattice-based cryptography is as follows:
Summary B-1.1 The LWE (Learning with Errors) and RLWE Problems
LWE Problem
Suppose we have a plaintext number to encrypt. The encryption formula is: . In this formula, is a small noise, and is a scaling factor to bit-wise separate the plaintext from the noise with enough gap when they are added up (this is needed for successful decryption, which will be explained later).
For each encryption, a random -dimensional vector and a small noise value are newly sampled from , where is the ciphertext domain size. On the other hand, the -dimensional secret vector is the same for all encryptions. Suppose we have an enough number of ciphertext tuples:
, where
, where
, where
Suppose that the attacker has a sufficiently large number of tuples. Given this setup, the following hard problems constitute the defense mechanism of the LWE (Learning with Errors) cryptosystem:
These two problems are interchangeable.
RLWE Problem
In the case of the RLWE (Ring Learning with Errors) problem, the only difference is that , , , , and are -degree polynomials in , and its search-hard problem is finding the unknown coefficients of the secret polynomial .