A Testing Theory for a Higher-Order Cryptographic Language

(Extended Abstract)
  • Vasileios Koutavas
  • Matthew Hennessy
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6602)


We study a higher-order concurrent language with cryptographic primitives, for which we develop a sound and complete, first-order testing theory for the preservation of safety properties. Our theory is based on co-inductive set simulations over transitions in a first-order Labelled Transition System. This keeps track of the knowledge of the observer, and treats transmitted higher-order values in a symbolic manner, thus obviating the quantification over functional contexts. Our characterisation provides an attractive proof technique, and we illustrate its usefulness in proofs of equivalence, including cases where bisimulation theory does not apply.


Test Theory Safety Property Process Pattern Cryptographic Primitive Encrypt Message 
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., Fournet, C.: Mobile values, new names, and secure communication. SIGPLAN Not. 36(3), 104–115 (2001)CrossRefzbMATHGoogle Scholar
  2. 2.
    Abadi, M., Gordon, A.D.: A bisimulation method for cryptographic protocols. Nordic Journal of Computing 5, 267–303 (1998)MathSciNetzbMATHGoogle Scholar
  3. 3.
    Abadi, M., Gordon, A.D.: A calculus for cryptographic protocols: The spi calculus. Inf. Comput. 148(1), 1–70 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Boreale, M., De Nicola, R., Pugliese, R.: Proof techniques for cryptographic processes. SIAM J. Comput. 31(3), 947–986 (2001)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 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)CrossRefGoogle Scholar
  6. 6.
    Borgström, J., Nestmann, U.: On bisimulations for the spi calculus. Math. Structures in Comp. Sc. 15(3), 487–552 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    De Nicola, R., Hennessy, M.C.B.: Testing equivalences for processes. Theoretical Computer Science 34(1-2), 83–133 (1984)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Delaune, S., Kremer, S., Ryan, M.D.: Symbolic bisimulation for the applied pi calculus. J. of Comp. Security 18(2), 317–377 (2010)CrossRefzbMATHGoogle Scholar
  9. 9.
    Durante, L., Sisto, R., Valenzano, A.: Automatic testing equivalence verification of spi calculus specifications. ACM Trans. Softw. Eng. Methodol. 12(2), 222–284 (2003)CrossRefGoogle Scholar
  10. 10.
    Fournet, C., Gordon, A.D., Maffeis, S.: A type discipline for authorization in distributed systems. In: CSF 2007, pp. 31–48. IEEE Computer Society, Los Alamitos (2007)Google Scholar
  11. 11.
    Fournet, C., Gordon, A.D., Maffeis, S.: A type discipline for authorization policies. ACM Trans. Program. Lang. Syst. 29(5) (2007)Google Scholar
  12. 12.
    Hennessy, M.: The security pi-calculus and non-interference. J. Log. Algebr. Program 63(1), 3–34 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Honda, K., Yoshida, N.: A uniform type structure for secure information flow. ACM Trans. Program. Lang. Syst. 29(6) (2007)Google Scholar
  14. 14.
    Jeffrey, A., Rathke, J.: Contextual equivalence for higher-order pi-calculus revisited. LMCS 1(1:4) (2005)Google Scholar
  15. 15.
    Koutavas, V., Hennessy, M.: First-order reasoning for higher-order concurrency (February 2010) (manuscript) Google Scholar
  16. 16.
    Laird, J.: Game semantics for higher-order concurrency. In: Arun-Kumar, S., Garg, N. (eds.) FSTTCS 2006. LNCS, vol. 4337, pp. 417–428. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  17. 17.
    Maffeis, S., Abadi, M., Fournet, C., Gordon, A.D.: Code-carrying authorization. In: Jajodia, S., Lopez, J. (eds.) ESORICS 2008. LNCS, vol. 5283, pp. 563–579. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  18. 18.
    Milner, R.: Comunicating and Mobile Systems: the π-Calculus. Cambridge University Press, Cambridge (1999)Google Scholar
  19. 19.
    Sangiorgi, D.: Expressing Mobility in Process Algebras: First-Order and Higher-Order Paradigms. PhD thesis, Univ. of Edinburgh (1992)Google Scholar
  20. 20.
    Sangiorgi, D.: From pi-calculus to higher-order pi-calculus–and back. In: Gaudel, M.-C., Jouannaud, J.-P. (eds.) CAAP 1993, FASE 1993, and TAPSOFT 1993. LNCS, vol. 668, pp. 151–166. Springer, Heidelberg (1993)Google Scholar
  21. 21.
    Sangiorgi, D.: Bisimulation for higher-order process calculi. Information and Computation 131(2), 141–178 (1996)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Sangiorgi, D.: On the bisimulation proof method. Mathematical Structures in Comp. Sci. 8(5), 447–479 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Sangiorgi, D., Kobayashi, N., Sumii, E.: Environmental bisimulations for higher-order languages. In: LICS (2007)Google Scholar
  24. 24.
    Sangiorgi, D., Walker, D.: The π-calculus: a Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)zbMATHGoogle Scholar
  25. 25.
    Sato, N., Sumii, E.: The higher-order, call-by-value applied pi-calculus. In: Hu, Z. (ed.) APLAS 2009. LNCS, vol. 5904, pp. 311–326. Springer, Heidelberg (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Vasileios Koutavas
    • 1
  • Matthew Hennessy
    • 1
  1. 1.Trinity CollegeDublinIreland

Personalised recommendations