universal composability from essentially any trusted setup Mike - - PowerPoint PPT Presentation

universal composability from essentially any trusted setup
SMART_READER_LITE
LIVE PREVIEW

universal composability from essentially any trusted setup Mike - - PowerPoint PPT Presentation

universal composability from essentially any trusted setup Mike Rosulek | | CRYPTO 2012 . Example: Set intersection A B ( function evaluation ) Generate a fair coin toss ( randomized ) Online poker without a dealer ( reactive ) secure


slide-1
SLIDE 1

universal composability from essentially any trusted setup

Mike Rosulek |

| CRYPTO 2012

.

slide-2
SLIDE 2

secure computation. . .

Several parties wish to carry out an agreed-upon computation.

◮ Parties have individual inputs / output ◮ Security guarantees:

◮ Privacy (learn no more than your prescribed output) ◮ Input independence ◮ Output consistency, etc..

◮ Parties are mutually distrusting, some possibly malicious

Example: Set intersection A B (function evaluation) Generate a fair coin toss (randomized) Online poker without a dealer (reactive) .

slide-3
SLIDE 3

secure computation. . .

Several parties wish to carry out an agreed-upon computation.

◮ Parties have individual inputs / output ◮ Security guarantees:

◮ Privacy (learn no more than your prescribed output) ◮ Input independence ◮ Output consistency, etc..

◮ Parties are mutually distrusting, some possibly malicious

Example:

◮ Set intersection A ∩ B (function evaluation) ◮ Generate a fair coin toss (randomized) ◮ Online poker without a dealer (reactive)

.

slide-4
SLIDE 4

good news, bad news. . .

.

Good news [Canetti01]

. . . . . . . . Universal Composition (UC) framework = realistic security model for Internet protocols. .

Bad news [CanettiFischlin01,CanettiKushilevitzLindell06]

. . . . . . . . UC security is impossible for almost all tasks that we care about .

slide-5
SLIDE 5

good news, bad news. . .

.

Good news [Canetti01]

. . . . . . . . Universal Composition (UC) framework = realistic security model for Internet protocols. .

Bad news [CanettiFischlin01,CanettiKushilevitzLindell06]

. . . . . . . . UC security is impossible for almost all tasks that we care about .

slide-6
SLIDE 6

the next best thing. . .

Slightly relax UC framework:

◮ Assume bounded network latency [KalaiLindellPrabhakaran05] ◮ Uniform adversaries, non-uniform simulators

[LinPassVenkitasubramaniam09]

◮ Superpolynomial-time simulators

[Pass03, PrabhakaranSahai04, BarakSahai05, MalkinMoriartyYakovenko06, CanettiLinPass10, ...]

Trusted setup: Protocols can use ideal functionality

Bit-commitment [CanettiLindellOstrovskySahai02] Common random string [CanettiLindellOstrovskySahai02,...] Oblivious transfer [IshaiPrabhakaranSahai08] Trusted hardware device [Katz07]

.

slide-7
SLIDE 7

the next best thing. . .

Slightly relax UC framework:

◮ Assume bounded network latency [KalaiLindellPrabhakaran05] ◮ Uniform adversaries, non-uniform simulators

[LinPassVenkitasubramaniam09]

◮ Superpolynomial-time simulators

[Pass03, PrabhakaranSahai04, BarakSahai05, MalkinMoriartyYakovenko06, CanettiLinPass10, ...]

◮ Trusted setup: Protocols can use ideal functionality

◮ Bit-commitment [CanettiLindellOstrovskySahai02] ◮ Common random string [CanettiLindellOstrovskySahai02,...] ◮ Oblivious transfer [IshaiPrabhakaranSahai08] ◮ Trusted hardware device [Katz07]

.

slide-8
SLIDE 8

the next best thing. . .

Slightly relax UC framework:

◮ Assume bounded network latency [KalaiLindellPrabhakaran05] ◮ Uniform adversaries, non-uniform simulators

