some recent progress in lattice-based cryptographycpeikert/pubs/slides-tcc09.pdf · 2015-09-08 ·...

Post on 28-Jun-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Some Recent Progress inLattice-Based Cryptography

Chris PeikertSRI

TCC 2009

1 / 17

Lattice-Based Cryptography

N= p · q

y = gx mod p

me mod N

e(ga, gb)

=⇒

Why?

I Simple & efficient: linear, parallelizable

I Resists subexp & quantum attacks (so far)

I Security from worst-case assumptions [Ajtai96,. . . ]

(Images courtesy xkcd.org) 2 / 17

Lattice-Based Cryptography

N= p · q

y = gx mod p

me mod N

e(ga, gb)

=⇒

Why?

I Simple & efficient: linear, parallelizable

I Resists subexp & quantum attacks (so far)

I Security from worst-case assumptions [Ajtai96,. . . ]

(Images courtesy xkcd.org) 2 / 17

Lattice-Based Cryptography

N= p · q

y = gx mod p

me mod N

e(ga, gb)

=⇒

Why?

I Simple & efficient: linear, parallelizable

I Resists subexp & quantum attacks (so far)

I Security from worst-case assumptions [Ajtai96,. . . ]

(Images courtesy xkcd.org) 2 / 17

If We Had 6 Hours. . .

I Worst-case / average-case reductions[Aj96,AD97,CN97,Mi03,Re03,MR04,Re05,Pe07,GPV08,Pe09,. . . ]

I Cryptanalysis & concrete parameters[LLL82,Sc87,BKW00,AKS01,NR06,GN08,NV08,MR08,. . . ]

I Cyclic / Ideal lattices [Mi02,PR06,LM06,PR07,LM08,Ge09,. . . ]

F Efficiency — complements general techniques

!! Functionality — uses ‘extra features’ of ideals

I Complexity of lattice problems

F Hardness [vEB81,Aj98,CN99,Mi00,Kh05,RR06,HR07,. . . ]

F Limits on hardness [LLS90,Ba93,GG97,Ca98,AR04,GMR05,LLM06,P07,. . . ]

3 / 17

If We Had 6 Hours. . .

I Worst-case / average-case reductions[Aj96,AD97,CN97,Mi03,Re03,MR04,Re05,Pe07,GPV08,Pe09,. . . ]

I Cryptanalysis & concrete parameters[LLL82,Sc87,BKW00,AKS01,NR06,GN08,NV08,MR08,. . . ]

I Cyclic / Ideal lattices [Mi02,PR06,LM06,PR07,LM08,Ge09,. . . ]

F Efficiency — complements general techniques

!! Functionality — uses ‘extra features’ of ideals

I Complexity of lattice problems

F Hardness [vEB81,Aj98,CN99,Mi00,Kh05,RR06,HR07,. . . ]

F Limits on hardness [LLS90,Ba93,GG97,Ca98,AR04,GMR05,LLM06,P07,. . . ]

3 / 17

If We Had 6 Hours. . .

I Worst-case / average-case reductions[Aj96,AD97,CN97,Mi03,Re03,MR04,Re05,Pe07,GPV08,Pe09,. . . ]

I Cryptanalysis & concrete parameters[LLL82,Sc87,BKW00,AKS01,NR06,GN08,NV08,MR08,. . . ]

I Cyclic / Ideal lattices [Mi02,PR06,LM06,PR07,LM08,Ge09,. . . ]

F Efficiency — complements general techniques

!! Functionality — uses ‘extra features’ of ideals

I Complexity of lattice problems

F Hardness [vEB81,Aj98,CN99,Mi00,Kh05,RR06,HR07,. . . ]

F Limits on hardness [LLS90,Ba93,GG97,Ca98,AR04,GMR05,LLM06,P07,. . . ]

3 / 17

If We Had 6 Hours. . .

I Worst-case / average-case reductions[Aj96,AD97,CN97,Mi03,Re03,MR04,Re05,Pe07,GPV08,Pe09,. . . ]

I Cryptanalysis & concrete parameters[LLL82,Sc87,BKW00,AKS01,NR06,GN08,NV08,MR08,. . . ]

