Automatic generation of sources lemmas in Tamarin: towards automatic proofs of security protocols

Automatic generation of sources lemmas in Tamarin: towards automatic proofs of security protocols. Véronique Cortier, Stéphanie Delaune, Jannik Dreier, and Élise Klein. Journal of Computer Security, 2022.

Download

[PDF] [HTML] 

Abstract

Tamarin is a popular tool dedicated to the formal analysis of security protocols. One major strength of the tool is that it offers an interactive mode, allowing to go beyond what pushbutton tools can typically handle. Tamarin is for example able to verify complex protocols such as TLS, 5G, or RFID protocols. However, one of its drawback is its lack of automation. For many simple protocols, the user often needs to help Tamarin by writing specific lemmas, called "sources lemmas", which requires some knowledge of the internal behaviour of the tool.
In this paper, we propose a technique to automatically generate sources lemmas in Tamarin. We prove formally that our lemmas indeed hold, for arbitrary protocols that make use of cryptographic primitives that can be modelled with a subterm convergent equational theory (modulo associativity and commutativity). We have implemented our approach within Tamarin. Our experiments show that, in most examples of the literature, we are now able to generate suitable sources lemmas automatically , in replacement of the handwritten lemmas. As a direct application , many simple protocols can now be analysed fully automatically, while they previously required user interaction.

BibTeX

@Article{Tamarin-JCS2022,
  author = 	 {V\'eronique Cortier and St\'ephanie Delaune and Jannik Dreier and \'Elise Klein},
  title = 	 {Automatic generation of sources lemmas in {T}amarin: towards automatic proofs of security protocols},
  journal = 	 {Journal of Computer Security},
  year = 	 {2022},
  abstract = {Tamarin is a popular tool dedicated to the formal analysis of security protocols. One major strength of the tool is that it offers an interactive mode, allowing to go beyond what pushbutton tools can typically handle. Tamarin is for example able to verify complex protocols such as TLS, 5G, or RFID protocols. However, one of its drawback is its lack of automation. For many simple protocols, the user often needs to help Tamarin by writing specific lemmas, called "sources lemmas", which requires some knowledge of the internal behaviour of the tool.
\par
In this paper, we propose a technique to automatically generate sources lemmas in Tamarin. We prove formally that our lemmas indeed hold, for arbitrary protocols that make use of cryptographic primitives that can be modelled with a subterm convergent equational theory (modulo associativity and commutativity). We have implemented our approach within Tamarin. Our experiments show that, in most examples of the literature, we are now able to generate suitable sources lemmas automatically , in replacement of the handwritten lemmas. As a direct application , many simple protocols can now be analysed fully automatically, while they previously required user interaction.},
  doi ={10.3233/JCS-210053},
}