[LinPassVenkitasubramaniam09]

◮ Superpolynomial-time simulators

[Pass03, PrabhakaranSahai04, BarakSahai05, MalkinMoriartyYakovenko06, CanettiLinPass10, ...]

◮ Trusted setup: Protocols can use ideal functionality

◮ Bit-commitment [CanettiLindellOstrovskySahai02] ◮ Common random string [CanettiLindellOstrovskySahai02,...] ◮ Oblivious transfer [IshaiPrabhakaranSahai08] ◮ Trusted hardware device [Katz07]

.

slide-9
SLIDE 9

fundamental question. . .

. . . . . . . How useful is F as a trusted setup?

◮ What tasks have UC-secure protocols in the presence of F?

.

Possible “levels of power” for

. . . . . . . . Useless: access to is equivalent to no trusted setup.

already has a UC-secure protocol without setups

Intermediate: something between these two extremes Complete: all tasks have UC-secure protocols in presence of .

slide-10
SLIDE 10

fundamental question. . .

. . . . . . . How useful is F as a trusted setup?

◮ What tasks have UC-secure protocols in the presence of F?

.

Possible “levels of power” for F

. . . . . . . .

◮ Useless: access to F is equivalent to no trusted setup.

⇔ F already has a UC-secure protocol without setups

Intermediate: something between these two extremes Complete: all tasks have UC-secure protocols in presence of .

slide-11
SLIDE 11

fundamental question. . .

. . . . . . . How useful is F as a trusted setup?

◮ What tasks have UC-secure protocols in the presence of F?

.

Possible “levels of power” for F

. . . . . . . .

◮ Useless: access to F is equivalent to no trusted setup.

⇔ F already has a UC-secure protocol without setups

Intermediate: something between these two extremes

◮ Complete: all tasks have UC-secure protocols in presence of F

.

slide-12
SLIDE 12

fundamental question. . .

. . . . . . . How useful is F as a trusted setup?

◮ What tasks have UC-secure protocols in the presence of F?

.

Possible “levels of power” for F

. . . . . . . .

◮ Useless: access to F is equivalent to no trusted setup.

⇔ F already has a UC-secure protocol without setups

◮ Intermediate: something between these two extremes ◮ Complete: all tasks have UC-secure protocols in presence of F

.

slide-13
SLIDE 13

take-home message. . .

  • 1. Which 2-party setups are useless?

Complete characterization [PrabhakaranRosulek08]

  • 2. Which 2-party setups are complete?

Almost-complete characterization [This talk]

Nearly every setup is either useless or complete. . . complete . useless

.

Characterize reactive, randomized functionalities, w/ behavior depending on security parameter!

[MajiPrabhakaranRosulek10]

restricted to deterministic & constant-sized. .

slide-14
SLIDE 14

take-home message. . .

  • 1. Which 2-party setups are useless?

◮ Complete characterization [PrabhakaranRosulek08]

  • 2. Which 2-party setups are complete?

Almost-complete characterization [This talk]

Nearly every setup is either useless or complete. . . complete . useless

.

Characterize reactive, randomized functionalities, w/ behavior depending on security parameter!

[MajiPrabhakaranRosulek10]

restricted to deterministic & constant-sized. .

slide-15
SLIDE 15

take-home message. . .

  • 1. Which 2-party setups are useless?

◮ Complete characterization [PrabhakaranRosulek08]

  • 2. Which 2-party setups are complete?

◮ Almost-complete characterization [This talk]

Nearly every setup is either useless or complete. . . complete . useless

.

Characterize reactive, randomized functionalities, w/ behavior depending on security parameter!

[MajiPrabhakaranRosulek10]

restricted to deterministic & constant-sized. .

slide-16
SLIDE 16

take-home message. . .

  • 1. Which 2-party setups are useless?

