scispace - formally typeset
Open AccessProceedings ArticleDOI

Leveled) fully homomorphic encryption without bootstrapping

Reads0
Chats0
TLDR
A novel approach to fully homomorphic encryption (FHE) that dramatically improves performance and bases security on weaker assumptions, using some new techniques recently introduced by Brakerski and Vaikuntanathan (FOCS 2011).
Abstract
We present a novel approach to fully homomorphic encryption (FHE) that dramatically improves performance and bases security on weaker assumptions. A central conceptual contribution in our work is a new way of constructing leveled fully homomorphic encryption schemes (capable of evaluating arbitrary polynomial-size circuits), without Gentry's bootstrapping procedure.Specifically, we offer a choice of FHE schemes based on the learning with error (LWE) or ring-LWE (RLWE) problems that have 2λ security against known attacks. For RLWE, we have:• A leveled FHE scheme that can evaluate L-level arithmetic circuits with O(λ · L3) per-gate computation -- i.e., computation quasi-linear in the security parameter. Security is based on RLWE for an approximation factor exponential in L. This construction does not use the bootstrapping procedure.• A leveled FHE scheme that uses bootstrapping as an optimization, where the per-gate computation (which includes the bootstrapping procedure) is O(λ2), independent of L. Security is based on the hardness of RLWE for quasi-polynomial factors (as opposed to the sub-exponential factors needed in previous schemes).We obtain similar results to the above for LWE, but with worse performance.Based on the Ring LWE assumption, we introduce a number of further optimizations to our schemes. As an example, for circuits of large width -- e.g., where a constant fraction of levels have width at least λ -- we can reduce the per-gate computation of the bootstrapped version to O(λ), independent of L, by batching the bootstrapping operation. Previous FHE schemes all required Ω(λ3.5) computation per gate.At the core of our construction is a much more effective approach for managing the noise level of lattice-based ciphertexts as homomorphic operations are performed, using some new techniques recently introduced by Brakerski and Vaikuntanathan (FOCS 2011).

read more

Content maybe subject to copyright    Report

(Leveled) Fully Homomorphic Encryption
without Bootstrapping
Zvika Brakerski
Stanford University
Craig Gentry
IBM Research
Vinod Vaikuntanathan
University of Toronto
Abstract
We present a novel approach to fully homomorphic encryption (FHE) that dramatically
improves performance and bases security on weaker assumptions. A central conceptual contri-
bution in our work is a new way of constructing leveled fully homomorphic encryption schemes
(capable of evaluating arbitrary polynomial-size circuits), without Gentry’s bootstrapping proce-
dure.
Specifically, we offer a choice of FHE schemes based on the learning with error (LWE) or
Ring LWE (RLWE) problems that have 2
λ
security against known attacks. We construct:
A leveled FHE scheme that can evaluate depth-L arithmetic circuits (composed of fan-in 2
gates) using
˜
O(λ·L
3
) per-gate computation. That is, the computation is quasi-linear in the
security parameter. Security is based on RLWE for an approximation factor exponential
in L. This construction does not use the bootstrapping procedure.
A leveled FHE scheme that can evaluate depth-L arithmetic circuits (composed of fan-
in 2 gates) using
˜
O(λ
2
) per-gate computation, which is independent of L. Security is
based on RLWE for quasi-polynomial factors. This construction uses bootstrapping as an
optimization.
We obtain similar results for LWE, but with worse performance. All previous (leveled) FHE
schemes required a per-gate computation of
˜
Ω(λ
3.5
), and all of them relied on sub-exponential
hardness assumptions.
We introduce a number of further optimizations to our scheme based on the Ring LWE
assumption. As an example, for circuits of large width e.g., where a constant fraction of levels
have width Ω(λ) we can reduce the per-gate computation of the bootstrapped version to
˜
O(λ),
independent of L, by batching the bootstrapping operation.
At the core of our construction is a much more effective approach for managing the noise level
of lattice-based ciphertexts as homomorphic operations are performed, using new techniques
recently introduced by Brakerski and Vaikuntanathan (FOCS 2011).
E-mail: zvika@stanford.edu. Supported by a Simons Postdoctoral Fellowship.
E-mail: cbgentry@us.ibm.com. Sponsored by the Air Force Research Laboratory (AFRL). Disclaimer: This
material is based on research sponsored by DARPA under agreement number FA8750-11-C-0096. The U.S. Govern-
ment is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright
notation thereon. The views and conclusions contained herein are those of the authors and should not be interpreted
as necessarily representing the official policies or endorsements, either expressed or implied, of DARPA or the U.S.
Government. Approved for Public Release, Distribution Unlimited.
E-mail: vinodv@cs.toronto.edu. This material is based on research sponsored by DARPA under Agreement
number FA8750-11-2-0225. All disclaimers as above apply.
1