I Cyclic / Ideal lattices [Mi02,PR06,LM06,PR07,LM08,Ge09,. . . ]

F Efficiency — complements general techniques

!! Functionality — uses ‘extra features’ of ideals

I Complexity of lattice problems

F Hardness [vEB81,Aj98,CN99,Mi00,Kh05,RR06,HR07,. . . ]

F Limits on hardness [LLS90,Ba93,GG97,Ca98,AR04,GMR05,LLM06,P07,. . . ]

3 / 17

If We Had 6 Hours. . .

I Worst-case / average-case reductions[Aj96,AD97,CN97,Mi03,Re03,MR04,Re05,Pe07,GPV08,Pe09,. . . ]

I Cryptanalysis & concrete parameters[LLL82,Sc87,BKW00,AKS01,NR06,GN08,NV08,MR08,. . . ]

I Cyclic / Ideal lattices [Mi02,PR06,LM06,PR07,LM08,Ge09,. . . ]

F Efficiency — complements general techniques

!! Functionality — uses ‘extra features’ of ideals

I Complexity of lattice problems

F Hardness [vEB81,Aj98,CN99,Mi00,Kh05,RR06,HR07,. . . ]

F Limits on hardness [LLS90,Ba93,GG97,Ca98,AR04,GMR05,LLM06,P07,. . . ]

3 / 17

This Talk

Hard Avg-Case Problems

CryptoFunctions

AbstractProperties

Applications

Goals1 ‘De-mystify’ lattice-based crypto

2 Advocate a geometric perspective

3 Answer your questions

4 / 17

This Talk

Hard Avg-Case Problems

CryptoFunctions

AbstractProperties

Applications

Goals1 ‘De-mystify’ lattice-based crypto

2 Advocate a geometric perspective

3 Answer your questions

4 / 17

This Talk

Hard Avg-Case Problems

CryptoFunctions

AbstractProperties

Applications

Goals1 ‘De-mystify’ lattice-based crypto

2 Advocate a geometric perspective

3 Answer your questions

4 / 17

This Talk

Hard Avg-Case Problems

CryptoFunctions

AbstractProperties

Applications

Goals1 ‘De-mystify’ lattice-based crypto

2 Advocate a geometric perspective

3 Answer your questions

4 / 17

This Talk

Hard Avg-Case Problems

CryptoFunctions

AbstractProperties

Applications

Goals1 ‘De-mystify’ lattice-based crypto

2 Advocate a geometric perspective

3 Answer your questions

4 / 17

This Talk

Hard Avg-Case Problems

CryptoFunctions

AbstractProperties

Applications

Goals1 ‘De-mystify’ lattice-based crypto

2 Advocate a geometric perspective

3 Answer your questions

4 / 17

LatticesI Today: full-rank subgroup L of Zm (x, y ∈ L ⇒ x± y ∈ L; dim span = m)

I Basis B = {b1, . . . , bm} :

L =m∑

i=1

(Z · bi)

(Other representations too . . . )

O

Hard Computational ProblemsI Find ‘relatively short’ (nonzero) vectors

I Estimate geometric quantities (minimum distance, covering radius, . . . )

5 / 17

LatticesI Today: full-rank subgroup L of Zm

I Basis B = {b1, . . . , bm} :

L =m∑

i=1

(Z · bi)

(Other representations too . . . )

O

b1

b2

Hard Computational ProblemsI Find ‘relatively short’ (nonzero) vectors

I Estimate geometric quantities (minimum distance, covering radius, . . . )

5 / 17

LatticesI Today: full-rank subgroup L of Zm

I Basis B = {b1, . . . , bm} :

L =m∑

i=1

(Z · bi)

(Other representations too . . . )

O

b1

b2

Hard Computational ProblemsI Find ‘relatively short’ (nonzero) vectors

I Estimate geometric quantities (minimum distance, covering radius, . . . )

5 / 17

LatticesI Today: full-rank subgroup L of Zm

I Basis B = {b1, . . . , bm} :

L =m∑

i=1

(Z · bi)

(Other representations too . . . ) O

b1

b2

Hard Computational ProblemsI Find ‘relatively short’ (nonzero) vectors

