The Magic of ELFs Mark Zhandry Princeton University (Work - - PowerPoint PPT Presentation

the magic of elfs
SMART_READER_LITE
LIVE PREVIEW

The Magic of ELFs Mark Zhandry Princeton University (Work - - PowerPoint PPT Presentation

The Magic of ELFs Mark Zhandry Princeton University (Work done while at MIT) Prove this secure: Enc(m) = ( TDP(r), H(r) m ) (CPA security, many-bit messages, arbitrary


slide-1
SLIDE 1

The ¡Magic ¡of ¡ELFs

Mark ¡Zhandry – Princeton ¡University (Work ¡done ¡while ¡at ¡MIT)

slide-2
SLIDE 2

Enc(m) = ( TDP(r), H(r) ⊕ m )

(CPA ¡security, ¡many-­‑bit ¡messages, ¡arbitrary ¡TDP) Prove ¡this ¡secure:

slide-3
SLIDE 3

Random ¡Oracles

slide-4
SLIDE 4

Random ¡Oracle ¡Model ¡[BR’93]

O

Model ¡H as ¡random ¡oracle ¡O

EncO(m) = ( TDP(r), O(r) ⊕ m )

slide-5
SLIDE 5

Power ¡of ¡Random ¡Oracles

  • Great ¡extractors, ¡even ¡for ¡comp. ¡unpredictability
  • Hard ¡to ¡find ¡outputs ¡with ¡trapdoors
  • Selective ¡to ¡adaptive ¡security ¡for ¡Sigs, ¡IBE

(x,O(x)) with ¡trapdoor ¡T for ¡O(x) O(x) pseudorandom ¡given ¡OWF(x) Sign(m) ⇒ Sign( O( m ) )

slide-6
SLIDE 6

Limitations ¡of ¡Random ¡Oracles

  • Random ¡oracles ¡don’t ¡exist!
  • RO ¡“proof” ¡= ¡heuristic ¡security ¡argument
  • Heuristic ¡known ¡to ¡fail ¡in ¡some ¡cases ¡

[CGH’98,BBP’03,BFM’14]

slide-7
SLIDE 7

Standard-­‑model ¡defs

slide-8
SLIDE 8

Standard-­‑model ¡Security ¡Defs for ¡H

Standard ¡defs: ¡Assume ¡H is ¡a ¡OWF, ¡PRG, ¡CRHF, ¡etc

  • Simple, ¡easy ¡to ¡state ¡definitions
  • Can ¡base ¡on ¡standard, ¡plausible ¡assumptions
  • Limited ¡usefulness ¡for ¡instantiating ¡RO’s
slide-9
SLIDE 9

Standard-­‑model ¡Security ¡Defs for ¡H

Standard ¡defs: ¡Assume ¡H is ¡a ¡OWF, ¡PRG, ¡CRHF, ¡etc

  • Simple, ¡easy ¡to ¡state ¡definitions
  • Can ¡base ¡on ¡standard, ¡plausible ¡assumptions
  • Limited ¡usefulness ¡for ¡instantiating ¡RO’s

Exotic ¡defs: ¡UCE’s ¡[BHK’15], ¡“strong” ¡OWF/PRG, ¡etc

  • Useful ¡for ¡some ¡RO ¡constructions
  • Usually ¡require ¡“tautological ¡assumptions”
slide-10
SLIDE 10

Assumption ¡Families

Ex: ¡Strong ¡PRG ¡(strengthens ¡strong ¡OWF ¡of ¡[BP’11,Wee’05])

  • Parameterized ¡by ¡sampler ¡S() à

à (x, aux)

  • Assume ¡x is ¡“computationally ¡unpredictable” ¡given ¡aux
  • Security ¡requirement: ¡H(x) pseudorandom ¡given ¡aux
slide-11
SLIDE 11

Assumption ¡Families

Ex: ¡Strong ¡PRG ¡(strengthens ¡strong ¡OWF ¡of ¡[BP’11,Wee’05])

  • Parameterized ¡by ¡sampler ¡S() à

à (x, aux)

  • Assume ¡x is ¡“computationally ¡unpredictable” ¡given ¡aux
  • Security ¡requirement: ¡H(x) pseudorandom ¡given ¡aux

How ¡to ¡gain ¡confidence ¡in ¡assumption?

  • Attempt ¡cryptanalysis, ¡post ¡challenges, ¡etc.
  • Problem: ¡which ¡S to ¡target?

Similar ¡weaknesses ¡for ¡UCEs ¡and ¡other ¡exotic ¡assumptions

slide-12
SLIDE 12

Security ¡Properties ¡vs ¡Assumptions

UCE’s, ¡strong ¡OWF/PRGs ¡are ¡useful ¡as ¡security ¡properties However, ¡highly ¡undesirable ¡as ¡security ¡assumptions Ideal ¡scenario: ¡ Single, ¡simple, ¡well-­‑studied ¡assumption Strong ¡security ¡properties

slide-13
SLIDE 13

This ¡Work: ¡

Extremely ¡Lossy Functions ¡ (ELFs)

slide-14
SLIDE 14

Standard ¡Lossy Functions ¡[PW’08]

Notes:

  • Lossy Mode ¡image ¡size ¡typically ¡exponential
  • Generally ¡also ¡include ¡trapdoor ¡in ¡injective ¡mode

Injective ¡Mode Lossy Mode

≈c

slide-15
SLIDE 15

Extremely ¡Lossy Functions ¡(ELFs)

Injective ¡Mode: Lossy Mode:

| Img | = polynomial

≈c

slide-16
SLIDE 16

Extremely ¡Lossy Functions ¡(ELFs)

Injective ¡Mode: Lossy Mode:

| Img | = polynomial

Problem: ¡| Img |-­‑ time ¡attack

  • Query ¡on ¡| Img |+1 points
  • Look ¡for ¡collision

≈c

slide-17
SLIDE 17

Extremely ¡Lossy Functions ¡(ELFs)

Injective ¡Mode: Lossy Modes:

slide-18
SLIDE 18

Extremely ¡Lossy Functions ¡(ELFs)

Rough* ¡security statement:

∀ ∃

s.t. ? ? ?

* ¡Must ¡also ¡consider ¡adversary’s ¡success ¡probability

slide-19
SLIDE 19

Constructing ¡ELFs

slide-20
SLIDE 20

Step ¡1: ¡Bounded-­‑adversary ¡ELFs

Only ¡one Security ¡against ¡a ¡priori ¡bounded ¡

=

slide-21
SLIDE 21

Step ¡1: ¡Bounded-­‑adversary ¡ELFs

Use ¡standard ¡lossy functions ¡based ¡on ¡elliptic ¡curves x∈Zp

n

gA・x = (gA) ・x

Injective ¡mode: ¡A random ¡full ¡rank ¡matrix Lossy mode: ¡A random ¡rank-­‑1 matrix Lossy image ¡size ¡p ⇒ Set ¡p to ¡be ¡some ¡polynomial

Hand ¡out ¡gA as ¡description ¡of ¡function

[PW’08, ¡FGKRS’10]

Thm [Adapt ¡FGKRS’10]: ¡Exponential ¡DDH ¡assumption ¡ ¡⇒ modes ¡indistinguishable ¡to ¡pc-­‑time ¡adversaries ¡(0<c<1)

slide-22
SLIDE 22

Plausibility ¡of ¡Exponential ¡DDH

Non-­‑standard ¡assumption

  • Not ¡truly ¡falsifiable ¡in ¡the ¡sense ¡of ¡[Naor’03]

However, ¡still ¡very ¡“reasonable”

  • “Complexity ¡assumption” ¡[GK’15]
  • On ¡elliptic ¡curves, ¡best ¡known ¡attack: ¡p½
  • “Generic ¡attack”, ¡essentially ¡no ¡non-­‑trivial ¡attacks ¡known
  • In ¡practice, ¡parameters ¡set ¡assuming ¡p½ is ¡optimal

If ¡exponential ¡DDH ¡is ¡false, ¡ much ¡more ¡to ¡worry ¡about

slide-23
SLIDE 23

Step ¡2: ¡Bounded ¡to ¡Unbounded

Iterate ¡at ¡many ¡security ¡levels

x

ith lossy mode ¡image ¡size ¡at ¡most ¡2i, ¡ security ¡against ¡(2i)c-­‑time ¡adversaries

slide-24
SLIDE 24

Step ¡2: ¡Bounded ¡to ¡Unbounded

Iterate ¡at ¡many ¡security ¡levels

x

ith lossy mode ¡image ¡size ¡at ¡most ¡2i, ¡ security ¡against ¡(2i)c-­‑time ¡adversaries Given ¡t-­‑time ¡ ¡ ¡ ¡ ¡ ¡ ¡, ¡invoke ¡lossiness at ¡i such ¡that ¡t < 2ic ≤ 2t ⇒ Image ¡size ¡at ¡most ¡(2t)1/c

slide-25
SLIDE 25

Step ¡2: ¡Bounded ¡to ¡Unbounded

Iterate ¡at ¡many ¡security ¡levels

x

ith lossy mode ¡image ¡size ¡at ¡most ¡2i, ¡ security ¡against ¡(2i)c-­‑time ¡adversaries Given ¡t-­‑time ¡ ¡ ¡ ¡ ¡ ¡ ¡, ¡invoke ¡lossiness at ¡i such ¡that ¡t < 2ic ≤ 2t ⇒ Image ¡size ¡at ¡most ¡(2t)1/c

Problem: ¡output ¡size ¡grows ¡too ¡fast!

slide-26
SLIDE 26

Step ¡2: ¡Bounded ¡to ¡Unbounded

Keep ¡output ¡small ¡by ¡pairwise-­‑independent ¡hashing

x

= ¡Pairwise ¡independent ¡function

slide-27
SLIDE 27

Using ¡ELFs

slide-28
SLIDE 28

A ¡Strong ¡PRG

x

(R1・ ) (R2・ ) (R3・ ) (R4・ )

H(x)

slide-29
SLIDE 29

Security ¡Proof ¡Sketch

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ ) (R4・ )

y

Guarantee: ¡x computationally ¡unpredictable, ¡given ¡aux

slide-30
SLIDE 30

Step ¡1: ¡Invoke ¡ELF ¡Magic

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ ) (R4・ )

y

slide-31
SLIDE 31

Step ¡1: ¡Invoke ¡ELF ¡Magic

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ ) (R4・ )

