Secure Multi-Party Computation Lecture 15 Must We Trust ? - - PowerPoint PPT Presentation

secure multi party computation
SMART_READER_LITE
LIVE PREVIEW

Secure Multi-Party Computation Lecture 15 Must We Trust ? - - PowerPoint PPT Presentation

Secure Multi-Party Computation Lecture 15 Must We Trust ? Must We Trust ? Can we have an auction without an auctioneer?! Must We Trust ? Can we have an auction without an auctioneer?! Must We Trust ? Can we


slide-1
SLIDE 1

Secure Multi-Party Computation

Lecture 15

slide-2
SLIDE 2

Must We Trust ?

slide-3
SLIDE 3

Can we have an auction without an auctioneer?!

Must We Trust ?

slide-4
SLIDE 4

Can we have an auction without an auctioneer?!

Must We Trust ?

slide-5
SLIDE 5

Can we have an auction without an auctioneer?!

Must We Trust ?

slide-6
SLIDE 6

Can we have an auction without an auctioneer?!

Declared winning bid should be correct

Must We Trust ?

slide-7
SLIDE 7

Can we have an auction without an auctioneer?!

Declared winning bid should be correct Only the winner and winning bid should be revealed

Must We Trust ?

slide-8
SLIDE 8

Using data without sharing?

slide-9
SLIDE 9

Hospitals which can’t share their patient records with anyone

Using data without sharing?

slide-10
SLIDE 10

Hospitals which can’t share their patient records with anyone

But want to data-mine

  • n combined data

Using data without sharing?

Data Mining Tool

slide-11
SLIDE 11

X1 X4 X3 X2

f(X1, X2, X3, X4)

Secure Function Evaluation

slide-12
SLIDE 12

A general problem

X1 X4 X3 X2

f(X1, X2, X3, X4)

Secure Function Evaluation

slide-13
SLIDE 13

A general problem To compute a function

  • f private inputs

without revealing information about the inputs

X1 X4 X3 X2

f(X1, X2, X3, X4)

Secure Function Evaluation

slide-14
SLIDE 14

A general problem To compute a function

  • f private inputs

without revealing information about the inputs

Beyond what is revealed by the function

X1 X4 X3 X2

f(X1, X2, X3, X4)

Secure Function Evaluation

slide-15
SLIDE 15

Poker With No Dealer?

slide-16
SLIDE 16

Poker With No Dealer?

slide-17
SLIDE 17

Need to ensure

Poker With No Dealer?

slide-18
SLIDE 18

Need to ensure

Cards are shuffled and dealt correctly

Poker With No Dealer?

slide-19
SLIDE 19

Need to ensure

Cards are shuffled and dealt correctly Complete secrecy

Poker With No Dealer?

slide-20
SLIDE 20

Need to ensure

Cards are shuffled and dealt correctly Complete secrecy No “cheating” by players, even if they collude

Poker With No Dealer?

slide-21
SLIDE 21

Need to ensure

Cards are shuffled and dealt correctly Complete secrecy No “cheating” by players, even if they collude

No universally trusted dealer

Poker With No Dealer?

slide-22
SLIDE 22

The Ambitious Goal

slide-23
SLIDE 23

Without any trusted party, securely do

Distributed Data mining E-commerce Network Games E-voting Secure function evaluation ....

The Ambitious Goal

slide-24
SLIDE 24

Without any trusted party, securely do

Distributed Data mining E-commerce Network Games E-voting Secure function evaluation ....

The Ambitious Goal

Any Task!

slide-25
SLIDE 25

Emulating Trusted Computation

slide-26
SLIDE 26

Emulating Trusted Computation

Encryption/Authentication allowed us to emulate a trusted channel

slide-27
SLIDE 27

Emulating Trusted Computation

Encryption/Authentication allowed us to emulate a trusted channel Secure MPC: to emulate a source of trusted computation

slide-28
SLIDE 28

Emulating Trusted Computation

Encryption/Authentication allowed us to emulate a trusted channel Secure MPC: to emulate a source of trusted computation Trusted means it will not “leak” a party’ s information to others

slide-29
SLIDE 29

Emulating Trusted Computation

