无线通信安全作业_第1页
无线通信安全作业_第2页
无线通信安全作业_第3页
无线通信安全作业_第4页
无线通信安全作业_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于身份的认证密钥协商协议目录概述技术背景密钥协商协议安全属性双线性对BDDH假设Smart协议ID-BJM模型王等人的协议基于身份的认证密钥协商协议WCD-1方案及其安全性分析基于身份的认证密钥协商协议WCD-2方案及其安全性分析基于身份的认证密钥协商协议WCX方案及其安全性分析安全增强的身份基认证密钥协商协议及这种新方案的安全性分析结束语1.概述无线通信中的安全问题受到越来越多的重视,加解密的应用也越来越广泛。随之带来的密钥安全问题显得尤为重要。密钥协商协议作为产生密钥的一种方式,必须能够提供保证信息的安全性。同时为了协议更适合在实际中应用,协议的计算开销应尽可能的小。在通信过程中使用认证密钥协商协议可以使2个通过不安全信道通信的用户协商达成一个共享的会话密钥,还能让这2个用户彼此认证对方的身份。协商得到的会话密钥可以为后续的通信会话提供保密、认证或者完整性等安全服务。2.技术背景密钥协商协议安全属性(1)已知会话密钥安全性。已知旧的会话密钥不会影响其他会话密钥的安全性。(2)前向安全性和完美前向安全性。如果一方或多方参与实体的长期私钥泄露,攻击者不能有效计算旧的会话密钥,称之为部分前向安全性;如果所有参与实体的长期私钥泄露,攻击者仍然不能有效计算旧的会话密钥,称之为完美前向安全性。(3)PKG前向安全性。在基于身份的密钥协商协议中,攻击者即使获得私钥产生中心PKG的主密钥,仍然无法计算参与实体的会话密钥。2.技术背景(4)抗密钥泄露伪装。一个参与实体A的长期密钥泄露将使得攻击者可以伪装A,但不应导致攻击者可以伪装成其他实体与A进行成功的密钥协商。(5)无密钥控制(密钥完整性)。参与实体的任何一方或者第三方都不能在协议执行结束时使得会话密钥成为其预先选定的值。由于一轮两方隐式认证密钥协商协议的特殊性,协议交互的响应方总是在收到协议发起方的交互消息之后产生响应消息的,因而响应方天生具备比发起方更多的主动性,这种不公平性导致不可能实现真正意义上的无密钥控制。但是最终会话密钥的生成一定是双方共同贡献产生的。对于攻击者而言,同样不能控制协商的会话密钥,通常我们将对应于攻击者的密钥控制归结到会话密钥完整性的要求。2.技术背景(6)抗未知密钥共享。一个参与实体A不应被强迫与一个实体C实现共享会话密钥,而实际上参与实体A却认为他是在和一个参与实体B完成的密钥协商。(7)消息独立性。两方或多方参与会话密钥协商的实体交互的消息应是独立产生并交互的,不受其他方的制约和强迫。显然在单轮两方密钥协商协议中消息之间是独立的,但是在带有密钥确认的多轮密钥协商协议中不能保证独立性,用于密钥确认的消息一定与对方发送的消息相关联。该安全属性不适用于带有密钥确认的密钥协商协议。(8)已知会话相关临时秘密信息安全性。当参与实体在一次会话密钥协商过程中使用的临时秘密信息(短期密钥)泄露后(但长期私钥未泄露),不应当影响到会话密钥的安全性。双线性对设G1、G2分别是阶为素数p的加群和乘群,P为G1的一个生成元。双线性对 :G1×G1G2为具有如下性质的映射:(1)双线性对所有的P,Q,R∈G1,a,b∈Z*q,存在(P+Q,R)=(P,R)(Q,R),(P,Q+R)=(P,Q)(P,R),(aP,bR)=(P,Q)ab。(2)非退化性(P,Q)≠1,1是G2的单位元。(3)可计算性对所有的P,Q∈G1,存在有效算法可以计算(P,Q)。BDDH假设设P,aPe,(P,P)bc,abcP,rP∈G1,其中,a,b,c,r∈Z*q。在多项式时间内无法证明(P,aP,(P,P)bc,abcP)=(P,aP,(P,P)bc,rP)。Smart协议Smart运用了双线性对的知识提出了一个基于身份的认证密钥协商协议——Smart协议。在Smart协议中,用户A选择一个一次性密钥a∈Ζ*q,计算TA=aP,并发送TA

