Learning With Errors #
This file gives a general definition of the LWE problem. It is parameterized by the following:
n
: the dimension of the secretm
: the number of samplesp
: the modulus (not necessarily prime)errSamp : ProbComp (Fin p)
: a probabilistic sampling algorithm for the error
(errSamp
can potentially be replaced with χ : PMF (Fin p)
instead, to be used with
evalDistWhen
with non-uniform distributions)
We define the (decision) LWE problem as a security experiment on an oracle that takes as input:
- A matrix
A : Fin m → Fin n → Fin p
- A vector
u : Fin m → Fin p
, either sampled uniformly at random, or sampled from the LWE distributions * A + e
, wheres : Fin n → Fin p
is the secret ande : Fin m → Fin p
has every entry sampled fromerrSamp
.
The adversary wins if it can correctly guess which case the distribution is.
The search LWE problem instead asks that the adversary given A
and u = s * A + e
outputs the
secret s
.
An adversary for the decisional LWE problem. Takes in a pair (A, u)
and outputs a boolean.
Equations
Instances For
The decisional LWE experiment. If b = true
, the distribution is LWE, otherwise it is uniform.
Equations
Instances For
Equations
Instances For
The first game of the decisional LWE assumption, where the distribution is LWE.
(we map true
to ()
and false
to failure
)
Equations
Instances For
The second game of the decisional LWE assumption, where the distribution is uniform.
(we map true
to ()
and false
to failure
)
Equations
Instances For
An adversary for the search LWE problem. Takes in a pair (A, u)
and outputs a vector s
.
Equations
Instances For
The search LWE experiment. The adversary wins if it can correctly guess the secret s
.
Equations
Instances For
Equations
Instances For
The two ways of defining the decisional LWE assumption (via a single experiment or via two games) are equivalent.
(probably not correct)