Foundations and Trends® in Programming Languages > Vol 1 > Issue 3

Formal Models and Techniques for Analyzing Security Protocols: A Tutorial

By Véronique Cortier, LORIA, CNRS, France, cortier@loria.fr | Steve Kremer, INRIA, Nancy, France, Steve.Kremer@inria.fr

 
Suggested Citation
Véronique Cortier and Steve Kremer (2014), "Formal Models and Techniques for Analyzing Security Protocols: A Tutorial", Foundations and Trends® in Programming Languages: Vol. 1: No. 3, pp 151-267. http://dx.doi.org/10.1561/2500000001

Publication Date: 13 Nov 2014
© 2014 V. Cortier and S. Kremer
 
Subjects
Design and analysis of algorithms,  Security,  Security and privacy
 
Keywords
Security protocolsDecision procedureFormal analysis
 

Free Preview:

Download extract

Share

Download article
In this article:
1. Introduction 
2. Running example 
3. Messages and deduction 
4. Equational theory and static equivalence 
5. A cryptographic process calculus 
6. Security properties 
7. Automated verification: bounded case 
8. Automated verification: unbounded case 
9. Further readings and conclusion 
References 

Abstract

Security protocols are distributed programs that aim at securing communications by the means of cryptography. They are for instance used to secure electronic payments, home banking and more recently electronic elections. Given the financial and societal impact in case of failure, and the long history of design flaws in such protocol, formal verification is a necessity. A major difference from other safety critical systems is that the properties of security protocols must hold in the presence of an arbitrary adversary. The aim of this paper is to provide a tutorial to some modern approaches for formally modeling protocols, their goals and automatically verifying them.

DOI:10.1561/2500000001
ISBN: 978-1-60198-902-4
134 pp. $90.00
Buy book (pb)
 
ISBN: 978-1-60198-903-1
134 pp. $120.00
Buy E-book (.pdf)
Table of contents:
1. Introduction
2. Running example
3. Messages and deduction
4. Equational theory and static equivalence
5. A cryptographic process calculus
6. Security properties
7. Automated verification: bounded case
8. Automated verification: unbounded case
9. Further readings and conclusion
References

Formal Models and Techniques for Analyzing Security Protocols

Security protocols are distributed programs that are aimed at securing communications by the means of cryptography. They are for instance used to secure electronic payments, home banking, and more recently electronic elections. Given the financial and societal impact in case of failure and the long history of design flaws in such protocols, formal verification is a necessity. A major difference from other safety critical systems is that the properties of security protocols must hold in the presence of an arbitrary adversary.

Formal Models and Techniques for Analyzing Security Protocols: A Tutorial provides the reader with a tutorial on some modern techniques to model and automatically analyze security protocols. Given the large body of work in this area, it does not aim to be exhaustive so the focus is on some selected methods and results. The tutorial can be used as a basis for a master or graduate course on the topic, or as a primer for researchers from different areas to get an overview of the kinds of techniques that are available.

 
PGL-001