Fully Homomorphic Encryption Francisco Vial-Prado ASCrypto - - - PowerPoint PPT Presentation

fully homomorphic encryption
SMART_READER_LITE
LIVE PREVIEW

Fully Homomorphic Encryption Francisco Vial-Prado ASCrypto - - - PowerPoint PPT Presentation

Fully Homomorphic Encryption Francisco Vial-Prado ASCrypto - LatinCrypt 19 IMFD Chile, Ecole Polytechnique, Universit e Paris-Saclay Applied Cryptography @ ProtonMail Generic homomorphic encryption Gentrys blueprint Second generation


slide-1
SLIDE 1

Fully Homomorphic Encryption

Francisco Vial-Prado

ASCrypto - LatinCrypt ’19

IMFD Chile, Ecole Polytechnique, Universit´ e Paris-Saclay Applied Cryptography @ ProtonMail

slide-2
SLIDE 2

Generic homomorphic encryption Gentry’s blueprint Second generation

Overview

Generic homomorphic encryption, a priori observations Gentry’s blueprint Second and third generation schemes

Francisco Vial-Prado Fully Homomorphic Encryption

slide-3
SLIDE 3

Generic homomorphic encryption Gentry’s blueprint Second generation

The problem (Rivest, Adleman, Dertouzos, 1978)

On Data Banks And Privacy Homomorphisms - 1978 ... a system working with encrypted data can at most store or retrieve data for the user; any more complicated operations seem to require that the data be decrypted before being

  • perated on.

... it appears likely that there exist [...] Privacy Homomorphisms.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-4
SLIDE 4

Generic homomorphic encryption Gentry’s blueprint Second generation

Privacy Homomorphisms

Find an encryption scheme S such that: Let y = S.Enck(x). For any PPT function f mapping plaintexts to plaintexts, find y′ publicly such that S.Deck(y′) = f (x). Example: If S.plainspace is a ring, provide functionalities Add, Mult such that Add(Enc(x), Enc(y)) encrypts x + y Mult(Enc(x), Enc(y)) encrypts x × y. Disclaimer Along with reasonable security properties!

Francisco Vial-Prado Fully Homomorphic Encryption

slide-5
SLIDE 5

Generic homomorphic encryption Gentry’s blueprint Second generation

Privacy Homomorphisms

Find an encryption scheme S such that: Let y = S.Enck(x). For any PPT function f mapping plaintexts to plaintexts, find y′ publicly such that S.Deck(y′) = f (x). Example: If S.plainspace is a ring, provide functionalities Add, Mult such that Add(Enc(x), Enc(y)) encrypts x + y Mult(Enc(x), Enc(y)) encrypts x × y. Disclaimer Along with reasonable security properties!

Francisco Vial-Prado Fully Homomorphic Encryption

slide-6
SLIDE 6

Generic homomorphic encryption Gentry’s blueprint Second generation

Privacy Homomorphisms

Find an encryption scheme S such that: Let y = S.Enck(x). For any PPT function f mapping plaintexts to plaintexts, find y′ publicly such that S.Deck(y′) = f (x). Example: If S.plainspace is a ring, provide functionalities Add, Mult such that Add(Enc(x), Enc(y)) encrypts x + y Mult(Enc(x), Enc(y)) encrypts x × y. Disclaimer Along with reasonable security properties!

Francisco Vial-Prado Fully Homomorphic Encryption

slide-7
SLIDE 7

A priori observations

slide-8
SLIDE 8

Generic homomorphic encryption Gentry’s blueprint Second generation

HE is non determinist

  • 1. Homomorphic encryption must be non-determinist

The attacker could solve ring equations x = k ⇔ (x = 0) ∧ (x2 = x + x + · · · + x

  • ktimes

)

  • 1bis. Broccoli heuristics: If ciphertext spaces are distinguishable,

they should be somewhat separable.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-9
SLIDE 9