Encryption/Authentication allowed us to emulate a trusted channel Secure MPC: to emulate a source of trusted computation Trusted means it will not “leak” a party’ s information to others And it will not cheat in the computation

slide-30
SLIDE 30

A Simple example

An auction, with Alice and Bob bidding

slide-31
SLIDE 31

A Simple example

An auction, with Alice and Bob bidding Rules: A bid is an integer in the range [0,100] Alice can bid only even integers and Bob odd integers Person with the higher bid wins

slide-32
SLIDE 32

A Simple example

An auction, with Alice and Bob bidding Rules: A bid is an integer in the range [0,100] Alice can bid only even integers and Bob odd integers Person with the higher bid wins Goal: find out the winning bid (winner & amount) without revealing anything more about the losing bid (beyond what is revealed by the winning bid)

slide-33
SLIDE 33

A Simple example

Secure protocol: Count down from 100 At each even round Alice announces whether her bid equals the current count; at each odd round Bob does the same Stop if a party says yes

slide-34
SLIDE 34

A Simple example

Secure protocol: Count down from 100 At each even round Alice announces whether her bid equals the current count; at each odd round Bob does the same Stop if a party says yes Dutch flower auction

slide-35
SLIDE 35

A Simple example

Secure protocol: Count down from 100 At each even round Alice announces whether her bid equals the current count; at each odd round Bob does the same Stop if a party says yes Dutch flower auction What kind of security
 does this protocol get?
 (Later: “stand-alone” security)

slide-36
SLIDE 36

SIM-Secure MPC

proto proto

Env REAL

slide-37
SLIDE 37

SIM-Secure MPC

proto proto

Env REAL

i’face i’face

Env IDEAL

slide-38
SLIDE 38

SIM-Secure MPC

proto proto

Env REAL

i’face i’face

Env IDEAL

F

F

slide-39
SLIDE 39

SIM-Secure MPC

Secure (and correct) if: ∀ ∃ s.t. ∀

  • utput of

is distributed identically in REAL and IDEAL

proto proto

Env REAL

i’face i’face

Env IDEAL

F

F

slide-40
SLIDE 40

SIM-Secure MPC

Secure (and correct) if: ∀ ∃ s.t. ∀

  • utput of

is distributed identically in REAL and IDEAL

proto proto

Env REAL

i’face i’face

Env IDEAL

F

F

slide-41
SLIDE 41

SIM-Secure MPC

Secure (and correct) if: ∀ ∃ s.t. ∀

  • utput of

is distributed identically in REAL and IDEAL

proto proto

Env REAL

i’face i’face

Env IDEAL

F

F

slide-42
SLIDE 42

Trust Issues Considered

slide-43
SLIDE 43

Trust Issues Considered

Protocol may leak a party’ s secrets

slide-44
SLIDE 44

Trust Issues Considered

Protocol may leak a party’ s secrets Clearly an issue -- even if we trust everyone not to cheat in our protocol (i.e., honest-but-curious)

slide-45
SLIDE 45

Trust Issues Considered

Protocol may leak a party’ s secrets Clearly an issue -- even if we trust everyone not to cheat in our protocol (i.e., honest-but-curious) Also, a liability for a party if extra information reaches it

slide-46
SLIDE 46

Trust Issues Considered

Protocol may leak a party’ s secrets Clearly an issue -- even if we trust everyone not to cheat in our protocol (i.e., honest-but-curious) Also, a liability for a party if extra information reaches it Say in medical data mining

slide-47
SLIDE 47

Trust Issues Considered

Protocol may leak a party’ s secrets Clearly an issue -- even if we trust everyone not to cheat in our protocol (i.e., honest-but-curious) Also, a liability for a party if extra information reaches it Say in medical data mining Protocol may give adversary illegitimate influence on the

  • utcome
slide-48
SLIDE 48

Trust Issues Considered

Protocol may leak a party’ s secrets Clearly an issue -- even if we trust everyone not to cheat in our protocol (i.e., honest-but-curious) Also, a liability for a party if extra information reaches it Say in medical data mining Protocol may give adversary illegitimate influence on the

  • utcome

Say in poker, if adversary can influence hands dealt

slide-49
SLIDE 49

Trust Issues Considered

