Relating Process Languages for Security and Communication Correctness (Extended Abstract)
Process calculi are expressive specification languages for concurrency. They have been very successful in two research strands: (a) the analysis of security protocols and (b) the enforcement of correct message-passing programs. Despite their shared foundations, languages and reasoning techniques for (a) and (b) have been separately developed. Here we connect two representative calculi from (a) and (b): we encode a (high-level) \(\pi \)-calculus for multiparty sessions into a (low-level) applied \(\pi \)-calculus for security protocols. We establish the correctness of our encoding, and we show how it enables the integrated analysis of security properties and communication correctness by re-using existing tools.
We are grateful to the anonymous reviewers for their useful remarks and suggestions. Pérez is also affiliated to the NOVA Laboratory for Computer Science and Informatics (supported by FCT grant NOVA LINCS PEst/UID/CEC/04516/2013), Universidade Nova de Lisboa, Portugal.
- 1.Abadi, M., Fournet, C.: Mobile values, new names, and secure communication. In: Proceedings of POPL 2001, pp. 104–115 (2001)Google Scholar
- 3.Blanchet, B.: Modeling and verifying security protocols with the applied Pi calculus and ProVerif. Found. Trends Priv. Secur. 1(1–2), 1–135 (2016)Google Scholar
- 6.Corin, R., Deniélou, P., Fournet, C., Bhargavan, K., Leifer, J.J.: Secure implementations for typed session abstractions. In: Proceedings of CSF 2007, pp. 170–186. IEEE (2007)Google Scholar
- 10.Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: POPL, pp. 273–284 (2008)Google Scholar
- 12.Kremer, S., Künnemann, R.: Automated analysis of security protocols with global state. In: Proceedings of SP 2014, pp. 163–178. IEEE (2014)Google Scholar
- 13.Lowe, G.: Breaking and fixing the needham-schroeder public-key protocol using FDR. Softw. Concepts Tools 17(3), 93–102 (1996)Google Scholar
- 15.Nantes, D., Pérez, J.A.: Relating process languages for security and communication correctness (full version). Technical report (2018). http://www.jperez.nl