给用户B。同样,用户B选择一个一次性密钥b∈Ζ*q,计算TB=bP,并发送TB

给用户A。然后,用户A计算KAB

=

(SA,TB)(aQB,Ps),用户B计算KBA

=(SB,TA)(aQA,Ps)。这样,两个用户就得到了一个相同的密钥:K=KAB=KBA

=(bQA+aQB,Ps)。

该协议提供了已知密钥安全性、部分前向保密性、未知密钥共享安全性、密钥泄漏安全性和密钥控制安全性。ID-BJM模型1993年Bellare和Rogaway提出基于随机预言机的安全模型。在该模型中,散列函数被模拟为随机预言机,随机预言机模型在很多方案的安全性证明中起到了关键作用。但是,近年来人们逐渐认识到某些在随机预言机模型下可证明安全的方案在实际应用中并不安全,因为散列函数不能真正模拟随机预言机。因此,在不借助随机预言机的标准模型下可证明安全的方案更具有实际意义。ID-BJM模型Chen等人的协议首次在随机预言机模型下证明其安全性,但他们的协议也不满足完善前向安全性和PKG前向安全性。ID-BJM模型下安全的认证密钥协商协议的安全性定义包含了已知密钥安全性、未知密钥共享安全性、抗被动攻击和主动攻击、抗密钥泄露伪装性和无密钥控制性等基本的安全属性。该模型包括了一个协议参与者集合U和一个主动攻击者E。每个参与者被模拟为一组预言机(Oracle),预言机指协议的参与者I与J之间会话的第n个实例。攻击者被定义为一个概率多项式时间图灵机,并能访问模型中所有的预言机。对于良性(benign)的攻击者,它只是诚实地传递预言机之间的信息。ID-BJM模型定义1会话标识符SID:预言机发送和接收的所有消息的串联。定义2搭档预言机PID:若2个预言机和在同意(accept)状态时有相同的会话标识符SID,则称和互为搭档预言机,I和J互为搭档。通过定义挑战者C与敌手E之间的游戏来定义密钥协商协议的安全性。挑战者C可以模拟所有的预言机,密钥生成中心PKG和随机预言机,产生主密钥和所有的系统参数,并为参与者I产生私钥SI

。攻击者E允许进行下列预言机查询(Oraclequery)。ID-BJM模型1)Send(I,J,n,M)查询:E可以向预言机发送消息M,该预言机按照协议规范应答一个响应消息m,预言机将每个收到和发出的消息都记入它的运行脚步记录中。若预言机收到的第一条消息M≠φ,那么该预言机作为发起者(initiator)发起一次会话;否则,它担任响应者(responder)的角色。Reveal()查询:收到此查询的预言机,返回它协商得到的会话密钥。如果该预言机的状态还不是“已接受”(accpted),那么它返回一个符号⊥表示终止。执行了Reveal查询的预言机状态是打开的(opened)。Corrupt(I)查询:此查询要求被询问的协议参与者I返回它拥有的长期私钥SI。相应地,回答过Corrupt查询的实体的状态被称为“已腐化”(corrupted)。Corrupt(PKG)查询:此查询要求返回系统主密钥。Test()查询:在游戏的某个时刻,E可以向一个“新鲜”的预言机发出Test查询,E将收到该预言机所拥有的会话密钥或者一个随机值。该预言机通过投掷一枚公平硬币b∈{0,1}来回答此查询:若投币结果为0,那么它返回自己协商获得的会话密钥;否则,它返回会话密钥空间{0,1}k