Protocol may leak a party’ s secrets Clearly an issue -- even if we trust everyone not to cheat in our protocol (i.e., honest-but-curious) Also, a liability for a party if extra information reaches it Say in medical data mining Protocol may give adversary illegitimate influence on the

  • utcome

Say in poker, if adversary can influence hands dealt SIM security covers these concerns

slide-50
SLIDE 50

Trust Issues Considered

Protocol may leak a party’ s secrets Clearly an issue -- even if we trust everyone not to cheat in our protocol (i.e., honest-but-curious) Also, a liability for a party if extra information reaches it Say in medical data mining Protocol may give adversary illegitimate influence on the

  • utcome

Say in poker, if adversary can influence hands dealt SIM security covers these concerns Because IDEAL trusted entity would allow neither

slide-51
SLIDE 51

Adversary

slide-52
SLIDE 52

Adversary

REAL-adversary can corrupt any set of players

slide-53
SLIDE 53

Adversary

REAL-adversary can corrupt any set of players In security requirement IDEAL-world adversary should corrupt the same set of players

slide-54
SLIDE 54

Adversary

REAL-adversary can corrupt any set of players In security requirement IDEAL-world adversary should corrupt the same set of players i.e., environment gets to know the set of corrupt players

slide-55
SLIDE 55

Adversary

REAL-adversary can corrupt any set of players In security requirement IDEAL-world adversary should corrupt the same set of players i.e., environment gets to know the set of corrupt players More sophisticated notion: adaptive adversary which corrupts players dynamically during/after the execution

slide-56
SLIDE 56

Adversary

REAL-adversary can corrupt any set of players In security requirement IDEAL-world adversary should corrupt the same set of players i.e., environment gets to know the set of corrupt players More sophisticated notion: adaptive adversary which corrupts players dynamically during/after the execution We’ll stick to static adversaries

slide-57
SLIDE 57

Adversary

REAL-adversary can corrupt any set of players In security requirement IDEAL-world adversary should corrupt the same set of players i.e., environment gets to know the set of corrupt players More sophisticated notion: adaptive adversary which corrupts players dynamically during/after the execution We’ll stick to static adversaries Passive vs. Active adversary: Passive adversary gets only read access to the internal state of the corrupted players. Active adversary overwrites their state and program.

slide-58
SLIDE 58

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment)

slide-59
SLIDE 59

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment) Also called “Honest-But-Curious” adversary

slide-60
SLIDE 60

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment) Also called “Honest-But-Curious” adversary Will require that simulator also corrupts passively

slide-61
SLIDE 61

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment) Also called “Honest-But-Curious” adversary Will require that simulator also corrupts passively Simplifies several cases

slide-62
SLIDE 62

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment) Also called “Honest-But-Curious” adversary Will require that simulator also corrupts passively Simplifies several cases e.g. coin-tossing [why?], commitment [coming up]

slide-63
SLIDE 63

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment) Also called “Honest-But-Curious” adversary Will require that simulator also corrupts passively Simplifies several cases e.g. coin-tossing [why?], commitment [coming up] Oddly, sometimes security against a passive adversary is more demanding than against an active adversary

slide-64
SLIDE 64

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment) Also called “Honest-But-Curious” adversary Will require that simulator also corrupts passively Simplifies several cases e.g. coin-tossing [why?], commitment [coming up] Oddly, sometimes security against a passive adversary is more demanding than against an active adversary Active adversary: too pessimistic about what guarantee is available even in the IDEAL world

slide-65
SLIDE 65

Passive Adversary

Gets only read access to the internal state of the corrupted players (and can use that information in talking to environment) Also called “Honest-But-Curious” adversary Will require that simulator also corrupts passively Simplifies several cases e.g. coin-tossing [why?], commitment [coming up] Oddly, sometimes security against a passive adversary is more demanding than against an active adversary Active adversary: too pessimistic about what guarantee is available even in the IDEAL world e.g. 2-party SFE for OR, with output going to only one party (trivial against active adversary; impossible without computational assumptions against passive adversary)

slide-66
SLIDE 66

More Example Functionalities

slide-67
SLIDE 67

More Example Functionalities

Can consider “arbitrary” functionalities

slide-68
SLIDE 68

More Example Functionalities

Can consider “arbitrary” functionalities i.e., arbitrary (PPT) program of the trusted party to be emulated