Generic homomorphic encryption Gentry’s blueprint Second generation

HE is non determinist

  • 1. Homomorphic encryption must be non-determinist

The attacker could solve ring equations x = k ⇔ (x = 0) ∧ (x2 = x + x + · · · + x

  • ktimes

)

  • 1bis. Broccoli heuristics: If ciphertext spaces are distinguishable,

they should be somewhat separable.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-10
SLIDE 10

Generic homomorphic encryption Gentry’s blueprint Second generation

HE runs in worst-case complexity for decision algorithms

  • 2. Logical conditions translate to homomorphic comparison

circuits. Consider the equality circuit: Let a, b ∈ {0, 1}κ. Eq(a, b) = 1 ⊕

κ

  • i=1

(ai ⊕ bi ⊕ 1) = if a = b, 1 if a = b.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-11
SLIDE 11

Generic homomorphic encryption Gentry’s blueprint Second generation

Don’t allow easy CCA’s

3.– Decrypt Verifiable Computations Only If Possible (Homomorphic encryption schemes are known to be vulnerable to IND-CCA Key-Recovery attacks)

Francisco Vial-Prado Fully Homomorphic Encryption

slide-12
SLIDE 12

Generic homomorphic encryption Gentry’s blueprint Second generation

Connections with other cryptographic problems

(implied by) Functional encryption (provides reduction of) Secure Multiparty Computation (compatible with) Identity/Attribute-Based Encryption (brick of?) Indistinguishability Obfuscation (first multi-hop?) Proxy Re-encryption

Francisco Vial-Prado Fully Homomorphic Encryption

slide-13
SLIDE 13

Generic homomorphic encryption Gentry’s blueprint Second generation

Connections with other cryptographic problems

(implied by) Functional encryption (provides reduction of) Secure Multiparty Computation (compatible with) Identity/Attribute-Based Encryption (brick of?) Indistinguishability Obfuscation (first multi-hop?) Proxy Re-encryption

Francisco Vial-Prado Fully Homomorphic Encryption

slide-14
SLIDE 14

Generic homomorphic encryption Gentry’s blueprint Second generation

Connections with other cryptographic problems

(implied by) Functional encryption (provides reduction of) Secure Multiparty Computation (compatible with) Identity/Attribute-Based Encryption (brick of?) Indistinguishability Obfuscation (first multi-hop?) Proxy Re-encryption

Francisco Vial-Prado Fully Homomorphic Encryption

slide-15
SLIDE 15

Generic homomorphic encryption Gentry’s blueprint Second generation

Connections with other cryptographic problems

(implied by) Functional encryption (provides reduction of) Secure Multiparty Computation (compatible with) Identity/Attribute-Based Encryption (brick of?) Indistinguishability Obfuscation (first multi-hop?) Proxy Re-encryption

Francisco Vial-Prado Fully Homomorphic Encryption

slide-16
SLIDE 16

Generic homomorphic encryption Gentry’s blueprint Second generation

Connections with other cryptographic problems

(implied by) Functional encryption (provides reduction of) Secure Multiparty Computation (compatible with) Identity/Attribute-Based Encryption (brick of?) Indistinguishability Obfuscation (first multi-hop?) Proxy Re-encryption

Francisco Vial-Prado Fully Homomorphic Encryption

slide-17
SLIDE 17

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s solution

The Sophomore’s Dream Let R be some ring and I be an ideal of R. Let m ∈ R/I. Let Enc(m) := m + i where i ∈ I is sampled randomly. Enc(m1) + Enc(m2) = m1 + m2 + i′, Enc(m1) × Enc(m2) = m1 × m2 + i′′. Good game; now look for Random efficient sampling from α + I for every α ∈ R/I Secret decryption power: ideal annihilation procedure α + xI → α. Connection to hard problems.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-18
SLIDE 18

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s solution

