Cryptographic protocols are useful for trust engineering in distributed transactions. Transactions require specific degrees of confidentiality and agreement between the principals engaging in it. Moreover, trust management assertions may be attached to protocol actions, constraining the behavior of a principal to be compatible with its own trust policy. We embody these ideas in a cryptographic protocol programming language CPPL at the Dolev-Yao level of abstraction. A strand space semantics for CPPL shaped our compiler development, and allows a protocol designer to prove that a protocol is sound. © Springer-Verlag Berlin Heidelberg 2005.
Guttman, J. D., Herzog, J. C., Ramsdell, J. D., & Sniffen, B. T. (2005). Programming cryptographic protocols. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 3705 LNCS, pp. 116–145). https://doi.org/10.1007/11580850_8