A S Khan, M Mukund and S P Suresh
Technical Report, Chennai Mathematical Institute (2005).
Security protocols are notoriously difficult to debug. One approach to the automatic verification of security protocols with a bounded set of agents uses logic programming with analysis and synthesis rules to describe how the attacker gains information and constructs new messages.
We propose a generic approach to verifying security protocols in SPIN. The dynamic process creation mechanism of SPIN is used to nondeterministically create different combinations of role instantiations. We incorporate the synthesis and analysis features of the logic programming approach to describe how the intruder learns information and replays it back into the system. We formulate a generic ``loss of secrecy'' property that is flagged whenever the intruder learns private information from an intercepted message. We also describe a simplification of the Dolev-Yao attacker model that suffices to analyze secrecy properties.