1 Introduction
Fully homomorphic encryption (FHE) [RAD78, Gen09b] allows a computationally powerful worker
to receive encrypted data and perform arbitrarily complex, dynamically chosen computations on
that data while it remains encrypted, despite not having the secret decryption key. Until recently,
all FHE schemes [Gen09b, DGHV10, SV10, GH11b, CMNT, BV11a] followed the same blueprint,
namely, the one laid out in Gentry’s original construction [Gen09b, Gen09a].
The first step in Gentry’s blueprint is to construct a somewhat homomorphic encryption (SWHE)
scheme, namely an encryption scheme capable of evaluating “low-degree” multivariate polynomials
homomorphically. Starting with Gentry’s original construction based on ideal lattices [Gen09b],
there are by now a number of such schemes in the literature [DGHV10, SV10, GH11b, CMNT,
BV11a, LNV11], all of which based on lattices (either directly or implicitly). The ciphertexts in all
these schemes are “noisy”, where the noise grows slightly during homomorphic addition and explo-
sively during homomorphic multiplication, and hence, the limitation of low-degree polynomials.
To obtain FHE, Gentry provided a remarkable bootstrapping theorem which states that given a
SWHE scheme that can evaluate its own decryption function (plus an additional operation), one
can transform it into a “leveled”
1
FHE scheme. Bootstrapping “refreshes” a ciphertext by running
the decryption function on it homomorphically using an encrypted secret key (given in the public
key), resulting in a reduced noise.
Thus, to finish the construction, it is sufficient to design a SWHE scheme that is capable
of homomorphically evaluating its own decryption circuit (plus some). Unfortunately, until very
recently, natural SWHE schemes used to be incapable of evaluating their own decryption circuits
without making significant modifications to the scheme. (We discuss recent exceptions [GH11a,
BV11b] below.) Thus, the final step in Gentry’s blueprint is to squash the decryption circuit of the
SWHE scheme, namely transform the scheme into one with the same homomorphic capacity but a
decryption circuit that is simple enough to allow bootstrapping. Gentry [Gen09b] showed how to
do this by adding a “hint” namely, a large set of numbers with a secret sparse subset that sums
to the original secret key to the public key. Of course, the hint can be seen as useful information
about the secret key, and the security of the scheme in the presence of the hint relies on a new
“sparse subset sum” assumption (which, roughly speaking, can be thought of as saying that the
hint is useless to a computationally bounded adversary).
1.1 Efficiency of FHE
The efficiency of fully homomorphic encryption has been a (perhaps, the) big question following
its invention. In this paper, we are concerned with the per-gate computation overhead of the FHE
scheme, defined as the ratio between the time it takes to compute a circuit homomorphically on en-
crypted inputs to the time it takes to compute it on plaintext inputs.
2
Unfortunately, FHE schemes
that follow Gentry’s blueprint (some of which have actually been implemented [GH11b, CMNT])
have fairly poor performance: their per-gate computation overhead is p(λ), a large polynomial in
1
In a “leveled” FHE scheme, the parameters of the scheme may depend on the depth of the circuits that the
scheme can evaluate (but not on their size). The schemes we construct in this work are all leveled FHE schemes.
One can obtain a “pure” FHE scheme (with a constant-size public key) from these leveled FHE schemes by assuming
“circular security”, namely that it is “safe” to encrypt the leveled FHE secret key under its own public key. With
this understanding, and when there is no cause for confusion, we will omit the term “leveled” throughout this work.
2
Other measures of efficiency, such ciphertext/key size and encryption/decryption time, are also important. In
fact, the schemes we present in this paper are very efficient in these aspects (as are the schemes in [GH11a, BV11b]).
2

