China Summer School on Lattices and Cryptography Craig Gentry and Shai Halevi June 3, 2014 Fully Homomorphic Encryption and Bootstrapping.

Slides:



Advertisements
Similar presentations
A Simple BGN-Type Cryptosystem from LWE
Advertisements

FULLY HOMOMORPHIC ENCRYPTION
Efficient Lattice (H)IBE in the standard model Shweta Agrawal, Dan Boneh, Xavier Boyen.
Parikshit Gopalan Georgia Institute of Technology Atlanta, Georgia, USA.
Fully Homomorphic Encryption over the Integers
Extracting Randomness From Few Independent Sources Boaz Barak, IAS Russell Impagliazzo, UCSD Avi Wigderson, IAS.
Efficiency vs. Assumptions in Secure Computation Yuval Ishai Technion & UCLA.
ONE WAY FUNCTIONS SECURITY PROTOCOLS CLASS PRESENTATION.
Shortest Vector In A Lattice is NP-Hard to approximate
Fearful Symmetry: Can We Solve Ideal Lattice Problems Efficiently?
Approximate List- Decoding and Hardness Amplification Valentine Kabanets (SFU) joint work with Russell Impagliazzo and Ragesh Jaiswal (UCSD)
Many-to-one Trapdoor Functions and their Relations to Public-key Cryptosystems M. Bellare S. Halevi A. Saha S. Vadhan.
Secure Computation of Linear Algebraic Functions
Lattices, Cryptography and Computing with Encrypted Data
Secure Evaluation of Multivariate Polynomials
Cryptographic Multilinear Maps
Paper by: Craig Gentry Presented By: Daniel Henneberger.
CS555Topic 191 Cryptography CS 555 Topic 19: Formalization of Public Key Encrpytion.
FULLY HOMOMORPHIC ENCRYPTION IBM T. J. Watson Vinod Vaikuntanathan from the Integers Joint Work with M. van Dijk (MIT & RSA labs), C. Gentry (IBM), S.
Theoretical Program Checking Greg Bronevetsky. Background The field of Program Checking is about 13 years old. Pioneered by Manuel Blum, Hal Wasserman,
Foundations of Network and Computer Security J J ohn Black Lecture #10 Sep 18 th 2009 CSCI 6268/TLEN 5550, Fall 2009.
Lattice-Based Cryptography
The RSA Cryptosystem and Factoring Integers (II) Rong-Jaye Chen.
Co-operative Private Equality Test(CPET) Ronghua Li and Chuan-Kun Wu (received June 21, 2005; revised and accepted July 4, 2005) International Journal.
Oded Regev Tel-Aviv University On Lattices, Learning with Errors, Learning with Errors, Random Linear Codes, Random Linear Codes, and Cryptography and.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
CSE 321 Discrete Structures Winter 2008 Lecture 8 Number Theory: Modular Arithmetic.
Lattice-Based Cryptography
Foundations of Privacy Lecture 11 Lecturer: Moni Naor.
ON THE PROVABLE SECURITY OF HOMOMORPHIC ENCRYPTION Andrej Bogdanov Chinese University of Hong Kong Bertinoro Summer School | July 2014 based on joint work.
On Everlasting Security in the Hybrid Bounded Storage Model Danny Harnik Moni Naor.
Simons Institute, Cryptography Boot Camp
1 NTRU: A Ring-Based Public Key Cryptosystem Jeffrey Hoffstein, Jill Pipher, Joseph H. Silverman LNCS 1423, 1998.
Bar-Ilan University Dept. of Computer Science Shai Halevi – IBM Research Based Mostly on [van-Dijk, Gentry, Halevi, Vaikuntanathan, EC 2010] 1 Winter School.
Homomorphic Encryption: WHAT, WHY, and HOW
2 2.1 © 2016 Pearson Education, Inc. Matrix Algebra MATRIX OPERATIONS.
1 Information Security – Theory vs. Reality , Winter Lecture 10: Garbled circuits (cont.), fully homomorphic encryption Eran Tromer.
Lattice-Based Cryptography: From Practice to Theory to Practice Vadim Lyubashevsky INRIA / CNRS / ENS Paris (September 12, 2011)
DISCRETE COMPUTATIONAL STRUCTURES CS Fall 2005.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Some Number Theory Modulo Operation: Question: What is 12 mod 9?
Public Key Encryption with keyword Search Author: Dan Boneh Rafail Ostroversity Giovanni Di Crescenzo Giuseppe Persiano Presenter: 陳昱圻.
Great Theoretical Ideas in Computer Science.
1 Secure Multi-party Computation Minimizing Online Rounds Seung Geol Choi Columbia University Joint work with Ariel Elbaz(Columbia University) Tal Malkin(Columbia.
Public Key Systems 1 Merkle-Hellman Knapsack Public Key Systems 2 Merkle-Hellman Knapsack  One of first public key systems  Based on NP-complete problem.
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
Scott CH Huang COM 5336 Cryptography Lecture 6 Public Key Cryptography & RSA Scott CH Huang COM 5336 Cryptography Lecture 6.
FULLY HOMOMORPHIC ENCRYPTION WITH POLYLOG OVERHEAD Craig Gentry and Shai Halevi IBM Watson Nigel Smart Univ. Of Bristol.
FHE Introduction Nigel Smart Avoncrypt 2015.
China Summer School on Lattices and Cryptography Craig Gentry and Shai Halevi June 4, 2014 Homomorphic Encryption over Polynomial Rings.
2 2.1 © 2012 Pearson Education, Inc. Matrix Algebra MATRIX OPERATIONS.
Algebraic Lower Bounds for Computing on Encrypted Data Rafail Ostrovsky William E. Skeith III.
PRACTICAL (F)HE Shai Halevi 1 October 2015FHE+MMAPs Summer School, Paris Part I - BGV Basics Part II - Packed Ciphertexts Part III - Bootstrapping.
Based on work with: Sergey Gorbunov and Vinod Vaikuntanathan Homomorphic Commitments & Signatures Daniel Wichs Northeastern University.
CRYPTOGRAPHY AND NP-HARDNESS Andrej Bogdanov Chinese University of Hong Kong MACS Foundations of Cryptography| January 2016.
Efficient Private Matching and Set Intersection Mike Freedman, NYU Kobbi Nissim, MSR Benny Pinkas, HP Labs EUROCRYPT 2004.
CRYPTOGRAPHIC HARDNESS OTHER FUNCTIONALITIES Andrej Bogdanov Chinese University of Hong Kong MACS Foundations of Cryptography| January 2016.
China Summer School on Lattices and Cryptography Craig Gentry and Shai Halevi June 3, 2014 Somewhat Homomorphic Encryption.
Foundations of Network and Computer Security J J ohn Black CSCI 6268/TLEN 5550, Spring 2014.
On Public Key Encryption from Noisy Codewords Yuval Ishai Technion & UCLA Eli Ben-Sasson (Technion) Iddo Ben-Tov (Technion) Ivan Damgård (Aarhus) Noga.
Fully Homomorphic Encryption (FHE) By: Matthew Eilertson.
Packing Techniques for Homomorphic Encryption Schemes Scott Thompson CSCI-762 4/28/2016.
Homomorphic encryption of quantum data
Spring School on Lattice-Based Crypto, Oxford
Attack on Fully Homomorphic Encryption over Principal Ideal Lattice
The Learning With Errors Problem
Background: Lattices and the Learning-with-Errors problem
Four-Round Secure Computation without Setup
Rishab Goyal Venkata Koppula Brent Waters
Practical (F)HE Part III – Bootstrapping
Presentation transcript:

China Summer School on Lattices and Cryptography Craig Gentry and Shai Halevi June 3, 2014 Fully Homomorphic Encryption and Bootstrapping

Fully Homomorphic Encryption (FHE)  A FHE scheme can evaluate unbounded depth circuits  Not limited by bound specified at Setup  Parameters (like size of ciphertext) do not depend on evaluated depth  So far, GSW scheme can evaluate only depth log N+1 q  How do we make it fully homomorphic?  Bootstrapping: A way to get FHE…

Self-Referential Encrypted Computation

A Digression into Philosophy…  Can the human mind understand itself?  Or, as a mind becomes more complex, does the task of understanding also become more complex, so that self- understanding it always just out of reach?  Self-reference often causes problems, even in mathematics and CS  Godel’s incompleteness theorem  Turing’s Halting Problem

Philosophy Meets Cryptography  Can a homomorphic encryption scheme decrypt itself?  We can try to plug the decryption function Dec(·,·) into Eval.  If we run Eval pk (Dec(·,·), c 1, …, c t ), does it work?  Suppose our HE scheme can Eval depth-d circuits: Is it always true that HE’s Dec function has depth > d? Is Dec(·,·) always just beyond the Eval capacity of the HE scheme?  Bootstrapping = the process of running Eval on Dec(·,·).

Bootstrapping: Assuming we can do it, why is it useful?

Bootstrapping: Refreshing a Ciphertext f( μ 1, μ 2, …, μ t ) μ1μ1 … μ2μ2 μtμt f We have a noisy evaluated ciphertext y We want to get another y with less noise Bootstrapping refreshes ciphertexts, using the encrypted secret key.  So far, we can evaluate bounded-depth circuits f:

 For ciphertext c, consider the function D c (·) = Dec(·,c)  Suppose we can Eval depth d, but D c (·) has depth d-1.  Include in the public key also Enc pk (sk) Bootstrapping: Refreshing a Ciphertext DcDc y sk 1 sk 2 sk n … c D c (sk) = Dec(sk,c) = y New encryption of y, with less noise. sk 1 sk 2 sk n … Homomorphic computation applied only to the “fresh” encryption of sk. c' =

Bootstrapping Theorem (Informal)  Suppose Ɛ is a HE scheme  that can evaluate arithmetic circuits of depth d  whose decryption algorithm is a circuit of depth d-1  Call Ɛ a “bootstrappable” HE scheme  Thm: From a bootstrappable somewhat homomorphic scheme, we can construct a fully homomorphic scheme.  Technique: Refresh noisy ciphertexts by evaluating the decryption circuit homomorphically

Bootstrapping: Can we do it?

Let’s Look at the Decryption Circuit…  Typically in LWE-based encryption schemes, if c encrypts μ under secret key vector s, then: where [·] q denotes reduction modulo q into the range (-q/2,q/2].

Decryption in GSW  GSW fits the template: ( )

How Complex Is Decryption?  If q is polynomial (in the security parameter λ ) then decryption is in NC1 (log-depth circuits).  But wait – isn’t q really large?  q depends on the Eval capacity of the scheme  Ideally, we would like the complexity of Dec to be independent of the Eval capacity.

Modulus Reduction Magic Trick  Suppose c encrypts μ – that is, μ = [[ ] q ] 2.  Let’s pick p<q and set c* = (p/q) ¢ c, rounded.  Crazy idea: Maybe it is true that: c* encrypts μ : μ = [[ ] p ] 2 (new inner modulus).  Surprisingly, this works!  After modulus reduction (and dimension reduction), the size of the ciphertext is independent of the complexity of the function that was evaluated!!

Modulus Reduction Magic Trick, Details Scaling lemma: Let p ] q ] 2 and |[ ] q | ] p ] 2. Annotated Proof: 1. For some k, [ ] q = - kq. 2. (p/q)|[ ] q | = - kp. 3. | | < l 1 (t). 4. Thus, | -kp| ] q | + l 1 (t) < p/2. 5. So, [ ] p = – kp. 6. Since c” = c mod 2 and p = q mod 2, we get [ ] p ] 2 = [ ] q ] Imagine is close to kq. 2. Then is close to kp. 3. also close to kp if s small.