I Estimate geometric quantities (minimum distance, covering radius, . . . )

5 / 17

LatticesI Today: full-rank subgroup L of Zm

I Basis B = {b1, . . . , bm} :

L =m∑

i=1

(Z · bi)

(Other representations too . . . ) O

b1

b2

Hard Computational ProblemsI Find ‘relatively short’ (nonzero) vectors

I Estimate geometric quantities (minimum distance, covering radius, . . . )

5 / 17

A Combinatorial ProblemI Security param n, modulus q: group Zn

q (e.g., q = poly(n))

I Goal: find nontrivial z ∈ {0,±1}m such that:

Hash Function [Ajtai96,GGH97]

I Set m > n lg q. Define fA : {0, 1}m → Znq

fA(x) = Ax

I Collision x, x′ ∈ {0, 1}m where Ax = Ax′ . . .

. . . yields solution z = x− x′ ∈ {0,±1}m.

6 / 17

A Combinatorial ProblemI Security param n, modulus q: group Zn

q (e.g., q = poly(n))

I Goal: find nontrivial z ∈ {0,±1}m such that:

z1 ·

|a1|

+ z2 ·

|a2|

+

· · ·

+ zm ·

|am

|

=

|0|

∈ Znq

Hash Function [Ajtai96,GGH97]

I Set m > n lg q. Define fA : {0, 1}m → Znq

fA(x) = Ax

I Collision x, x′ ∈ {0, 1}m where Ax = Ax′ . . .

. . . yields solution z = x− x′ ∈ {0,±1}m.

6 / 17

A Combinatorial ProblemI Security param n, modulus q: group Zn

q (e.g., q = poly(n))

I Goal: find nontrivial z1, . . . , zm ∈ {0,±1} such that:

z1 ·

|a1|

+ z2 ·

|a2|

+ · · · + zm ·

|am

|

=

|0|

∈ Znq

Hash Function [Ajtai96,GGH97]

I Set m > n lg q. Define fA : {0, 1}m → Znq

fA(x) = Ax

I Collision x, x′ ∈ {0, 1}m where Ax = Ax′ . . .

. . . yields solution z = x− x′ ∈ {0,±1}m.

6 / 17

A Combinatorial ProblemI Security param n, modulus q: group Zn

q (e.g., q = poly(n))

I Goal: find nontrivial z ∈ {0,±1}m such that:

· · · · A · · · ·

︸ ︷︷ ︸

m

z

= 0 ∈ Znq

Hash Function [Ajtai96,GGH97]

I Set m > n lg q. Define fA : {0, 1}m → Znq

fA(x) = Ax

I Collision x, x′ ∈ {0, 1}m where Ax = Ax′ . . .

. . . yields solution z = x− x′ ∈ {0,±1}m.

6 / 17

A Combinatorial ProblemI Security param n, modulus q: group Zn

q (e.g., q = poly(n))

I Goal: find nontrivial z ∈ {0,±1}m such that:

· · · · A · · · ·

︸ ︷︷ ︸

m

z

= 0 ∈ Znq

Hash Function [Ajtai96,GGH97]

I Set m > n lg q. Define fA : {0, 1}m → Znq

fA(x) = Ax

I Collision x, x′ ∈ {0, 1}m where Ax = Ax′ . . .

. . . yields solution z = x− x′ ∈ {0,±1}m.

6 / 17

A Combinatorial ProblemI Security param n, modulus q: group Zn

q (e.g., q = poly(n))

I Goal: find nontrivial z ∈ {0,±1}m such that:

· · · · A · · · ·

︸ ︷︷ ︸

m

z

= 0 ∈ Znq

Hash Function [Ajtai96,GGH97]

I Set m > n lg q. Define fA : {0, 1}m → Znq

fA(x) = Ax

I Collision x, x′ ∈ {0, 1}m where Ax = Ax′ . . .

. . . yields solution z = x− x′ ∈ {0,±1}m.

6 / 17

A Combinatorial ProblemI Security param n, modulus q: group Zn

q (e.g., q = poly(n))

I Goal: find nontrivial z ∈ {0,±1}m such that:

· · · · A · · · ·

︸ ︷︷ ︸

m

z

= 0 ∈ Znq