◮ Complete characterization [PrabhakaranRosulek08]

  • 2. Which 2-party setups are complete?

◮ Almost-complete characterization [This talk]

⇒ Nearly every setup is either useless or complete.

. . complete . useless

.

Characterize reactive, randomized functionalities, w/ behavior depending on security parameter!

[MajiPrabhakaranRosulek10]

restricted to deterministic & constant-sized. .

slide-17
SLIDE 17

take-home message. . .

  • 1. Which 2-party setups are useless?

◮ Complete characterization [PrabhakaranRosulek08]

  • 2. Which 2-party setups are complete?

◮ Almost-complete characterization [This talk]

⇒ Nearly every setup is either useless or complete.

. . complete . useless

.

Characterize reactive, randomized functionalities, w/ behavior depending on security parameter!

[MajiPrabhakaranRosulek10]

restricted to deterministic & constant-sized. .

slide-18
SLIDE 18

take-home message. . .

  • 1. Which 2-party setups are useless?

◮ Complete characterization [PrabhakaranRosulek08]

  • 2. Which 2-party setups are complete?

◮ Almost-complete characterization [This talk]

⇒ Nearly every setup is either useless or complete.

. . complete . useless

.

Characterize reactive, randomized functionalities, w/ behavior depending on security parameter!

[MajiPrabhakaranRosulek10]

restricted to deterministic & constant-sized. .

slide-19
SLIDE 19

“splitting game” for F. . .

. . . . .

F

.

(b)

.

(a)

.

Z

. .

F

.

F

.

T

.

(b)

.

(a)

.

(b)

.

(a)

.

Z

. .

Definitions

. . . . . . . . is splittable if has a winning strategy. [PrabhakaranRosulek08] negligible. (“ fools all environments”) is strongly unsplittable if has a winning strategy. 1/poly. (“ detects all splitting strategies”) Some (arguably unnatural) admit no winning strategy for

  • r

! Applies to arbitrary (reactive, randomized, etc) functionalities. .

slide-20
SLIDE 20

“splitting game” for F. . .

∆ :=

. . . . .

F

.

(b)

.

(a)

.

Z

. .

F

.

F

.

T

.

(b)

.

(a)

.

(b)

.

(a)

.

Z

. .

Definitions

. . . . . . . . is splittable if has a winning strategy. [PrabhakaranRosulek08] negligible. (“ fools all environments”) is strongly unsplittable if has a winning strategy. 1/poly. (“ detects all splitting strategies”) Some (arguably unnatural) admit no winning strategy for

  • r

! Applies to arbitrary (reactive, randomized, etc) functionalities. .

slide-21
SLIDE 21

“splitting game” for F. . .

∆ :=

. . . . .

F

.

(b)

.

(a)

.

Z

. .

F

.

F

.

T

.

(b)

.

(a)

.

(b)

.

(a)

.

Z

. .

Definitions

. . . . . . . .

F is splittable if T has a winning strategy. [PrabhakaranRosulek08] ⇔ ∃T : ∀Z : ∆ negligible.

(“T fools all environments”) is strongly unsplittable if has a winning strategy. 1/poly. (“ detects all splitting strategies”) Some (arguably unnatural) admit no winning strategy for

  • r

! Applies to arbitrary (reactive, randomized, etc) functionalities. .

slide-22
SLIDE 22

“splitting game” for F. . .

∆ :=

. . . . .

F

.

(b)

.

(a)

.

Z

. .

F

.

F

.

T

.

(b)

.

(a)

.

(b)

.

(a)

.

Z

. .

Definitions

. . . . . . . .

F is splittable if T has a winning strategy. [PrabhakaranRosulek08] ⇔ ∃T : ∀Z : ∆ negligible.

(“T fools all environments”)

F is strongly unsplittable if Z has a winning strategy. ⇔ ∃Z : ∀T : ∆ 1/poly.

(“Z detects all splitting strategies”) Some (arguably unnatural) admit no winning strategy for

  • r