slide-69
SLIDE 69

More Example Functionalities

Can consider “arbitrary” functionalities i.e., arbitrary (PPT) program of the trusted party to be emulated Some simple (but important) examples:

slide-70
SLIDE 70

More Example Functionalities

Can consider “arbitrary” functionalities i.e., arbitrary (PPT) program of the trusted party to be emulated Some simple (but important) examples: Secure Function Evaluation

slide-71
SLIDE 71

More Example Functionalities

Can consider “arbitrary” functionalities i.e., arbitrary (PPT) program of the trusted party to be emulated Some simple (but important) examples: Secure Function Evaluation e.g. Finding max, Oblivious Transfer (coming up)

slide-72
SLIDE 72

More Example Functionalities

Can consider “arbitrary” functionalities i.e., arbitrary (PPT) program of the trusted party to be emulated Some simple (but important) examples: Secure Function Evaluation e.g. Finding max, Oblivious Transfer (coming up) Can be randomized: e.g. Coin-tossing

slide-73
SLIDE 73

More Example Functionalities

Can consider “arbitrary” functionalities i.e., arbitrary (PPT) program of the trusted party to be emulated Some simple (but important) examples: Secure Function Evaluation e.g. Finding max, Oblivious Transfer (coming up) Can be randomized: e.g. Coin-tossing “Reactive” functionalities (maintains state over multiple rounds)

slide-74
SLIDE 74

More Example Functionalities

Can consider “arbitrary” functionalities i.e., arbitrary (PPT) program of the trusted party to be emulated Some simple (but important) examples: Secure Function Evaluation e.g. Finding max, Oblivious Transfer (coming up) Can be randomized: e.g. Coin-tossing “Reactive” functionalities (maintains state over multiple rounds) e.g. Commitment (coming up)

slide-75
SLIDE 75

Commitment

slide-76
SLIDE 76

Commitment

Commit now, reveal later

slide-77
SLIDE 77

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

slide-78
SLIDE 78

IDEAL World

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

slide-79
SLIDE 79

IDEAL World

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

slide-80
SLIDE 80

IDEAL World

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

slide-81
SLIDE 81

IDEAL World

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

Really?

slide-82
SLIDE 82

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

Really?

slide-83
SLIDE 83

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

Really?

slide-84
SLIDE 84

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

F

COM

Really?

slide-85
SLIDE 85

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

F up up

Really?

slide-86
SLIDE 86

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

F up up

“COMMIT”

Really?

slide-87
SLIDE 87

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

F up up

“COMMIT”

commit

COMMIT:

F

m m

Really?

slide-88
SLIDE 88

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

F up

commit

COMMIT:

F

m m

Really?

Next Day

slide-89
SLIDE 89

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

F up

“REVEAL”

up

commit

COMMIT:

F

m m

Really?

Next Day

slide-90
SLIDE 90

IDEAL World 30 Day Free Trial

W e P r e d i c t S T O C K S ! !

Commitment

Commit now, reveal later

Intuitive properties: hiding and binding

F up

“REVEAL”

up

commit

COMMIT:

F

m m

reveal

m

REVEAL:

F

m

Really?

Next Day

slide-91
SLIDE 91

Oblivious Transfer

W e P r e d i c t S T O C K S ! !

IDEAL World

slide-92
SLIDE 92

Oblivious Transfer

Pick one out of two, without revealing which

W e P r e d i c t S T O C K S ! !

IDEAL World

slide-93
SLIDE 93

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

W e P r e d i c t S T O C K S ! !

IDEAL World

slide-94
SLIDE 94

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

W e P r e d i c t S T O C K S ! !

IDEAL World

slide-95
SLIDE 95

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

W e P r e d i c t S T O C K S ! !

I need just

  • ne

IDEAL World

slide-96
SLIDE 96

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

W e P r e d i c t S T O C K S ! !

I need just

  • ne

Sure

IDEAL World

slide-97
SLIDE 97

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

W e P r e d i c t S T O C K S ! !

I need just

  • ne

But can’t tell you which Sure

IDEAL World

slide-98
SLIDE 98

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

F

OT

W e P r e d i c t S T O C K S ! !

I need just

  • ne

But can’t tell you which Sure