Hash Function [Ajtai96,GGH97]

I Set m > n lg q. Define fA : {0, 1}m → Znq

fA(x) = Ax

I Collision x, x′ ∈ {0, 1}m where Ax = Ax′ . . .

. . . yields solution z = x− x′ ∈ {0,±1}m.

6 / 17

Geometric PerspectiveI ‘Parity check’ matrix A ∈ Zn×m

q

L⊥(A) = {z ∈ Zm : Az = 0}

I Each x ∈ Zm has syndrome

u = Ax ∈ Znq

I Enlarge domain of fA to . . .. . . still O-W & C-R!

O

Average / Worst-Case Connection [Ajtai96,. . . ]

⇓approx lattice problems in worst case

7 / 17

Geometric PerspectiveI ‘Parity check’ matrix A ∈ Zn×m

q

L⊥(A) = {z ∈ Zm : Az = 0}

I Each x ∈ Zm has syndrome

u = Ax ∈ Znq

I Enlarge domain of fA to . . .. . . still O-W & C-R!

O

(0, q)

(q, 0)

Average / Worst-Case Connection [Ajtai96,. . . ]

⇓approx lattice problems in worst case

7 / 17

Geometric PerspectiveI ‘Parity check’ matrix A ∈ Zn×m

q

L⊥(A) = {z ∈ Zm : Az = 0}

I Each x ∈ Zm has syndrome

u = Ax ∈ Znq

I Enlarge domain of fA to . . .. . . still O-W & C-R!

O

(0, q)

(q, 0)

Average / Worst-Case Connection [Ajtai96,. . . ]

⇓approx lattice problems in worst case

7 / 17

Geometric PerspectiveI ‘Parity check’ matrix A ∈ Zn×m

q

L⊥(A) = {z ∈ Zm : Az = 0}

I Each x ∈ Zm has syndrome

u = Ax ∈ Znq

I Enlarge domain of fA to . . .. . . still O-W & C-R!

O

(0, q)

(q, 0)

Average / Worst-Case Connection [Ajtai96,. . . ]

Finding ‘short’ nonzero z ∈ L⊥(A)⇓

approx lattice problems in worst case

7 / 17

Geometric PerspectiveI ‘Parity check’ matrix A ∈ Zn×m

q

L⊥(A) = {z ∈ Zm : Az = 0}

I Each x ∈ Zm has syndrome

u = Ax ∈ Znq

I Enlarge domain of fA to . . .. . . still O-W & C-R!

O

(0, q)

(q, 0)

Average / Worst-Case Connection [Ajtai96,. . . ]

Finding ‘short’ nonzero z ∈ L⊥(A)⇓

approx lattice problems in worst case

7 / 17

Geometric PerspectiveI ‘Parity check’ matrix A ∈ Zn×m

q

L⊥(A) = {z ∈ Zm : Az = 0}

I Each x ∈ Zm has syndrome

u = Ax ∈ Znq

I Enlarge domain of fA to . . .. . . still O-W & C-R!

O

(0, q)

(q, 0)

x

Average / Worst-Case Connection [Ajtai96,. . . ]

Finding ‘short’ x with (uniform) syndrome u⇓

approx lattice problems in worst case

7 / 17

Geometric PerspectiveI ‘Parity check’ matrix A ∈ Zn×m

q

L⊥(A) = {z ∈ Zm : Az = 0}

I Each x ∈ Zm has syndrome

u = Ax ∈ Znq

I Enlarge domain of fA to . . .. . . still O-W & C-R!

O

(0, q)

(q, 0)

x

Average / Worst-Case Connection [Ajtai96,. . . ]

Finding ‘short’ x with (uniform) syndrome u⇓

approx lattice problems in worst case

7 / 17

Gaussians and Lattices

“Uniform” over Rm when std dev ≥ min basis length

(Used in worst/average-case reductions [Re03,MR04,. . . ])

8 / 17

Gaussians and Lattices

“Uniform” over Rm when std dev ≥ min basis length

(Used in worst/average-case reductions [Re03,MR04,. . . ])

8 / 17

Gaussians and Lattices

“Uniform” over Rm when std dev ≥ min basis length