上的一个随机值。这里,k表示会话密钥的比特长度。ID-BJM模型在游戏的第2阶段,E可以继续针对预言机进行Send,Reveal和Corrupt查询。E所受到的限制为:它不能对它所选被测试的预言机及其搭档预言机(若搭档预言机存在的话)进行Reveal查询。另外,E也不能对被测试参与者的意定伙伴进行Corrupt查询。输出:最后,E输出一个对b的判断(记为b‘)。若b’=b,那么称E赢得了此游戏。文中定义E获胜的优势概率为AdvE(l)=2Pr[b‘=b]−1(l为安全参数)。定义3新鲜预言机:预言机在同意(accept)状态(因此得到一个会话密钥)是未打开的,其搭档预言机也未打开,搭档J没有被腐化,则预言机是新鲜的(fresh)。定义4ID-BJM模型下安全的认证密钥协商协议,若协议满足下列性质:1)只存在良性攻击者的情况下,预言机与其搭档预言机在接受状态时得到相同的会话密钥SK,且均匀分布在密钥空间{0,1}k

上。2)游戏结束后,敌手E成功的优势AdvE

(l)是可忽略的。称该协议为ID-BJM模型下安全的认证密钥协商协议。3.王等人的协议王圣宝等人给出的一个会话密钥托管模型下的基于身份的认证密钥协商协议WCD-1方案和一个无会话密钥托管模型下的基于身份的认证密钥协商协议WCD-2方案。WCD-1方案直接利用Gentry公钥加密方案构造,该方案巧妙地利用了公钥加密方案中为保证明文加解密安全而采用的随机盲化方法以达成在加密方和解密方安全传递秘密,该方法正好可以利用来实现密钥协商,而不需要真正的加解密手段实现密钥协商,因而有较高的计算效率。WCD-2方案对WCD-1方案进行了改进,改进方法试图引入PKG不可计算部分,以达到无会话密钥托管的目的。WCD-1方案及安全属性分析(1)系统建立阶段:PKG随机选取两个生成元g,h∈G1和α∈Zp,计算g1=gα。系统公开参数为(g,g1,h),系统主密钥为α,H2为会话密钥抽取函数。(2)私钥生成阶段:对给定身份ID∈Zp,随机选择hID∈Zp,计算身份的私钥dID=<rID,hID>,其中hID=(hg-rID)1/α-ID。对每一个身份ID选择固定的rID。(3)密钥协商阶段:假设IDA与IDB进行会话密钥协商。令gA=g1g-IDA,gB=g1g-IDB和tT=e(g,g)。协议过程如下:IDA随机选择x∈Zp,计算TA1=gxB,TA2=txT,将TA=TA1‖TA2发送给IDB;IDB随机选择y∈Zp,计算TB1=gyA,,TB2=tyT,将TB=TB1‖TB2发送给IDA;IDA计算共享秘密:KAB=e(TB1,hA)·(TB2)rA·e(g,h)x;IDB计算共享秘密:KBA=e(TA1,hB)·(TA2)rB·e(g,h)y;由以上等式容易看出KAB=KBA=e(g,h)x+y,从而IDA与IDB可以计算出相同的会话密钥:sk=H2(IDA‖IDB‖TA‖TB‖e(g,h)x+y)WCD-1方案及安全属性分析显然方案最终会话密钥只关联于临时秘密x和y的选取。只掌握长期密钥的情况下可以很容易计算最终的会话密钥,而不具备完美前向安全性,只具有部分前向安全性;只掌握临时秘密的情况下同样可以很容易计算出共享会话密钥,因而不具备已知会话相关临时秘密信息安全性;由于PKG掌握系统主密钥,容易计算得到实体的长期私钥,进而可以容易地计算实体的会话密钥,从而不具有PKG前向安全性,只能用于会话密钥托管环境中。WCD-2方案及安全属性分析(1)系统建立阶段:PKG随机选取三个生成元g,h,t∈G1和α∈Zp,计算g1=gα。系统公开参数为(g,g1,h,t),系统主密钥为α,H2为会话密钥抽取函数。(2)私钥生成阶段:对给定身份ID∈Zp,随机选择rID∈Zp,计算身份的私钥dID=<rID,hID>,其中hID=(ht-rID)1/α-ID。对每一个身份ID选择固定的。(3)密钥协商阶段:假设IDA与IDB进行会话密钥协商。令gA=g1g-IDA,gB=g1g-IDB和tT=e(g,t)。协议交互过程如下:IDA随机选择x∈Zp,计算TA1=gxB,TA2=txT,将TA=TA1‖TA2发送给IDB;IDB随机选择y∈Zp,计算TB1=gyA,,TB2=tyT,将TB=TB1‖TB2发送给IDA;IDA计算共享秘密:KAB1=e(TB1,hA)·(TB)rA·e(g,h)x,KAB2=TxB2IDB计算共享秘密:KBA1=e(TA1,hB)·(TA2)rB·e(g,h)y,KBA2=TyA2从以上公式容易看出KAB1=KBA1=e(g,h)x+y与KAB2=KBA2=e(g,t)xy,从而IDA与IDB可以计算出相同的会话密钥:sk=H2(IDA‖IDB‖TA‖TB‖e(g,h)x+y‖e(g,t)xy)WCD-2方案密钥协商阶段图ABXyKAB1=e(TB1,hA)·(TB2)rA·e(g,h)x

