Ring Learning with Errors (RLWE) is a computational problem which serves as the foundation of new cryptographic algorithms designed to protect against cryptanalysis by quantum computers and also to provide the basis for homomorphic encryption. RLWE is more properly called Learning with Errors over Rings and is simply the larger Learning with Errors problem specialized to polynomial rings over finite fields. Because of the presumed difficulty of solving the RLWE problem even on a quantum computer, RLWE based cryptography may form the fundamental base for public key cryptography in the future just as the integer factorization and discrete logarithm problem have served as the base for public key cryptography since the early 1980's. An important feature of basing cryptography on the Ring Learning with Errors problem is the fact that the solution to the RLWE problem is reducible to the NP-Hard Shortest Vector Problem (SVP) in a Lattice. Hence a solution to the RLWE problem would imply a solution to a whole class of presumed hard computational problems.
Background
The security of modern cryptography, in particular Public Key Cryptography, is based on the difficulty of solving computational problems believed to be intractable if the size of the problem is large enough and the instance of the problem to be solved is chosen randomly. The classic example that has been used since the 1970's is the integer factorization problem. It is believed that it is computationally intractable to factor the product of two prime numbers if those prime numbers are large enough and chosen at random. As of 2015 research has led to the factorization of the product of two 384-bit primes but not the product of two 512-bit primes. Integer factorization forms the basis of the widely used RSA cryptographic algorithm.
The Ring Learning with Errors (RLWE) problem is built on the arithmetic of polynomials with coefficients from a finite field. A typical polynomial a(x) is expressed as:
Polynomials can be added and multiplied in the usual fashion. In the RLWE context the coefficients of the polynomials and all operations involving those coefficients will be done in a finite field, typically the field for a prime integer . The set of polynomials over a finite field with the operations of addition and multiplication for an infinite polynomial ring ( ). The RLWE context works with a finite sub-ring of this infinite ring. The sub-ring is typically the finite quotient (factor) ring formed by reducing all of the polynomials in modulo an irreducible polynomial . This finite quotient ring can be written as though many authors write .
If the degree polynomial is n, the sub-ring becomes the ring of polynomials of degree less than n modulo with coefficients from . The values n, q, together with the polynomial partially define the mathematical context for the RLWE problem.
Another concept necessary for the RLWE problem is the idea of "small" polynomials with respect to some norm. The typical norm used in the RLWE problem is known as the infinity norm. The infinity norm of a polynomial is simply the largest coefficient of the polynomial when these coefficients are viewed as integers. Hence, states that the infinity norm of the polynomial is . Thus is the largest coefficient of .
The final concept necessary to understand the RLWE problem is the generation of random polynomials in . This is easily done by simply randomly sampling the n coefficients of the polynomial from where is typically represented as the set: .
To randomly generate a "small" polynomial we select a bound for the infinity norm, and then randomly sample the n coefficients from the set: . A typical value for is 1, so the coefficients are simply chosen from -1, 0, and 1.
The RLWE Problem
The RLWE problem can be stated in two different ways. One is called the "Search" version and the other is the "Decision" version. The Search can be stated as follows. Let
- be a set of random but known polynomials from with coefficients from all of .
- be a set of small random and unknown polynomials relative to a bound in the ring
- be a small unknown polynomial relative to a bound in the ring .
Given the list of polynomial pairs find the unknown polynomial
Using the same definitions, the Decision version of the problem can be stated as follows. Given a list of polynomial pairs determine whether the polynomials were constructed as or were generated randomly from with coefficients from all of .
The difficulty of this problem is parameterized by the choice of the quotient polynomial ( ), its degree (n), the field ( ), and the smallness bound ( ). In many RLWE based public key algorithms the private key will be a pair of small polynomials and . The corresponding public key will be a pair of polynomials , selected randomly from , and the polynomial . Given and , it should be computationally infeasible to recover the polynomial
Security Reduction
In cases where the polynomial is a cyclotomic polynomial, the difficulty of solving the search version of RLWE problem is equivalent to finding a short vector (but not necessarily the shortest) vector in an ideal lattice formed from elements of represented as integer vectors.[1] This problem is commonly known as the Approximate Shortest Vector Problem (α-SVP) and it is the problem of finding a vector shorter than α times the shortest vector. The authors of the proof for this equivalence write:
"... we give a quantum reduction from approximate SVP (in the worst case) on ideal lattices in R to the search version of ring-LWE, where the goal is to recover the secret s ∈ Rq (with high probability, for any s) from arbitrarily many noisy products."[1]
Their ring R is and their Rq is .
The average α-SVP is known to be NP-hard due to work by Daniele Micciancio in 2001.[2] However, there is not yet a proof to show that the difficulty of the α-SVP for ideal lattices is equivalent to the average α-SVP. Rather we have a proof that if there are ANY α-SVP instances that are hard to solve in ideal lattices then the RLWE Problem will be hard in random instances. [1]
RLWE Cryptography
- ^ a b c Lyubashevsky, Vadim; Peikert, Chris; Regev, Oded (2012). "On Ideal Lattices and Learning with Errors Over Rings".
{{cite journal}}
: Cite journal requires|journal=
(help) - ^ Micciancio, D. (January 1, 2001). "The Shortest Vector in a Lattice is Hard to Approximate to within Some Constant". SIAM Journal on Computing. 30 (6): 2008–2035. doi:10.1137/S0097539700373039. ISSN 0097-5397.