Modulus Reduction Magic Trick, Notes  [ACPS 2009] proved LWE hard even if t is small:  t chosen from the same distribution as the noise e With coefficients of size poly in the security parameter.  For t of polynomial size, we can modulus reduce to a modulus p of polynomial size, before bootstrapping.  Bottom Line: After some processing, decryption for LWE-based encryption schemes (like GSW) is in NC1.  Complexity of Dec is independent of Eval capacity.

Evaluating NC1 Circuits in GSW  Naïve way: Just to log levels of NAND  Each level multiplies noise by polynomial factor.  Log levels multiplies noise by quasi-polynomial factor.  Bad consequence = weak security: Based on LWE for quasi-polynomial approximation factors.

Focusing on Brakerski and Vaikuntanathan’s method to bootstrap the Gentry-Sahai-Waters scheme Part II: Bootstrapping and Barrington’s Theorem

Better Way to Evaluate NC1 Circuits?  Goal: Base security of FHE on LWE with poly factors.  Evaluate NC1 circuits in a more “noise-friendly” way so that there is only polynomial noise blowup.  Barrington’s Theorem  If f is computable by a d-depth Boolean circuit, then it is computable by a width-5 permutation branching program of length 4 d.  Corollary: every function in NC1 has a polynomial-length BP.

