Transcript
Page 1: Payman Mohassel       Yahoo Labs

GARBLED CIRCUITS & SECURE TWO-PARTY COMPUTATION

Payman Mohassel Yahoo Labs

Page 2: Payman Mohassel       Yahoo Labs

History of Garbled Circuits

1982: First oral presentation [Andrew Yao]

1987: First written account [GMW] (public-key)

1990: First use of term ``Garbled circuitsโ€ [BMR] (symmetric-key)

1994: First abstraction as a primitive [FKN] (minimal model for sec. comp.)

1999: First PRF-based construction [NPS] (PP-auctions)

2004: First implementation [MNPS] (Fairplay)

2004: First proof of 2PC based on garbled circuits [LP] (double-encryption)

Page 3: Payman Mohassel       Yahoo Labs

A Garbling Scheme

๐บ๐ถseed

๐บ๐ผ ๐‘ฅ

๐’š

๐บ๐ผ ๐‘ฆ

๐บ๐ถ๐บ ๐ผ ๐‘ฆ

๐บ ๐ผ ๐‘ฅEval( ) ๐บ๐‘‚๐บ๐‘‚

๐ถ (๐‘ฅ , ๐‘ฆ )= ๐‘“ (๐‘ฅ , ๐‘ฆ )

๐’™ ๐‘‡๐‘‡

๐‘‡๐‘‡๐’‡ (๐’™ ,๐’š )

Page 4: Payman Mohassel       Yahoo Labs

Basic Properties

Privacy: Knowing , , and does no leak any info

Output Authenticity: Cannot compute another valid output

๐บ๐ถ๐บ ๐ผ ๐‘ฆ

๐บ ๐ผ ๐‘ฅ

๐บ๐‘‚ โ€˜

๐บ๐ถ๐บ ๐ผ ๐‘ฆ

๐บ ๐ผ ๐‘ฅ ๐‘‡๐‘‡ ๐’‡ (๐’™ ,๐’š )

๐บ๐ถ๐บ ๐ผ ๐‘ฆ

๐บ ๐ผ ๐‘ฅ

Page 5: Payman Mohassel       Yahoo Labs

Many Applications

Secure multi-party computation Zero-knowledge proofs Verifiable computation Homomorphic encryption One-time programs Circular-secure encryption Functional encryption ...

Emerged as a powerful building block!

Page 6: Payman Mohassel       Yahoo Labs

Secure Multiparty Computation (MPC)

Parties learn only f(x1,โ€ฆ,xn)

P1, x1

P2, x2

P5, x5

P4, x4

P3, x3

Correctness:honest parties learn the correct output

Privacy:Nothing but the final output is leaked

Fairness, Output Delivery, โ€ฆ

Page 7: Payman Mohassel       Yahoo Labs

Applications of MPC

Data mining Electronic Voting Auctions Exchanges/financial analysis Location privacy Genomic computation Electronic commerce Healthcare

When there is IP, NDA, user consent involved When you need to distribute trust

Page 8: Payman Mohassel       Yahoo Labs

๐‘‡๐‘‡

Secure Two-Party Computation (2PC)

Garbler

๐’™Evaluator๐’š

๐ถ (๐‘ฅ , ๐‘ฆ )= ๐‘“ (๐‘ฅ , ๐‘ฆ )

๐บ๐ถโ†๐บ๐‘Ž๐‘Ÿ๐‘(๐ถ , ๐‘ ๐‘‘)๐บ ๐ผ ๐‘ฅโ†๐บ๐ผ๐‘›(๐‘ฅ ,๐‘ ๐‘‘)

Oblivious Transfer

๐บ๐ถ๐บ ๐ผ ๐‘ฆ

๐บ ๐ผ ๐‘ฅ

๐’‡ (๐’™ ,๐’š )

Page 9: Payman Mohassel       Yahoo Labs

Yaoโ€™s Garbled Circuit Protocol

First secure computation protocol Efficient and simple Implementations

โ€บ Fairplay, 2004โ€บ TASTY, 2010 โ€บ FastGarble, 2011โ€บ SCAPI, 2013โ€บ JustGarble, 2013โ€บ โ€ฆ

โ€ข Circuits with millions of gates in less than a second

Page 10: Payman Mohassel       Yahoo Labs

Research Directions

Garbling Constructions

Functionality &Security Properties

Secure 2PC

Page 11: Payman Mohassel       Yahoo Labs

Basic Garbling/Evaluation

AND

๐‘˜01 ,๐‘˜1

1

๐‘˜02 ,๐‘˜1

2