y

slide-32
SLIDE 32

Step ¡2: ¡Invoke ¡Goldreich-­‑Levin

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ ) (R4・ )

y

slide-33
SLIDE 33

Step ¡2: ¡Invoke ¡Goldreich-­‑Levin

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ ) (R4・ )

y

slide-34
SLIDE 34

Step ¡2: ¡Invoke ¡Goldreich-­‑Levin

x, aux ß

ß S()

(R4・ )

y

L

slide-35
SLIDE 35

Step ¡2: ¡Invoke ¡Goldreich-­‑Levin

x, aux ß

ß S()

(R4・ )

y

L

Lemma: ¡x still ¡ unpredictable, ¡ given ¡aux, L(x) Poly ¡image ¡ size!

slide-36
SLIDE 36

Step ¡2: ¡Invoke ¡Goldreich-­‑Levin

x, aux ß

ß S()

(R4・ )

y

L

Lemma: ¡x still ¡ unpredictable, ¡ given ¡aux, L(x) Poly ¡image ¡ size! GL

slide-37
SLIDE 37

Step ¡2: ¡Invoke ¡Goldreich-­‑Levin

x, aux ß

ß S()

b4 ß ß {0,1}

y

L

Lemma: ¡x still ¡ unpredictable, ¡ given ¡aux, L(x) Poly ¡image ¡ size!