The Sophomore’s Dream Let R be some ring and I be an ideal of R. Let m ∈ R/I. Let Enc(m) := m + i where i ∈ I is sampled randomly. Enc(m1) + Enc(m2) = m1 + m2 + i′, Enc(m1) × Enc(m2) = m1 × m2 + i′′. Good game; now look for Random efficient sampling from α + I for every α ∈ R/I Secret decryption power: ideal annihilation procedure α + xI → α. Connection to hard problems.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-19
SLIDE 19

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s solution

The Sophomore’s Dream Let R be some ring and I be an ideal of R. Let m ∈ R/I. Let Enc(m) := m + i where i ∈ I is sampled randomly. Enc(m1) + Enc(m2) = m1 + m2 + i′, Enc(m1) × Enc(m2) = m1 × m2 + i′′. Good game; now look for Random efficient sampling from α + I for every α ∈ R/I Secret decryption power: ideal annihilation procedure α + xI → α. Connection to hard problems.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-20
SLIDE 20

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s solution

The Sophomore’s Dream Let R be some ring and I be an ideal of R. Let m ∈ R/I. Let Enc(m) := m + i where i ∈ I is sampled randomly. Enc(m1) + Enc(m2) = m1 + m2 + i′, Enc(m1) × Enc(m2) = m1 × m2 + i′′. Good game; now look for Random efficient sampling from α + I for every α ∈ R/I Secret decryption power: ideal annihilation procedure α + xI → α. Connection to hard problems.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-21
SLIDE 21

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s solution

The Sophomore’s Dream Let R be some ring and I be an ideal of R. Let m ∈ R/I. Let Enc(m) := m + i where i ∈ I is sampled randomly. Enc(m1) + Enc(m2) = m1 + m2 + i′, Enc(m1) × Enc(m2) = m1 × m2 + i′′. Good game; now look for Random efficient sampling from α + I for every α ∈ R/I Secret decryption power: ideal annihilation procedure α + xI → α. Connection to hard problems.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-22
SLIDE 22

Generic homomorphic encryption Gentry’s blueprint Second generation

Ideals + Lattices = Ideal Lattices

Gentry’s first FHE scheme Specialized the latter construction using polynomial rings and two sets of ideal lattices. Secret and public keys are parallelepipeds in Rn, with large n, and plaintexts/ciphertexts are polynomials in Z[X]/(X n − 1).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-23
SLIDE 23

Generic homomorphic encryption Gentry’s blueprint Second generation

Ideals + Lattices = Ideal Lattices

Gentry’s first FHE scheme Specialized the latter construction using polynomial rings and two sets of ideal lattices. Secret and public keys are parallelepipeds in Rn, with large n, and plaintexts/ciphertexts are polynomials in Z[X]/(X n − 1).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-24
SLIDE 24

Disclaimer What follows is an Unfair and Informal and Incomplete Description

  • f Gentry’s scheme
slide-25
SLIDE 25

Generic homomorphic encryption Gentry’s blueprint Second generation

Lattices

More on lattices on yesterdays’ talk: Engineering lattice-based crypto – Peter Schwabe b1 b2 L = Z · b1 + Z · b2 B = {b1, b2} is called a basis of L.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-26
SLIDE 26

Generic homomorphic encryption Gentry’s blueprint Second generation

Lattices

More on lattices on yesterdays’ talk: Engineering lattice-based crypto – Peter Schwabe b1 b2 L = Z · b1 + Z · b2 B = {b1, b2} is called a basis of L.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-27
SLIDE 27

Generic homomorphic encryption Gentry’s blueprint Second generation

Lattices

More on lattices on yesterdays’ talk: Engineering lattice-based crypto – Peter Schwabe b1 b2 L = Z · b1 + Z · b2 B = {b1, b2} is called a basis of L.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-28
SLIDE 28

Generic homomorphic encryption Gentry’s blueprint Second generation

Lattices

b1 b2 b′

1

b′

2

