一种认证邮件协议的后一致性分析方法

文档序号:7801744阅读:320来源:国知局
一种认证邮件协议的后一致性分析方法
【专利摘要】本发明公开了一种认证邮件协议的后一致性分析方法,包括以下步骤:步骤一、对一个基于签密的认证邮件协议实现建模;步骤二、后一致性验证建模:query?sequence(send?Rec(r)==>sendMsg(m));步骤三、依据上述“后一致性验证建模”进行后一致性的验证分析,即验证认证邮件协议的后一致性“TTP为A发送了收据r,其后面是否为B发送了消息m”。与现有技术相比,本发明实现了后一致性算法,专门针对认证邮件协议的后一致性验证。由实验证明,本算法不仅可以查出那些有缺陷的协议,而且还能找出对应的攻击路径。这使得后期工作中,针对性的修改完善协议更加容易。
【专利说明】一种认证邮件协议的后一致性分析方法

【技术领域】
[0001] 本发明涉及网络协议安全【技术领域】,特别是涉及基于签密的认证邮件协议,即使 数据的传送具有保密性和认证性的一类网络协议的后一致性分析方法。

【背景技术】
[0002] 公平交换协议在电子商务中有着重要的作用,而基于签密的认证邮件协议是比较 常用的协议,认证邮件协议的验证具有实际意义,其安全性直接影响整个互联网的安全。认 证邮件协议在设计中很容易出错,并且其缺陷很难通过测试的方法来发现,可借助形式化 的方法对协议的安全性质进行验证。近年来安全协议形式化验证的研究已经越来越多, 主要研究的方法有基于信念逻辑的方法,基于定理证明的方法,串空间方法以及模型检 测方法等。并且基于这些方法已经开发了许多自动化的安全协议验证工具,例如Athena, ProVerif,Murphi,AVISPA以及NRL等,这些工具对于认证邮件协议的秘密性与认证性的验 证具有较好的效果,但是并不全面。
[0003] 认证性作为安全协议的基本安全性质,已被广泛的研究,通常的方法是通过一致 性来验证协议的认证性。Woo和Lam起初提出了描述认证性的一致性断言,但是定义比较简 单。一致性的定义形式一般类似如下:如果协议执行了某些事件,则其之前必执行过其他事 件,我们称这种形式为前一致性。目前对于前一致性的研究较多,但是针对"如果协议执行 了某些事件,则其后必定执行某些事件"的性质研究较少,我们称之为后一致性。一致性不 仅能够验证协议的认证性,其还能够验证协议消息的发送按照一定的顺序执行。
[0004] 目前,安全协议的后一致性已被越来越关注。如在电子商务协议中,经常需要保 证协议满足性质A"如果买方已付款,则其后卖方必须发货",该性质可通过验证后一致性来 验证。而通过前一致性可验证性质B "在卖方发货前,买方一定付款",而不能验证性质A。 违背后一致性的缺陷主要包括两种:一种是由于异常(例如硬件、网络等问题)导致事件A 发生后协议中断,此时其后事件B不在,协议应该设计异常处理协议来应对异常;另一种为 协议设计缺陷导致事件A发生后,事件B不发生或者由于受到恶意攻击导致B不发生,设计 者应该及时发现并避免该缺陷。


【发明内容】

[0005] 为了克服上述现有技术存在的问题,本发明提出一种认证邮件协议的后一致性分 析方法,以基于签密的认证邮件协议为研究对象,验证这类网络协议的后一致性,并对不满 足的协议提出针对性的攻击路径报告
[0006] 本发明提出了一种认证邮件协议的后一致性分析方法,该方法包括以下步骤:
[0007] 步骤一、一个基于签密的认证邮件协议包括Exchange协议、Resolve协议,正常情 况下执行Exchange协议,当发生异常或者纠纷的时候执行Resolve协议,实现认证邮件协 议建模,模型如下:
[0008] Exchange 协议
[0009]