slide-38
SLIDE 38

Step ¡2: ¡Invoke ¡Goldreich-­‑Levin

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

slide-39
SLIDE 39

Step ¡3: ¡Undo ¡ELF ¡Magic

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

slide-40
SLIDE 40

Step ¡3: ¡Undo ¡ELF ¡Magic

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

slide-41
SLIDE 41

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

slide-42
SLIDE 42

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

slide-43
SLIDE 43

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

slide-44
SLIDE 44

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

slide-45
SLIDE 45

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) (R3・ )

y

b4 ß ß {0,1}

GL

slide-46
SLIDE 46

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) b3 ß ß {0,1}

y

b4 ß ß {0,1}

slide-47
SLIDE 47

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) b3 ß ß {0,1}

y

b4 ß ß {0,1}

slide-48
SLIDE 48

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) b3 ß ß {0,1}

y

b4 ß ß {0,1}

slide-49
SLIDE 49

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) (R2・ ) b3 ß ß {0,1}

y

b4 ß ß {0,1}

slide-50
SLIDE 50

Step ¡4: ¡Repeat

x, aux ß

ß S()

(R1・ ) b2 ß ß {0,1} b3 ß ß {0,1}

y

b4 ß ß {0,1}

slide-51
SLIDE 51

Step ¡4: ¡Repeat

x, aux ß

ß S()

b1 ß ß {0,1} b2 ß ß {0,1} b3 ß ß {0,1}

y

b4 ß ß {0,1}

slide-52
SLIDE 52

Step ¡4: ¡Repeat

x, aux ß

ß S()

b1 ß ß {0,1} b2 ß ß {0,1} b3 ß ß {0,1}

y

b4 ß ß {0,1} Independent ¡

  • f ¡x!
slide-53
SLIDE 53

Step ¡5: ¡Randomness ¡of ¡y

b1 ß ß {0,1} b2 ß ß {0,1} b3 ß ß {0,1}

y

b4 ß ß {0,1}

Lemma: ¡If ¡bi are ¡uniform, ¡y is ¡statistically ¡close ¡ to ¡random, ¡given ¡all ¡the ¡ ¡ ¡ ¡s ¡and ¡ ¡ ¡ ¡ ¡ ¡s ¡(w.h.p.)

Independent ¡

  • f ¡x!
slide-54
SLIDE 54

Theorem: ¡For ¡any ¡computationally ¡ unpredictable ¡(x,aux), ¡ (H, H(x), aux) ≈c (H, random, aux)

Also:

Theorem: ¡H is ¡injective ¡w.h.p.

slide-55
SLIDE 55

Applications

  • (Injective) ¡one-­‑way ¡function ¡satisfying ¡[BP’11]
  • Auxiliary ¡Input ¡Point ¡Obfuscation ¡(AIPO)
  • Poly-­‑many ¡hardcore ¡bits ¡for ¡any ¡computationally ¡

unpredictable ¡source

  • Enc(m) = ( TDP(r), H(r) ⊕ m ) is ¡CPA ¡secure

Obf(Ix) = H, H(x)

slide-56
SLIDE 56

Applications

  • (Injective) ¡one-­‑way ¡function ¡satisfying ¡[BP’11]

Previous ¡constructions:

  • Tautological ¡assumption ¡[BP’11]
  • Assumption ¡“family”
  • Canetti’s ¡strong ¡variant ¡of ¡DDH ¡[Can’97]
  • Assumption ¡“family”
  • Incompatible ¡with ¡certain ¡forms ¡of ¡obfuscation ¡[BST’15]
slide-57
SLIDE 57

Applications

  • Auxiliary ¡Input ¡Point ¡Obfuscation ¡(AIPO)

Obf(Ix) = H, H(x)

Previous ¡constructions:

  • Canetti’s ¡strong ¡variant ¡of ¡DDH ¡[Can’97]
  • [BP’11]-­‑one-­‑way ¡permutations ¡

(our ¡H is ¡not ¡a ¡permutation)

slide-58
SLIDE 58

Applications

  • Poly-­‑many ¡hardcore ¡bits ¡for ¡any ¡computationally ¡

unpredictable ¡source

Previous ¡constructions:

  • UCE’s ¡[BHK’13]
  • “Tautological” ¡assumption ¡“family”
  • Differing ¡inputs ¡obfuscation ¡[BST’14] ¡or ¡

extractable ¡witness ¡PRFs ¡[Zha’14]

  • Only ¡for ¡OWF ¡(for ¡injective ¡OWF, ¡can ¡use ¡iO)
  • Assumption ¡“family”
  • Believed ¡to ¡implausible ¡in ¡general ¡[GGHW’14]
  • Extraordinarily ¡inefficient
slide-59
SLIDE 59

Applications

  • Enc(m) = ( TDP(r), H(r) ⊕ m ) is ¡CPA ¡secure

Follows ¡from ¡hardcore ¡bits ¡for ¡injective ¡OWF

slide-60
SLIDE 60

Other ¡Results

  • Selective ¡to ¡Adaptive ¡security ¡in ¡Sigs/IBE

Sign

m σ

slide-61
SLIDE 61

Other ¡Results

  • Selective ¡to ¡Adaptive ¡security ¡in ¡Sigs/IBE

Sign

m σ

Sign

m σ

Sign

m σ

Guess ¡ ¡ ¡ ¡ ¡ ¡ ¡(m), ¡ incur ¡poly ¡loss

Proof:

slide-62
SLIDE 62

Other ¡Results

  • Output ¡intractable ¡hash ¡functions ¡(captures ¡using ¡

hash ¡functions ¡to ¡generate ¡crs’s)

  • For ¡proofs ¡and ¡more ¡results, ¡see ¡paper
slide-63
SLIDE 63

Interesting ¡ Applications

Conclusion

Exponential ¡ DDH

Open ¡questions:

  • ELFs ¡from ¡other ¡assumptions
  • Post-­‑quantum ¡ELFs
  • More ¡applications

This ¡work:

slide-64
SLIDE 64

Interesting ¡ Applications

Conclusion

Exponential ¡ DDH

Open ¡questions:

  • ELFs ¡from ¡other ¡assumptions
  • Post-­‑quantum ¡ELFs
  • More ¡applications

This ¡work:

Thanks!