B = U · B′ for U ∈ GLn(Z). In particular, for any base, det(L) :=

  • det(B · Bt).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-29
SLIDE 29

Generic homomorphic encryption Gentry’s blueprint Second generation

Lattices

b1 b2 b′

1

b′

2

B = U · B′ for U ∈ GLn(Z). In particular, for any base, det(L) :=

  • det(B · Bt).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-30
SLIDE 30

Generic homomorphic encryption Gentry’s blueprint Second generation

Lattices

b1 b2 b′

1

b′

2

B = U · B′ for U ∈ GLn(Z). In particular, for any base, det(L) :=

  • det(B · Bt).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-31
SLIDE 31

Generic homomorphic encryption Gentry’s blueprint Second generation

b1 b2 P(B) :=

  • −1

2, 1 2

  • · b1 +
  • −1

2, 1 2

  • · b2

Vol(P) = det(L)

Francisco Vial-Prado Fully Homomorphic Encryption

slide-32
SLIDE 32

Generic homomorphic encryption Gentry’s blueprint Second generation

b1 b2 P(B) :=

  • −1

2, 1 2

  • · b1 +
  • −1

2, 1 2

  • · b2

Vol(P) = det(L)

Francisco Vial-Prado Fully Homomorphic Encryption

slide-33
SLIDE 33

Generic homomorphic encryption Gentry’s blueprint Second generation

b1 b2 P(B) :=

  • −1

2, 1 2

  • · b1 +
  • −1

2, 1 2

  • · b2

Vol(P) = det(L)

Francisco Vial-Prado Fully Homomorphic Encryption

slide-34
SLIDE 34

Generic homomorphic encryption Gentry’s blueprint Second generation

x mod B ∀x ∈ Rn x mod B := x − B⌊B−1 · x⌉

Francisco Vial-Prado Fully Homomorphic Encryption

slide-35
SLIDE 35

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s scheme

A message m = (1, 0, 0, 0, 1, 1) is encrypted by c = m mod Bpk. Then, c = (1, 3, 0, −2, 0, −521159786514568) is decrypted by m = c mod Bsk.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-36
SLIDE 36

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s scheme

A message m = (1, 0, 0, 0, 1, 1) is encrypted by c = m mod Bpk. Then, c = (1, 3, 0, −2, 0, −521159786514568) is decrypted by m = c mod Bsk.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-37
SLIDE 37

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s scheme

Concretely: Let p ∈ Z[X]/(X n − 1). Then Bsk = {p(x), xp(x), x2p(x), . . . , xn−1p(x)} In order to decrypt a ciphertext c = (c0, . . . , cn−1), c mod Bsk = c − Bsk · ⌊B−1 sk · c⌉ (in Zn) = c(x) − p(x) · ⌊p(x)−1 · c(x)⌉ (in

Z[X] X n−1).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-38
SLIDE 38

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s scheme

Concretely: Let p ∈ Z[X]/(X n − 1). Then Bsk = {p(x), xp(x), x2p(x), . . . , xn−1p(x)} In order to decrypt a ciphertext c = (c0, . . . , cn−1), c mod Bsk = c − Bsk · ⌊B−1 sk · c⌉ (in Zn) = c(x) − p(x) · ⌊p(x)−1 · c(x)⌉ (in

Z[X] X n−1).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-39
SLIDE 39

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s scheme

Concretely: Let p ∈ Z[X]/(X n − 1). Then Bsk = {p(x), xp(x), x2p(x), . . . , xn−1p(x)} In order to decrypt a ciphertext c = (c0, . . . , cn−1), c mod Bsk = c − Bsk · ⌊B−1 sk · c⌉ (in Zn) = c(x) − p(x) · ⌊p(x)−1 · c(x)⌉ (in

Z[X] X n−1).

Francisco Vial-Prado Fully Homomorphic Encryption

slide-40
SLIDE 40

Generic homomorphic encryption Gentry’s blueprint Second generation