(Used in worst/average-case reductions [Re03,MR04,. . . ])

8 / 17

Gaussians and Lattices

“Uniform” over Rm when std dev ≥ min basis length

(Used in worst/average-case reductions [Re03,MR04,. . . ])

8 / 17

Discrete Gaussians

I Fix uniform A. Choose Gaussian input x ∈ Zm:

1 Uniform coset/syndrome u = Ax = fA(x)

2 Conditional ‘discrete Gaussian’ DA,u on x, given u

(Analyzed in [Ba93,Re03,AR04,MR04,Re05,PR06,LM06,Pe07,. . . ])

x

9 / 17

Discrete Gaussians

I Fix uniform A. Choose Gaussian input x ∈ Zm:

1 Uniform coset/syndrome u = Ax = fA(x)

2 Conditional ‘discrete Gaussian’ DA,u on x, given u

(Analyzed in [Ba93,Re03,AR04,MR04,Re05,PR06,LM06,Pe07,. . . ])

x

9 / 17

Discrete Gaussians

I Fix uniform A. Choose Gaussian input x ∈ Zm:

1 Uniform coset/syndrome u = Ax = fA(x)

2 Conditional ‘discrete Gaussian’ DA,u on x, given u

(Analyzed in [Ba93,Re03,AR04,MR04,Re05,PR06,LM06,Pe07,. . . ])

9 / 17

Discrete Gaussians

I Fix uniform A. Choose Gaussian input x ∈ Zm:

1 Uniform coset/syndrome u = Ax = fA(x)

2 Conditional ‘discrete Gaussian’ DA,u on x, given u

(Analyzed in [Ba93,Re03,AR04,MR04,Re05,PR06,LM06,Pe07,. . . ])

9 / 17

A ‘Master’ Trapdoor

Suitable ‘trapdoor’⇓

Invert fA in a very strong sense

Theorem [GPV08]

Given any short B and u,

can efficiently sample x← f−1A (u)

according to DA,u

I Dist DA,u leaks nothing about B !

I Generate A with B [Aj99,AP09]

10 / 17

A ‘Master’ Trapdoor

Short basis B of L⊥(A)⇓

Invert fA in a very strong sense

Theorem [GPV08]

Given any short B and u,

can efficiently sample x← f−1A (u)

according to DA,u

I Dist DA,u leaks nothing about B !

I Generate A with B [Aj99,AP09]

10 / 17

A ‘Master’ Trapdoor

Short basis B of L⊥(A)⇓

Invert fA in a very strong sense

Theorem [GPV08]

Given any short B and u,

can efficiently sample x← f−1A (u)

according to DA,u

I Dist DA,u leaks nothing about B !

I Generate A with B [Aj99,AP09]

10 / 17

A ‘Master’ Trapdoor

Short basis B of L⊥(A)⇓

Invert fA in a very strong sense

Theorem [GPV08]

Given any short B and u,

can efficiently sample x← f−1A (u)

according to DA,u

I Dist DA,u leaks nothing about B !

I Generate A with B [Aj99,AP09]

10 / 17

A ‘Master’ Trapdoor

Short basis B of L⊥(A)⇓

Invert fA in a very strong sense

Theorem [GPV08]

Given any short B and u,

can efficiently sample x← f−1A (u)

according to DA,u

I Dist DA,u leaks nothing about B !

I Generate A with B [Aj99,AP09]

10 / 17

Abstractly: Preimage Sampleable Function

D R

xu

fA

I Generalizes TDPs, claw-free pairs, Rabin, . . .

I Can generate (x, u) in two equivalent ways:

REAL SIMULATION

Rux

f−1A

D x u

fA

I Apps: ‘hash-and-sign’ sigs [GPV08], NISZK [PV08], . . .

11 / 17

Abstractly: Preimage Sampleable Function

D R

xu

fA

I Generalizes TDPs, claw-free pairs, Rabin, . . .

I Can generate (x, u) in two equivalent ways:

REAL SIMULATION

Rux

f−1A

D x u

fA

I Apps: ‘hash-and-sign’ sigs [GPV08], NISZK [PV08], . . .

11 / 17

Abstractly: Preimage Sampleable Function

