Journal of Computer Science and Technology

, Volume 21, Issue 6, pp 932–943

Verification of Authentication Protocols for Epistemic Goals via SAT Compilation

  • Kai-Le Su
  • Qing-Liang Chen
  • Abdul Sattar
  • Wei-Ya Yue
  • Guan-Feng Lv
  • Xi-Zhong Zheng
Regular Paper

DOI: 10.1007/s11390-006-0932-9

Cite this article as:
Su, KL., Chen, QL., Sattar, A. et al. J Comput Sci Technol (2006) 21: 932. doi:10.1007/s11390-006-0932-9

Abstract

This paper introduces a new methodology that uses knowledge structures, a specific form of Kripke semantics for epistemic logic, to analyze communication protocols over hostile networks. The paper particularly focuses on automatic verification of authentication protocols. Our approach is based on the actual definitions of a protocol, not on some difficult-to-establish justifications. The proposed methodology is different from many previous approaches to automatic verification of security protocols in that it is justification-oriented instead of falsification-oriented, i.e., finding bugs in a protocol. The main idea is based on observations: separating a principal executing a run of protocol from the role in the protocol, and inferring a principal’s knowledge from the local observations of the principal. And we show analytically and empirically that this model can be easily reduced to Satisfiability (SAT) problem and efficiently implemented by a modern SAT solver.

Keywords

authentication protocolformal verificationknowledge structureSAT

Copyright information

© Springer Science + Business Media, Inc. 2006

Authors and Affiliations

  • Kai-Le Su
    • 1
    • 2
  • Qing-Liang Chen
    • 1
    • 4
  • Abdul Sattar
    • 2
  • Wei-Ya Yue
    • 1
  • Guan-Feng Lv
    • 3
  • Xi-Zhong Zheng
    • 4
  1. 1.Department of Computer ScienceSun Yat-Sen UniversityGuangzhouP.R. China
  2. 2.Institute for Integrated and Intelligent SystemsGriffith University, BrisbaneQldAustralia
  3. 3.College of Computer Science and TechnologyBeijing University of TechnologyBeijingP.R. China
  4. 4.Department of Computer ScienceBrandenburg University of TechnologyCottbusGermany