Cryptographic Protocol Explication and End-Point Projection

  • Jay McCarthy
  • Shriram Krishnamurthi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5283)


Cryptographic protocols are useful for engineering trust in transactions. There are several languages for describing these protocols, but these tend to capture the communications from the perspective of an individual role. In contrast, traditional protocol descriptions as found in a state of nature tend to employ a whole-protocol description, resulting in an impedance mismatch.

In this paper we present two results to address this gap between human descriptions and deployable specifications. The first is an end-point projection technique that consumes an explicit whole-protocol description and generates specifications that capture the behavior of each participant role. In practice, however, many whole-protocol descriptions contain idiomatic forms of implicit specification. We therefore present our second result, a transformation that identifies and eliminates these implicit patterns, thereby preparing protocols for end-point projection.

Concretely, our tools consume protocols written in our whole-protocol language, wppl, and generate role descriptions in the cryptographic protocol programming language, cppl. We have formalized and established properties of the transformations using the Coq proof assistant. We have validated our transformations by applying them successfully to most of the protocols in the spore repository.


Information Asymmetry Security Protocol Cryptographic Protocol Denotational Semantic Cryptographic Primitive 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abadi, M.: Security protocols and their properties. In: Foundations of Secure Computation (2000)Google Scholar
  2. 2.
    Abadi, M., Gordon, A.D.: A calculus for cryptographic protocols: The spi calculus. Information and Computation 148(1), 1–70 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Armando, A., Basin, D.A., Bouallagui, M., Chevalier, Y., Compagna, L., Mödersheim, S., Rusinowitch, M., Turuani, M., Viganò, L., Vigneron, L.: The AVISS security protocol analysis tool. In: Computer Aided Verification (2002)Google Scholar
  4. 4.
    Bodei, C., Buchholtz, M., Degano, P., Nielson, F., Nielson, H.R.: Automatic validation of protocol narration. In: Computer Security Foundations Workshop (2003)Google Scholar
  5. 5.
    Bodei, C., Buchholtz, M., Degano, P., Nielson, F., Nielson, H.R.: Static validation of security protocols. Journal of Computer Security 13(3), 347–390 (2005)CrossRefzbMATHGoogle Scholar
  6. 6.
    Briais, S., Nestmann, U.: A formal semantics for protocol narrations. Theoretical Computer Science 389(3), 484–511 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Burrows, M., Abadi, M., Needham, R.: A logic of authentication. Proceedings of the Royal Society Series A 426(1871), 233–271 (1871)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Caleiro, C., Viganò, L., Basin, D.: On the semantics of Alice&Bob specifications of security protocols. Theoretical Computer Science 367(1-2), 88–122 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Carbone, M., Honda, K., Yoshida, N.: Structured communication-centred programming for web services. In: European Symposium on Programming (2007)Google Scholar
  10. 10.
    Corin, R., Denielou, P.-M., Fournet, C., Bhargavan, K., Leifer, J.: Secure implementations for typed session abstractions. In: Computer Security Foundations Symposium (2007)Google Scholar
  11. 11.
    Diffie, W., Hellman, M.: New directions in cryptography. IEEE Transactions on Information Theory 22(6), 644–654 (1976)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Dolev, D., Yao, A.: On the security of public-key protocols. IEEE Transactions on Information Theory 29, 198–208 (1983)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Durante, A., Focardi, R., Gorrieri, R.: A compiler for analyzing cryptographic protocols using noninterference. ACM Transactions on Software Engineering and Methodology 9(4), 488–528 (2000)CrossRefGoogle Scholar
  14. 14.
    Garay, J.A., Jakobsson, M., MacKenzie, P.: Abuse-free optimistic contract signing. In: International Cryptology Conference (1999)Google Scholar
  15. 15.
    Guttman, J.D., Herzog, J.C., Ramsdell, J.D., Sniffen, B.T.: Programming cryptographic protocols. In: Trust in Global Computing (2005)Google Scholar
  16. 16.
    Jacquemard, F., Rusinowitch, M., Vigneron, L.: Compiling and verifying security protocols. Logic for Programming and Automated Reasoning (2000)Google Scholar
  17. 17.
    Kao, I.L., Chow, R.: An efficient and secure authentication protocol using uncertified keys. Operating Systems Review 29(3), 14–21 (1995)CrossRefGoogle Scholar
  18. 18.
    Lowe, G.: Casper: A compiler for the analysis of security protocols. In: Computer Security Foundations Workshop (1997)Google Scholar
  19. 19.
    Meadows, C.: A model of computation for the NRL protocol analyzer. In: Computer Security Foundations Workshop (1994)Google Scholar
  20. 20.
    Millen, J., Muller, F.: Cryptographic protocol generation from CAPSL. Technical Report SRI-CSL-01-07, SRI International (December 2001)Google Scholar
  21. 21.
    Neuman, B.C., Ts’o, T.: Kerberos: An authentication service for computer networks. Technical Report ISI/RS-94-399, USC/ISI (1994)Google Scholar
  22. 22.
    Project EVA. Security protocols open repository (2007),
  23. 23.
    Sabri, K.E., Khedri, R.: A mathematical framework to capture agent explicit knowledge in cryptographic protocols. Technical Report CAS-07-04-RK, McMaster University (2007)Google Scholar
  24. 24.
    The Coq development team. The Coq proof assistant reference manual, 8.1 edition (2007)Google Scholar
  25. 25.
    Weiser, M.: Program slicing. In: International Conference on Software Engineering (1981)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Jay McCarthy
    • 1
  • Shriram Krishnamurthi
    • 1
  1. 1.Brown UniversityUSA

Personalised recommendations