Strand spaces: proving security protocols correct

  • Authors:
  • F. Javier Thayer Fábrega

  • Affiliations:
  • -

  • Venue:
  • Journal of Computer Security
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

A strand is a sequence of events; it represents either anexecution by a legitimate party in a security protocol or else asequence of actions by a penetrator. A strand space is a collectionof strands, equipped with a graph structure generated by causalinteraction. In this framework, protocol correctness claims may beexpressed in terms of the connections between strands of differentkinds.Preparing for a first example, the Needham-Schroeder-Loweprotocol, we prove a lemma that gives a bound on the abilities ofthe penetrator in any protocol. Our analysis of the example gives adetailed view of the conditions under which it achievesauthentication and protects the secrecy of the values exchanged. Wealso use our proof methods to explain why the originalNeedham-Schroeder protocol fails.Before turning to a second example, we introduce ideals as amethod to prove additional bounds on the abilities of thepenetrator. We can then prove a number of correctness properties ofthe Otway-Rees protocol, and we clarify its limitations.We believe that our approach is distinguished from other work bythe simplicity of the model, the precision of the results itproduces, and the ease of developing intelligible and reliableproofs even without automated support.