D R

xu

f−1A

I Generalizes TDPs, claw-free pairs, Rabin, . . .

I Can generate (x, u) in two equivalent ways:

REAL SIMULATION

Rux

f−1A

D x u

fA

I Apps: ‘hash-and-sign’ sigs [GPV08], NISZK [PV08], . . .

11 / 17

Abstractly: Preimage Sampleable Function

D R

xu

f−1A

I Generalizes TDPs, claw-free pairs, Rabin, . . .

I Can generate (x, u) in two equivalent ways:

REAL SIMULATION

Rux

f−1A

D x u

fA

I Apps: ‘hash-and-sign’ sigs [GPV08], NISZK [PV08], . . .

11 / 17

Abstractly: Preimage Sampleable Function

D R

xu

f−1A

I Generalizes TDPs, claw-free pairs, Rabin, . . .

I Can generate (x, u) in two equivalent ways:

REAL SIMULATION

Rux

f−1A

D x u

fA

I Apps: ‘hash-and-sign’ sigs [GPV08], NISZK [PV08], . . .

11 / 17

Abstractly: Preimage Sampleable Function

D R

xu

f−1A

I Generalizes TDPs, claw-free pairs, Rabin, . . .

I Can generate (x, u) in two equivalent ways:

REAL SIMULATION

Rux

f−1A

D x u

fA

I Apps: ‘hash-and-sign’ sigs [GPV08], NISZK [PV08], . . .

11 / 17

Abstractly: Preimage Sampleable Function

D R

xu

f−1A

I Generalizes TDPs, claw-free pairs, Rabin, . . .

I Can generate (x, u) in two equivalent ways:

REAL SIMULATION

Rux

f−1A

D x u

fA

I Apps: ‘hash-and-sign’ sigs [GPV08], NISZK [PV08], . . .

11 / 17

Onward, to Cryptomania . . .

12 / 17

Learning with Errors

I Goal: distinguish ‘noisy inner products’ from uniform.

a1 , b1 = 〈a1 , s〉+ e1

a2 , b2 = 〈a2 , s〉+ e2

...

I Generator matrix At:

L(A) = {z ∈ Zm : ∃s. z ≡ Ats mod q}

‘Bounded-distance’ (unique) decoding

I Worst-case hardness [Re05,Pe09]

I Basis of much crypto[Re05,PW08,GPV08,PVW08,CDMW08,AGV09,CPS09,. . . ]

13 / 17

Learning with Errors

I Goal: distinguish ‘noisy inner products’ from uniform.

a1 , b1

a2 , b2

...

I Generator matrix At:

L(A) = {z ∈ Zm : ∃s. z ≡ Ats mod q}

‘Bounded-distance’ (unique) decoding

I Worst-case hardness [Re05,Pe09]

I Basis of much crypto[Re05,PW08,GPV08,PVW08,CDMW08,AGV09,CPS09,. . . ]

13 / 17

Learning with Errors

I Goal: distinguish ‘noisy inner products’ from uniform.

m

...At

...

,

...b...

= Ats + e

I Generator matrix At:

L(A) = {z ∈ Zm : ∃s. z ≡ Ats mod q}

‘Bounded-distance’ (unique) decoding

I Worst-case hardness [Re05,Pe09]

I Basis of much crypto[Re05,PW08,GPV08,PVW08,CDMW08,AGV09,CPS09,. . . ]

13 / 17

Learning with Errors

I Goal: distinguish ‘noisy inner products’ from uniform.

m

...At

...

,

...b...

= Ats + e

I Generator matrix At:

L(A) = {z ∈ Zm : ∃s. z ≡ Ats mod q}

‘Bounded-distance’ (unique) decoding

I Worst-case hardness [Re05,Pe09]

I Basis of much crypto[Re05,PW08,GPV08,PVW08,CDMW08,AGV09,CPS09,. . . ]

13 / 17

Learning with Errors

I Goal: distinguish ‘noisy inner products’ from uniform.

m

...At

...

,

...b...

= Ats + e

I Generator matrix At:

L(A) = {z ∈ Zm : ∃s. z ≡ Ats mod q}

‘Bounded-distance’ (unique) decoding

