Analysis of a Fair Exchange Protocol Vitaly Shmatikov John Mitchell Stanford University.

Slides:



Advertisements
Similar presentations
Secure Computation Slides stolen from Joe Kilian & Vitali Shmatikov Boaz Barak.
Advertisements

Contract-Signing Protocols John Mitchell Stanford TECS Week2005.
Multi-Party Contract Signing Sam Hasinoff April 9, 2001.
Key distribution and certification In the case of public key encryption model the authenticity of the public key of each partner in the communication must.
Secure Multiparty Computations on Bitcoin
For e-Business F. Dignum Utrecht University Trust Reputation and.
Lecture 3Dr. Verma1 COSC 6397 – Information Assurance Module M2 – Protocol Specification and Verification University of Houston Rakesh Verma Lecture 3.
CIS 725 Key Exchange Protocols. Alice ( PB Bob (M, PR Alice (hash(M))) PB Alice Confidentiality, Integrity and Authenication PR Bob M, hash(M) M, PR Alice.
CS259: Security Analysis of Network Protocols Overview of Murphi Arnab Roy.
Analysis of optimistic multi-party contract signing Rohit Chadha 1,2, Steve Kremer 3,4, Andre Scedrov 1 1 University of Pennsylvania 2 University of Sussex.
CSE331: Introduction to Networks and Security Lecture 22 Fall 2002.
Computer Science Dr. Peng NingCSC 774 Adv. Net. Security1 CSC 774 Advanced Network Security Topic 3.3: Fair Exchange.
Luu Anh Tuan. Security protocol Intruder Intruder behaviors Overhead and intercept any messages being passed in the system Decrypt messages that are.
Lect. 18: Cryptographic Protocols. 2 1.Cryptographic Protocols 2.Special Signatures 3.Secret Sharing and Threshold Cryptography 4.Zero-knowledge Proofs.
A. Haeberlen Having your Cake and Eating it too: Routing Security with Privacy Protections 1 HotNets-X (November 15, 2011) Alexander Gurney * Andreas Haeberlen.
Probabilistic Contract Signing CS 259 Vitaly Shmatikov.
15-1 Last time Internet Application Security and Privacy Public-key encryption Integrity.
1 Formal Specification and Verification of a Micropayment Protocol Alex X. Liu The University of Texas at Austin, U.S.A. October 13, 2004 Co-author: Mohamed.
1 Digital Signatures CSSE 490 Computer Security Mark Ardis, Rose-Hulman Institute April 12, 2004.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering.
ITIS 6200/8200. time-stamping services Difficult to verify the creation date and accurate contents of a digital file Required properties of time-stamping.
Modelling and Analysing of Security Protocol: Lecture 1 Introductions to Modelling Protocols Tom Chothia CWI.
EEC 688/788 Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Security Risks for Ad Hoc Networks and how they can be alleviated By: Jones Olaiya Ogunduyilemi Supervisor: Jens Christian Godskesen © Dec
Optimistic Synchronous Multi-Party Contract Signing N. Asokan, Baum-Waidner, M. Schunter, M. Waidner Presented By Uday Nayak Advisor: Chris Lynch.
Advantage and abuse-freeness in contract-signing protocols Rohit Chadha, John Mitchell, Andre Scedrov, Vitaly Shmatikov To appear in CONCUR 2003.
C ontract signing Rohit Chadha, John Mitchell, Andre Scedrov, Vitaly Shmatikov.
Chapter 9 Cryptographic Protocol Cryptography-Principles and Practice Harbin Institute of Technology School of Computer Science and Technology Zhijun Li.
Analysis of optimistic multi-party contract signing Rohit Chadha 1,2, Steve Kremer 3, Andre Scedrov 1 1 University of Pennsylvania 2 University of Sussex.
Alexander Potapov.  Authentication definition  Protocol architectures  Cryptographic properties  Freshness  Types of attack on protocols  Two-way.
1 Lecture 18: Security issues specific to security key management services –privacy –integrity/authentication –nonrepudiation/plausible deniability.
Csci5233 Computer Security1 Bishop: Chapter 10 Key Management: Digital Signature.
Oblivious Signature-Based Envelope Ninghui Li, Stanford University Wenliang (Kevin) Du, Syracuse University Dan Boneh, Stanford University.
CS162 Section Lecture 10 Slides based from Lecture and
Contract-Signing Protocols J. Mitchell CS 259. Revised schedule uTuesday 1/24 Contract-signing protocols uThursday 1/26 Secure hardware architecture (XOM)
Chapter 4: Intermediate Protocols
CS 395T Contract Signing Protocols. Real-World Fair Exchange uBoth parties want to sign the deal uNeither wants to commit first Immunity deal.
Information Security Conference (ISC 2015) On the Efficiency of Multi-Party Contract Signing Protocols Gerard Draper-Gil, Josep-Lluis Ferrer Gomila, M.
Rational Exchange Levente Buttyán and Jean-Pierre Hubaux Swiss Federal Institute of Technology – Lausanne Laboratory for Computer Communications and Applications.
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
Based on Schneier Chapter 5: Advanced Protocols Dulal C. Kar.
Game-Based Verification of Fair Exchange Protocols CS 259 Vitaly Shmatikov.
Security protocols  Authentication protocols (this lecture)  Electronic voting protocols  Fair exchange protocols  Digital cash protocols.
Security protocols and their verification Mark Ryan University of Birmingham Midlands Graduate School University of Birmingham April 2005 Steve Kremer.
Four Attacks on an Anonymous Fair Exchange E-commerce Protocol Adam Barth Andrew Tappert CS259.
Chapter 1 Copyright ©2012 by Cengage Learning Inc. All rights reserved 1 CHAPTER 1 An Overview of Marketing © WINDSOR & WIEHAHN/STONE/GETTY IMAGES.
Presented by: Suparita Parakarn Kinzang Wangdi Research Report Presentation Computer Network Security.
Password Mistyping in Two-Factor Authenticated Key Exchange Vladimir KolesnikovCharles Rackoff Bell LabsU. Toronto ICALP 2008.
Transactions and Concurrency Control Distribuerade Informationssystem, 1DT060, HT 2013 Adapted from, Copyright, Frederik Hermans.
CSCE 813 Internet Security Cryptographic Protocol Analysis.
Linkability of Some Blind Signature Schemes Swee-Huay Heng 1, Wun-She Yap 1 Khoongming Khoo 2 1 Multimedia University, 2 DSO National Laboratories.
Digital Signatures, Message Digest and Authentication Week-9.
CS 395T Game-Based Verification of Contract Signing Protocols.
Network Protocols Network Systems Security Mort Anvari.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Alternating Temporal Logic and Game-Based Properties CS 259 John Mitchell with slides from Vitaly Shmatikov.
Lecture 5.1: Message Authentication Codes, and Key Distribution
Bell Ringer What should a contract be based on? What things should be included in a contract? What things could make a contract no longer applicable?
Quantum Cryptography Antonio Acín
1 Authorization Sec PAL: A Decentralized Authorization Language.
Probabilistic Contract Signing CS 395T. Probabilistic Fair Exchange uTwo parties exchange items of value Signed commitments (contract signing) Signed.
 5.1 Zero-Knowledge Proofs  5.2 Zero-Knowledge Proofs of Identity  5.3 Identity-Based Public-Key Cryptography  5.4 Oblivious Transfer  5.5 Oblivious.
A Secure Online Card Payment Protocol VIJAY CHOUDHARY M.Tech(IS), DTU.
Network Security and It’s Issues
Security Protocols Analysis
The first Few Slides stolen from Boaz Barak
Bishop: Chapter 10 Key Management: Digital Signature
Transaction management
ITIS 6200/8200 Chap 5 Dr. Weichao Wang.
Probabilistic Contract Signing
Presentation transcript:

Analysis of a Fair Exchange Protocol Vitaly Shmatikov John Mitchell Stanford University

Agreement in Hostile Environment l Cannot trust the communication channel l Cannot trust the other party in the protocol l Trusted third party may exist n Last resort: use only if something goes wrong

Contract Signing l Both parties want to sign the contract l Neither wants to commit first Immunity deal

Fairness If A cannot obtain a contract, then B should not be able to obtain a contract, either (and vice versa) Example (Alice buys a house from Bob) If Alice cannot obtain a deed for the property, Bob should not be able to collect Alice’s money

Accountability If trusted party T misbehaves, then honest party should be able to prove T’s misbehavior Example (Alice buys a house from Bob) If escrow service gives Bob Alice’s money without giving Alice the deed, Alice should be able to prove to a judge that escrow service is cheating

Formal Protocol Analysis Intruder Model Analysis Tool Formal Protocol Informal Protocol Description Gee whiz. Looks OK to me.

Mur  [Dill et al.] l Describe finite-state system n State variables with initial values n Transition rules n Communication by shared variables n Scalable: choose system size parameters l Specify correctness condition l Automatic exhaustive state enumeration n Hash table to avoid repeating states Success with research, industrial protocol verification

Optimistic Contract Signing A B m 1 = sig A (PK A, PK B, T, text, hash(R A )) m 2 = sig B (m 1, hash(R B )) m 3 = R A m 4 = R B [Asokan, Shoup, Waidner] m 1, R A, m 2, R B

l Contract from normal execution l Contract issued by third party l Abort token issued by third party Several Forms of Contract m 1, R A, m 2, R B sig T (m 1, m 2 ) sig T (abort, a 1 )

Role of Trusted Third Party l T can issue an abort token Promise not to resolve the protocol in the future l T can issue a replacement contract Proof that both parties are committed l T decides whether to abort or resolve on the first-come-first-serve basis l T only gets involved if requested by A or B

Abort Subprotocol A ??? B Network T a 1 =sig A (abort,m 1 ) a2a2 resolved? Yes: a 2 = sig T (m 1, m 2 ) No: aborted := true a 2 = sig T (abort, a 1 ) m 1 = sig A (… hash(R A )) sig T (m 1, m 2 ) sig T (abort, a 1 ) OR

Resolve Subprotocol B A Net T r 1 = m 1, m 2 aborted? Yes: r 2 = sig T (abort, a 1 ) No: resolved := true r 2 = sig T (m 1, m 2 ) r2r2 m 1 = sig A (… hash(R A )) m 3 = R A m 2 = sig B (… hash(R B )) sig T (m 1, m 2 ) sig T (abort, a 1 ) OR ???

Race Condition B A m 1 = sig A (PK A, PK B, T, text, hash(R B )) m 2 = sig B (m 1, hash(R B )) T a 1 = sig A (abort, m 1 ) r 1 = m 1, m 2

Attack A r 2 = sig T (m 1, m 2 ) m 1 = sig A (... hash(R A )) m 2 = sig B (m 1, hash(R B )) m 3 = R A T r 1 = m 1, m 2 secret Q B, m 2 sig T (m 1, m 2 ) m 1, R A, m 2, Q B contracts are inconsistent!

Later... sig A (PK A, PK A, T, text, hash(R A )) B Replay Attack Intruder causes B to commit to old contract with A sig B (m 1, hash(Q B )) RARA QBQB A B RARA sig A (… hash(R A )) RBRB sig B (... hash(R B ))

sig A (, hash(R B )) Repairing the Protocol A B m 1 = sig A (PK A, PK B, T, text, hash(R A )) m 2 = sig B (m 1, hash(R B )) m 3 = R A m 4 = R B m 1, R A, m 2, R B

Another Property: Abuse-Freeness No party should be able to prove that it can solely determine the outcome of the protocol Example (Alice buys a house from Bob) Bob should not be able to show Alice’s offer to Cynthia so that he can convince Cynthia to pay more

Conclusions l Fair exchange protocols are subtle n Correctness conditions are hard to formalize n Unusual constraints on communication channels l Several interdependent subprotocols n Many cases and interleavings l Finite-state tools are useful for case analysis