! Applies to arbitrary (reactive, randomized, etc) functionalities. .

slide-23
SLIDE 23

“splitting game” for F. . .

∆ :=

. . . . .

F

.

(b)

.

(a)

.

Z

. .

F

.

F

.

T

.

(b)

.

(a)

.

(b)

.

(a)

.

Z

. .

Definitions

. . . . . . . .

F is splittable if T has a winning strategy. [PrabhakaranRosulek08] ⇔ ∃T : ∀Z : ∆ negligible.

(“T fools all environments”)

F is strongly unsplittable if Z has a winning strategy. ⇔ ∃Z : ∀T : ∆ 1/poly.

(“Z detects all splitting strategies”)

◮ Some (arguably unnatural) F admit no winning strategy for Z or T ! ◮ Applies to arbitrary (reactive, randomized, etc) functionalities.

.

slide-24
SLIDE 24

quiz: splittable or not?. . .

. .

F

. x . f(x) ... where f is a OWF .

slide-25
SLIDE 25

quiz: splittable or not?. . .

. . . .

F

.

Z

.

1

. rand x . y .

“does y f x ?”

. .

F

.

F

.

T

.

Z

.

negl k

. rand x . y .

f x

.

??

.

“does y f x ?”

To make interactions similar, must be able to invert f This detects every is strongly unsplittable .

slide-26
SLIDE 26

quiz: splittable or not?. . .

. . . .

F

.

Z

.

1

. rand x . y .

“does y f x ?”

. .

F

.

F

.

T

.

Z

.

negl k

. rand x . y .

f x

.

??

.

“does y f x ?”

To make interactions similar, must be able to invert f This detects every is strongly unsplittable .

slide-27
SLIDE 27

quiz: splittable or not?. . .

. . . .

F

.

Z

.

1

. rand x . y .

“does y f x ?”

. .

F

.

F

.

T

.

Z

.

negl k

. rand x . y .

f x

.

??

.

“does y f x ?”

To make interactions similar, must be able to invert f This detects every is strongly unsplittable .

slide-28
SLIDE 28

quiz: splittable or not?. . .

. . . .

F

.

Z

.

1

. rand x . y .

“does y = f(x)?”

. .

F

.

F

.

T

.

Z

.

negl k

. rand x . y .

f x

.

??

.

“does y = f(x)?”

To make interactions similar, must be able to invert f This detects every is strongly unsplittable .

slide-29
SLIDE 29

quiz: splittable or not?. . .

. . . .

F

.

Z

.

1

. rand x . y .

“does y = f(x)?”

. .

F

.

F

.

T

.

Z

.

negl k

. rand x . y .

f(x)

.

??

.

“does y = f(x)?” ◮ To make interactions similar, T must be able to invert f

This detects every is strongly unsplittable .

slide-30
SLIDE 30

quiz: splittable or not?. . .

. . . .

F

.

Z

.

1

. rand x . y .

“does y = f(x)?”

. .

F

.

F

.

T

.

Z

.

negl(k)

. rand x . y .

f(x)

.

??

.

“does y = f(x)?” ◮ To make interactions similar, T must be able to invert f

⇒ This Z detects every T ⇒ F is strongly unsplittable

.

slide-31
SLIDE 31

the characterization. . .

. . complete . useless

.

. complete strongly unsplittable

[This talk]

: slightly more involved statement for reactive

.

F useless ⇔ F splittable

[PrabhakaranRosulek08]

.

Outline: Strong Unsplittability Complete

. . . . . . . . Suffices to construct UC-secure commitment protocol

  • 1. UC-commitment is complete [CanettiLindellOstrovskySahai02]

.

slide-32
SLIDE 32

the characterization. . .

. . complete . useless

.

.

F complete ∗ ⇐ F strongly unsplittable

[This talk]

: slightly more involved statement for reactive

.

F useless ⇔ F splittable

