Cryptanalysis of the New CLT Multilinear Map over the Integers May - - PowerPoint PPT Presentation

cryptanalysis of the new clt multilinear map over the
SMART_READER_LITE
LIVE PREVIEW

Cryptanalysis of the New CLT Multilinear Map over the Integers May - - PowerPoint PPT Presentation

Cryptanalysis of the New CLT Multilinear Map over the Integers May 11, 2016 Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 1 / 26 Jung Hee Cheon 1 , Pierre-Alain Fouque 2 , 3 , Changmin Lee 1 , Brice Minaud 2 , Hansol


slide-1
SLIDE 1

Cryptanalysis of the New CLT Multilinear Map

  • ver the Integers

Jung Hee Cheon1, Pierre-Alain Fouque2,3, Changmin Lee1, Brice Minaud2, Hansol Ryu1

1Seoul National University, Seoul, Korea 2Université de Rennes 1, Rennes, France 3Institut Universitaire de France, Paris, France

May 11, 2016

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 1 / 26

slide-2
SLIDE 2

Multilinear Maps

A κ-multilinear map is a map e : G1 × · · · × Gκ → GT, which has the following property: e(g1, · · · , α · gi, · · · , gκ) = α · e(g1, · · · , gκ) for 1 ≤ i ≤ κ.

Hardness Assumptions

MDDH: Given (κ + 1) encodings of m0, · · · , mκ and encoding of m, determine whether m = ∏κ

0 mi.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 2 / 26

slide-3
SLIDE 3

Applications

+ Witness encryption, functional encryption, effjcient broadcast encryption, ....

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 3 / 26

slide-4
SLIDE 4

Multilinear Maps over the Integers

Scheme Attack CLT13 CHLRS15 GGHZ14, BWZ14 CGH+15 CLT15

  • Vs. from ideal lattices:

Conceptual simplicity Relative effjciency Wide range of presumed hard problems

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 4 / 26

slide-5
SLIDE 5

Multilinear Maps over the Integers

Scheme Attack CLT13 CHLRS15 GGHZ14, BWZ14 CGH+15 CLT15 Ours

  • Vs. from ideal lattices:

Conceptual simplicity Relative effjciency Wide range of presumed hard problems

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 4 / 26

slide-6
SLIDE 6

Result

Given instance of CLT15’s, one can fjnd all secret parameters of CLT15 scheme in polynomial time with overwhelming probability.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 5 / 26

slide-7
SLIDE 7

CLT15 Multilinear Map

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 6 / 26

slide-8
SLIDE 8

CLT15: Construction

Algebraic setting: Secret: Primes p1, · · · , pn and g1, · · · , gn with gi ≪ pi x0 = ∏

i pi and invertible z ∈ Zx0

Public: Zero-testing modulus N with N ≫ x0 Encoding: Level-k encoding of (m1, · · · , mn) ∈ Zg1 × · · · × Zgn is e = CRT(pi) (rigi + mi zk ) + ax0 ≡ rigi + mi zk mod pi.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 7 / 26

slide-9
SLIDE 9

CLT15: Zero-testing

Defjne ui = [ gi

(x0

pi

)−1]

pi x0 pi , vi = [pzt · ui]N for i = 1, · · · , n and

v0 = [pzt · x0]N. Then e = CRT(pi) (rigi + mi zκ ) = ∑

i

[ri + mi/gi]pi ui + ax0, and |vi| ≈ N/pi, |v0| ≪ N. So [pzt · e]N = [ ∑

i

[ri + mi/gi]pi vi + av0 ]

N.

If e is an encoding of zero, [pzt · e]N = [ ∑

i

[ri + 0/gi]pi vi + av0 ]

N

= ∑

i

rivi + av0 ≪ N.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 8 / 26

slide-10
SLIDE 10

CHLRS Attack: When x0 is Known

Given x = CRT(pi)(xigi/z), y = CRT(pi)(yi/zκ−1), c = CRT(pi)(ci), compute e = xcy modx0 = CRT(xiciyigi/zκ), [pzt · e]N = ∑

i

xiciviyi + av0, and [pzt · e]N≡v0 ∑

i

xiciviyi. xi c1v1 ... cnvn yi From this matrix equation, we can get ci. Then (c − ci) is a multiple of pi.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 9 / 26

slide-11
SLIDE 11

CHLRS Attack: When x0 is Known

Given x = CRT(pi)(xigi/z), y = CRT(pi)(yi/zκ−1), c = CRT(pi)(ci), compute e = xcy modx0 = CRT(xiciyigi/zκ), [pzt · e]N = ∑

i

xiciviyi + av0, and [pzt · e]N≡v0 ∑

i

xiciviyi. X c1v1 ... cnvn Y From this matrix equation, we can get ci. Then (c − ci) is a multiple of pi.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 10 / 26

slide-12
SLIDE 12

CHLRS Attack: When x0 is Unknown

We can not reduce the size of encoding. e = xcy = ∑

i

xiciyiui + ax0, [pzt · e]N = [ ∑

i

xiciyivi + av0 ]

N,

and ∑

i xiciyivi + av0 > N, since a ≈ x2 0.

Previous attack does not work. Correctness of zero-testing does not hold. Need to reduce the size of encodings in order to performing zero-testing.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 11 / 26

slide-13
SLIDE 13

CLT15: Multiplication using Ladder

