信息安全研究 ›› 2017, Vol. 3 ›› Issue (5): 462-468.

• 学术论文 • 上一篇    下一篇

基于前推的密码协议形式化分析方法

闫靖晨   

  1. 埼玉大学 信息与计算机科学系, 埼玉市 日本 338-8570
  • 收稿日期:2017-05-16 出版日期:2017-05-16 发布日期:2017-05-16
  • 通讯作者: 闫靖晨
  • 作者简介:工学硕士,日本国立埼玉大学博士研究生,主要研究方向为基于前推的密码协议形式化分析方法.

A Formal Analysis Method with Forward Reasoning for Cryptographic Protocols

  • Received:2017-05-16 Online:2017-05-16 Published:2017-05-16

摘要: 在高度信息化社会,各种安全的密码协议是保证网络空间中众多应用所必须的安全性以及公平性的必要技术手段。由于密码协议的安全漏洞会给网络空间应用带来严重的安全问题,甚至造成不可估量的损失,因此密码协议的安全性分析成为重要课题。形式化分析方法是进行密码协议分析的最为可靠和有效的方法,已被广泛使用的定理证明方法和模型检测方法是通过预先列举出安全性目标,然后证明和检测密码协议是否满足这些目标,进而证实密码协议是否隐含有安全漏洞。基于证明的密码协议形式化分析方法在原理上的缺点是,如果预先列举的安全性目标有遗漏,那么有些安全漏洞则不可能被发现。基于前推的密码协议形式化分析方法不需要预先列举安全性目标,而是通过对参与者和攻击者的行为来进行基于逻辑系统的前推,推测针对密码协议所有可能出现的攻击来发现安全漏洞,从而保证密码协议的安全性。本文介绍了我们提出的一种具体方法。我们根据各种密码协议的特点对密码协议和攻击者行为进行形式化,用形式化的结果来进行基于逻辑系统的前推,并通过分析推导出的逻辑公式找到所有成功的攻击,进而发现密码协议的安全漏洞。

关键词: 密码协议, 形式化分析, 定理证明, 模型检测, 前推

Abstract: In the highly informative society, cryptographic protocols are necessary techniques to ensure the security of many applications in networks. As flaws of cryptographic protocols will bring serious security problems to the cyberspace application, and even cause the immeasurable loss, formal analysis of the cryptographic protocols become an important issue. Formal analysis method is the most reliable and effective method, in which theorem proving method and the model checking method to be widely used as formal analysis method with proving. In these methods, analysts have to enumerate the security properties at first, and then prove or check whether the cryptographic protocol satisfies these security properties. However, if not all the security properties have been enumerated before formal analysis, some flaws will be missing. As an alternative way, formal analysis method with reasoning for cryptographic protocols do not need to enumerate security properties but perform forward reasoning to find out flaws. This paper presents a concrete formal analysis method with reasoning. We formalize cryptographic protocols and intruder’s behaviors according to the features of cryptographic protocols, then perform forward reasoning with the results of formalization. At last, we find out flaws by analyzing the result of forward reasoning.