๐‘0,0=๐ธ{๐‘˜01 ,๐‘˜02 }(๐‘˜03)

๐‘˜03 ,๐‘˜1

3

๐‘0,1=๐ธ{๐‘˜01 ,๐‘˜12 }(๐‘˜03)

๐‘1,0=๐ธ{๐‘˜11 ,๐‘˜02 }(๐‘˜03)

๐‘1,1=๐ธ {๐‘˜11 ,๐‘˜12 }(๐‘˜13)

Garble Evaluate

๐ท๐‘’๐‘ {๐‘˜๐‘Ž1 ,๐‘˜๐‘

2 } (๐‘๐‘Ž ,๐‘)=๐‘˜๐‘Žโˆง๐‘3

AND

 

 

 

Page 12: Payman Mohassel       Yahoo Labs

Constructions (Efficiency)

1990: Point-and-Permute [BMR] 1999: 3-row reduction [NPS] 2008: Free-XOR [KS] 2009: 2-row reduction [PSSW] 2013: Fixed-key block-cipher [BHKR] 2014: FleXor [KMR] 2014: Privacy-free garbling [KNO] 2015: HalfGates [ZRE] (2-row non-XORs, and 0-row XORs) How low can we get? Lower bounds? Fresh ideas for garbling needed?

Page 13: Payman Mohassel       Yahoo Labs

Constructions (Security)

Weak Assumptions PRF double-encryption LPN Free-XOR Correlation-robustness row reduction techniques Correlation-robustness FleXor

Strong Assumptions Circular-security Free-XOR Circular-security Half-Gates Ideal-permutation Fixed-key block-cipher RO Adaptive security Can we achieve these using weak assumptions?

Page 14: Payman Mohassel       Yahoo Labs

Standard Security Properties

Input privacyโ€บ Needed in most applications (not in ZK application)

Function privacyโ€บ Private function evaluation

Output authenticationโ€บ Malicious 2PC, dual-execution, verifiable comp., server-aided comp., ZK

Adaptive privacyโ€บ Verifiable comp, offline/online batch execution, โ€ฆ

Page 15: Payman Mohassel       Yahoo Labs

New Security Properties?

Only a subset of properties (e.g. privacy-free garbling)

Leaky privacy (e.g. leak a few bits, protect/leak certain functions)

Tunable security! (tunable privacy, authenticity, โ€ฆ)

Leveled privacy (inputs with different sensitivity levels)

Page 16: Payman Mohassel       Yahoo Labs

Functionality?

Standard onesโ€บ Garble, encode inputs, evaluate, authenticate outputs

Circuit property enforcing (with Rosulek and Kolesnikov)โ€บ Checking circuit propertiesโ€บ Topology, depth, input size, gate typesโ€บ Useful in limiting malicious behavior

Input property enforcingโ€บ Unique input identifier (for input consistency)โ€บ Enforcing input formatsโ€บ Enforce relation between inputs in multiple executions (beyond equality)

Output property enforcingโ€บ Enforcing output format

Page 17: Payman Mohassel       Yahoo Labs

๐บ๐ถ1

Malicious 2PC

๐บ๐ถ1

๐บ๐ถ2

๐บ๐ถ 4

๐บ๐ถ5 ๐บ๐ถ5

Open Evaluate

๐บ๐ถ3

๐บ๐ถ6

๐บ๐ถ3

๐บ๐ถ2

๐บ๐ถ 4

๐บ๐ถ6

๐‘ง 2

๐‘ง 4

๐‘ง 6

Majority

๐‘ง= ๐‘“ (๐‘ฅ , ๐‘ฆ)โ‹ฎ

๐‘ฅโ‘

๐‘ฅโ‘

๐‘ฅโ‘

๐‘งโ‘

Are all inputs the same?

Is the output correct?

๐‘ƒ1

๐’™

Page 18: Payman Mohassel       Yahoo Labs

Secure 2PC

Malicious securityโ€บ Cut-and-choose (state of the art: Lindell 2013)โ€บ Abstracting out cut-and-choose (joint work with Seny Kamara)โ€บ A new paradigm?โ€บ Lower bounds for cut-and-choose?

RAM programsโ€บ Optimizing ORAM for 2PC ([WCS]: Circuit-ORAMs)โ€บ Implementation framework (SCVM)โ€บ Extending cut-and-choose to RAM programs ([AHMR])โ€บ Lots of interesting questions

2PC with relaxed securityโ€บ Covert security, leaky 2PC, one-sided securityโ€บ Restricting leakage functions

Page 19: Payman Mohassel       Yahoo Labs

Quest ions?


Top Related