【权利要求】
1. 一种认证邮件协议的后一致性分析方法,其特征在于,该方法包括以下步骤: 步骤一、一个基于签密的认证邮件协议包括Exchange协议、Resolve协议,正常情况下 执行Exchange协议,当发生异常或者纠纷的时候执行Resolve协议,实现认证邮件协议建 模,模型如下: Exchange 协议: El: A - B: h (m),Eska (h (m)) E2:B A:c, r, s, h(receiptb), Certtb, Eskb(h(m)) E3: A - B: Epkb (m) E4:B -A:Epka(receiptb); Resolve 协议: R1: A - TPP: Certtb, Eskb (h (m)),Epkttp (m) R2:TTP - A:Epka(receiptb) R3: TTP - B: Epkb (m); 其中E1、E2、E3、E4代表Exchange协议的流程,El表示A发给B :消息m的哈希值以及 通过A的私钥加密后的m的哈希值;E2表示B回复A :关于收据receiptb的签名(c, r, s)、 收据的哈希值、TTP在协议运行前为B的签名收据产生的证书Certtb以及用B的私钥加密 的消息m的哈希值;E3表示A通过之前信息确认对方是B,则A发给B :用B的公钥加密的 消息m ;E4表示B收到后,B回复A :用A的公钥加密的收据; Rl、R2、R3代表Resolve协议的流程,R1表示A发给TTP :TTP在协议运行前为B的签 名收据产生的证书Certtb,通过Α的私钥加密后的m的哈希值;R2表示ΤΤΡ回复A :用Α的 公钥加密的收据;R1表示TTP发给B :用B的公钥加密的消息m ; A、B、TTP分别代表邮件的发送方、接收方以及可信第三方;m表示发送的消息; receiptb表示接收方B的收据,认证邮件协议运行前可信第三方TTP给接收方B生成一 个收据receipt b,接收方B产生关于收据receiptb的签名(c,r,s),发送方A通过验证签 名(c,r,s) =H(h(receiptb))是否成立来确定接收方B对收据receiptb的签名是否可接 受;Cert tb表示可信第三方TTP在认证邮件协议运行前为接收方B的签名收据产生的证书 Certtb = Epkttp (receiptb); 步骤二、后一致性验证建模,模型如下: query sequence(sendRec(r) = = > sendMsg(m)); 步骤三、攻击者建模,攻击者模型为自动化更新的攻击者知识库,如下: 攻击者的初始知识即为initK=ChannelMsg U NewMsg U NotSafeMsg,表示K的初始值 为信道上的消息、新发送的消息以及没有用安全秘钥加密的消息,以及攻击者规则:

定义Κ (Μ)表示攻击者拥有知识M,F表示时鲜值集合,P表示公共信道集合,t表示项, SameType(t,M)表示t与Μ类型相同,运用上述的攻击者规则,以及结合有效集合模式可以 更新攻击者知识库Κ ; 步骤四、依据上述"后一致性验证建模"进行后一致性的验证分析,即验证认证邮件协 议的后一致性"ΤΤΡ为Α发送了收据r,其后面是否为Β发送了消息m",具体包括以下处理: 将A、B、TTP的公钥发送到公共信道; A向B发送消息(hash (m),aencs (hash (m),skA)),表示对消息m的哈希值,以及用A的 私钥对这个哈希值签名; B 向 A 发送消息(getcrs (hash (r)),hash (r),aenc (tobitstr (r),pk (skT)),aencs (has h (m),skB)),表示收据r的哈希值以及经过TTP的公钥加密的r,和用B的私钥加密的m的 哈希值;getcrs、tobitstr两个函数是转换参数类型成bitstring型,为了在程序运行时参 数匹配; A向TTP发送异常处理; TTP收到异常处理消息; (aenc (tobitstr (r),pk(skT)), aencs(hash(secr_Attacker), skB), aencsec(secr_ Attacker,pk(skT))),表示A没是收到应有的回应,所以找TTP申诉,提出自己的证据证明 自己已经发送,证据包括:攻击者回复他的收据,用B私钥加密的攻击者仿造信息的哈希 值,用TTP公钥加密的攻击者的消息),所述收到的消息为A进行异常处理时发送消息,被攻 击者拦截转发为上一次协议运行时的消息; TTP向A发送aencsec (r, pk (skA)),表示TTP发送证明,A已经发送过消息,收据为r ; 执行事件sendRecOO,即为了程序验证后一致性而设定的一个标志; TTP向B发送aencsec (secr_Attacker, pk(skB),)表示由中间人篡改后的消息,并用B 的公钥加密; 执行事件sendMsg(secr_Attacker),即为了程序验证后一致性而设定的第二个标志); 在TTP向A发送了收据r后,向B发送了被中间人篡改后的消息secr_Attacker,因此 不满足后一致性 query sequence (sendRec (r) = = > sendMsg (m)),表不 TTP 向 A 发送 了收 据r不一定能保证向B发送了消息m,即该协议存在重放攻击,恶意攻击者保留上一次的消 息,在异常处理时发送上一次的消息导致出现攻击,使得A受到了收据r,而B未收到本次消 息m。
【文档编号】H04L12/58GK104104587SQ201410158530
【公开日】2014年10月15日 申请日期:2014年4月18日 优先权日:2014年4月18日
【发明者】李晓红, 郭奇, 谢肖飞, 胡静, 许光全 申请人:天津大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1