How to Use Bitcoin to Design Fair Protocols Iddo Bentov (Technion) Ranjit Kumaresan (Technion) ePrint 2014/129.

Slides:



Advertisements
Similar presentations
Dov Gordon & Jonathan Katz University of Maryland.
Advertisements

Efficiency vs. Assumptions in Secure Computation Yuval Ishai Technion & UCLA.
Cryptography and Game Theory: Designing Protocols for Exchanging Information Gillat Kol and Moni Naor.
Secure Multiparty Computations on Bitcoin
Pairwise Key Agreement in Broadcasting Networks Ik Rae Jeong.
Polling With Physical Envelopes A Rigorous Analysis of a Human–Centric Protocol Tal Moran Joint work with Moni Naor.
Rational Oblivious Transfer KARTIK NAYAK, XIONG FAN.
CS555Topic 241 Cryptography CS 555 Topic 24: Secure Function Evaluation.
On Fair Exchange, Fair Coins and Fair Sampling Shashank Agrawal, Manoj Prabhakaran University of Illinois at Urbana-Champaign.
Computational Security. Overview Goal: Obtain computational security against an active adversary. Hope: under a reasonable cryptographic assumption, obtain.
Achieving Byzantine Agreement and Broadcast against Rational Adversaries Adam Groce Aishwarya Thiruvengadam Ateeq Sharfuddin CMSC 858F: Algorithmic Game.
Amortizing Garbled Circuits Yan Huang, Jonathan Katz, Alex Malozemoff (UMD) Vlad Kolesnikov (Bell Labs) Ranjit Kumaresan (Technion) Cut-and-Choose Yao-Based.
Introduction to Modern Cryptography, Lecture 12 Secure Multi-Party Computation.
Eran Omri, Bar-Ilan University Joint work with Amos Beimel and Ilan Orlov, BGU Ilan Orlov…!??!!
Lect. 18: Cryptographic Protocols. 2 1.Cryptographic Protocols 2.Special Signatures 3.Secret Sharing and Threshold Cryptography 4.Zero-knowledge Proofs.
Improving the Round Complexity of VSS in Point-to-Point Networks Jonathan Katz (University of Maryland) Chiu-Yuen Koo (Google Labs) Ranjit Kumaresan (University.
Modeling Insider Attacks on Group Key Exchange Protocols Jonathan Katz Ji Sun Shin University of Maryland.
General Cryptographic Protocols (aka secure multi-party computation) Oded Goldreich Weizmann Institute of Science.
Impossibility Results for Concurrent Two-Party Computation Yehuda Lindell IBM T.J.Watson.
How to Use Bitcoin to Incentivize Correct Computations Ranjit Kumaresan (MIT) Iddo Bentov (Technion) Appeared at CCS 2014.
Secure Multi-party Computations (MPC) A useful tool to cryptographic applications Vassilis Zikas.
Co-operative Private Equality Test(CPET) Ronghua Li and Chuan-Kun Wu (received June 21, 2005; revised and accepted July 4, 2005) International Journal.
A Framework for Fair (Multi-Party) Computation Juan Garay (Bell Labs) Phil MacKenzie (Bell Labs) Ke Yang (CMU)
Jointly Restraining Big Brother: Using cryptography to reconcile privacy with data aggregation Ran Canetti IBM Research.
CMSC 414 Computer and Network Security Lecture 19 Jonathan Katz.
Survey: Secure Composition of Multiparty Protocols Yehuda Lindell IBM T.J. Watson.
Optimistic Synchronous Multi-Party Contract Signing N. Asokan, Baum-Waidner, M. Schunter, M. Waidner Presented By Uday Nayak Advisor: Chris Lynch.
Rafael Pass Cornell University Constant-round Non-malleability From Any One-way Function Joint work with Huijia (Rachel) Lin.
Universally Composable Symbolic Analysis of Security Protocols Jonathan Herzog (Joint work with Ran Canetti) 7 June 2004 The author's affiliation with.
Rafael Pass Cornell University Constant-round Non-malleability From Any One-way Function Joint work with Huijia (Rachel) Lin.
1 Cross-Domain Secure Computation Chongwon Cho (HRL Laboratories) Sanjam Garg (IBM T.J. Watson) Rafail Ostrovsky (UCLA)
Information-Theoretic Security and Security under Composition Eyal Kushilevitz (Technion) Yehuda Lindell (Bar-Ilan University) Tal Rabin (IBM T.J. Watson)
Adaptively Secure Broadcast, Revisited
How to play ANY mental game
Andrew Lindell Aladdin Knowledge Systems and Bar-Ilan University 04/09/08 CRYP-202 Legally-Enforceable Fairness in Secure Two-Party Computation.
Bitcoin (what, why and how?)
How to Use Bitcoin to Enhance Secure Computation Ranjit Kumaresan (MIT) Based on joint works with Iddo Bentov (Technion), Tal Moran (IDC), Guy Zyskind.
Collusion-Free Multiparty Computation in the Mediated Model
Secure Computation (Lecture 7-8) Arpita Patra. Recap >> (n,t)-Secret Sharing (Sharing/Reconstruction) > Shamir Sharing > Lagrange’s Interpolation for.
Slide 1 Vitaly Shmatikov CS 380S Introduction to Secure Multi-Party Computation.
Secure Computation (Lecture 3 & 4) Arpita Patra. Recap >> Why secure computation? >> What is secure (multi-party) computation (MPC)? >> Secret Sharing.
1 Privacy Preserving Data Mining Haiqin Yang Extracted from a ppt “Secure Multiparty Computation and Privacy” Added “Privacy Preserving SVM”
Secure Computation (Lecture 5) Arpita Patra. Recap >> Scope of MPC > models of computation > network models > modelling distrust (centralized/decentralized.
Electronic Money. What is Electronic Money? Scrip or money that is exchanged only through electronically is referred to as electronic money. Electronic.
Rational Cryptography Some Recent Results Jonathan Katz University of Maryland.
Secure Computation (Lecture 2) Arpita Patra. Vishwaroop of MPC.
How to Use Bitcoin to Design Fair Protocols Ranjit Kumaresan (MIT) Joint work with Iddo Bentov (Technion), Tal Moran (IDC Herzliya)
How to Use Bitcoin to Design Fair Protocols Iddo Bentov (Technion) Ranjit Kumaresan (Technion) ePrint 2014/129.
Universally Composable computation with any number of faults Ran Canetti IBM Research Joint works with Marc Fischlin, Yehuda Lindell, Rafi Ostrovsky, Tal.
Feasibility and Completeness of Cryptographic Tasks in the Quantum World Hong-Sheng Zhou (U. Maryland) Joint work with Jonathan Katz (U. Maryland) Fang.
Andrew Lindell Aladdin Knowledge Systems and Bar-Ilan University 04/08/08 CRYP-106 Efficient Fully-Simulatable Oblivious Transfer.
Secure Computation (Lecture 9-10) Arpita Patra. Recap >> MPC with honest majority in i.t. settings > Protocol using (n,t)-sharing, proof of security---
Secure Computation with Minimal Interaction, Revisited Yuval Ishai (Technion) Ranjit Kumaresan (MIT) Eyal Kushilevitz (Technion) Anat Paskin-Cherniavsky.
Verifiable Threshold Secret Sharing and Full Fair Secure Two-party Computation YE Jian-wei March 7, 2009.
Round-Efficient Multi-Party Computation in Point-to-Point Networks Jonathan Katz Chiu-Yuen Koo University of Maryland.
Lower bounds for Unconditionally Secure MPC Ivan Damgård Jesper Buus Nielsen Antigoni Polychroniadou Aarhus University.
Topic 36: Zero-Knowledge Proofs
The Exact Round Complexity of Secure Computation
The Exact Round Complexity of Secure Computation
CSE 4095 Lecture 22 – BlockChain Slides adapted from Claudio Orlandi.
Carmit Hazay (Bar-Ilan University, Israel)
Foundations of Secure Computation
TCC 2016-B Composable Security in the Tamper-Proof Hardware Model under Minimal Complexity Carmit Hazay Bar-Ilan University, Israel Antigoni Ourania.
Course Business I am traveling April 25-May 3rd
Applications of Blockchains - II
On the Power of Hybrid Networks in Multi-Party Computation
Cryptography for Quantum Computers
cryptographic protocols 2014, lecture 12 Getting full zero knowledge
Fast Secure Computation for Small Population over the Internet
Two-Round Adaptively Secure Protocols from Standard Assumptions
Presentation transcript:

How to Use Bitcoin to Design Fair Protocols Iddo Bentov (Technion) Ranjit Kumaresan (Technion) ePrint 2014/129

x f (x,y) y Secure Computation Most general problem in cryptography Feasibility results [Yao86,GMW87,…] Moving fast from theory to practice

Secure Computation Privacy Correctness Input independence Fairness Ideally… x y f (x,y) Best Possible Security x f (x,y) y ≈ Protocol for secure computation emulates a trusted party

Fairness in Secure Computation 2-party fair coin tossing impossible [Cle86] Fair secure computation possible only in restricted settings – For restricted class of functions [GHKL08,Ash14] – If majority of parties are honest [BGW88,RB89] f (x,y)

Fair Exchange [Rab81,BGMR85,ASW97,ASW98,BN00,….] Contract signing: Two parties want to sign a contract Neither wants to commit first – The other signer could be malicious… E.g., contract signing, digital media Special case of secure computation – Authenticity & fairness

Fair Exchange [Rab81,BGMR85,ASW97,ASW98,BN00,….] Fair exchange is impossible [Cle86,PG99,BN00]

Workarounds I Gradual release mechanisms [BG89,GL91,BN00,GJ02,GP03,Pin03,GMPY06,…] Partial fairness [MNS09,GK10,BOO10,BLOO11 ] Control adversary’s advantage in learning the output first Requires lots of rounds

Workarounds II Optimistic model [Rab81,BGMR85,ASW97,GJM99,Mic03,DR04,KL10…] – Trusted arbiter restores fairness – Contacted only when required Requires trusting a third party Potentially need to pay “subscription fee” to arbiter Requires trusting a third party Potentially need to pay “subscription fee” to arbiter f (x,y) Bad guys get away with cheating

Workarounds III Penalty model [ASW00,MS01,CLM07,Lin08,KL10] – Deviating party pays monetary penalty to honest party Bad guys get away with cheating lose money! “Secure computation with penalties”

Penalty Model “Legally enforceable fairness” [Lin08] – Requires central trusted bank “Usable optimistic exchange” [ASW00,MS01,CLM07,KL10] – Requires trusted arbiter (+ e-cash)

Bitcoin [Nak08] Decentralized digital currency – Essentially implements a bank – Provides some level of anonymity (Relatively) widely adopted Lots of recent research activity “Securely” implements a bank Defn.1: A cryptosystem is secure if my bank uses it and I’m not losing money

Bitcoin [Nak08] Wide variety of transactions – Expressive via Bitcoin “scripts” Wide range of applications – E.g.: Lottery, gambling, auctions,… – Currently done using a “trusted” party Can we use secure computation to replace the trusted party? “Fairness” issues Can we use secure computation to replace the trusted party? “Fairness” issues

Secure computation with penalties Secure lottery with penalties Can Bitcoin replace a trusted bank/arbiter? Can secure computation replace a trusted third party? x f (x,y) y

This Work Formal framework capturing financial transactions Formal specification of ideal functionalities – “Claim-or-refund” transaction functionality F CR – Secure computation with penalties – Secure lottery with penalties Efficient multiparty protocols in F CR hybrid model – Linear number of calls to F CR – Linear rounds

Related Work Bitcoin lottery in the penalty model – 2-party [BB13] – Multiparty [ADMM13a] Secure computation in the penalty model using Bitcoin – 2-party [ADMM13b] (Concurrent work) Somewhat ad-hoc construction/analysis Security not proven using the simulation paradigm No multiparty secure computation in the penalty model Multiparty lottery [ADMM13a] requires quadratic number of Bitcoin transactions Somewhat ad-hoc construction/analysis Security not proven using the simulation paradigm No multiparty secure computation in the penalty model Multiparty lottery [ADMM13a] requires quadratic number of Bitcoin transactions

This Work Formal framework capturing financial transactions Formal specification of ideal functionalities – “Claim-or-refund” transaction functionality F CR – Secure computation with penalties – Secure lottery with penalties Efficient multiparty protocols in F CR hybrid model – Linear number of calls to F CR – Linear rounds

Simulation Paradigm ≈ x f (x,y) y x y REALIDEAL   REALIDEAL ≈ R.V.s describing joint dist. of VIEW of adversary and output of honest parties [GL90,Bea91,MR91,Can95,Can01,Gol04] Security as emulation of a REAL execution in the IDEAL model

≈ HYBRIDHYBRID Modular Design & Sequential Composition [Can00,Can01] ≈ ≈ REAL IDEAL

REALIDEAL ≈ Universal Composition Interactive distinguisher Concurrent executions Interactive distinguisher Concurrent executions No notion of ‘coins’ [PSW00,PW00,PW01,Can01] Environment

Defining Coins Atomic entities Indistinguishable from one another (Unique) owner possesses given coin Ownership changes upon transfer Notation: coins(x) – coins(x) + coins(y) = coins(x + y) – coins(x) - coins(y) = coins(x - y) A Minimal Notion

Security with Coins Wallets & Safes – Used by parties to store coins – Safes store coins in current use Environment has power to create new coins – Can add/subtract coins from both honest & corrupt parties’ wallets during protocol – Does not have access to honest parties’ safes Adversary does not have power to create new coins – But has full access to corrupt parties’ wallets & safes VIEWs of environment/adversary include distribution of coins

≈ REALIDEAL Standard Security Definitions

REALIDEAL ≈ Security with Coins

HYBRIDHYBRID ≈ IDEAL Transaction functionality “Straightline” simulation in hybrid model – No rewinding wrt coins or crypto primitives Unfair ideal Fair ideal

This Work Formal framework capturing financial transactions Formal specification of ideal functionalities – “Claim-or-refund” transaction functionality F CR – Secure computation with penalties – Secure lottery with penalties Efficient multiparty protocols in F CR hybrid model – Linear number of calls to F CR – Linear rounds

Claim-or-Refund Functionality Accepts from “sender” – Deposit: coins(x) – Time bound:  – Circuit:  Designated “receiver” can claim this deposit – Produce witness T that satisfies  – Within time  If claimed, then witness revealed to ALL parties Else coins(x) returned to sender T ,  F CR Efficient realization via Bitcoin Bitcoin scripts & timelocks Efficient realization via Bitcoin Bitcoin scripts & timelocks Allows realization in & across different models Implicit in [BB13,Max13]

Secure Computation with Penalties Honest parties submit – Inputs – Deposit: coins(d) Ideal adversary submits – Inputs of corrupt parties – Penalty deposit: coins(x) Functionality F f* does: – Return coins(d) to each honest party – Deliver output to S iff x = hq where h = #honest parties If S returns abort, send coins(q) to each honest party If S returns continue, send output to each honest party and return coins(x) to S – If x != hq, then send output to all parties F f* q = penalty amount

Secure Lottery with Penalties Honest parties submit – Deposit: coins(d) Ideal adversary submits – Deposit: coins(x+ tq/n) Functionality F lot* does: – Pick lottery winner r* at random from {1,…,n} – Return coins(d-q/n) to each honest party – Send r* to S iff x = hq where h = #honest parties If S returns abort, then – Send coins(q+q/n) to each honest party – Return coins(tq/n) to S – If S returns continue or if x != hq, then send r* to each honest party and return coins(x) to S Send coins(q) to P r* F lot* n = number of parties q = penalty amount & lottery pot

This Work Formal framework capturing financial transactions Formal specification of ideal functionalities – “Claim-or-refund” transaction functionality F CR – Secure computation with penalties – Secure lottery with penalties Efficient multiparty protocols in F CR hybrid model – Linear number of calls to F CR – Linear rounds

Strategy Hybrid model with functionality f ’ – Computes output of f, say z – Secret share z into n additive shares sh 1,…,sh n – Computes commitments on shares c i = com(sh i ; w i ) for every i – Delivers output: ({c 1,…,c n }, T i = (sh i, w i )) to party P i F f ’ For straightline simulation use “honest-binding equivocal commitments” [GKKZ11] Realizable using OWF [Nao91], DDH [Ped91] For straightline simulation use “honest-binding equivocal commitments” [GKKZ11] Realizable using OWF [Nao91], DDH [Ped91] Reduce fair secure computation to fair reconstruction Use strategy for both MPC & lottery

Two Party Fair Reconstruction “Abort” Attack P 2 aborts without making its deposit but claims P 1 ’s deposit Honest P 1 loses money (although it learns output) “Abort” Attack P 2 aborts without making its deposit but claims P 1 ’s deposit Honest P 1 loses money (although it learns output) denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated

Two Party Fair Reconstruction Deposits made top to bottom Claims made in reverse direction If P 1 claims the 2 nd deposit, then P 2 can always claim the 1 st Deposits made top to bottom Claims made in reverse direction If P 1 claims the 2 nd deposit, then P 2 can always claim the 1 st denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated

Three Party Fair Reconstruction Malicious Coalitions Coalition of P 1 and P 2 obtain T 3 from P 3 Then P 2 does not claim 1 st transaction P 1, P 2 learn output but P 3 is not compensated Malicious Coalitions Coalition of P 1 and P 2 obtain T 3 from P 3 Then P 2 does not claim 1 st transaction P 1, P 2 learn output but P 3 is not compensated denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated

Three Party Fair Reconstruction P 2 claims twice the penalty amount Sufficient to deal with malicious coalition of P 1, P 3 P 2 claims twice the penalty amount Sufficient to deal with malicious coalition of P 1, P 3 denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 denotes P 2 must reveal witness T = (sh,w) within time  to claim coins(q) from P 1 Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated Secure computation with penalties Honest parties never have to lose coins If a party aborts after learning the output then every honest party is compensated

Multiparty “Ladder” Protocol Ladder Roof Order of deposits/claims Roof deposits made simultaneously Ladder deposits made one after the other Ladder claims in reverse Roof claims at the end High-level Intuition At the end of ladder claims, all parties except P n have “evened out” If P n does not make roof claims then honest parties get coins(q) via roof refunds Else P n “evens out”

“Ladder” Protocol for Lottery Ladder Roof Ridge Order of deposits/claims Ridge & Roof deposits made simultaneously Ladder deposits made one after the other Ladder claims in reverse Ridge & Roof claims at the end

“Ladder” Protocol for Lottery Ladder Roof Ridge High-level Idea After ladder claims: P n has paid all other parties coins(q) to learn lottery outcome After roof claims: P n pays coins(q) to lottery winner After ridge claims: P n receives coins(q/n) from each party

Future Directions Fully rigorous framework for capturing financial transactions – Is our minimal model the right model? – Prove a composition theorem? Better understanding of functionalities offered by Bitcoin – Abstraction of other interesting Bitcoin transactions More applications – Anonymous lotteries – Penalizing any protocol deviation (suggested by Yuval Ishai)

Killer App for MPC?

Thank You!

The research leading to these results has received funding from the European Union's Seventh Framework Programme (FP7/ ) under grant agreement no – ERC – Cryptography and Complexity

Ladder Protocols