KBA1=e(TA1,hB)·(TA2)rB·e(g,h)yKAB2=TxB2

KBA2=TyA2skA=H(A|B|TA|TB|KAB1|KAB2)skB=H(A|B|TA|TB|KBA1|KBA2)

TA=TA1|TA2TB=TB1|TB2对WCD-2协议的安全性分析对密钥泄漏模仿攻击的扩展定义定义1(密钥泄漏模仿攻击,KeyCompromiseImpersonation,KCI)密钥泄漏模仿攻击是一种已知密钥的攻击,即当A的长期私钥泄漏之后,攻击者可以向A冒充B。定义2(主私钥泄漏模仿攻击,MaserKeyCompromiseImpersonation,MKCI)若实体的私钥不完全依赖于KGC的主私钥,则当KGC的主私钥泄漏之后(实体私钥未泄漏),攻击者可以向一个实体(如A)冒充另一个实体(如B)。定义3(增强的私钥泄漏模仿攻击,StrengthenKeyCompromiseImpersonation,SKCI)若实体的私钥不完全依赖于KGC的主私钥,则当KGC的主私钥和实体A的长期私钥泄漏之后,攻击者可以向A冒充B。易知,一个协议若可抵抗增强的私钥泄漏模仿攻击,则一定能抵抗私钥泄漏模仿攻击和主私钥泄漏模仿攻击。主私钥泄漏模仿攻击首先分析协议不能抵抗主私钥泄漏模仿攻击。假设一个攻击者C获得了主私钥(但产生用户长期私钥所需的随机数未泄漏),则C试图向A模仿B如下:(1)A随机选取一个临时私钥xZp并计算相应的临时公钥与之后发送TA=TA1|TA给B。(2)C拦截消息TA并随机选取一个临时私钥zZp,计算相应的临时公钥及。之后,C发送TC=TC1|TC2给A。收到TC后,A计算共享秘密(thesharedsecret)如下KAB1=e(TC1,hA)·(TC2)rA·e(g,h)x=e(g,h)x+zKAB2=Txc2=e(g,t)xz(3)由于C知道,由,首先计算。C进一步计算共享秘密如下:

一次协议运行结束后,C成功地模仿B与A协商获得了一个会话密钥sk=H(A|B|TA|TC|KCA1|KCA2)

主私钥泄漏模仿攻击图AC(B)

XC拦截,C选择

