Cryptographic protocols

[1] Martín Abadi. Secrecy by typing in security protocols. In 14th Symposium on Theoretical Aspects of Computer Science (STACS'97), Lecture Notes in Computer Science. Springer, 1997. [ bib ]
[2] Martín Abadi. Secrecy by typing in security protocols. Journal of the ACM, 46(5):749-786, September 1999. [ bib | .ps ]
We develop principles and rules for achieving secrecy properties insecurity protocols. Our approach is based on traditional classification techniques, and extends those techniques to handle concurrent pro-cesses that use shared-key cryptography. The rules have the form of typing rules for a basic concurrent language with cryptographic primitives, the spi calculus. They guarantee that, if a protocol typechecks, then it does not leak its secret inputs.

[3] Martín Abadi and Bruno Blanchet. Secrecy types for asymmetric communication. In Foundations of Software Science and Computation Structures (FoSSaCS'01), volume 2030 of Lecture Notes in Computer Science. Springer, April 2001. [ bib ]
[4] Martín Abadi and Andrew D. Gordon. A calculus for cryptographic protocols: The spi calculus. In ACM Conference on Computer and Communications Security, pages 36-47, 1997. [ bib | http ]
[5] Martín Abadi and Andrew D. Gordon. Reasoning about cryptographic protocols in the spi calculus. In Antoni Mazurkiewicz and Józef Winkowski, editors, CONCUR '97: Concurrency Theory, 8th International Conference, volume 1243 of Lecture Notes in Computer Science, pages 59-73, Warsaw, Poland, July 1997. Springer. [ bib ]
[6] Martín Abadi and Andrew D. Gordon. A calculus for cryptographic protocols: The spi calculus. Information and Computation, 148(1):1-70, 1999. [ bib ]
[7] Martín Abadi and Mark R. Tuttle. A semantics for a logic of authentication. In Luigi Logrippo, editor, 10th Annual ACM Symposium on Principles of Distributed Computing, pages 201-216, Montréal, Québec, Canada, August 1991. ACM Press. [ bib ]
[8] Robert Amadio and Denis Lugiez. On the reachability problem in cryptographic protocols. Research report 3915, INRIA, 2000. [ bib | .ps.gz | .pdf ]
[9] Roberto M. Amadio and Denis Lugiez. On the reachability problem in cryptographic protocols. In CONCUR '00, number 1877 in Lecture Notes in Computer Science. Springer, 2000. [ bib ]
We study the verification of secrecy and authenticity properties for cryptographic protocols which rely on symmetric shared keys. The verification can be reduced to check whether a certain parallel program which models the protocol and the specification can reach an erroneous state while interacting with an adversary. Assuming finite principals, we present a decision procedure for the reachability problem which is based on a `symbolic' reduction system.

[10] Ashar Aziz and Whitfield Diffie. Privacy and authentication for wireless local area networks. IEEE Personal Communications Magazine, 1(1):25-31, 1994. [ bib ]
Keywords: authentication, wireless, link security, mobile
[11] Michael Burrows, Martín Abadi, and Roger Needham. A logic of authentication. Technical Report 39, Digital Equipment Corporation, Systems Research Centre, February 1989. [ bib | .html ]
Questions of belief are essential in analyzing protocols for authentication in distributed computing systems. In this paper we motivate, set out, and exemplify a logic specifically designed for this analysis; we show how various protocols differ subtly with respect to the required initial assumptions of the participants and their final beliefs. Our formalism has enabled us to isolate and express these differences with a precision that was not previously possible. It has drawn attention to features of protocols of which we and their authors were previously unaware, and allowed us to suggest improvements to the protocols. The reasoning about some protocols has been mechanically verified. This paper starts with an informal account of the problem, goes on to explain the formalism to be used, and gives examples of its application to protocols from the literature, both with conventional shared-key cryptography and with public-key cryptography. Some of the examples are chosen because of their practical importance, while others serve to illustrate subtle points of the logic and to explain how we use it. We discuss extensions of the logic motivated by actual practice - for example, in order to account for the use of hash functions in signatures. The final sections contain a formal semantics of the logic and some conclusions.

[12] Michael Burrows, Martín Abadi, and Roger Needham. A logic of authentication. ACM Transactions on Computer Systems, 8(1):18-36, February 1990. [ bib ]
Authentication protocols are the basis of security in many distributed systems, and it is therefore essential to ensure that these protocols function correctly. Unfortunately, their design has been extremely error prone. Most of the protocols found in the literature contain redundancies or security flaws. A simple logic has allowed us to describe the beliefs of trustworthy parties involved in authentication protocols and the evolution of these beliefs as a consequence of communication. We have been able to explain a variety of authentication protocols formally, to discover subtleties and errors in them, and to suggest improvements. In this paper we present the logic and then give the results of our analysis of four published protocols, chosen either because of their practical importance or because they serve to illustrate our method.

[13] David A. Basin. Lazy infinite-state analysis of security protocols. In Rainer Baumgart, editor, Secure Networking - CQRE (Secure) '99, International Exhibition and Congress, volume 1740 of Lecture Notes in Computer Science, pages 30-42. Springer, 1999. [ bib ]
[14] M. Bellare and P. Rogaway. Provably secure session key distribution-the three party case. In 27th ACM Symposium on Theory of Computing (STOC), pages 57-66, 1995. [ bib | .ps.gz ]
[15] Pierre Bieber. A logic of communication in hostile environment. In Computer Security Foundations Workshop (III), pages 14-22, 1990. [ bib ]
[16] Dominique Bolignano. Towards a mechanization of cryptographic protocol verification. In Orna Grumberg, editor, CAV'97: Computer Aided Verification, 9th International Conference, Haifa, Israel, volume 1254 of Lecture Notes in Computer Science, pages 131 - 142. Springer, June 1997. [ bib ]
[17] Stephen H. Brackin. Deciding cryptographic protocol adequacy with HOL. In IWHOLTP: 8th International Workshop on Higher Order Logic Theorem Proving and Its Applications, volume 971 of Lecture Notes in Computer Science. Springer-Verlag, 1995. [ bib ]
[18] Stephen H. Brackin. Automatic formal analyses of cryptographic protocols. In NISSC: 19th National Information Systems Security Conference, pages I.181 - 193, Baltimore, MD, October 1996. National Institute of Standards and Technology and National Computer Security Center. [ bib ]
[19] W. McCune, editor. 14th Conference on Automated Deduction (CADE), volume 1249 of Lecture Notes in Computer Science. Springer-Verlag, 1997. [ bib ]
[20] Jonathan K. Millen. CAPSL: Common authentication protocol specification language. available on the WWW. [ bib | http ]
[21] Jean Goubault-Larrecq. Clap, a simple language for cryptographic protocols, 1999. [ bib ]
[22] David Basin, Sebastian Mödersheim, and Luca Vigano. Constraint differentiation: A new reduction technique for constraint-based analysis of security protocols. In 10th ACM Conference on Computer and Communications Security (CCS). ACM, October 2003. [ bib ]
[23] Illiano Cervesato, Nancy Durgin, Patrick Lincoln, John Mitchell, and Andre Scedrov. A meta-notation for protocol analysis. In CSFW 12: Proceedings of The 12th Computer Security Foundations Workshop. IEEE Computer Society Press, 1999. [ bib | .ps ]
[24] Horatiu Cirstea. Specifying authentication protocols using elan. Technical Report 99-R-246, LORIA, 1999. [ bib | .ps.gz ]
[25] W. Marrero, E.M. Clarke, and S. Jha. Model checking for security protocols. Technical Report CMU-SCS-97-139, Carnegie Mellon University, May 1997. [ bib ]
[26] M. Debbabi, M. Mejri, M. Tawbi, and I. Yahmadi. Formal automatic verification of authentication cryptographic protocols. In Proceedings of the First IEEE International Conference on Formal Engineering Methods, ICFEM'97, 12-14 November 1997, Hiroshima International Convention Center, Japan, November 1997. IEEE, IEEE Press. to appear. [ bib ]
[27] Sinéad Hanley. DNS overview with a discussion of DNS spoofing. http://www.sans.org/infosecFAQ/DNS/DNS.htm. [ bib ]
[28] Danny Dolev and Andrew C. Yao. On the security of public key protocols. IEEE Transactions on Information Theory, IT-29(12):198-208, March 1983. [ bib ]
[29] N. Durgin, P. Lincoln, J. Mitchell, and A. Scedrov. Undecidability of bounded security protocols. In N. Heintze and E. Clarke, editors, Proceedings of the Workshop on Formal Methods and Security Protocols (FMSP), 1999. [ bib | .html ]
[30] Riccardo Focardi and Roberto Gorrieri, editors. Foundations of Security Analysis and Design, Tutorial Lectures [revised versions of lectures given during the IFIP WG 1.7 International School on Foundations of Security Analysis and Design, FOSAD 2000, Bertinoro, Italy, September 2000], volume 2171 of Lecture Notes in Computer Science. Springer, 2001. [ bib ]
[31] Li Gong, Roger Needham, and Raphael Yahalom. Reasoning about belief in cryptographic protocols. In IEEE Symposium on Research in Security and Privacy, pages 234-248, Oakland, California, May 1990. IEEE Computer Society Press. [ bib | www: ]
Keywords: BAN logic, GNY logic, cryptography, authentication, formal methods
[32] T. Genet and F. Klay. Rewriting for cryptographic protocol verification. Technical report, CNET-France Telecom, 1999. [ bib ]
[33] Thomas Genet and Francis Klay. Rewriting for cryptographic protocol verification (extended version). Technical Report RR-3921, INRIA, 2000. [ bib | .ps.gz ]
[34] T. Genet and F. Klay. Rewriting for cryptographic protocol verification. In D. McAllester, editor, Automated Deduction (CADE-17), volume 1831 of Lecture Notes in Artificial Intelligence. Springer-Verlag, 2000. [ bib ]
[35] Li Gong. Cryptographic Protocols for Distributed Systems. PhD thesis, University of Cambridge, Cambridge, England, April 1990. [ bib ]
[36] Li Gong and Paul Syverson. Fail-stop protocols: An approach to designing secure protocols. In 5 th International Working Conference on Dependable Computing for Critical Applications, September 1995. [ bib | .pdf ]
[37] Jean Goubault-Larrecq. A method for automatic cryptographic protocol verification. In Dominique Méry Beverly Sanders, editor, Beverly Sanders , Dominique M Fifth International Workshop on Formal Methods for Parallel Programming: Theory and Applications (FMPPTA 2000), number 1800 in Lecture Notes in Computer Science. Springer-Verlag, 2000. [ bib | .ps ]
[38] D. Kindred and J. M. Wing. Fast, automatic checking of security protocols. In Second USENIX Workshop on Electronic Commerce [61], pages 41-52. [ bib | .html ]
[39] Gavin Lowe. Breaking and fixing the Needham-Schroeder public-key protocol using FDR. In Proceedings of TACAS, volume 1055, pages 147-166. Springer Verlag, 1996. [ bib | .ps ]
[40] Gavin Lowe. Towards a completeness result for model checking of security protocols. In 11th Computer Security Foundations Workshop. IEEE, 1998. [ bib ]
[41] James W. Gray and John McLean. Using Temporal Logic to Specify and Verify Cryptographic Protocols (progress report). In America in the Age of Information, National Science and Technology Council Committee on Information and Communications Forum, Bethesda, 1995. [ bib | .pdf ]
[42] Catherine Meadows. The NRL Protocol Analyzer: An Overview. Journal of Logic Programming, 26(2), February 1996. [ bib | .ps ]
[43] J. K. Millen. The interrogator: A tool for cryptographic protocol security. In Proceedings of the 1984 Symposium on Security and Privacy (SSP '84), pages 134-141, Los Angeles, Ca., USA, April 1990. IEEE Computer Society Press. [ bib ]
[44] J. K. Millen and H-P. Ko. Narrowing terminates for encryption. In Computer Security Foundations Workshop, 1996. [ bib | .ps ]
[45] S. P. Miller, B. C. Neuman, J. I. Schiller, and J. H. Saltzer. Kerberos authentication and authorization system. In Project Athena Technical Plan, chapter E.2.1. MIT, 1987. [ bib | .html ]
[46] Roger M. Needham and Michael D. Schroeder. Using encryption for authentication in large networks of computers. Communications of the ACM, 21(12), December 1978. [ bib ]
[47] D. Nessett. A critique of the Burrows, Abadi and Needham logic. ACM Operating Systems Review, 24(2):35-38, April 1990. [ bib ]
[48] Lawrence C. Paulson. Proving properties of security protocols by induction. In 10th Computer Security Foundations Workshop, pages 70-83. IEEE Computer Society Press, 1997. [ bib | .html ]
Keywords: Isabelle
[49] J.Y. Girard. Proofs and Types. Cambridge University Press, 1990. Translated and with appendices by Paul Taylor, Yves Lafont. [ bib ]
[50] M. Rusinowitch and M. Turuani. Protocol insecurity with finite number of sessions is NP-complete. In 14th IEEE Computer Security Foundations Workshop, Cape Breton, Nova Scotia, Canada, June 2001. [ bib ]
[51] Elton Saul. Facilitating the modelling and automated analysis of cryptographic protocols. Master's thesis, University of Cape Town, July 2001. [ bib | .pdf ]
[52] J. Schumann. Automatic verification of cryptographic protocols with SETHEO. In William McCune, editor, Proceedings of the 14th International Conference on Automated deduction, volume 1249 of Lecture Notes in Artificial Intelligence, pages 87-100, Berlin, July 13-17 1997. Springer. [ bib ]
[53] Dawn Song. Athena: A new efficient automatic checker for security protocol analysis. In 12th Computer Security Foundations Workshop. IEEE, 1999. [ bib ]
We propose a new efficient automatic verification technique, Athena, for the analysis of security protocols. Our approach has several major advantages over the current model checking approaches. First, Athena contains a logic that can express various security properties including authentication, secrecy, and electronic commerce properties. We have developed an automatic procedure for evaluating well-formed formulas in this logic. For a well-formed formula, if the evaluation procedure terminates, it will generate a counterexample if the formula is false, or provide a proof if the formula is true. Thus, we can verify security properties under arbitrary protocol configurations, while almost all the current automatic tools can only reason about the security properties under limited protocol configurations. Second, Athena exploits many state space reduction techniques. We use an extension of the recently proposed Strand Space Model [?] to represent the protocol executions. By capturing the exact causal relation we achieve a much more concise state representation. Together with the backward search and other techniques, Athena naturally avoids the state space explosion problem caused by asynchronous composition and symmetry redundancy. We also allow free variables in the state structure. Thus, a state with free variables can represent a set of concrete states, and a state transition between two states with free variables can represent a set of state transitions between two concrete states. Athena also has the advantage that it can easily borrow results from theorem proving through unreachability theorems to reduce the state space further. As shown in our experiments, these techniques dramatically reduce the state space that needs to be explored, demonstrating that Athena is a promising technique for analyzing complicated security protocols.

[54] Martín Abadi and Andrew D. Gordon. A calculus for cryptographic protocols: The spi calculus. Research report 149, Compaq Systems Research Center, Palo Alto, CA, USA, Jan 1998. [ bib | .html ]
[55] P. Syverson and P. C. van Oorschot. On unifying some cryptographic protocol logics. In 1994 IEEE Computer Society Symposium on Research in Security and Privacy, pages 14-28, May 1994. [ bib | .ps ]
[56] P. Syverson. Adding time to a logic of authentication. In 1st ACM Conference on Computer and Communications Security, pages 97-101, 1993. [ bib | .ps ]
In [BAN89] Burrows, Abadi, and Needham presented a logic (BAN) for analyzing cryptographic protocols in terms of belief. This logic is quite useful in uncovering flaws in protocols; however, it also has produced confusion and controversy. Much of the confusion was cleared up when Abadi and Tuttle provided a semantics for a version of that logic (AT) in [AT91]. In this paper we present a protocol to show that both BAN and AT are not expressive enough to capture all of the kinds of flaws that appear to be within their scope. We then present a logic that adds temporal formalisms to AT and that is rich enough to reveal the flaws in the presented protocol; nonetheless, this logic is sound with respect to the same semantics that was given in [AT91]. Finally, we argue that any approach of this type is inadequate by itself to demonstrate the absence of such flaws. We must supplement the formal logic with semantic analysis techniques.

[57] Paul Syverson and Iliano Cervesato. The logic of authentication protocols. In Riccardo Focardi and Roberto Gorrieri, editors, FOSAD '00, volume 2171 of Lecture Notes in Computer Science. Springer, 2001. [ bib ]
[58] P. Syverson. Formal semantics for logics of cryptographic protocols. In Proc. Computer Security Foundations Workshop, pages 32-41. IEEE Computer Society Press, June 1990. [ bib ]
[59] Paul Syverson. Towards a strand semantics for authentication logics. Electronic Notes in Theoretical Computer Science, 20, 1999. [ bib | .html ]
[60] Dan Craigen and Mark Saaltink. Using EVES to analyze authentication protocols. Technical Report TR-96-5508-05, ORA Canada, Ottawa, March 1996. [ bib | .dvi.Z ]
[61] USENIX. Second USENIX Workshop on Electronic Commerce, Oakland, California, November 1996. [ bib | .html ]
[62] Shouhuai Xu, Gendu Zhang, and Hong Zhu. On the properties of cryptographic protocols and the weaknesses of the BAN-like logics. ACMOSR: ACM Operating Systems Review, 31, 1997. [ bib ]

This file has been generated by bibtex2html 1.85.