Two Round Information-Theoretic MPC with Malicious Security - - PowerPoint PPT Presentation

two round information theoretic mpc with malicious
SMART_READER_LITE
LIVE PREVIEW

Two Round Information-Theoretic MPC with Malicious Security - - PowerPoint PPT Presentation

Two Round Information-Theoretic MPC with Malicious Security Prabhanjan Ananth Arka Rai Choudhuri Aarushi Goel Abhishek Jain TPMPC 2019 Adversarial Model Adversarial Model Malicious Adversary Adversarial Model Malicious Adversary


slide-1
SLIDE 1

Two Round Information-Theoretic MPC with Malicious Security

Prabhanjan Ananth Arka Rai Choudhuri Aarushi Goel Abhishek Jain

TPMPC 2019

slide-2
SLIDE 2

Adversarial Model

slide-3
SLIDE 3

Adversarial Model

Malicious Adversary

slide-4
SLIDE 4

Adversarial Model

Malicious Adversary Corrupts < "/2 parties (Honest Majority)

slide-5
SLIDE 5

Honest Majority MPC

slide-6
SLIDE 6

Honest Majority MPC

Information-Theoretic security is possible.

[Ben-Or, Goldwasser, Widgerson’88]

Typically UC secure

Simulation proofs are typically straight-line

Round complexity lower bounds for dishonest majority do not apply

4 rounds necessary for dishonest majority in the plain model [Garg- Mukherjee-Pandey-Polychroniadou16]

Clean Constructions

Use lightweight tools such as garbling and secret-sharing

slide-7
SLIDE 7

Honest Majority MPC

Information-Theoretic security is possible.

[Ben-Or, Goldwasser, Widgerson’88]

Typically UC secure

Simulation proofs are typically straight-line

Round complexity lower bounds for dishonest majority do not apply

4 rounds necessary for dishonest majority in the plain model [Garg- Mukherjee-Pandey-Polychroniadou16]

Clean Constructions

Use lightweight tools such as garbling and secret-sharing

slide-8
SLIDE 8

Honest Majority MPC

Information-Theoretic security is possible.

[Ben-Or, Goldwasser, Widgerson’88]

Typically UC secure

Simulation proofs are typically straight-line

Round complexity lower bounds for dishonest majority do not apply

4 rounds necessary for dishonest majority in the plain model [Garg- Mukherjee-Pandey-Polychroniadou16]

Clean Constructions

Use lightweight tools such as garbling and secret-sharing

slide-9
SLIDE 9

Honest Majority MPC

Information-Theoretic security is possible.

[Ben-Or, Goldwasser, Widgerson’88]

Typically UC secure

Simulation proofs are typically straight-line

Round complexity lower bounds for dishonest majority do not apply

4 rounds necessary for dishonest majority in the plain model [Garg- Mukherjee-Pandey-Polychroniadou16]

Clean Constructions

Use lightweight tools such as garbling and secret-sharing

slide-10
SLIDE 10

Honest Majority MPC: Applications

Useful for constructing efficient ZK-protocols.

slide-11
SLIDE 11

Honest Majority MPC: Applications

(Courtesy: Sergey Gorbunov’s talk)

slide-12
SLIDE 12

History of IT-MPC

Round Complexity Class of Functions Corruption Threshold Adversary [BGW’88] > # of multiplications P/Poly t<n/2 Malicious [BB’89, IK’00, AIK’06] constant NC1 t<n/2 Malicious [IKP’10] 2 NC1 t<n/3 Malicious [GIS’18, ABT’18] 2 NC1 t<n/2 Semi-honest

Security with selective abort

slide-13
SLIDE 13

Our Results

Round Complexity Class of Functions Corruption Threshold Adversary 2 NC1 t<n/2 Malicious

Security with Abort over Broadcast + P2P Security with Selective Abort over P2P

slide-14
SLIDE 14

Our Results

Round Complexity Class of Functions Corruption Threshold Adversary 2 NC1 t<n/2 Malicious