Gentry’s scheme

Homomorphic operations? Ring structure transport from R = Z[X]/(P(X)), to Zn via the coefficients homomorphism.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-41
SLIDE 41

Generic homomorphic encryption Gentry’s blueprint Second generation

The noise problem and Gentrys’ Glovebox

Encryption m + xI is subject to the ’size’ of x. After a threshold, decryption breaks. Bootstrapping operation: Homomorphically decrypt

Francisco Vial-Prado Fully Homomorphic Encryption

slide-42
SLIDE 42

Generic homomorphic encryption Gentry’s blueprint Second generation

The noise problem and Gentrys’ Glovebox

Encryption m + xI is subject to the ’size’ of x. After a threshold, decryption breaks. Bootstrapping operation: Homomorphically decrypt

Francisco Vial-Prado Fully Homomorphic Encryption

slide-43
SLIDE 43

Second and third gen schemes

slide-44
SLIDE 44

Generic homomorphic encryption Gentry’s blueprint Second generation

Second and third generation schemes

Same blueprint Provide Add, Mult operations, bootstrap to reduce noise, repeat Improved efficiency and security RLWE, NTRU-based, Approximate Eigenvectors Better noise growth, key sizes, ciphertext compression, ciphertext packing, SIMD style Efficient bootstrapping New flavors, properties, and already practical for applications.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-45
SLIDE 45

Generic homomorphic encryption Gentry’s blueprint Second generation

Second and third generation schemes

Same blueprint Provide Add, Mult operations, bootstrap to reduce noise, repeat Improved efficiency and security RLWE, NTRU-based, Approximate Eigenvectors Better noise growth, key sizes, ciphertext compression, ciphertext packing, SIMD style Efficient bootstrapping New flavors, properties, and already practical for applications.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-46
SLIDE 46

Generic homomorphic encryption Gentry’s blueprint Second generation

Second and third generation schemes

Same blueprint Provide Add, Mult operations, bootstrap to reduce noise, repeat Improved efficiency and security RLWE, NTRU-based, Approximate Eigenvectors Better noise growth, key sizes, ciphertext compression, ciphertext packing, SIMD style Efficient bootstrapping New flavors, properties, and already practical for applications.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-47
SLIDE 47

Generic homomorphic encryption Gentry’s blueprint Second generation

Second and third generation schemes

Same blueprint Provide Add, Mult operations, bootstrap to reduce noise, repeat Improved efficiency and security RLWE, NTRU-based, Approximate Eigenvectors Better noise growth, key sizes, ciphertext compression, ciphertext packing, SIMD style Efficient bootstrapping New flavors, properties, and already practical for applications.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-48
SLIDE 48

Generic homomorphic encryption Gentry’s blueprint Second generation

Second and third generation schemes

Same blueprint Provide Add, Mult operations, bootstrap to reduce noise, repeat Improved efficiency and security RLWE, NTRU-based, Approximate Eigenvectors Better noise growth, key sizes, ciphertext compression, ciphertext packing, SIMD style Efficient bootstrapping New flavors, properties, and already practical for applications.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-49
SLIDE 49

Generic homomorphic encryption Gentry’s blueprint Second generation

Second and third generation schemes

Same blueprint Provide Add, Mult operations, bootstrap to reduce noise, repeat Improved efficiency and security RLWE, NTRU-based, Approximate Eigenvectors Better noise growth, key sizes, ciphertext compression, ciphertext packing, SIMD style Efficient bootstrapping New flavors, properties, and already practical for applications.

Francisco Vial-Prado Fully Homomorphic Encryption

slide-50
SLIDE 50

Generic homomorphic encryption Gentry’s blueprint Second generation

Learning With Errors

Regev’s folklore example: Recover an integer vector s = (s1, s2, s3, s4) ∈ Z4