[PrabhakaranRosulek08]

.

Outline: Strong Unsplittability Complete

. . . . . . . . Suffices to construct UC-secure commitment protocol

  • 1. UC-commitment is complete [CanettiLindellOstrovskySahai02]

.

slide-33
SLIDE 33

the characterization. . .

. . complete . useless

.

.

F complete ∗ ⇐ F strongly unsplittable

[This talk] ∗: slightly more involved statement for reactive F

.

F useless ⇔ F splittable

[PrabhakaranRosulek08]

.

Outline: Strong Unsplittability Complete

. . . . . . . . Suffices to construct UC-secure commitment protocol

  • 1. UC-commitment is complete [CanettiLindellOstrovskySahai02]

.

slide-34
SLIDE 34

the characterization. . .

. . complete . useless

.

.

F complete ∗ ⇐ F strongly unsplittable

[This talk] ∗: slightly more involved statement for reactive F

.

F useless ⇔ F splittable

[PrabhakaranRosulek08]

.

Outline: Strong Unsplittability ⇒ Complete

. . . . . . . . Suffices to construct UC-secure commitment protocol

  • 1. UC-commitment is complete [CanettiLindellOstrovskySahai02]

.

slide-35
SLIDE 35

commitment protocol. . .

How to do it (using our example)... . .

F

. x . f(x) .

slide-36
SLIDE 36

commitment protocol. . .

. . . . . . . . . C = com(b) . C

com

. C

com

b .

  

. commit phase . receiver . honest sender .

σ

. straight-line simulator . cheating sender . . reveal phase . b . . rand x . y f x . rand x . subprotocol: .

if

  • pens C to b:

.

  • utput y

.

else:

.

  • utput f y

.

if

  • pens C to b:

.

  • utput x

.

else:

.

  • utput f x

.

if

  • pens C to b:

.

  • utput z

.

else:

.

  • utput f z

. . z . f z f x . y . x . z . f x .

slide-37
SLIDE 37

commitment protocol. . .

. . . . . . . . . C = com(b) . C

com

. C

com

b .

  

. commit phase . receiver . honest sender .

σ

. straight-line simulator . cheating sender .

                                

. reveal phase . b .

F

. . rand x . y = f(x) . rand x . subprotocol: .

if

  • pens C to b:

.

  • utput y

.

else:

.

  • utput f y

.

if

  • pens C to b:

.

  • utput x

.

else:

.

  • utput f x

.

if

  • pens C to b:

.

  • utput z

.

else:

.

  • utput f z

. . z . f z f x . y . x . z . f x .

slide-38
SLIDE 38

commitment protocol. . .

. . . . . . . . . C = com(b) . C

com

. C

com

b .

  

. commit phase . receiver . honest sender .

σ

. straight-line simulator . cheating sender .

                                

. reveal phase . b .

F

. . rand x . y = f(x) . rand x . subprotocol: .

if σ opens C to b:

.

  • utput y

.

else:

.

  • utput f(y)

.

if

  • pens C to b:

.

  • utput x

.

else:

.

  • utput f x

.

if

  • pens C to b:

.

  • utput z

.

else:

.

  • utput f z

. . z . f z f x .

(σ, y)

. x . z .?

= f(x)

.

slide-39
SLIDE 39

commitment protocol. . .

. . . . . . . . . C

com b

. C = com(0) . C

com

b . . commit phase . receiver . honest sender . . straight-line simulator . cheating sender . . reveal phase . b . .

F

. rand x . y f x . rand x . subprotocol: .

if

  • pens C to b:

.

  • utput y

.

else:

.

  • utput f y

.

if σ opens C to b:

.

  • utput x

.

else:

.

  • utput f(x)

.

if

  • pens C to b:

.

  • utput z

.

else:

.

  • utput f z

. . z . f z f x . y .

(−, x)

. z .?

= f(x)

.

slide-40
SLIDE 40