zKAB1=e(TC1,hA)·(TC2)rA·e(g,h)x

KAB2=TxC2skA=H(A|B|TA|TB|KAB1|KAB2)

skC=H(A|B|TA|TC|KCA1|KCA2)TA=TA1|TA2TB=TB1|TB2增强的私钥泄漏模仿攻击假设一个攻击者C获得了用户A的长期私钥<,>及KGC的主私钥(但产生用户长期私钥所需的随机数未泄漏),则C试图向A模仿B。攻击如下:(1)A随机选取一个临时私钥xZp,并计算相应的临时公钥及。之后发送TA=TA1|TA2给B。(2)C拦截消息TA并随机选取一个临时私钥为zZp,计算相应的临时公钥及。之后,C发送TC=TC1|TC2给A。(3)收到后,A计算共享秘密(thesharedsecret)如下:=====(4)由于C知道,由,C首先计算。利用A的私钥<,>,C进一步计算共享秘密如下:====一次协议运行结束后,C成功地模仿B与A协商获得了一个最终的会话密钥sk,由下图所示增强的私钥泄漏模仿攻击图AC(B)

XC拦截,C选择z

====skA=H(A|B|TA|TB|KAB1|KAB2)

skC=H(A|B|TA|TC|KCA1|KCA2)TA=TA1|TA2TC=TC1|TC2对WCD-2协议的安全性分析由上述分析,我们发现该协议不能抵抗主私钥泄漏模仿攻击和增强的私钥泄漏模仿攻击。通过对协议及安全模型的分析,我们从两个不同的角度给出导致已经证明安全的协议存在攻击的原因。当收到corrupt询问时,被询问的协议参与者返回自己的长期私钥,但不能返回KGC的主私钥,因此无法反映KGC主私钥泄漏的情况。也就是说,该模型不允许泄漏KGC的主私钥。这是不太现实的。因为在IBC中,KGC是一个可信的私钥生成器,它利用一个固定的主私钥为域内所有用户产生并分发私钥。恶意攻击者可能通过一些非常手段获得主私钥,如果用户的私钥不仅仅依赖于KGC的主私钥,则我们希望主私钥的泄漏不影响协议的安全性质。其次,从协议本身来看,由协议的消息流可以看出,两个参与者之间缺少相互的实体认证,因此攻击者拦截得到A的消息后,可以冒充B产生消息并发送给A而不被A所察觉。参与者继续执行协议,最终生成一个会话秘密,而攻击者也可以利用自己已有的知识产生一个完全相同的会话秘密,从而最终与A建立一个共享的会话密钥。WCX方案及安全属性分析汪等针对无密钥托管的认证密钥协商协议的要求提出了一个改进的无会话密钥托管的认证密钥协商协议WCX方案(1)系统建立阶段:与WCD-1协议基本相同。其中H为会话密钥抽取函数。(2)实体密钥对生成阶段:与WCD-1协议相同,令gT=e(g,g)。(3)密钥协商阶段:IDA随机选择x∈Zp,计算TA1=gxb,TA2=gxT,TA3=gx将TA=TA1‖TA2‖TA3发送给IDB;IDB随机选择y∈Zp,计算TB1=gyA,TB2=gyT,TB3=gy,将TB=TB1‖TB2‖TB3发送给IDA;IDA计算共享秘密:KAB1=e(TB1,hA)·TB2rA·e(g,h)x,KAB2=TxB3IDB计算共享秘密:KBA1=e(TA1,hB)·TA2rB·e(g,h)y和KBA2=TyA3IDA计算会话密钥:skAB=H(IDA‖IDB‖TA‖TB‖KAB1‖KAB2)IDB计算会话密钥:skBA=H(IDA‖IDB‖TA‖TB‖KBA1‖KBA2)显然KAB1=KBA1=e(g,h)x+y