Width-5 Permutation Branching Programs  BP for function f:  Consists of labeled permutations in the permutation group S 5 (which we represent as 5x5 permutation matrices)  S 5 is a non-abelian group: maybe ab ≠ ba.  To evaluate BP (hence f) on input X:  Map X to a subset S X of the matrices (using labels)  Compute product of the matrices in S X  Output 1 if the product is the identity matrix, 0 otherwise

Width-5 Permutation Branching Programs A 2,0 A 1,0 A 3,0 A 5,0 A 4,0 A 6,0 A 7,0 A 8,0 A 9,0 A 2,1 A 1,1 A 3,1 A 5,1 A 4,1 A 6,1 A 7,1 A 8,1 A 9,1  Each A i,b is a 5x5 permutation matrix.  This BP takes 4-bit inputs and has length 9 0

Width-5 Permutation Branching Programs A 2,0 A 1,0 A 3,0 A 5,0 A 4,0 A 6,0 A 7,0 A 8,0 A 9,0 A 2,1 A 1,1 A 3,1 A 5,1 A 4,1 A 6,1 A 7,1 A 8,1 A 9,1 01  Each A i,b is a 5x5 permutation matrix.  This BP takes 4-bit inputs and has length 9

Width-5 Permutation Branching Programs A 2,0 A 1,0 A 3,0 A 5,0 A 4,0 A 6,0 A 7,0 A 8,0 A 9,0 A 2,1 A 1,1 A 3,1 A 5,1 A 4,1 A 6,1 A 7,1 A 8,1 A 9,1  Each A i,b is a 5x5 permutation matrix.  This BP takes 4-bit inputs and has length 9  Multiply the chosen 9 matrices together  If product is I, output 1. Otherwise, output