Note that for given level-s encoding e = CRT(pi) (rigi+mi

zs

) and level-(κ − s) encoding e′ = CRT(pi) (r′

igi+m′ i

zκ−s

) , e · e′ ≡x0 CRT(pi) (r′′

i gi + mim′ i

zκ ) . However, the size of e · e′ ≈ x2

0.

Ladder in each level: encodings of zero X0 < X1 < · · · < Xγ′ with Xj ≈ 2jx0.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 12 / 26

slide-14
SLIDE 14

CLT15: Multiplication using Ladder

Multiplication of two encodings e and e′: emult = e · e′ − ∑

j

bjX(t)

j

≡ ˜ rigi + mim′

i

zt mod pi, bj ∈ {0, 1}, emult ≈ x0.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 13 / 26

slide-15
SLIDE 15

CHLRS Attack: Using Ladder

Given x = CRT(pi)(xigi/z), y = CRT(pi)(yi/zκ−1), c = CRT(pi)(ci), compute e = xyc − ∑ bjXj = ∑ (xiciyi + ti)ui + a′x0 and [pzt · e]N = ∑

i

(xiciyi + ti)vi + a′v0. X c1v1 ... cnvn Y + T + A’ ·v0 T and A are unknown matrices, so it looks hard to obtain ci.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 14 / 26

slide-16
SLIDE 16

Cryptanalysis of CLT15

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 15 / 26

slide-17
SLIDE 17

Attack Idea

Compute v0 ∈ Z and recover x0.

pzt · (e − ∑

j

bjXj) mod N = ∑

i

(ri + ti)vi + av0.

1 Remove ti using pzt · Xj. 2 Compute v0 ∈ Z from several equations modulo unknown v0. Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 16 / 26

slide-18
SLIDE 18

Step 1: Remove ti

pzt · (e − ∑

j

bjXj) mod N = ∑

i

(ri + ti)vi + (a + a′)v0 = ( ∑

i

rivi + av0 ) + ∑

i

tivi + a′v0 Defjne a map φ, φ : ∑ riui + ax0 − → ∑ rivi + av0, and compute φ(− ∑

j bjXj) =

∑ tivi + a′v0 .

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 17 / 26

slide-19
SLIDE 19

Step 1: Remove ti

pzt · (e − ∑

j

bjXj) mod N = ∑

i

(ri + ti)vi + (a + a′)v0 = ( ∑

i

rivi + av0 ) + ∑

i

tivi + a′v0 Defjne a map φ, φ : ∑ riui + ax0 − → ∑ rivi + av0, and compute φ(− ∑

j bjXj) =

∑ tivi + a′v0 .

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 17 / 26

slide-20
SLIDE 20

Step 1: Remove ti

Proposition 1

If e is an encoding of zero and e ≈ x0, then φ(e) = pzt · e mod N.

Proposition 2

Let e = ∑ riui + ax0, e′ = ∑ r′

iui + a′x0. If ∀i, −pi/2 < ri + r′ i ≤ pi/2, then

φ(e + e′) = φ(e) + φ(e′). The conditions in Proposition 2 are also required for the correctness of the scheme to hold.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 18 / 26

slide-21
SLIDE 21

Step 1: Remove ti

φ ( ∑ bjXj ) = ∑ bj · φ(Xj) Compute individual φ(Xj).

1 φ(X0) = pzt · X0 mod N by Prop 1. 2 φ(X1 − X0) = φ(X1) − φ(X0) by Prop 2 since (X1 − X0) is small. 3 Continue this process to get all φ(Xj)’s. Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 19 / 26

slide-22
SLIDE 22

X c1v1 ... cnvn Y + T + A’ ·v0

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 20 / 26

slide-23
SLIDE 23

X c1v1 ... cnvn Y + A ·v0

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 21 / 26

slide-24
SLIDE 24

Step 2: Compute v0

x = CRT (xigi z ) , y = CRT ( yi zκ−1 ) φ(xy) = ∑ xiviyi + a∗v0 xi v1 ... vn yi in Zv0

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 22 / 26

slide-25
SLIDE 25

Step 2: Compute v0

x = CRT (xigi z ) , y = CRT ( yi zκ−1 ) φ(xy) = ∑ xiviyi + a∗v0 X v1 ... vn Y in Zv0

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 23 / 26

slide-26
SLIDE 26

Step 2: Compute v0

W = X v1 ... vn Y in Zv0 W is not a full rank matrix when embedded into Zv0, then v0 divides det(W). Compute v0 and x0 = v0 · p−1

zt mod N

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 24 / 26

slide-27
SLIDE 27

Summary of Current Multilinear Maps

Attack Scheme Key Exchange iO (w/ Lowlevel enc(0)) (w/o Lowlevel enc(0)) Ideal Lattice GGH13 HJ16 ABD16, CJL16, MSZ16 Integers CLT13 CHLRS15 ? CLT15 Our work Graph-Induced GGH15 CLLT15 ?

MSZ16: only for a basic iO scheme ABD16, CJL16: break quantumly or upto degree λ3−ϵ in time < 2λ

Further works: Cryptanalyze CLT13, GGH15 without low-level encoding of zero.

Design a new multilinear map with reduction to standard hard problems.

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 25 / 26

slide-28
SLIDE 28

Thank you

Cheon, Fouque, Lee, Minuad, Ryu Cryptanlysis of CLT15 Maps May 11, 2016 26 / 26