形式化分析方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

安全协议的形式化分析方法

安全协议是采用密码技术来保障通信各方之间安全交换信息的一个规则序列。其目的是在通信各方之间提供认证或为新的会话分配会话密钥。尽管现有的安全协议是安全专家精心设计和详细审核过的但仍然可能存在一些不易发现的安全缺陷有些甚至数年后才被发现。长期以来,形式化方法被公认为分析安全协议的有力武器。

目前分析安全协议的形式化方法主要有:

(1)推理构造法,该方法基于知识和信念推理的模态逻辑,如K3P逻辑等,但K3P逻辑只能分析协议的认证性质而不能分析协议的保密性质;

(2)攻击构造法,该方法从协议的初始状态开始,对合法主体和一个攻击者所有可能的执行路径进行穷尽搜索,以期找到协议可能存在的错误。这种方法主要有基于模型检测技术的模型检测器QRS( 验证语言、代数简化理论模型以及特定专家系统(如特殊目的NRL分析器和Interrogator),但这种方法无法解决状态空间爆炸问题;

(3)证明构造法,该方法集成了以上两类方法的思想及多种技术,主要有Bolignano证明方法和Paulson方法等。以上形式化分析方法的主要缺点是无法解决状态空间爆炸问题在很大程度上被限制在规模很小的协议分析中这显然不适应网络通信规模日益增大等发展的需要。

安全协议是建造网络安全环境的重要基石,是保证网络安全的核心技术。设计和证明安全协议自身的正确性和安全性,成为网络安全的基础。形式化分析方法已被证明是用于分析、设计和验证安全协议的重要方法,对安全协议的形式化分析、设计和验证已经成为当今形式化分析研究领域的一个热点问题。

虽然人们使用形式化分析方法已成功发现了许多现存安全协议存在的缺陷和针对她们的攻击,但是这些分析方法还存在许多缺陷。有些形式化分析方法自身不太完善,存在一定的局限性,不能分析和验证某些类型安全协议的安全性;有些只能分析安全协议的不安全性,不能给出协议安全性的精确证明。

在总结安全协议现存各种缺陷的基础上,根据缺陷产生各种原因将缺陷分为:过小保护缺陷、消息可重放缺陷、消息不可达性缺陷、并行会话缺陷和其他类型缺陷等五类。同时把针对安全协议的各种攻击方法可分为:重放消息型攻击、猜

测口令型攻击、分析密码型攻击、并行会话型攻击、格式缺陷型攻击和身份绑定型攻击等六类。

其中,Burrows,Abadi和Needham 提出的BAN逻辑开创了用逻辑化方法分析安全协议安全性的新纪元。由于该方法是对现实协议分析方法的抽象,逻辑处理的符号集是对现实具体协议的抽象;其初始假设、断言集合等均是从现实世界中抽象出来的要素。因此,其狭窄的符号集合定义也就决定了该方法存在不能分析某些类型协议安全性的缺陷,如:不能发现由于时间同步问题而导致的协议缺陷。另外使用BAN逻辑对安全协议分析时,很多初始假设是不合理的,如消息不可伪造假设就非常不合理,这些假设的不合理,妨碍了该分析方法的正确应用。BAN逻辑还存在非严谨的理想化步骤缺陷;语义不清晰缺陷;非严密的环境模型缺陷和无法有效预测对协议存在的攻击等缺陷。

本文讨论基于知识与信念推理的模态逻辑方法,对BAN 逻辑及其重要的增强与扩展——GNY逻辑、AT逻辑、VO逻辑——进行详尽的研究,比较它们的特点和优缺点.讨论了BAN类逻辑中的佼佼者——SVO逻辑,并研究安全协议的逻辑分析方法和串空间模型相结合的问题.然后讨论安全协议的设计原则.设计时必须充分考虑Dolev-Yao攻击者模型,不低估攻击者的能力.安全协议必须能够抵抗常见攻击,特别是重放攻击然后,通过串空间模型的实例,说明形式化方法如何指导安全协议的正确设计.

模态逻辑方法是分析安全协议的最为重要的方法之一,它们分析并验证了许多重要的安全协议 ,其中包括分析经典的Needham-Schroeder 私钥协议、Lowe-Needham-Schroeder 公钥协议、Nessett协议等.

模态逻辑分析方法与分布式系统中分析知识和信念演化的逻辑相似.这些逻辑系统由一些命题和推理规则组成,命题表示主体对消息的知识或信念,应用推理规则可以从已知的知识和信念推导出新的知识和信念.Syverson在文献中阐述了在安全协议的分析中,知识、信念和语义之间关系的相互作用。在这类方法中,最著名的是 BAN 类逻辑。其他相近的工作还包括:Bieber逻辑——CKT5、Syverson逻辑——KPL、Rangan逻辑、Moser 逻辑以及Yahalom,Klein,Beth的YHK逻辑等.1999 年,Kindred在他的博士论文中提出的密码协议的生成理论——RV 逻辑是这方面的又一个新成果。

Syverson逻辑将攻击者具有的知识分为两类:一类是攻击者收到一条消息后所具有的知识(在看见一个比特串的含义下);另一类是攻击者可以识别消息时所具有的知识.然后,Syverson逻辑可以对此进行推理.类似于Syverson逻辑,Bieber逻辑也区别看见一条消息和理解一条消息,并能对安全协议中知识的演化进行推理.Rangan 逻辑的特点是研究可信(trust),对由“可信”到“信念”(belief)的演化过程进行推理.YKB 逻辑则从另一个角度讨论“可信”.在上述逻辑中,知识和信念的演化都是单调的,亦即知识和信念的演化只增不减.Moser逻辑是惟一的例外,它的信念演化是非单调的.例如,在推理过程中如果知道一个密钥已被泄露,则其信念集合可以减小。

BAN逻辑之所以著名,不仅由于它开创了安全协议形式化分析的先河,是一项开拓性的工作,而且由于它提供的形式化分析方法特别直观与简单.有人说,BAN 逻辑成功的秘诀是“简单加实用”,这话有一定的道理。BAN逻辑虽然简单,但仍然可以成功地揭示安全协议中的设计缺陷.例如,通过 BAN 逻辑分析,发现了CCITT X.509标准推荐草案中的安全漏洞.

BAN逻辑的直观性与简单性主要表现在以下几个方面:第 1,BAN 逻辑不区分看见一条消息和理解一条消息;第 2,BAN 逻辑的信念演化过程是单调递增的;第 3,BAN 逻辑不讨论“可信”;第4,BAN逻辑不讨论知识;第5,BAN 逻辑假设参加协议的主体是诚实的,他们都忠实地根据协议的规则执行协议;第6,BAN 逻辑假设加密系统是完善的(perfect)等等。

但是,BAN 逻辑不追求完美而追求简洁、实用的设计思想,也为BAN 逻辑分析方法带来了局限性,使BAN方法的抽象级别过高,分析范围过窄.例如,由于BAN逻辑不能对知识进行推理,因此,BAN逻辑只能分析协议的认证性质,而不能分析协议的保密性质.然而在现实中,通常的密钥分配协议要同时实现保密性和认证性两个重要目标.

BAN 逻辑是一种多类型模态逻辑(many-sorted modal logic),它包含以下 3 种处理对象:主体、密钥和公式.其中的公式,也称作语句或命题.BAN逻辑仅包含合取这一命题联接词,用逗号表示.BAN逻辑共有19条推理规则.在推理规则中,⊦是元语言符号. Γ⊦C 表示可以由前提集Γ推导出结论 C.应用BAN 逻辑形式化分析安全协议的步骤是:

相关文档
最新文档