,KAB2=KBA2=gxy因此IDA与IDB计算出相同的会话密钥为:sk=H(IDA‖IDB‖TA‖TB‖e(g,h)x+y‖gxy)该协议满足完美前向安全性和PKG前向安全性。4.安全增强的身份基认证密钥协商协议为了提供更多的安全属性,提高方案的安全性,本章构造了一个安全增强的认证密钥协商方案。改进后的新方案几乎满足全部已知的安全属性,特别是满足完美前向安全性、PKG前向安全性以及已知会话相关临时秘密信息安全属性。与此时,新方案保持了良好的计算效率。新方案描述如下:

(1)系统建立阶段:PKG随机选取两个生成元g,h∈G1和α∈Zp,计算g1=gα。系统公开参数(g,g1,h),系统主密钥为α,H为会话密钥抽取函数H:{0,1}*→{0,1}k,k为会话密钥长度。(2)密钥生成阶段:对给定身份ID∈Zp,随机选择rID∈Zp,计算身份的私钥dID=<rID,hID>,其中hID=(hg-rID)1/(α-ID)。对每一个身份ID选择固定的rID。(3)密钥协商阶段:假设IDA与IDB进行会话密钥协商。令gA=g1g-IDA,gB=g1g-IDB和gT=e(g,g)。协议过程如下:安全增强的身份基认证密钥协商协议协议过程如下:IDA随机选择x∈Zp,并计算TA1=gxB,TA2=gxT,TA3=grAT,将TA=TA1‖TA2‖TA3发送给IDB;IDB随机选择y∈Zp,并计算TB1=gyA,TB2=gyT,TB3=grBT,将TB=TB1‖TB2‖TB3发送给IDA;IDA计算共享秘密如下:KAB1=e(TB1,hA)·TB2rA·e(g,h)x,KAB2=(TB2·TB3)(x+rA)IDB计算共享秘密如下:KBA1=e(TA1,hB)·TA2rB·e(g,h)y,KBA2=(TA2·TA3)(y+rB)IDA计算会话密钥为:skAB=H(IDA‖IDB‖TA‖TB‖KAB1‖KAB2)IDB计算会话密钥为:skBA=H(IDA‖IDB‖TA‖TB‖KBA1‖KBA2)容易看出,KAB1=KBA1=e(g,h)x+y,KAB2=KBA2=gT(x+rA)(y+rB)=gTxy·gTxrB·gTyrA·gTrArB因此IDA与IDB计算出共享会话密钥为:sk=H(IDA‖IDB‖TA‖TB‖e(g,h)x+y‖gTxy+xrB+yrA+rArB)安全增强的身份基认证密钥协商协议该协议满足完美前向安全性和PKG前向安全性。即使敌手获得IDA和IDB的私钥,以及系统主密钥α,只能计算出第一个共享秘密KAB1=KBA1=e(g,h)x+y。若要得到第二个共享秘密,必须由gx和gy计算出gxy。该方案通过增加交互消息TA3=gx和TB3=gy,使得在会话密钥生成中增加PKG不可计算因素,从而达到PKG前向安全属性。当然这势必会影响协议执行的效率。同时注意到,改进协议中(g,h)x+y和gxy两个因素仍然是在已知会话相关临时秘密信息下可计算的,因而该方案仍然不满足已知会话相关临时秘密信息安全属性。新方案安全性(1)已知会话密钥安全性。该方案中已知旧的会话密钥不会影响新的会话密钥安全性。每一次协议的执行,临时秘密x和y都是分别由参与实体A和B独立随机选取的。多个会话密钥值之间具有无关性。(2)前向安全性和完美前向安全性。如果A或者B以及A和B的长期密钥dID=<rID,hID>泄露,将不会影响旧的会话密钥安全性。虽然这将导致攻击者可以根据历史交互消息和长期密钥计算KAB1=KBA1=e(g,h)x+y,,,,,,但是由于(,)和(,),计算和,进而计算KAB2=KBA2=...,需要解决CDH困难问题。通过(,)计算同样需要解决CDH困

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论