17 satisfying

               14s1 + 15s2 + 5s3 + 2s4 ≈ 8 mod 17, 13s1 + 14s2 + 14s3 + 6s4 ≈ 16 mod 17, 6s1 + 10s2 + 13s3 + 1s4 ≈ 3 mod 17, 10s1 + 4s2 + 12s3 + 16s4 ≈ 12 mod 17, 9s1 + 5s2 + 9s3 + 6s4 ≈ 9 mod 17, 3s1 + 6s2 + 4s3 + 5s4 ≈ 16 mod 17, where “≈” means that the equation is correct up to an error of ±1. BGV (2011) FHE scheme

Francisco Vial-Prado Fully Homomorphic Encryption

slide-51
SLIDE 51

Generic homomorphic encryption Gentry’s blueprint Second generation

Ring Learning With Errors

Let χ be an error distribution over R = Fq[X]/(Pn(X)).Let si(x) ← χ and for i = 0, 1, 2, . . . , ai(x)

$

← − R, si ← χ. Finally, let bi := ai · s + ei. Search-RLWE Guess s given a list of pairs (ai, bi) = (ai, ai · s + ei). Decision-RLWE Given a list of pairs (ai(x), bi(x)), decide whether the bi’s were sampled randomly, or constructed as above. BFV (2012) FHE scheme - with new techniques → See LatinCrypt’19 - Compact and simple RLWE based key encapsulation mechanism

Francisco Vial-Prado Fully Homomorphic Encryption

slide-52
SLIDE 52

Generic homomorphic encryption Gentry’s blueprint Second generation

Ring Learning With Errors

Let χ be an error distribution over R = Fq[X]/(Pn(X)).Let si(x) ← χ and for i = 0, 1, 2, . . . , ai(x)

$

← − R, si ← χ. Finally, let bi := ai · s + ei. Search-RLWE Guess s given a list of pairs (ai, bi) = (ai, ai · s + ei). Decision-RLWE Given a list of pairs (ai(x), bi(x)), decide whether the bi’s were sampled randomly, or constructed as above. BFV (2012) FHE scheme - with new techniques → See LatinCrypt’19 - Compact and simple RLWE based key encapsulation mechanism

Francisco Vial-Prado Fully Homomorphic Encryption

slide-53
SLIDE 53

Generic homomorphic encryption Gentry’s blueprint Second generation

Ring Learning With Errors

Let χ be an error distribution over R = Fq[X]/(Pn(X)).Let si(x) ← χ and for i = 0, 1, 2, . . . , ai(x)

$

← − R, si ← χ. Finally, let bi := ai · s + ei. Search-RLWE Guess s given a list of pairs (ai, bi) = (ai, ai · s + ei). Decision-RLWE Given a list of pairs (ai(x), bi(x)), decide whether the bi’s were sampled randomly, or constructed as above. BFV (2012) FHE scheme - with new techniques → See LatinCrypt’19 - Compact and simple RLWE based key encapsulation mechanism

Francisco Vial-Prado Fully Homomorphic Encryption

slide-54
SLIDE 54

Generic homomorphic encryption Gentry’s blueprint Second generation

Ring Learning With Errors

Let χ be an error distribution over R = Fq[X]/(Pn(X)).Let si(x) ← χ and for i = 0, 1, 2, . . . , ai(x)

$

← − R, si ← χ. Finally, let bi := ai · s + ei. Search-RLWE Guess s given a list of pairs (ai, bi) = (ai, ai · s + ei). Decision-RLWE Given a list of pairs (ai(x), bi(x)), decide whether the bi’s were sampled randomly, or constructed as above. BFV (2012) FHE scheme - with new techniques → See LatinCrypt’19 - Compact and simple RLWE based key encapsulation mechanism

Francisco Vial-Prado Fully Homomorphic Encryption

slide-55
SLIDE 55

Generic homomorphic encryption Gentry’s blueprint Second generation

Ring Learning With Errors

Let χ be an error distribution over R = Fq[X]/(Pn(X)).Let si(x) ← χ and for i = 0, 1, 2, . . . , ai(x)

