Verification of network security protocols

During recent years there has been considerable interest and growth in computer networks and distributed systems. Computer networks employ encryption for several purposes, including private communication, message authentication and digital signatures. The correctness and security of these applications depend not only on the strength of the cryptographic algorithms but also on the protocols for key management. In this paper, we analyse the behaviour of a ''generic'' key distribution protocol using a model checker based on temporal logic. The protocol typifies several protocols that have been recently proposed to achieve an authenticated communication in a network environment. The protocol is first specified using a state-machine-based language. Then some important properties of the protocol are verified. Such analysis technique is useful in a wide range of applications. In particular, we feel that the model checker helps to bring the automatic verification of finite systems closer to a practical proposition.

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

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

[3]  Jonathan K. Millen,et al.  The Interrogator A Tool for Cryptographic Protocol Security , 1984, 1984 IEEE Symposium on Security and Privacy.

[4]  Martín Abadi,et al.  Nonclausal Temporal Deduction , 1985, Logic of Programs.

[5]  Edmund M. Clarke,et al.  Using Temporal Logic for Automatic Verification of Finite State Systems , 1984, Logics and Models of Concurrent Systems.

[6]  Amir Pnueli The Temporal Semantics of Concurrent Programs , 1981, Theor. Comput. Sci..

[7]  Antony Galton,et al.  Temporal logics and their applications , 1987 .

[8]  Joseph Y. Halpern,et al.  "Sometimes" and "not never" revisited: on branching versus linear time (preliminary report) , 1983, POPL '83.

[9]  Stephen M. Matyas,et al.  A Cryptographic Key Management Scheme for Implementing the Data Encryption Standard , 1978, IBM Syst. J..

[10]  Jeannette M. Wing,et al.  Extending Ina Jo with Temporal Logic , 1989, IEEE Trans. Software Eng..

[11]  Deepinder P. Sidhu Authentication Protocols for Computer Networks: I , 1986, Comput. Networks.

[12]  C. H. West,et al.  General technique for communications protocol validation , 1978 .

[13]  Edmund M. Clarke,et al.  Hierarchical Verification of Asynchronous Circuits Using Temporal Logic , 1985, Theor. Comput. Sci..

[14]  Richard A. Kemmerer,et al.  Analyzing encryption protocols using formal verification techniques , 1989, IEEE J. Sel. Areas Commun..