the security parameter. In fact, as we argue below, this penalty in performance seems somewhat
inherent for schemes that follow this blueprint.
First, the complexity of (known approaches to) bootstrapping is inherently at least the com-
plexity of decryption times the bit-length of the individual ciphertexts that are used to encrypt the
bits of the secret key. The reason is that bootstrapping involves evaluating the decryption circuit
homomorphically that is, in the decryption circuit, each secret-key bit is replaced by a (large) ci-
phertext that encrypts that bit and both the complexity of decryption and the ciphertext lengths
must each be Ω(λ).
Second, the undesirable properties of known SWHE schemes conspire to ensure that the real cost
of bootstrapping for FHE schemes that follow this blueprint is actually much worse than quadratic.
Known FHE schemes start with a SWHE scheme that can evaluate polynomials of degree D (mul-
tiplicative depth log D) securely only if the underlying lattice problem is hard to 2
D
-approximate.
To achieve hardness against 2
λ
time adversaries, the lattice must have dimension Ω(D · λ). This
is because we have lattice algorithms in n dimensions that compute 2
n/λ
-approximations of short
vectors in time 2
e
O(λ)
. Moreover, the coefficients of the vectors used in the scheme have bit length
Ω(D) to allow the ciphertext noise room to expand to 2
D
. Therefore, the size of “fresh” ciphertexts
(e.g., those that encrypt the bits of the secret key) is
˜
Ω(D
2
· λ). Since the SWHE scheme must
be “bootstrappable” i.e., capable of evaluating its own decryption function D must exceed
the degree of the decryption function. Typically, the degree of the decryption function is Ω(λ).
Thus, overall, “fresh” ciphertexts have size
˜
Ω(λ
3
). So, the real cost of bootstrapping even if we
optimistically assume that the “stale” ciphertext that needs to be refreshed can be decrypted in
only Θ(λ)-time is
˜
Ω(λ
4
).
The analysis above ignores a nice optimization by Stehl´e and Steinfeld [SS10], which so far has
not been useful in practice, that uses Chernoff bounds to asymptotically reduce the decryption
degree down to O(
λ). With this optimization, the per-gate computation of FHE schemes that
follow the blueprint is
˜
Ω(λ
3
).
3
1.2 Recent Deviations from Gentry’s Blueprint, and the Hope for Better Effi-
ciency
Recently, Gentry and Halevi [GH11a], and Brakerski and Vaikuntanathan [BV11b], independently
found very different ways to construct FHE without using the squashing step, and thus without the
sparse subset sum assumption. These schemes are the first major deviations from Gentry’s blueprint
for FHE. Surprisingly, Brakerski and Vaikuntanathan [BV11b] showed how to base security entirely
on LWE (for sub-exponential approximation factors), avoiding reliance on ideal lattices.
From an efficiency perspective, however, these results are not a clear win over previous schemes.
Both of the schemes still rely on the problematic aspects of Gentry’s blueprint namely, bootstrap-
ping and an SWHE scheme with the undesirable properties discussed above. Thus, their per-gate
computation is still more than
˜
Ω(λ
4
). Nevertheless, the techniques introduced in these recent con-
structions are very interesting and useful to us. In particular, we use the tools and techniques
introduced by Brakerski and Vaikuntanathan [BV11b] in an essential way to achieve remarkable
efficiency gains.
3
We note that bootstrapping lazily i.e., applying the refresh procedure only at a 1/L fraction of the circuit levels
for L > 1 cannot reduce the per-gate computation further by more than a logarithmic factor for schemes that follow
this blueprint, since these SWHE schemes can evaluate only log multiplicative depth before it becomes absolutely
necessary to refresh i.e., L = O(log λ).
3