I Worst-case hardness [Re05,Pe09]

I Basis of much crypto[Re05,PW08,GPV08,PVW08,CDMW08,AGV09,CPS09,. . . ]

13 / 17

Learning with Errors

I Goal: distinguish ‘noisy inner products’ from uniform.

m

...At

...

,

...b...

= Ats + e

I Generator matrix At:

L(A) = {z ∈ Zm : ∃s. z ≡ Ats mod q}

‘Bounded-distance’ (unique) decoding

I Worst-case hardness [Re05,Pe09]

I Basis of much crypto[Re05,PW08,GPV08,PVW08,CDMW08,AGV09,CPS09,. . . ]

13 / 17

Key Agreement & Encryption

A

x s, e

u = Ax(public key)

b = Ats + e(ciphertext ‘preamble’)

〈x, b〉 ≈ 〈u, s〉 b′ = 〈u, s〉+ e′

(key / ‘pad’)

(A, u, b, b′)

14 / 17

Key Agreement & Encryption

A

x s, e

u = Ax(public key)

b = Ats + e(ciphertext ‘preamble’)

〈x, b〉 ≈ 〈u, s〉 b′ = 〈u, s〉+ e′

(key / ‘pad’)

(A, u, b, b′)

14 / 17

Key Agreement & Encryption

A

x s, e

u = Ax(public key)

b = Ats + e(ciphertext ‘preamble’)

〈x, b〉 ≈ 〈u, s〉 b′ = 〈u, s〉+ e′

(key / ‘pad’)

(A, u, b, b′)

14 / 17

Key Agreement & Encryption

A

x s, e

u = Ax(public key)

b = Ats + e(ciphertext ‘preamble’)

〈x, b〉 ≈ 〈u, s〉

b′ = 〈u, s〉+ e′

(key / ‘pad’)

(A, u, b, b′)

14 / 17

Key Agreement & Encryption

A

x s, e

u = Ax(public key)

b = Ats + e(ciphertext ‘preamble’)

〈x, b〉 ≈ 〈u, s〉 b′ = 〈u, s〉+ e′

(key / ‘pad’)

(A, u, b, b′)

14 / 17

Key Agreement & Encryption

A

x s, e

u = Ax(public key)

b = Ats + e(ciphertext ‘preamble’)

〈x, b〉 ≈ 〈u, s〉 b′ = 〈u, s〉+ e′

(key / ‘pad’)

(A, u, b, b′)

14 / 17

Key Agreement & Encryption

A

x s, e

u = Ax(public key)

b = Ats + e(ciphertext ‘preamble’)

〈x, b〉 ≈ 〈u, s〉 b′ = 〈u, s〉+ e′

(key / ‘pad’)

(A, u, b, b′)

14 / 17

ID-Based Encryption [GPV08]

A

s, e

u = H(“alice”)(public key)

b = Ats + e(ciphertext randomness)

〈x, b〉 ≈ 〈u, s〉 b′ = 〈u, s〉+ e′

(key / ‘pad’)

x← f−1A (u)

15 / 17

Some Open Areas

1 Hash-and-sign sigs / IBE without random oracle ?

RSA / pairing-style ‘accumulator’ ?

2 More expressive encryption / IBE schemes ?

3 Connections to number-theoretic problems ?

16 / 17

Some Open Areas

1 Hash-and-sign sigs / IBE without random oracle ?

RSA / pairing-style ‘accumulator’ ?

2 More expressive encryption / IBE schemes ?

3 Connections to number-theoretic problems ?

16 / 17

Some Open Areas

1 Hash-and-sign sigs / IBE without random oracle ?

RSA / pairing-style ‘accumulator’ ?

2 More expressive encryption / IBE schemes ?

3 Connections to number-theoretic problems ?

16 / 17

Further Reading

I Survey “Cryptographic functions from worst-case complexityassumptions” [Micciancio07]

I Survey “Lattice-based cryptography” [MicciancioRegev09]

Thanks!

17 / 17

Further Reading

I Survey “Cryptographic functions from worst-case complexityassumptions” [Micciancio07]

I Survey “Lattice-based cryptography” [MicciancioRegev09]

Thanks!

17 / 17

top related