没有合适的资源?快使用搜索试试~ 我知道了~
制作和主办:ElsevierJournal of King Saud University沙特国王大学沙特国王大学学报www.ksu.edu.sawww.sciencedirect.com一种改进的基于Hash函数和椭圆曲线密码的移动商务三方认证密钥交换协议S.K. Hafizul Islama,*,Ruhul Aminb,G.P.Biswasb,Mohammad SabzinejadFarashc,熊力d,萨鲁·库马里eaBirla Institute of Technology and Science,Pilani Campus,Rajasthan 333031,Indiab印度贾坎德邦Dhanbad 826004印度矿业学院计算机科学与工程系c伊朗德黑兰哈拉兹米大学数学科学和计算机系d湖南科技大学计算机科学与工程学院,湘潭411201数学系,Ch. Charan Singh University,Meerut 250004,Uttar Pradesh,印度接收日期:2015年1月12日;修订日期:2015年4月22日;接受日期:2015年8月27日2015年11月3日在线发布摘要文献中提出了许多三方认证密钥交换(3PAKE)协议,通过可信服务器在两个用户之间建立一个安全的会话密钥。所计算的会话密钥将确保在任何不安全的通信网络上的用户之间的安全消息交换。本文分析了Tan提出的3PAKE协议的不足之处移动商务环境。该协议基于椭圆曲线密码和单向哈希函数。为了证明所提出的3PAKE协议的安全性,我们使用了广泛接受的AVISPA软件,其结果证实,所提出的协议是安全的,对主动和被动的攻击,包括重放和中间人攻击。该协议不仅在AVISPA软件中是安全的,*通讯作者。电 子 邮 件 地 址 : hafi786@gmail.com ( S.H. 伊 斯 兰 教 ) ,amin_live.com(R.阿明),gpbiswas@gmail.com(G. P.比斯瓦斯),khu.ac.ir(M.S. Farash),lixiongzhq@163.com(X. Li),saryusiirohi@gmail. com(S. Kumari)。沙特国王大学负责同行审查http://dx.doi.org/10.1016/j.jksuci.2015.08.0021319-1578© 2015作者。制作和主办由爱思唯尔B.V.代表沙特国王大学。这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。关键词椭圆曲线密码;认证密钥交换协议;中间人攻击;移动商务环境312S. H. Islam等人针对相关的众多安全攻击,如中间人攻击,模仿攻击,并行攻击,密钥泄露模仿攻击等,此外,我们的协议设计具有较低的计算成本比其他相关协议。因此,该协议是更有效的,更适合于实际使用比其他协议在移动商务环境。©2015作者。制作和主办由爱思唯尔B.V.代表沙特国王大学。这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。1. 介绍当通信介质是公共网络时,通信客户端的认证和传输消息的因此,为了同时实现这两个安全目标,已经引入了许多3PAKE协议3PAKE协议允许两个客户端在可信服务器的帮助下相互认证会话密钥随后可用于在客户端之间建立安全通道3PAKE协议分为以下几类:基于密码的3PAKE(Lin等人,2000,2001,2004;Chang和Chang,2004; Lu和Cao,2006; Chen等人,2008 b;Yoon和Yoo,2008; Sun等人,2005; Lee和Hwang,2010;Yang等人,2007; Reddy和Padmavathamma,2007)和使用服务器公钥的3 PAKE协议(Chen等人,2008 a;Yang和Chang,2009; Pu等人,2009; Tan,2010 a)。在基于口令的3PAKE协议中,两个客户端与可信服务器共享一个易于记忆的口令,然后在服务器的帮助下安全地生成会话密钥然而,这些协议中的大多数容易受到不可检测的离线密码猜测攻击(Lin等人,2000,2001),在线密码猜测攻击(Chen等人,2008 b; Yoon和Yoo,2008; Sun等人,2005; Nam等人,2006; Phan等人,2008年)、冒充攻击(Chung和Ku,2008年)、未 知密 钥共 享攻 击(Phan 等 人,2008; Guo等 人,2008)等。此外,这些协议的计算成本和通信负载很重,因为它们采用了模幂(Lin等人,2001; Lee等人,2004; Chang和Chang,2004; Chen等人,2008 b; Sun等人,2005)、公共/对称密钥加密/解密(Lin等人,2000,2001; Chang和Chang,2004; Yoon和Yoo,2008;Sun等人,2005)并且在每一轮中发送的消息大小很大(Lin等人,2000; Lee等人,2004; Chang和Chang,2004; Sun等人, 2005年)。由于低功耗移动设备的带宽 、计 算能 力和 存 储空 间的 限制 另一 种类 型 的3PAKE协议使用服务器在图1中,我们制作了一个树形结构来显示3PAKE协议的划分类别及其差异。1.1. 文献综述在2008年,Chen等人(2008 a)提出了一个使用Round的计算高效的3 PAKE协议,但该协议后来被证明容易受到Yang和Chang(2009)所声称的Stolen-Verifier攻击。如果对手从用户窃取了预先共享的秘密,则他/她可以模拟合法客户端并与其他客户端共享会话密钥。此外,该协议具有较高的计算成本和通信负载。因此,Chen et al.的3PAKE协议不适合移动商务环境。为了克服Chen等人的缺点,Yang和Chang(2009)提出了一种高效的3PAKE协议,该协议使用椭圆曲线密码(ECC)并且在客户端和服务器之间不共享任何预先共享的秘密,其中用于建立会话密钥的计算和通信开销显著减少。然而,Pu等人(2009)证明了该协议可能容易受到未知密钥共享攻击,中间人攻击和冒充攻击。1.2. 动机和贡献2010年,Tan(2010a)独立指出Yang和Chang2011年,Nose等人(2011)证明了TanNose等人还声称,这三种攻击可以安装在Yang和Chang的协议上s方案(Pu等人,2009年)。此外,本文还证明了Tan的协议不能抵抗已知的特定于会话的临时攻击和时钟同步问题。另外,Tan 提出了一种基于椭圆曲线密码体制的移动商务3PAKE协议。提出的协议采用简单的散列函数(消息摘要算法,1992年),但不需要加密/解密(高级加密标准,2001年)过程。该协议在已知攻击下是安全的,并且具有较低的计算代价,因此适用于移动商务环境。1.3. 文件概要第二节介绍了椭圆曲线密码的基本概念和相关的计算问题。第三节介绍了Tan然后,我们提出了我们的改进协议,在第5节。我们的协议在AVISPA软件中的正式安全验证在第6节中解释。我们协议的非正式安全性分析见第7节。第八节讨论了第九节的性能分析和本文的结论。一种改进的基于Hash函数和椭圆曲线密码的三方认证密钥交换协议3133PAKE协议3PAKE协议基于(i) 散列函数(ii) 椭圆曲线密码3PAKE协议基于(i) 散列函数(ii) 椭圆曲线密码(iii) 对称加密基于对称密码的3PAKE协议基于公钥密码体制的3PAKE协议基于服务器公钥的3PAKE协议基于密码的3PAKE协议-þ¼-●联系我们3-ðÞðÞ2. 预赛2.1. 椭圆曲线密码图1不同类型的3PAKE协议。● 点的顺序。一个点P的阶数为d,如果d是最小的整数,使得dP<0且d>0。ECC 最 初 由 Koblitz ( 1987 ) 提 出 , 其 安 全 性 基 于ECDLP的困难性。后来,由于其在安全性、通信和计算等方面的有效性,它被广泛应用于各种密码学原型的设计中,并提出了一系列基于ECC的密码公钥密码体制为了清楚起见,下面给出椭圆曲线密码学的基础知识和一些相关的设E=Fq是素域Fq上的椭圆曲线点的集合,由以下非奇异椭圆曲线方程定义:y2modq¼x3axbmodq1其中x;y;a;b2Fq和<$4a3<$27b2 <$modq- 0。 可加椭圆曲线群定义为Gq<$f<$x;y<$:x;y2Fq和<$x; y<$2 E=F qg[fOg,其中点“O“称为”无穷远点“或”零点“。下面给出关于椭圆曲线群性质的简要讨论加点。设P;Q是曲线(1)上的两点,则P Q R,其中连接P和Q的直线与曲线(1)相交于它相对于x轴的反射是R。减分法。如果Q P,则P Q P P O,即,连接P和P的直线与曲线(1)相交于O。双倍积分。点加倍是将曲线(1)上的点P与其自身相加,以获得曲线(1)上的另一点Q。同样的曲线。设2P/4Q,P处的切线相交于2.2. 计算问题定义1(椭圆曲线离散对数问题(ECDLP))。给定Q;R2E q<$a;b<$,其中R<$a·Q和a2Zωq。 很难从R计算出a。定义2(计算Diffie-Hellman(CDH)问题)。对于任意a ; b 2 Zω q,给定<$Q;a·Q;b·Q<$2Eq <$a;b<$,a·b·Q的计算是困难的.3. Tan的3PAKE协议综述在本节中,我们回顾并分析了基于ECC的Tan的3 PAKE协议(Tan,2010 a)(Koblitz ,1987; Menezes等人,1996年)。该协议由两个阶段组成:系统初始化阶段和认证密钥交换阶段。3.1. 系统初始化阶段在该阶段,S对系统的参数进行如下选择:步骤1选择一个有限域Fqoverq> 2160.2.选择 椭圆曲线E qa;b:y2 mod q¼F q上阶为n的n × n ×x×ax × n×b× mod q,其中Q处的曲线(1)及其相对于x轴是Q。● 标 量点 乘 。G q中 的标 量 点乘 被 定义 为 cP<$P<$P<$···<$P(c次),其中c2Zωq是标量。a;b2Fq和n4a3n2 7b2n- 0 mod q。3.选择对称加密/解密算法Ek=Dk(例如,AES(高级加密标准,2001)),其中k表示对称密钥。●●314S. H. Islam等人hi喜喜ðÞ¼ ð Þ¼ð Þ ¼ ðÞ¼·¼··hiKðÞð Þ ðÞ¼·¼··¼ ðÞð Þ ðÞð Þ ¼ ðÞ一一一¼·步骤4在E q <$a; b<$a上选择一个n阶基点Q。步骤5发布Eqa;b;Ek=Dk和Q。步骤6客户端A和B必须注册到S以生成它们的私钥/公钥对A=U A和B=U B。S的私钥/公钥对是Ud S=U S,其中U A<$d A·Q;U B<$d B·Q和U S<$d S·Q。3.2. 认证密钥交换阶段这一阶段分为三轮,如下所述第一回合在这一轮中,A执行以下操作:步骤1选择一个整数rA2Zωq 随机计算R A<$r A·U A和K A<$r A·d A·U S<$rK Ax;K AyAx。A和B,S选择时间戳T S并计算C SAE K 轴 R A;WB;ID A;T S;ID S和C SBE KBxR B; W A; ID B; T S; IDS。步骤5S分别向A和B发送IDS;CSA;TS和IDS;CSB;TS。完成会话密钥交换。步骤6A,验证ID S和T S,然后使用K Ax解密C SA并检索RA;W B;ID A;T S;ID SD KAx C SA。然后A检查IDS和TS是否有效,并且解密的RA与他自己在Round中选择的RA1 .一、如果两个条件都成立,那么A确认B被S认证。然后A计算会话密钥SK wA WB wA wB Q。否则,A拒绝该事务。同样,B执行2.随机 选择 wA2ZωqWA¼wA·Q。和然后计算之后的操作 接收IDS;CSB;TS来自酿脓链球菌步骤7 B 验证IDS和TS,和检查的3.选择一时间邮票不是和计算C AS1/4EKAx使用加密密钥Ax加密R A;W A;ID A;ID B;T A。步骤4分别向B和S发送消息IDA;Request和IDA;CSA;RA。这里,消息第二回合在这一轮中,B在接收到发起请求IDA之后执行以下操作;RequestfromA:步骤1选择一个整数rB2Zωq 随机计算R B<$r B·U B和K B<$r B·d B·U S<$rK Bx;K By。2.随机 选择 wB2Zωq和 然后 计算WBW BQ。3.选择一时间邮票T B和计算C BS E KBxRB;W B;ID B;ID A;T B使用加密密钥K Bx。4.发送的消息响应ID BB;C BS;R B分别与A和S相连。这里,消息“响应“意味着B接受A的请求。第 三 回 合 S 在 接 收 到 来 自 A 和 B 的 消 息 IDA;CSA;RA 和IDB;CBS;RB之后执行以下操作:步骤1S首先验证时间戳hTA;TBi,然后计算对称密钥KA<$d S·R A<$dK Ax; K Ay和K B<$d S·R B<$dK Bx; KBy。第2步:测量RA;WA;IDA;IDB;TA、DKAx、CAS和R B; W B; ID B; ID A; T B D KBx C BS 使用K轴和KBx作为解密密钥。步骤3S检查解密的时间戳TA和TB是否与接收的TA和TB相同,然后将解密的IDA和IDB分别与接收的IDA和IDB进行步骤4此外,S检查解密的RA和接收到的RA是否相同。如果结果是否定的,则S向B发送认证失败消息,并且还检查解密的RB和接收到的RB是否相同。如果条件违反,则S向A发送认证失败消息。验证后解密的RB与他自己的RB相同,在第2轮中选择。如果它们相同,则B确认A已经被S认证,并且通过计算SK wB WA wA wB Q来生成会话密钥。 否则,B拒绝交易。4. Tan's 3PAKE协议的安全漏洞虽然Tan4.1. 已知特定会话临时信息攻击2001年,Canetti和Krawczyk(2001)研究了已知的特定 于 会 话 的 临 时 信 息 攻 击 。 后 来 , Chenget al.(2005)指出,如果对手()获得了关于会话的临时秘密(由A和B选择)的知识,但是,他不应该能够确定产生的会话密钥。以下条件促使我们保护此类攻击,由于以下原因,此类攻击可能发生在真实环境中(Mandt,2006):客户端和服务器必须信任随机数生成器的内部/外部源,该随机数生成器可以由(Islam,2014 a,b,c; Islam等人, 2015;伊斯兰和汗,2014)。随机数通常存储在不安全的设备中。如果随机数(短暂的秘密)在每次会话中都没有被正确擦除,那么可能会劫持用户的计算机并学习随机数(Islam,2014 a,b,c; Islam等人,2015;伊斯兰和汗,2014)。从上述讨论中,我们声称Yang和Changs 3PAKE协议(Pu等人,2009)、Tan的3PAKE协议(Tan,2010a)、Tan的3PAKE协议(Tan,2010b)和He等人的3PAKE协议(Tan,2010b)。s3PAKE协议(He等人, 2013)失败●●一种改进的基于Hash函数和椭圆曲线密码的三方认证密钥交换协议315一一¼··ð·Þ¼ 克尔克kð Þ ðÞ¼联系我们¼·¼··以防止已知的会话特定临时信息攻击。由于在Yang和Chang(2009)、Pu等人(2009)、Tan(2010 a,b)和He等人(2013)中,客户端A和B分别选择临时秘密wA和wB,并且在安全认证之后,它们计算的届会议关键作为SK w AWBQ. 如果短暂的秘密,即, WA和wB被公开,则会话密钥SK可以容易地被泄露。因此,Yang和Chang的3PAKE协议(Yang和Chang,2009)、Pu等人的3PAKE协议(Pu et al. s 3PAKE协议(Pu等人,2009)、Tan的3PAKE协议(Tan,2010a)、Tan的3PAKE协议(Tan,2010b)和He等人的3PAKE协议(Tan,2010b)。s 3PAKE协议(He等人,2013)不能抵抗已知的会话特定临时信息攻击。Islamand Biswas(2012)中给出了已知的特定于会话的临时信息攻击的详细解释。4.2. 时钟同步问题在 基 于 时 间 戳 的 协 议 中 ( Tan , 2010 a , b; He 等 人 ,2013),所有连接的设备的系统时钟必须同步,否则,时钟同步问题将妨碍协议执行。Tan然而,时间戳引起了诸如广域网、移动通信网和卫星通信网的大型网络中的时钟同步问题。所有基于时间戳概念的协议都能抵抗利用系统时间戳的重放攻击,由于广域网环境中的传输延迟长且不可预测(Gong,1992),因此所有基于时间戳的协议都存在潜在的重放攻击。在具有紧密同步的系统时钟的通信网络中,例如局域网,基于时间戳的协议是优选的。另一方面,基于随机数的协议适用于难以实现时钟同步的大型网络,例如广域网、移动通信网和卫星通信网。因此,Tan因 此 ,我们确认Tan的3PAKE方案(Tan,2010b)和He等人的" s 3PAKE协议(He等人,2013年)也遇到了同样的问题,因为他们采用了时间戳。请注意,在我们的3PAKE协议中,我们使用了基于随机数(nonce)的解决方案,而不是消除同步问题的时间戳。4.3. 计算量在 表 3 中 , 我 们 观 察 到 Tan ( 2010 a ) 、 Nam 等 人(2006)、Phan等人(2010 a)、Phan等人(2010 a)和Phan等人(2010 a)中提出的协议的计算成本分别为1.2%和1.2%。(2008),Tan(2010 b)和He et al. (2013年)仍然很高。3PAKE协议需要大量的通信处理时间,这意味着两个通信客户端必须花费更多的时间来建立它们之间的公共会话密钥,因此该协议可能不适合移动商务环境。因为,移动设备具有低计算能力、有限的电源和低存储空间。因此,在本发明中,Tan(2010 a)、Nam et al.(2006)、Phan et al. (2008),Tan(2010 b)和He et al.(2013)不能可用于移动商务环境。为了减少计算量,在我们提出的协议中,我们避免使用加密/解密技术,并使用轻量级哈希函数。5. 3PAKE协议针 对 Tan ( 2010 a ) 、 Nam et al. ( 2006) 、 Phan et al.(2008)、Tan(2010 b)和He et al.(2013)的不足,提出了一种基于ECC的移动商务环境下更高效、更安全的3PAKE协议。提出的3PAKE协议采用单向散列函数,而不是昂贵的对称密码系统。在表1中给出了所提出的3PAKE协议中使用的符号。我们的协议分为两个阶段:系统初始化阶段和认证密钥交换阶段。5.1. 系统初始化阶段在此阶段,S将系统参数设置为Tan的3PAKE协议(Tan,2010 a)中的参数在我们的协议中,我们使用单向安全散列函数H(即,MD5)而不是对称的加密/解密工具。5.2. 认证密钥交换阶段在这个阶段中,涉及三个实体:两个客户端A和B,希望在它们之间建立安全会话密钥,以及可信服务器S,其帮助A和B通过公共网络相互认证。我们的协议的详细步骤如下所示第一回合在这一轮中,A执行以下步骤:步骤1随机选取一个整数rA2Zωq,然后计算H AH r A d A和R AH AQ。步骤2然后计算KA dA US dA dS Q ,C ASH ID A ID B R A K A.步骤3发送ID A;请求 和ID A;ID B;R A;C AStoB andS,分别。表1本文中使用的不同符号。符号ABSkqFqQEx=DxdA;UA胡克·阿Eqa;b意义协议参与者(发起者)协议参与者(响应者)协议参与者(服务器)安全参数一个k位长且q>3的大素数一个素数阶为q的n阶椭圆曲线点集,其中a;b2FqEq<$a;b<$a上的一个n阶基点密钥下的对称加密/解密算法x(例如,AES高级加密标准,2001)实体i的私钥/公钥对,其中单向密码散列函数(例如,MD5)消息串联运算符椭圆曲线标量点乘i<$A;B;S,其中di2Zωq和Ui<$Di·Q316S. H. Islam等人Þ¼ðÞ¼ðÞðÞð Þð··克尔克kð Þ ðÞð Þ¼克尔克k¼联系我们¼·¼··¼¼ 克尔克k¼ 克尔克kð Þ¼克尔克 Kk¼··¼·¼··¼ 克尔克 Kk¼·克尔克K k¼¼00ðÞ0第二回合 B接收到A的发起消息ID A ; Request后,执行以下操作.步骤1随机选取一个整数rB2Zωq,然后计算H BH r B d B和R BH BQ。2.计算K Bd BU Sd B d SQ 和CBSH IDB IDA RB KB。3.发送ID B;反应和ID B;ID A,R B;C BS到分别为S第三回合 在收到ID A;ID B;R A,C SA后和IDB;IDA;RB;C来自A和B的BS;S执行以下操作。步骤1分别计算对称密钥KA d SUA dA dS Q和KB dSUB dB dS Q步骤2计算C ASH ID A ID B R A K A使用所接收的RA和所计算的KA。 S检查条件C AS?CAS.如果不成立,S向 B 发 送 认 证 失 败 消 息 。 否 则 , S 计 算CSA<$H_IDAkIDBkRAkRBkKA_ , 并 向A 发 送消 息C_R_B;C_SA_B。步骤3使用接收到的RB和他自己的KB计算CBS H IDBIDA RB KB。 S检查条件C BS ?CBS。如果不成立,S向A发送认证失败消息。否则,S计算CSB H IDB IDA RB RA KB并将消息RA;CSB发送给B。现在,A在接收到来自S的消息RB;CSA之后执行以下操作。步骤4对接收R B;C SA;A计算CSAH ID A ID B R A K A使用他自己在第1轮中生成的R A和K A以及接收到的R B。现在,A检查条件CSA?CSA。如果结果是肯定的,则A计算会话密钥SKH IDA IDB RA RB K,其中K HA RBH A H B Q.否则,A终止会话。现在,B在接收到来自S的消息RA;CSB之后采取以下动作。步骤5后接收R A;C SB;B计算CSbH ID B ID A R B R A K B使用在第2轮中生成的值R B和K B以及接收到的R A。现在,B检查条件C SB1/4?CSB。如果结果为阳性然后计算的届会议关键SKHID AkID BkR AkR BkK,哪里K<$HB·RA<$HA·HB·Q否则,B终止会话。我们解释了所提出的3PAKE协议,图 二、6. 基于AVISPA工具的形式化安全验证仿真本节使用AVISPA模拟器(Amin和Biswas,2015; Islam和Biswas,2014,2013)对拟议的3 PAKE协议进行正式的安全验证,以确保该协议能够抵御主动和被动攻击,包括重放和中间人攻击。本文首先介绍了AVISPA仿真工具的概念和相关知识,然后给出了HLPSL的代码描述和协议的仿真结果。6.1. AVISPA模拟工具AVISPA被认为是一个被广泛接受的模拟工具,用于形 式 化 的 安 全 验 证 , 衡 量 安 全 协 议 是 SAFE 还 是UNSAFE。AVISPA支持高级协议规范语言HLPSL。AVISPA 工 具 的 结 构 如 图 3 所 示 。 目 前 , AVISPA(2015)支持四种不同的后端和基于抽象的方法,这些方法通过HLPSL代码集成第一个后端称为On-the-flyModel-Delay(OFMC),负责以需求驱动的方式探索状态空间的符号技术第二后端(CL-AtSe)提供了从在中间格式(IF)中被写为转换关系的任何安全协议规范到一组约束的翻译,这被有效地用于发现是否存在对协议的攻击。第三个后端是基于SAT的模型检查器,它生成一个proposi- tional公式,然后馈送到一个国家的最先进的SAT求解器和任何发现的模型被翻译回攻击。基于自动近似的安全协议分析树自动机(TA4SP)是最后一个后端,负责使用正则树语言对入侵者知识进行如前所述,HLPSL规范使用hlpsl2if转换器转换为中间格式(IF)(IF)是一种比HLPSL更低级的语言,由AVISPA工具的后端直接读取。可以注意到,该中间翻译步骤对用户是透明的。需要注意的是,AVISPA是一种面向角色的语言,这意味着每个参与者在协议执行期间都扮演一个角色。每个角色相互独立,通过参数获取初始信息,通过通道与其他角色进行通信还应注意,信道可以是安全 的 或 不 安 全 的 。 入 侵 者 是 使 用 Dolev-Yao 模 型(Dolev和Yao,1983)建模的,入侵者有角色系统还描述了会话数、主体数和角色。基于这四个后端,生成输出格式(OF),并在成功执行后,(OF)描述的结果是否安全或不安全的协议,或在什么条件下得到的输出6.2. 拟议方案的简要说明在这一节中,我们讨论了我们提出的3PAKE协议在HPLSL语言中所涉及的所有角色。在图4中,我们用HLPSL语言实现了客户端A的角色。最初,S向A提供私钥/公钥对,然后通过开放信道向A发送Snd_ID A:IDB:RA0:CA S0_ID。要注意的是,随机数RA是使用new()操作生成的,并且A在帮助下发送任何消息的Snd()操作。 声明秘密* fDA0g;subs1;fA;Sg *表示私钥DA0仅为(A,S)所知。在转换2中,A在Rcv()操作的帮助下通过开放信道从S接收Rcv RB:CSA,然后计算会话密钥。在图5中,我们在HLPSL语言中实现了B的角色。类似地,A;S提供安全参数,并最终通过开放信道向S发送Snd_ID B:ID A:RB0:CBS0_ID。应当注意,随机数RB是使用new()操作生成的,并且B发送任何消息一种改进的基于Hash函数和椭圆曲线密码的三方认证密钥交换协议317ðÞf gfg图2提出了3PAKE协议。在 Snd ( ) 操 作 的 帮 助 下 ,宣 言secretDB0;subs2;B;S表示私钥DB仅为(B,S)所知。在转换2中,B在Rcv()操作的帮助下通过开放信道从S接收RcvRA:CSB0,然后计算会话密钥。在图6中,我们在HLPSL语言中实现了S的角色。 S首先分别从A和B并行接收消息Rcv_IDA:IDB:RA0:KA0和Rcv_IDA:IDB:RB0:KB0。然后,S分别向A和B发送SndR A:CS B0和SndR A:CS B0。声明秘密fDSg;subs 3; fSg318S. H. Islam等人的(输出格式)SATMC(SAT模型)氯硒化砷(基于约束逻辑的攻击搜索器)OFMC(动态模型-如果(中级格式)翻译器HLPSL2IFHLPSL(高级协议规范语言)ðÞðÞð Þ(Tree基于自动机协议分析器)TA4SP图3AVISPA工具的架构。表示私钥DS被永久保密并且仅为S所知。在图7中,我们用HLPSL语言展示了会话、目标和环境在会话中,包括A、S和B的角色在内的所有基本角色都用具体的参数实例化环境部分包含一个或多个会话的全局常量和组成,并且还给出入侵者知识。HLPSL的当前版本(2006/02/2013)支持标准身份验证和保密目标。在我们的实现中,验证了以下三个保密目标和两个身份验证。(1) subs1的secretion_of表示A的私钥是保密的,S;A.(2) subs2的secretion_of表示B是保密的,S;B.(3) subs3的secretary_of表示服务器的私钥仅对S保密。(4) authentication_on alice_server_raa表示A生成随机数raa,其中raa仅为A所知,并且如果S通过消息安全地接收到它,则S认证A。(5) authentication_on bob_server_rbb表示B生成随机数rbb,其中rbb仅为B所知,并且如果S通过消息安全地接收到它,则S认证B。6.3. 仿真结果所提出的3PAKE协议对于安全攻击是安全的。7. 进一步安全分析在本节中,我们进一步证明了所提出的协议消除了Tan协议的安全弱点在本节中,我们使用AVISPAweb工具在后端OFMC和CL-AtSe上展示了我们的3 PAKE协议的仿真结果。图图8和图9确保所提出的协议分别在两个后端OFMC和CL-AtSe下是安全的,即,所提出的协议对包括重放和中间人攻击在内的主动和被动攻击是安全的。因此,我们声称,图4HLPSL中用户A(发起者)的角色规范。角色爱丽丝(A,S,B:代理人,% H是hash函数H,Mul:hash_func,Snd,Rcv:channel(dy))played_by Adef=本地状态:nat,DA,UA,IDA,IDB,RAA,Q,US:text,HA、RA、RB、KA、CAS、CSA、SKA、K:消息,公司:hash_funcconst alice_server,server_bob,alice_bob,alice_server,subs1,subs2,subs3:protocol_id初始化状态:=0转换1. 状态= 0 /\ Rcv(开始)=|> State':= 1 /\ DA':=new()/\ UA':= Mul(DA'.Q)/\ RAA':= new()/\ HA':= H(RAA'. DA')/\ RA':= Mul(HA'. Q)/\ KA':= Mul(DA.US)/\ CAS':= H(IDA.IDB. RA'. KA ')/\Snd(IDA.IDB.RA'. CAS ')/\ secret({DA'},subs1,{A,S})一种改进的基于Hash函数和椭圆曲线密码的三方认证密钥交换协议319一一一四分之一阿喜喜喜一¼·¼联系我们克尔克k阿喜克尔克 K kA¼ 克尔克 K k角色服务器(S,A,B:代理,% H是散列函数H,Mul:hash_func,Snd,Rcv:channel(dy))played_by Sdef=本地状态:nat,DS,UB,UA,IDA,IDB,Q,US:text,HB、RB、RA、KB、SKB、KA、KAA、KBB、CSA、CSB:消息,公司:hash_funcconst alice_server,server_bob,alice_bob,alice_server,subs1,subs2,subs3:protocol_id初始化状态:=0转换1.状态= 0 /\ Rcv(IDA.IDB. RA '. KA')/\ Rcv(IDA.美洲开发银行。RB'. KB ')=|> State':= 1 /\ US':= Mul(DS.Q)/\ KAA':= Mul(DS.UA)/\ KBB':=Mul(DS.UB)/\ CSA':= H(IDA.IDB.RA.RB. KAA')/\ CSB':= H(IDB.IDA.RB.RA. KBB')/\Snd(RB. CSA ')/\Snd(RA. CSB ')图6HLPSL中服务器S的角色规范。图5HLPSL中用户B(响应者)的角色规范。定理1. 在假设攻击者可以窃听所有在公共信道上通信的消息的情况下,该协议对用户和服务器的私钥提供了强有力的证据我们假设advertisement()在协议执行过程中捕获了协议所涉及的实体之间的所有传输消息,并试图提取用户和服务器的机密参数,如私钥。为了获得成功,A将面临以下问题。(1) 在执行认证密钥交换阶段期间,从公共信道捕获IDA;IDB,RA;CAS,其中RA HA Q;HA H rA dA;CAS是随机数。值得注意的是不能从R A中提取H AHAQ由于ECDLP。另外,由于密码单向散列函数的不可逆性,不能提取A的私有密钥dA。参数KA依赖于A和S的私钥,并受ECDLP保护。(2) 类似于(1),可以窃听IDB;IDA;RB;CBS,并试图计算B和S的私钥。然而,它将面临与(1)相同的问题。(3) 在拟议的协议的第三轮中,陷阱RB;CSA和RB;CSB ,并试图计算A和S的机密信息,其中CSA HIDA IDB RA RB KA和CSBH ID B ID A R B R A K B。值得注意的是,不能提取任何机密信息从hCSA;CSBi由于单向散列函数。图7HLPSL中会话、目标和环境的角色规范。角色bob(B,S,A:代理,% H是hash函数H,Mul:hash_func,Snd,Rcv:channel(dy))played_by Bdef=本地状态:nat,DB,UB,IDA,IDB,RBB,Q,US:text,HB、RB、RA、KB、CBS、CSB、SKA、K:消息,公司:hash_funcconst alice_server,server_bob,alice_bob,alice_server,subs1,subs2,subs3:protocol_id初始化状态:=0转换1. 状态= 0 /\ Rcv(开始)=|> State':= 1 /\ DB':=new()/\ UB':=Mul(DB'. Q)/\ RBB':= new()/\ HB':= H(RBB'. DB')/\ RB':= Mul(HB'. Q)/\ KB':= Mul(DB.US)/\ CBS':= H(IDB.IDA.RB'. KB')%线50/\Snd(IDB.IDA.RB'. CBS ')/\ secret({DB'},subs2,{B,S})2. 状态= 1 /\ Rcv(RA. CSB ')角色会话(A,S,B:agent,H,Mul:hash_func)def=局部SI、SJ、RI、RJ、TI、TJ:通道(dy)组成爱丽丝(A,S,B,H,Mul,SI,RI)/\ server(A,S,B,H,Mul,SJ,RJ)/\ bob(A,S,B,H,Mul,TI,TJ)端角色role environment()def=const a,s,b:agent,h,mul:hash_func,IDA,IDB,UA,UB,DA,DB,RA,RB,DS,US,CAS,CBS,CSA,CSB,KAA,KBB,HA,HB,KA,KB,RAA,RBB:文本,alice_server,server_bob,alice_bob,alice_server,subs1,subs2,subs3:protocol_id入侵者知识= {a,s,b,h,mul,cas,cbs,csa,csb,ra,rb}组成会话(a,s,b,h,mul)/\ session(s,a,b,h,mul)/\ session(b,s,a,h,mul)end role目标security_ofsubs1security_ofenvironment()320S. H. Islam等人一ðÞ一ð Þ ðÞBSB一BBB安全措施概要有限会话数类型模型议定书/home/avispa/web-interface-computation/./ tempdir/workfileAcJN8I.if目标根据规定,终止CL-AtSe统计分析:0状态可达:0状态翻译:0. 06秒计算:0.00秒C0S0A。因此,S中止协议并向B发送认证失败消息,因为CA S- C 0 S 0 A。 因此,发起者的模仿攻击是不可行的建议协议。H定理3. 所提出的协议是安全的,对模仿的响应者攻击。证据假设A试图模仿B(响应者)。首先,A选择两个随机整数rB;d0B02Zωq,然后计算R0B0<$H<$rBkd0B0<$r和K0B0<$d0B0·US。然后,A分别向B和S发送消息“响应IDB;响应IDA;响应IDB;响应收到后,A消息,S计算KB¼dS·UB和C¼HIDkIDkR00kK。接下来,S比
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- VMP技术解析:Handle块优化与壳模板初始化
- C++ Primer 第四版更新:现代编程风格与标准库
- 计算机系统基础实验:缓冲区溢出攻击(Lab3)
- 中国结算网上业务平台:证券登记操作详解与常见问题
- FPGA驱动的五子棋博弈系统:加速与创新娱乐体验
- 多旋翼飞行器定点位置控制器设计实验
- 基于流量预测与潮汐效应的动态载频优化策略
- SQL练习:查询分析与高级操作
- 海底数据中心散热优化:从MATLAB到动态模拟
- 移动应用作业:MyDiaryBook - Google Material Design 日记APP
- Linux提权技术详解:从内核漏洞到Sudo配置错误
- 93分钟快速入门 LaTeX:从入门到实践
- 5G测试新挑战与罗德与施瓦茨解决方案
- EAS系统性能优化与故障诊断指南
- Java并发编程:JUC核心概念解析与应用
- 数据结构实验报告:基于不同存储结构的线性表和树实现
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功