An important, somewhat orthogonal question is the strength of assumptions underlying FHE
schemes. All the schemes so far rely on the hardness of short vector problems on lattices with a
subexponential approximation factor. Can we base FHE on the hardness of finding a polynomial
approximation?
1.3 Our Results and Techniques
We leverage Brakerski and Vaikuntanathan’s techniques [BV11b] to achieve asymptotically very
efficient FHE schemes. Also, we base security on lattice problems with quasi-polynomial approx-
imation factors. (All previous schemes relied on the hardness of problems with sub-exponential
approximation factors.) In particular, we have the following theorem (informal):
Assuming Ring LWE for an approximation factor exponential in L, we have a leveled FHE
scheme that can evaluate L-level arithmetic circuits without using bootstrapping. The scheme
has
˜
O(λ · L
3
) per-gate computation (namely, quasi-linear in the security parameter).
Alternatively, assuming Ring LWE is hard for quasi-polynomial factors, we have a leveled
FHE scheme that uses bootstrapping as an optimization, where the per-gate computation
(which includes the bootstrapping procedure) is
˜
O(λ
2
), independent of L.
We can alternatively base security on LWE, albeit with worse performance. We now sketch our
main idea for boosting efficiency.
In the BV scheme [BV11b], like ours, a ciphertext vector c R
n
(where R is a ring, and
n is the “dimension” of the vector) that encrypts a message m satisfies the decryption formula
m =
[hc, si]
q
2
, where s R
n
is the secret key vector, q is an odd modulus, and [·]
q
denotes
reduction into the range (q/2, q/2). This is an abstract scheme that can be instantiated with
either LWE or Ring LWE in the LWE instantiation, R is the ring of integers mod q and n is a
large dimension, whereas in the Ring LWE instantiation, R is the ring of polynomials over integers
mod q and an irreducible f (x), and the dimension n = 2.
We will call [hc, si]
q
the noise associated to ciphertext c under key s. Decryption succeeds as long
as the magnitude of the noise stays smaller than q/2. Homomorphic addition and multiplication
increase the noise in the ciphertext. Addition of two ciphertexts with noise at most B results in
a ciphertext with noise at most 2B, whereas multiplication results in a noise as large as B
2
.
4
We will describe a noise-management technique that keeps the noise in check by reducing it after
homomorphic operations, without bootstrapping.
The key technical tool we use for noise management is the “modulus switching” technique de-
veloped by Brakerski and Vaikuntanathan [BV11b]. Jumping ahead, we note that while they use
modulus switching in “one shot” to obtain a small ciphertext (to which they then apply Gentry’s
bootstrapping procedure), we will use it (iteratively, gradually) to keep the noise level essentially
constant, while stingily sacrificing modulus size and gradually sacrificing the remaining homomor-
phic capacity of the scheme.
1.4 Modulus Switching
The essence of the modulus-switching technique is captured in the following lemma. In words,
the lemma says that an evaluator, who does not know the secret key s but instead only knows a
4
The noise after multiplication is in fact a bit larger than B
2
due to the additional noise from the BV “re-
linearization” process. For the purposes of this exposition, it is best to ignore this minor detail.
4