$

← − R, si ← χ. Finally, let bi := ai · s + ei. Search-RLWE Guess s given a list of pairs (ai, bi) = (ai, ai · s + ei). Decision-RLWE Given a list of pairs (ai(x), bi(x)), decide whether the bi’s were sampled randomly, or constructed as above. BFV (2012) FHE scheme - with new techniques → See LatinCrypt’19 - Compact and simple RLWE based key encapsulation mechanism

Francisco Vial-Prado Fully Homomorphic Encryption

slide-56
SLIDE 56

Generic homomorphic encryption Gentry’s blueprint Second generation

NTRU-based

N-th truncated: Security problems related to Gaussian distributions and inversions in polynomial rings. Exposed strong connections with MPC (LTV12 scheme) Subfield lattice attacks on overstretched NTRU assumptions - ABD 2016. → Same ideas behind the new Mersenne cryptosystem (AJPS17), see LatinCrypt’19, Quantum LLL with an Application to Mersenne Number Cryptosystems

Francisco Vial-Prado Fully Homomorphic Encryption

slide-57
SLIDE 57

Generic homomorphic encryption Gentry’s blueprint Second generation

NTRU-based

N-th truncated: Security problems related to Gaussian distributions and inversions in polynomial rings. Exposed strong connections with MPC (LTV12 scheme) Subfield lattice attacks on overstretched NTRU assumptions - ABD 2016. → Same ideas behind the new Mersenne cryptosystem (AJPS17), see LatinCrypt’19, Quantum LLL with an Application to Mersenne Number Cryptosystems

Francisco Vial-Prado Fully Homomorphic Encryption

slide-58
SLIDE 58

Generic homomorphic encryption Gentry’s blueprint Second generation

NTRU-based

N-th truncated: Security problems related to Gaussian distributions and inversions in polynomial rings. Exposed strong connections with MPC (LTV12 scheme) Subfield lattice attacks on overstretched NTRU assumptions - ABD 2016. → Same ideas behind the new Mersenne cryptosystem (AJPS17), see LatinCrypt’19, Quantum LLL with an Application to Mersenne Number Cryptosystems

Francisco Vial-Prado Fully Homomorphic Encryption

slide-59
SLIDE 59

Generic homomorphic encryption Gentry’s blueprint Second generation

Third Generation

GSW and Approximate Eigenvectors C · v = m.v + e mod q Asymmetric nose growth Bootstrapping after each gate - the homomorphic brick Ring variant and inspired optimizations: TorusFHE (https://tfhe.github.io/tfhe/)

Francisco Vial-Prado Fully Homomorphic Encryption

slide-60
SLIDE 60

Generic homomorphic encryption Gentry’s blueprint Second generation

Third Generation

GSW and Approximate Eigenvectors C · v = m.v + e mod q Asymmetric nose growth Bootstrapping after each gate - the homomorphic brick Ring variant and inspired optimizations: TorusFHE (https://tfhe.github.io/tfhe/)

Francisco Vial-Prado Fully Homomorphic Encryption

slide-61
SLIDE 61

Generic homomorphic encryption Gentry’s blueprint Second generation

Third Generation

GSW and Approximate Eigenvectors C · v = m.v + e mod q Asymmetric nose growth Bootstrapping after each gate - the homomorphic brick Ring variant and inspired optimizations: TorusFHE (https://tfhe.github.io/tfhe/)

Francisco Vial-Prado Fully Homomorphic Encryption

slide-62
SLIDE 62

Generic homomorphic encryption Gentry’s blueprint Second generation

Conclusion

Thank you!

Francisco Vial-Prado Fully Homomorphic Encryption

slide-63
SLIDE 63

Generic homomorphic encryption Gentry’s blueprint Second generation

Conclusion

Thank you!

Francisco Vial-Prado Fully Homomorphic Encryption