commitment protocol. . .

. . . . . . . . . C

com b

. C

com

. C = com(1 − b) . . commit phase . receiver . honest sender . . straight-line simulator . cheating sender . . reveal phase . b .

F

. . rand x . y = f(x) . rand x . subprotocol: .

if

  • pens C to b:

.

  • utput y

.

else:

.

  • utput f y

.

if

  • pens C to b:

.

  • utput x

.

else:

.

  • utput f x

.

if σ opens C to b:

.

  • utput z

.

else:

.

  • utput f(z)

. . z . f z f x . y . x .

(σ, z)

.?

= f(x)

.

slide-41
SLIDE 41

commitment protocol. . .

. . . . . . . . . C

com b

. C

com

. C = com(1 − b) . . commit phase . receiver . honest sender . . straight-line simulator . cheating sender . . reveal phase . b .

F

. . rand x . y = f(x) . rand x . subprotocol: .

if

  • pens C to b:

.

  • utput y

.

else:

.

  • utput f y

.

if

  • pens C to b:

.

  • utput x

.

else:

.

  • utput f x

.

if

  • pens C to b:

.

  • utput z

.

else:

.

  • utput f z

.

F

. z . f(z) ?

= f(x)

. y . x . z . f x .

slide-42
SLIDE 42

protocol: key idea. .

. . sender . simulator . receiver . receiver .

F

. . .

F

Honest sender: Bypass “instance of F” within subprotocol Simulator: Bypass ideal instance of Cheating sender: “Stuck between” two instances of .

Strong Un-Splittability

. . . . . . . . There is a way for receiver to behave which can distinguish: Interacting with a single instance of (#1, #2) Interacting with any “split” (#3) .

slide-43
SLIDE 43

protocol: key idea. .

. . sender . simulator . receiver . receiver . .

F

.

F

. Honest sender: Bypass “instance of F” within subprotocol Simulator: Bypass ideal instance of F Cheating sender: “Stuck between” two instances of .

Strong Un-Splittability

. . . . . . . . There is a way for receiver to behave which can distinguish: Interacting with a single instance of (#1, #2) Interacting with any “split” (#3) .

slide-44
SLIDE 44

protocol: key idea. .

. . sender . simulator . receiver . receiver .

F

. .

F

. Honest sender: Bypass “instance of F” within subprotocol Simulator: Bypass ideal instance of F Cheating sender: “Stuck between” two instances of F .

Strong Un-Splittability

. . . . . . . . There is a way for receiver to behave which can distinguish: Interacting with a single instance of (#1, #2) Interacting with any “split” (#3) .

slide-45
SLIDE 45

protocol: key idea. .

. . sender . simulator . receiver . receiver .

F

. .

F

. Honest sender: Bypass “instance of F” within subprotocol Simulator: Bypass ideal instance of F Cheating sender: “Stuck between” two instances of F .

Strong Un-Splittability

. . . . . . . . There is a way for receiver to behave which can distinguish:

◮ Interacting with a single instance of F (#1, #2) ◮ Interacting with any “split” F (#3)

.

slide-46
SLIDE 46

wrap-up. . .

Other things in the paper (full version @ eprint/2011/240):

◮ Get from “one-sided” to full-fledged UC commitment ◮ Subtleties, caveats for reactive F ◮ Complete ⇒ strongly unsplittable? (almost!)

Summary: Every “natural” functionality (reactive, randomized, etc.) is either useless or complete as a UC setup. .

slide-47
SLIDE 47

wrap-up. . .

Other things in the paper (full version @ eprint/2011/240):

◮ Get from “one-sided” to full-fledged UC commitment ◮ Subtleties, caveats for reactive F ◮ Complete ⇒ strongly unsplittable? (almost!)

Summary: Every “natural” functionality (reactive, randomized, etc.) is either useless or complete as a UC setup. .

slide-48
SLIDE 48

.