Security with Abort over Broadcast + P2P Security with Selective Abort over P2P

Concurrent Work [ABT19] Consider security with selective abort.

slide-15
SLIDE 15

This Talk

Round Complexity Class of Functions Corruption Threshold Adversary 2 NC1 t<n/2 Malicious

Security with Abort over Broadcast + P2P Security with Selective Abort over P2P

slide-16
SLIDE 16

Our Strategy

2 Round IT-MPC (Privacy with Knowledge of Outputs) 2 Round IT-MPC (Security with Abort)

Broadcast + P2P Broadcast + P2P

Constant Round IT-MPC (Security with Abort)

Broadcast + P2P

Round Compression Security Upgrade

slide-17
SLIDE 17

Security with Abort

Party 1 Party 2 Party 3 Trusted Party !

slide-18
SLIDE 18

Security with Abort

!1 !2 !3

Party 1 Party 2 Party 3 Trusted Party %

slide-19
SLIDE 19

Security with Abort

!1 !2 !3

% = '(!1, !2, !3)

Party 1 Party 2 Party 3 Trusted Party '

slide-20
SLIDE 20

Security with Abort

!1 !2 !3

% = '(!1, !2, !3) %’ = % ,- ⊥

Party 1 Party 2 Party 3 Trusted Party '

slide-21
SLIDE 21

Security with Abort

!1 !2 !3

% = '(!1, !2, !3) %’ = % ,- ⊥

%’ %’

Party 1 Party 2 Party 3 Trusted Party '

slide-22
SLIDE 22

Security with Abort

Privacy !2 and !3 remain hidden

$

slide-23
SLIDE 23

Security with Abort

Privacy !2 and !3 remain hidden Output Correctness Honest Parties either output $ !%, !', !( or ⊥

$

slide-24
SLIDE 24

Privacy with Knowledge of Outputs

Privacy !2 and !3 remain hidden Output Correctness Honest Parties either output $ !%, !', !( or ⊥

$

slide-25
SLIDE 25

First Step

2 Round IT-MPC (Privacy with Knowledge of Outputs) 2 Round IT-MPC (Security with Abort)

Broadcast + P2P Broadcast + P2P

Constant Round IT-MPC (Security with Abort)

Broadcast + P2P

Round Compression Security Upgrade

slide-26
SLIDE 26

Using Signed Outputs [IKP10]

!

"1 "2 "3

& = ! ("), "+, ",)

slide-27
SLIDE 27

Using Signed Outputs [IKP10]

!′

#1, &'(, )'(

* = ! (#(, #-, #.)

#-,&'-, )'- #., &'., )'.

(&'(,0( = 1234 (*, )'1)) (&'-,0- = 1234 (*, )'-)) (&'.,0. = 1234 (*, )'.))

slide-28
SLIDE 28

!", $%", &%"

', (), $%) , (", $%" , ((+, $%+)

Party 2 Trusted Party

Security with abort: Using Signed Outputs

  • ./01'(', (", $%")

1’

  • ./01'(', (), $%))
  • ./01'(', (+, $%+)
slide-29
SLIDE 29

!", $%", &%"

', (), $%) , (", $%" , ((+, $%+)

Party 2 Trusted Party

Security with abort: Using Signed Outputs

Accept if all 3 verify

./01-'(', (", $%") ./01-'(', (), $%)) ./01-'(', (+, $%+)

slide-30
SLIDE 30

Security with abort: Using Signed Outputs

!", $%", &%"

', (), $%) , (", $%" , ((+, $%+)

Party 2 Trusted Party

Accept if all 3 verify

./01-'(', (", $%") ./01-'(', (), $%)) ./01-'(', (+, $%+) Digital signatures require one-way functions

slide-31
SLIDE 31

Security with abort: Using Signed Outputs

!", $%", &%"

', (), $%) , (", $%" , ((+, $%+)

Party 2 Trusted Party

Accept if all 3 verify

