Skip to main content

SPEC: An Equivalence Checker for Security Protocols

  • Conference paper
  • First Online:
Programming Languages and Systems (APLAS 2016)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10017))

Included in the following conference series:

Abstract

SPEC is an automated equivalence checker for security protocols specified in the spi-calculus, an extension of the pi-calculus with cryptographic primitives. The notion of equivalence considered is a variant of bisimulation, called open bisimulation, that identifies processes indistinguishable when executed in any context. SPEC produces compact and independently checkable bisimulations that are useful for automating the process of producing proof-certificates for security protocols. This paper gives an overview of SPEC and discusses techniques to reduce the size of bisimulations, utilising up-to techniques developed for the spi-calculus. SPEC is implemented in the Bedwyr logic programming language that we demonstrate can be adapted to tackle further protocol analysis problems not limited to bisimulation checking.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    http://www.ntu.edu.sg/home/atiu/spec-prover/.

  2. 2.

    http://www.lsv.ens-cachan.fr/Software/spore/.

References

  1. Abadi, M., Gordon, A.D.: A calculus for cryptographic protocols: the spi calculus. Inf. Comput. 148(1), 1–70 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  2. Baelde, D., Gacek, A., Miller, D., Nadathur, G., Tiu, A.F.: The Bedwyr system for model checking over syntactic expressions. In: Pfenning, F. (ed.) CADE 2007. LNCS (LNAI), vol. 4603, pp. 391–397. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  3. Blanchet, B., Abadi, M., Fournet, C.: Automated verification of selected equivalences for security protocols. J. Log. Algebr. Program. 75(1), 3–51 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  4. Borgström, J.: Equivalences and calculi for formal verification of cryptographic protocols. Ph.D. thesis, École Polytechnique Fédérale de Lausanne (2008)

    Google Scholar 

  5. Borgström, J., Briais, S., Nestmann, U.: Symbolic bisimulation in the spi calculus. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 161–176. Springer, Heidelberg (2004). doi:10.1007/978-3-540-28644-8_11

    Chapter  Google Scholar 

  6. Chadha, R., Ciobâcă, V., Kremer, S.: Automated verification of equivalence properties of cryptographic protocols. In: Programming Languages and Systems, pp. 108–127 (2012)

    Google Scholar 

  7. Chaum, D.: Blind signature system. In: Advances in Cryptology, Proceedings of CRYPTO 1983, Santa Barbara, California, USA, 21–24 August 1983, p. 153. Plenum Press, New York (1984)

    Google Scholar 

  8. Cheval, V.: Automatic verification of cryptographic protocols: privacy-type properties. Ph.D. thesis, ENS Cachan, December 2012

    Google Scholar 

  9. Cheval, V.: APTE: an algorithm for proving trace equivalence. In: Ábrahám, E., Havelund, K. (eds.) TACAS 2014 (ETAPS). LNCS, vol. 8413, pp. 587–592. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  10. Comon-Lundh, H., Cortier, V., Zalinescu, E.: Deciding security properties for cryptographic protocols. Application to key cycles. ACM Trans. Comput. Log. 11(2), 9:1–9:42 (2010). doi:10.1145/1656242.1656244

    Article  MathSciNet  MATH  Google Scholar 

  11. Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, Part II. In: Information and Computation, pp. 41–77 (1992)

    Google Scholar 

  12. Montanari, U., Sassone, V.: Dynamic congruence vs. progressing bisimulation for CCS. Fundamenta Informaticae 16(2), 171–199 (1992)

    MathSciNet  MATH  Google Scholar 

  13. Sangiorgi, D.: A theory of bisimulation for the pi-calculus. Acta Inf. 33(1), 69–97 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  14. Sangiorgi, D.: On the bisimulation proof method. Math. Struct. Comput. Sci. 8, 447–479 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  15. Sangiorgi, D., Walker, D.: \(\pi \)-Calculus: A Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)

    MATH  Google Scholar 

  16. Tiu, A.: A logical framework for reasoning about logical specifications. Ph.D. thesis, Pennsylvania State University, May 2004

    Google Scholar 

  17. Tiu, A.F.: A trace based bisimulation for the spi calculus: an extended abstract. In: Shao, Z. (ed.) APLAS 2007. LNCS, vol. 4807, pp. 367–382. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  18. Tiu, A.: A trace based bisimulation for the spi calculus. CoRR, abs/0901.2166 (2009)

    Google Scholar 

  19. Tiu, A., Dawson, J.E.: Automating open bisimulation checking for the spi calculus. In: Proceedings of the 23rd IEEE Computer Security Foundations Symposium (CSF 2010), pp. 307–321. IEEE Computer Society (2010)

    Google Scholar 

Download references

Acknowledgements

The authors receive support from MOE Tier 2 grant MOE2014-T2-2-076. The first author receives support from NTU Start Up grant M4081190.020.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ross Horne .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Tiu, A., Nguyen, N., Horne, R. (2016). SPEC: An Equivalence Checker for Security Protocols. In: Igarashi, A. (eds) Programming Languages and Systems. APLAS 2016. Lecture Notes in Computer Science(), vol 10017. Springer, Cham. https://doi.org/10.1007/978-3-319-47958-3_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-47958-3_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-47957-6

  • Online ISBN: 978-3-319-47958-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics