State and Progress in Strand Spaces: Proving Fair Exchange

  • Authors:
  • Joshua D. Guttman

  • Affiliations:
  • Worcester Polytechnic Institute, Worcester, USA and The MITRE Corporation, Bedford, USA

  • Venue:
  • Journal of Automated Reasoning
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Many cryptographic protocols are intended to coordinate state changes among principals. Exchange protocols, for instance, coordinate delivery of new values to the participants, i.e. additions to the set of values they possess. An exchange protocol is fair if it ensures that delivery of new values is balanced: If one participant obtains a new possession via the protocol, then all other participants will, too. Understanding this balanced coordination of different principals in a distributed system requires relating (long-term) state to (short-term) protocol activities. Fair exchange also requires progress assumptions. In this paper we adapt the strand space framework to protocols, such as fair exchange, that coordinate state changes. We regard the state as a multiset of facts, and we allow protocol actions to cause local changes in this state via multiset rewriting. Second, progress assumptions stipulate that some channels are resilient--and guaranteed to deliver messages--and some principals will not stop at critical steps. Our proofs of correctness cleanly separate protocol properties, such as authentication and confidentiality, from properties about progress and state evolution. G. Wang's recent fair exchange protocol illustrates the approach.