IDEAL World

slide-99
SLIDE 99

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

F

OT

W e P r e d i c t S T O C K S ! ! A:up, B:down

I need just

  • ne

But can’t tell you which Sure

IDEAL World

slide-100
SLIDE 100

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

F

OT

W e P r e d i c t S T O C K S ! ! A A:up, B:down

I need just

  • ne

But can’t tell you which Sure

IDEAL World

slide-101
SLIDE 101

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

F

OT

W e P r e d i c t S T O C K S ! ! A A:up, B:down

I need just

  • ne

But can’t tell you which

up

Sure

IDEAL World

slide-102
SLIDE 102

All 2 of them!

Oblivious Transfer

Pick one out of two, without revealing which

Intuitive property: transfer partial information “obliviously”

F

OT

W e P r e d i c t S T O C K S ! ! A A:up, B:down

I need just

  • ne

x0 x1

F

b x

b

But can’t tell you which

up

Sure

IDEAL World

slide-103
SLIDE 103

Can we REAL-ize them?

slide-104
SLIDE 104

Can we REAL-ize them?

Are there protocols which securely realize these functionalities?

slide-105
SLIDE 105

Can we REAL-ize them?

Are there protocols which securely realize these functionalities? Securely Realize: A protocol for the REAL world, so that SIM security definition satisfied

slide-106
SLIDE 106

Can we REAL-ize them?

Are there protocols which securely realize these functionalities? Securely Realize: A protocol for the REAL world, so that SIM security definition satisfied Turns out SIM definition “too strong”

slide-107
SLIDE 107

Can we REAL-ize them?

Are there protocols which securely realize these functionalities? Securely Realize: A protocol for the REAL world, so that SIM security definition satisfied Turns out SIM definition “too strong” Unless modified carefully...

slide-108
SLIDE 108

Alternate Security Definitions

slide-109
SLIDE 109

Alternate Security Definitions

Standalone security: environment is not “live”: interacts with the adversary before and after (but not during) the protocol

slide-110
SLIDE 110

Alternate Security Definitions

Standalone security: environment is not “live”: interacts with the adversary before and after (but not during) the protocol Honest-majority security: adversary can corrupt only a strict minority of parties. (Not useful when only two parties involved)

slide-111
SLIDE 111

Alternate Security Definitions

Standalone security: environment is not “live”: interacts with the adversary before and after (but not during) the protocol Honest-majority security: adversary can corrupt only a strict minority of parties. (Not useful when only two parties involved) Passive (a.k.a honest-but-curious) adversary: where corrupt parties stick to the protocol (but we don’ t want to trust them with information)

slide-112
SLIDE 112

Alternate Security Definitions

Standalone security: environment is not “live”: interacts with the adversary before and after (but not during) the protocol Honest-majority security: adversary can corrupt only a strict minority of parties. (Not useful when only two parties involved) Passive (a.k.a honest-but-curious) adversary: where corrupt parties stick to the protocol (but we don’ t want to trust them with information) Functionality-specific IND definitions: usually leave out several attacks (e.g. input dependence, malleability, …)

slide-113
SLIDE 113

Alternate Security Definitions

Standalone security: environment is not “live”: interacts with the adversary before and after (but not during) the protocol Honest-majority security: adversary can corrupt only a strict minority of parties. (Not useful when only two parties involved) Passive (a.k.a honest-but-curious) adversary: where corrupt parties stick to the protocol (but we don’ t want to trust them with information) Functionality-specific IND definitions: usually leave out several attacks (e.g. input dependence, malleability, …) Full-fledged SIM security, but protocols allowed to use a real trusted entity for a basic functionality

slide-114
SLIDE 114

Alternate Security Definitions

Standalone security: environment is not “live”: interacts with the adversary before and after (but not during) the protocol Honest-majority security: adversary can corrupt only a strict minority of parties. (Not useful when only two parties involved) Passive (a.k.a honest-but-curious) adversary: where corrupt parties stick to the protocol (but we don’ t want to trust them with information) Functionality-specific IND definitions: usually leave out several attacks (e.g. input dependence, malleability, …) Full-fledged SIM security, but protocols allowed to use a real trusted entity for a basic functionality Modified SIM definitions (super-PPT adversary for ideal world)