bound on its length, can transform a ciphertext c modulo q into a different ciphertext modulo p
while preserving correctness namely, [hc
0
, si]
p
= [hc, si]
q
mod 2. The transformation from c to
c
0
involves simply scaling by (p/q) and rounding appropriately! Most interestingly, if s is short
and p is sufficiently smaller than q, the “noise” in the ciphertext actually decreases namely,
|[hc
0
, si]
p
| < |[hc, si]
q
|.
Lemma 1. Let p and q be two odd moduli, and let c be an integer vector. Define c
0
to be the integer
vector closest to (p/q)·c such that c
0
= c mod 2. Then, for any s with |[hc, si]
q
| < q/2(q/p)·`
1
(s),
we have
[
c
0
, s
]
p
= [hc, si]
q
mod 2 and
|[
c
0
, s
]
p
| < (p/q) · |[hc, si]
q
| + `
1
(s)
where `
1
(s) is the `
1
-norm of s.
Proof. For some integer k, we have [hc, si]
q
= hc, si kq. For the same k, let e
p
= hc
0
, si kp
Z. Since c
0
= c and p = q modulo 2, we have e
p
= [hc, si]
q
mod 2. Therefore, to prove the
lemma, it suffices to prove that e
p
= [hc
0
, si]
p
and that it has small enough norm. We have
e
p
= (p/q)[hc, si]
q
+ hc
0
(p/q)c, si, and therefore |e
p
| (p/q)[hc, si]
q
+ `
1
(s) < p/2. The latter
inequality implies e
p
= [hc
0
, si]
p
.
Amazingly, this trick permits the evaluator to reduce the magnitude of the noise without know-
ing the secret key, and without bootstrapping. In other words, modulus switching gives us a very
powerful and lightweight way to manage the noise in FHE schemes! In [BV11b], the modulus
switching technique is bundled into a “dimension reduction” procedure, and we believe it deserves
a separate name and close scrutiny. It is also worth noting that our use of modulus switching does
not require an “evaluation key”, in contrast to [BV11b].
1.5 Our New Noise Management Technique
At first, it may look like modulus switching is not a very effective noise management tool. If p
is smaller than q, then of course modulus switching may reduce the magnitude of the noise, but
it reduces the modulus size by essentially the same amount. In short, the ratio of the noise to
the “noise ceiling” (the modulus size) does not decrease at all. Isn’t this ratio what dictates the
remaining homomorphic capacity of the scheme, and how can potentially worsening (certainly not
improving) this ratio do anything useful?
In fact, it’s not just the ratio of the noise to the “noise ceiling” that’s important. The absolute
magnitude of the noise is also important, especially in multiplications. Suppose that q x
k
, and
that you have two mod-q SWHE ciphertexts with noise of magnitude x. If you multiply them, the
noise becomes x
2
. After 4 levels of multiplication, the noise is x
16
. If you do another multiplication
at this point, you reduce the ratio of the noise ceiling (i.e. q) to the noise level by a huge factor of
x
16
i.e., you reduce this gap very fast. Thus, the actual magnitude of the noise impacts how fast
this gap is reduced. After only log k levels of multiplication, the noise level reaches the ceiling.
Now, consider the following alternative approach. Choose a ladder of gradually decreasing
moduli {q
i
q/x
i
} for i < k. After you multiply the two mod-q ciphertexts, switch the ciphertext
to the smaller modulus q
1
= q/x. As the lemma above shows, the noise level of the new ciphertext
(now with respect to the modulus q
1
) goes from x
2
back down to x. (Let’s suppose for now that
5

Citations
More filters
Proceedings ArticleDOI

Efficient Fully Homomorphic Encryption from (Standard) LWE

TL;DR: In this article, a fully homomorphic encryption scheme based solely on the (standard) learning with errors (LWE) assumption is presented. But the security of their scheme is based on the worst-case hardness of ''short vector problems'' on arbitrary lattices.
Book ChapterDOI

Homomorphic Encryption from Learning with Errors: Conceptually-Simpler, Asymptotically-Faster, Attribute-Based

TL;DR: In this work, a comparatively simple fully homomorphic encryption (FHE) scheme based on the learning with errors (LWE) problem is described, with a new technique for building FHE schemes called the approximate eigenvector method.
Book ChapterDOI

Multiparty Computation from Somewhat Homomorphic Encryption

TL;DR: A general multiparty computation protocol secure against an active adversary corrupting up to $$n-1$$ of the n players is proposed, which may be used to compute securely arithmetic circuits over any finite field $$\mathbb {F}_{p^k}$$.
Journal ArticleDOI

On Ideal Lattices and Learning with Errors over Rings

TL;DR: The ring-LWE distribution is pseudorandom as discussed by the authors, assuming that worst-case problems on ideal lattices are hard for polynomial-time quantum algorithms, which is not the case.
References
More filters
Proceedings ArticleDOI

Fully homomorphic encryption using ideal lattices

TL;DR: This work proposes a fully homomorphic encryption scheme that allows one to evaluate circuits over encrypted data without being able to decrypt, and describes a public key encryption scheme using ideal lattices that is almost bootstrappable.
Proceedings ArticleDOI

On lattices, learning with errors, random linear codes, and cryptography

TL;DR: A public-key cryptosystem whose hardness is based on the worst-case quantum hardness of SVP and SIVP, and an efficient solution to the learning problem implies a quantum, which can be made classical.

A fully homomorphic encryption scheme

TL;DR: This work designs a somewhat homomorphic "boostrappable" encryption scheme that works when the function f is the scheme's own decryption function, and shows how, through recursive self-embedding, bootstrappable encryption gives fully homomorphic encryption.

On data banks and privacy homomorphisms

TL;DR: It appears likely that there exist encryption functions which permit encrypted data to be operated on without preliminary decryption of the operands, for many sets of interesting operations.
Book ChapterDOI

Evaluating 2-DNF formulas on ciphertexts

TL;DR: A homomorphic public key encryption scheme that allows the public evaluation of ψ given an encryption of the variables x1,...,xn and can evaluate quadratic multi-variate polynomials on ciphertexts provided the resulting value falls within a small set.