Formal specification and analysis of active networks and communication protocols: the Maude experience

Rewriting logic and the Maude language make possible a new methodology in which formal modeling and analysis can be used from the earliest phases of system design to uncover many errors and inconsistencies, and to reach high assurance for critical components. Our methodology is arranged as a sequence of increasingly stronger methods, including formal modeling, executable specification, model-checking analysis, narrowing, and formal proof, some of which can be used selectively according to the specific needs of each application. The paper reports on a number of experiments and case studies applying this formal methodology to active networks, communication protocols, and security protocols.

[1]  Amílcar Sernadas,et al.  Logics for Specifying Concurrent Information Systems , 1998, Logics for Databases and Information Systems.

[2]  José Meseguer,et al.  Rewriting Logic as a Semantic Framework for Concurrency: a Progress Report , 1996, CONCUR.

[3]  Narciso Martí-Oliet,et al.  Maude: specification and programming in rewriting logic , 2002, Theor. Comput. Sci..

[4]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[5]  José Meseguer,et al.  A logical theory of concurrent objects and its realization in the Maude language , 1993 .

[6]  Christian Lengauer,et al.  Modal-µ-Maude: Specification and Properties of Concurrent Objects , 1995, Object Orientation with Parallelism and Persistence.

[7]  José Meseguer,et al.  Conditioned Rewriting Logic as a United Model of Concurrency , 1992, Theor. Comput. Sci..

[8]  Lawrence C. Paulson,et al.  The Inductive Approach to Verifying Cryptographic Protocols , 2021, J. Comput. Secur..

[9]  José Meseguer,et al.  Rewriting Semantics of Meta-Objects and Composable Distributed Services , 2000, WRLA.

[10]  Catherine A. Meadows,et al.  Language generation and verification in the NRL protocol analyzer , 1996, Proceedings 9th IEEE Computer Security Foundations Workshop.

[11]  Carolyn L. Talcott,et al.  Specification and Analysis of a Reliable Broadcasting Protocol in Maude , 1999 .

[12]  James W. Gray,et al.  Using temporal logic to specify and verify cryptographic protocols , 1995, Proceedings The Eighth IEEE Computer Security Foundations Workshop.

[13]  José Meseguer,et al.  Reflection and strategies in rewriting logic , 1996, WRLA.

[14]  José Meseguer,et al.  Specification and Formal Analysis of a PLAN Algorithm in Maude , 2000, ICDCS Workshop on Distributed System Validation and Verification.

[15]  John Rushby,et al.  Critical system properties: survey and taxonomy , 1994 .

[16]  J. MeseguerComputer Protocol Speci cation and Analysis in Maude , 1998 .

[17]  Gavin Lowe,et al.  Breaking and Fixing the Needham-Schroeder Public-Key Protocol Using FDR , 1996, Softw. Concepts Tools.

[18]  Nalini Venkatasubramanian,et al.  Reasoning about meta level activities in open distributed systems , 1995, PODC '95.

[19]  G Denker,et al.  Capsl Intermediate Language , 1999 .

[20]  David Toman,et al.  Logics for Databases and Information Systems , 1998 .

[21]  Gul Agha,et al.  Customization and Composition of Distributed Objects: Policy Management in Distributed Software Architectures , 1999 .

[22]  Roger M. Needham,et al.  Using encryption for authentication in large networks of computers , 1978, CACM.

[23]  Catherine A. Meadows,et al.  Formal Verification of Cryptographic Protocols: A Survey , 1994, ASIACRYPT.

[24]  J. Meseguer Rewriting Logic and its Applications First International Workshop, Asilomar Conference Center, Pacific Grove, California, 3-6 September 1996. Volume 4 Electronic Notes in Theoretical Computer Science. , 1996 .

[25]  David Garlan,et al.  Formalizing Architectural Connection , 1994, ICSE.

[26]  J. Meseguer,et al.  Building Equational Proving Tools by Reflection in Rewriting Logic , 2000 .

[27]  Carl A. Gunter,et al.  PLAN: a packet language for active networks , 1998, ICFP '98.

[28]  Gul Agha,et al.  Abstracting Interaction Patterns: A Programming Paradigm for Open Distributed Systems , 1997 .

[29]  Giovanni Maria Sacco,et al.  Timestamps in key distribution protocols , 1981, CACM.

[30]  Grit Denker From rewrite theories to temporal logic theories , 1998, WRLA.

[31]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[32]  G. Denker,et al.  Specifying distributed information systems: fundamentals of an object-oriented approach using distributed temporal logic , 1997 .

[33]  Catherine A. Meadows,et al.  Analyzing the Needham-Schroeder Public-Key Protocol: A Comparison of Two Approaches , 1996, ESORICS.

[34]  M. Clavel,et al.  Principles of Maude , 1996, WRLA.

[35]  Catherine A. Meadows,et al.  A logical language for specifying cryptographic protocol requirements , 1993, Proceedings 1993 IEEE Computer Society Symposium on Research in Security and Privacy.