./01-'(', (", $%") ./01-'(', (), $%)) ./01-'(', (+, $%+) Digital signatures require one-way functions MACs are not sufficient

slide-32
SLIDE 32

Security with abort: Using Signed Outputs

!", $%", &%"

', (), $%) , (", $%" , ((+, $%+)

Party 2 Trusted Party

Accept if all 3 verify

./01-'(', (", $%") ./01-'(', (), $%)) ./01-'(', (+, $%+) Digital signatures require one-way functions How can we do it information theoretically? MACs are not sufficient

slide-33
SLIDE 33

Our Tool: Multi-Key MAC

!" !# !$ %

slide-34
SLIDE 34

Our Tool: Multi-Key MAC

! = #. %&'( ), +,, +-, +. +, +- +. )

slide-35
SLIDE 35

Our Tool: Multi-Key MAC

! ! ! ! = #. %&'( ), +,, +-, +. )

slide-36
SLIDE 36

Our Tool: Multi-Key MAC

!. #$%&'( (*, ,, -.) !. #$%&'( (*, ,, -0) !. #$%&'( (*, ,, -1)

, , , , = !. 3&45 *, -., -0, -1 *

slide-37
SLIDE 37

Our Tool: Multi-Key MAC (Correctness)

YES YES YES

!. #$%&'( (*, ,, -.) !. #$%&'( (*, ,, -0) !. #$%&'( (*, ,, -1)

, , , , = !. 3&45 *, -., -0, -1 *

slide-38
SLIDE 38

Our Tool: Multi-Key MAC (Security)