Brakerski and Vaikuntanathan’s Insight  Multiplications in GSW increase noise asymmetrically.  Moreover, this asymmetry is useful.  Can exploit it to evaluate permutation BPs with surprisingly little noise growth.

Warm Up: High Fan-in AND Gates

Multiplying Permutation Matrices  Given kxk permutation matrices encrypted entry-wise, multiplying them left-to-right is best.  Multiplying in the (i+1)-th permutation matrix adds about k(N+1) times the error of fresh ciphertexts.  Essential fact used in analysis: In a permutation matrix, only one entry per column is nonzero.

Lattice-Based FHE as Secure as PKE [BV14]  Bottom line:  GSW decryption can be computed homomorphically while increasing noise by a poly factor.  FHE can be based on LWE with poly approx factors. The exponent can be made ε -close to that of current LWE- based PKE schemes.

A somewhat promising framework for FHE inspired by Barrington’s Theorem Part IV: FHE from Non-Abelian Groups?

Goal: Totally Different Approach to FHE  FHE without noise?  Might also make (expensive) bootstrapping unnecessary  How about FHE based on non-abelian groups?  Might avoid linear algebra attacks for ring-based schemes  Another chance to apply Barrington.  Framework investigated by Nuida ePrint 2014/07: “A Simple Framework for Noise-Free Construction of Fully Homomorphic Encryption from a Special Class of Non-commutative Groups”

Perfect Group Pairs

Efficient Group Operations  Randomization: Given a group (say, G) represented by some generators, output ≤n “random” G- elements that generate the group.

Hardness Assumption  Subgroup Decision Assumption (for perfect group pairs): Given ≤n elements that generate either G or H, hard to distinguish which.

FHE Construction  Public key:  An encryption of 0: n elements that generate G  An encryption of 1: n elements that generate H  Secret key: Trapdoor to distinguish G from H (represented by generators).  Encryption: Randomize the encryption of 0 or 1.  AND gate: Given generators of groups K1, K2, output generators of the union of K1,K2. (Use union of generators.)  OR gate: Given generators of groups K1,K2, output generators of intersection of K1,K2. (Use commutator.)  G = [G,G], H = [H,H], H = [G,H].

Existence?

Failed Attempt Form of G elementsForm of H elements  Linear algebra attack: Encryptions of 0 in proper subspace  Is there a patch? Can we use non-abelian groups without fatally embedding them in a ring? (representation theory)

? Thank You! Questions? ? TIME EXPIRED

Barrington and Non-Abelian Groups  NC1 circuits to a product of permutations  On each circuit wire w:  “0” is represented by the identity permutation ε  “1” is represented by some non-identity permutation π w  AND(w1,w2) = π w1 ◦ π w2 ◦ π w1 -1 π w2 -1  Equals ε (“0”) if either w1 or w2 is ε (“0”)  Equals a non-identity permutation if the inputs are non- commuting non-identity permutations π w1 and π w2.

The Noise Problem Revisited  Ciphertext noise grows exponentially with depth d.  Hence log q and dimension of ciphertext matrices grow linearly with d.  Want overhead to be independent of d.  To only depend on the security parameter λ.  Achievable!  Via a technique called bootstrapping [Gentry ’09].