!, "#, "% & = (. *+,- !, "., "#, "% & ".

slide-39
SLIDE 39

Our Tool: Multi-Key MAC (Security)

!, "#, "% & = (. *+,- !, "., "#, "% & ". "# !/, &’

(. 012+34 (!′, &′, "#)

NO

slide-40
SLIDE 40

Our Tool: Multi-Key MAC (Security)

!, "#, "% & = ()*+ !, ",, "#, "% & ", "# !-, &’

.. 012)34 (!′, &′, "#)

NO An adversary cannot output any valid message-signature pair other than the

  • ne it received
slide-41
SLIDE 41

Security with Abort: Using Multi-Key MAC

!′

#1, &'

( = ! (#', #+, #,)

#+, &+ #,, &,

. = /. 1234 ((, &1, &2, &3)

slide-42
SLIDE 42

!", $"

%, &

Party 2 Trusted Party

Security with Abort: Using Multi-Key MAC

'. )*+,-%(%, &, $")

slide-43
SLIDE 43

Security with abort: Using Multi-Key MAC

IF !, # = %′((()*)), ((,, *,), ((-, *-))

(,, *, !, #

Honest Party 2 Trusted Party

(-, *- !, #

Honest Party 3 %′

slide-44
SLIDE 44

Security with abort: Using Multi-Key MAC

!. #$%&'(((, +, ,-) !. #$%&'(((, +, ,/ )

0-, ,- (, +

Honest Party 2 Trusted Party

0/, ,/ (, +

Honest Party 3

YES YES

IF (, + = '′((03,3), (0-, ,-), (0/, ,/))

'′

slide-45
SLIDE 45

Security with abort: Using Multi-Key MAC

!", $" %, &

Honest Party 2 Trusted Party

!', $' %, &

Honest Party 3

IF %, & ≠ )′((!,$,), (!", $"), (!', $'))

)′

slide-46
SLIDE 46

Security with abort: Using Multi-Key MAC

Honest Party 2

!", $" %, &

Honest Party 2 Trusted Party

!', $' %, &

Honest Party 3

NO NO

(. *+,-.%(%, &, $") (. *+,-.%(%, &, $' ) IF %, & ≠ .′((!3$3), (!", $"), (!', $'))

.′

slide-47
SLIDE 47

Recall: Our Strategy

2 Round IT-MPC (Privacy with Knowledge of Outputs) 2 Round IT-MPC (Security with Abort)

Broadcast + P2P Broadcast + P2P

Constant Round IT-MPC (Security with Abort)

Broadcast + P2P

Using Multi-Key MAC

Round Compression Security Upgrade

slide-48
SLIDE 48

Security Upgrade

Using Multi-Key MAC

Second Step

2 Round IT-MPC (Privacy with Knowledge of Outputs) 2 Round IT-MPC (Security with Abort)

Broadcast + P2P Broadcast + P2P

Constant Round IT-MPC (Security with Abort)

Broadcast + P2P

Round Compression

slide-49
SLIDE 49

Technique: Round Compression

Interactive secure MPC 2 round secure MPC

[GGHR’13]

Indistinguishability Obfuscation

[GLS’15]

Witness Encryption + Garbled circuits

[GS’17]

Bilinear Maps + Garbled circuits

[GS’18, BL’18]

OT + Garbled Circuits

[ACGJ’18]

Garbled circuits

slide-50
SLIDE 50

Initial Idea

Interactive secure MPC 2 round secure MPC

[GGHR’13]

Indistinguishability Obfuscation

[GLS’15]

Witness Encryption + Garbled circuits

[GS’17]

Bilinear Maps + Garbled circuits

[GS’18, BL’18]

OT + Garbled Circuits

[ACGJ’18]

Garbled circuits

Replace garbled circuits with Information-theoretic garbled circuits (IT-GC)

slide-51
SLIDE 51

Round Compression Template

!"#

$

... Interactive secure MPC 2 round secure MPC !"#

%

!"#

&

Commit Inputs '( !"#

$ , '( !"# % , . .

slide-52
SLIDE 52

Round Compression Template

!"#

$

... Interactive secure MPC 2 round secure MPC !"#

%

!"#

&

Commit Inputs '( !"#

$ , '( !"# % , . .

'( !"#

%

After Round 2

'( !"#

$

'( !"#

%

'( !"#

$

Party 1 Party 2 . . . . . . . . . . . .

slide-53
SLIDE 53

Round Compression Template: After Round 2

!" #$%

&

!" #$%

'

!" #$%

'

Party 1 Party 2

slide-54
SLIDE 54

Round Compression Template: After Round 2

!" #$%

&

!" #$%

'

!" #$%

'

Party 1 Party 2

Statistically secure multi-party helper protocol for OT functionality Wire Labels 1st Message of Party 2 Wire Labels for 1st Message of Party 2

slide-55
SLIDE 55

Initial Idea: Doesn’t Work

Interactive secure MPC 2 round secure MPC

[GGHR’13]

Indistinguishability Obfuscation

[GLS’15]

Witness Encryption + Garbled circuits

[GS’17]

Bilinear Maps + Garbled circuits

[GS’18, BL’18]

OT + Garbled Circuits

[ACGJ’18]

Garbled circuits

Replace garbled circuits with Information-theoretic garbled circuits (IT-GC) Problem

Size of the input wire labels in IT-GC grows exponentially in the depth of the circuit being garbled.

slide-56
SLIDE 56

Initial Idea: Doesn’t Work

Interactive secure MPC 2 round secure MPC

[GGHR’13]

Indistinguishability Obfuscation

[GLS’15]

Witness Encryption + Garbled circuits

[GS’17]

Bilinear Maps + Garbled circuits

[GS’18, BL’18]

OT + Garbled Circuits

[ACGJ’18]

Garbled circuits

Replace garbled circuits with Information-theoretic garbled circuits (IT-GC) Problem

Size of the input wire labels in IT-GC grows exponentially in the depth of the circuit being garbled.

  • No. of garbled circuits

generated per-party ≥ |#|

slide-57
SLIDE 57

Initial Idea: Doesn’t Work

Interactive secure MPC 2 round secure MPC

[GGHR’13]

Indistinguishability Obfuscation

[GLS’15]

Witness Encryption + Garbled circuits

[GS’17]

Bilinear Maps + Garbled circuits

[GS’18, BL’18]

OT + Garbled Circuits

[ACGJ’18]

Garbled circuits

Replace garbled circuits with Information-theoretic garbled circuits (IT-GC) Problem

Size of the input wire labels in IT-GC grows exponentially in the depth of the circuit being garbled.

  • No. of garbled circuits

generated per-party ≥ |#| Size of bottom-most garbled circuits is exp( # )

slide-58
SLIDE 58

Our Approach

!" #$%

&

!" #$%

'

!" #$%

'

Party 1 Party 2

Statistically secure multi-party helper protocol for OT functionality Wire Labels 1st Message of Party 2 Wire Labels for 1st Message of Party 2

(&

Inspired by the approach used in [BL’18]

slide-59
SLIDE 59

Our Approach

!" #$%

&

!" #$%

'

!" #$%

'

Party 1 Party 2

Statistically secure multi-party helper protocol for OT functionality OT functionality Wire Labels Wire Labels for 1st Message of Party 2

() *', #$%

' *&

*&

slide-60
SLIDE 60

Our Approach

Design a 2 round helper protocol for !" #$, &'(

$ #) *+ &'(

)

*+ &'(

$

*+ &'(

$

Party 1 Party 2

Helper Protocol for OT functionality Wire Labels Wire Labels for 1st Message of Party 2

!" #$, &'(

) #)

#)

Statistically secure multi-party helper protocol for OT functionality OT functionality

!" #$, &'(

$ #)

slide-61
SLIDE 61

Challenges in Designing such a protocol

2 Round MPC Template using a 2 Round Helper Protocol

1st round of Helper Protocol (implicitly commits to inputs) 2nd round of Helper Protocol & !" #$%

& , !" #$%( , . .

R 2 R 1

slide-62
SLIDE 62

Challenges in Designing such a protocol

R 1 R 2 Inputs of Adversary Output y

Trusted Party Simulator Adversary

A A

Malicious Security

slide-63
SLIDE 63

Challenges in Designing such a protocol

R 1 R 2 Inputs of Adversary Output y

Trusted Party Outer Simulator Outer Adversary Inner Simulator

A B A

Inner Adversary

B

Malicious Security using helper protocol

slide-64
SLIDE 64

Challenges in Designing such a protocol

R 1 R 2 Inputs of Adversary Output y

Trusted Party Outer Simulator Outer Adversary Inner Simulator

A B A

Inner Adversary

B Need to extract the inputs from inner adversary

Malicious Security using helper protocol

slide-65
SLIDE 65

Challenges in Designing such a protocol

R 1 R 2 Inputs of Adversary Output y

Trusted Party Outer Simulator Outer Adversary Inner Simulator

A B A

Inner Adversary

B Need to extract the inputs from inner adversary

For Malicious Security

How to design a 2 round maliciously secure helper protocol for this functionality?

slide-66
SLIDE 66

Our Solution

Properties:

!"#$ is not known in the first round.

Party 1 Party 2 HONEST Nothing beyond the output is leaked Nothing beyond !"#

%('$) is leaked

CORRUPT Simulator can extract '% Simulator can extract !"#

%('$)

A two-round helper MPC protocol for 2 input delayed-function )* '%, !"#

% '$

This asymmetric weaker security suffices!

slide-67
SLIDE 67

Conclusion

2 Round IT-MPC (Privacy with Knowledge of Outputs) 2 Round IT-MPC (Security with Abort)

Broadcast + P2P Broadcast + P2P

Constant Round IT-MPC (Security with Abort)

Broadcast + P2P

slide-68
SLIDE 68

Conclusion

2 Round IT-MPC (Security with Selective Abort)

P2P

2 Round IT-MPC (Privacy with Knowledge of Outputs) 2 Round IT-MPC (Security with Abort)

Broadcast + P2P Broadcast + P2P

Constant Round IT-MPC (Security with Abort)

Broadcast + P2P

slide-69
SLIDE 69

Thank You!

https://eprint.iacr.org/2018/1078 aarushig@cs.jhu.edu