杨晓燕 侯孟波 魏晓超
(山东大学计算机科学与技术学院 济南 250101) (xyyang@sdu.edu.cn)
基于验证元的三方口令认证密钥交换协议
杨晓燕 侯孟波 魏晓超
(山东大学计算机科学与技术学院 济南 250101) (xyyang@sdu.edu.cn)
三方口令认证密钥交换协议使2个分别与可信服务器共享不同口令的用户建立起秘密的会话密钥.这类协议的优点是用户只需要记忆一个口令就可以与其他注册用户进行通信,因而三方口令认证密钥交换协议更适用于大规模的端到端通信.现有的大多数三方口令认证密钥交换协议均基于随机谕言模型来实现,只有少数协议不依赖服务器拥有公钥,而且在标准模型下是可证明安全的.另外多数协议中的口令以明文的形式存储在服务器上,服务器信息泄露将对用户和服务器的数据安全带来极大的危害.在标准模型下,使用平滑投影Hash函数设计了一个基于验证元的三方口令认证密钥交换协议,并证明了协议的安全性.此协议满足抵抗服务器泄露、不可检测的在线字典攻击和密钥私密性等安全属性.
认证密钥交换;验证元;平滑投影Hash函数;三方口令认证密钥交换;标准模型
认证密钥交换(authenticated key exchange, AKE)是一类重要的密码学原语,它使在不安全的开放网络上通信的2个参与方建立秘密的会话密钥,为双方后续的通信建立安全信道.在认证密钥交换协议中,为防止敌手冒充通信的一方与另一方进行交互,参与方之间需要预先共享秘密信息.AKE根据认证手段的不同分为基于证书的AKE、基于身份的AKE[1]、基于口令AKE和基于多因子的AKE等.使用口令作为认证手段既不需要部署公钥基础设施,也不需要智能卡等硬件设备存储高强度的对称密钥,而且口令具有容易记忆、使用便捷的特点,因此口令是目前网络应用中最常用的认证方式.基于口令的认证密钥交换(password-based authenticated key exchange, PAKE)[2]最早由Bellovin和Merritt于1992年提出,PAKE协议使共享低熵口令的2个通信方生成一个密码学强度的会话密钥.两方PAKE协议的研究目前得到了广泛的研究[3-8].
两方PAKE协议适用于“用户-服务器”的场景.如果在大规模端到端的应用中使用两方PAKE协议,则每一个用户都需要与另一个通信方共享一个单独的口令,用户需要记忆的口令将与通信方的数量成线性关系.大量的口令将超出用户的记忆能力,密钥管理将变得非常困难.为实现大规模端到端通信,Steiner等人提出了三方PAKE协议[9],即2个用户分别与可信的服务器共享口令,双方在服务器的帮助下建立共同的会话密钥.
现有的大多数三方PAKE协议[10-13]均基于随机谕言模型来实现,只有少数协议[14]仅以口令作为认证方式,而且在标准模型下是可证明安全的.另外在大多数三方PAKE协议中,口令以明文的形式存储在服务器上,一旦服务器信息泄露,敌手获得用户口令后伪装成合法用户与服务器通信,对用户和服务器的数据安全带来极大的危害.
为减少服务器泄露带来的危害,Bellovin和Merritt[15]提出了基于验证元的口令认证密钥交换(verifier-based password authenticated key exchange, VPAKE)协议.在这类协议中,服务器不存储明文口令,而只存储与口令相关的验证元,用来验证拥有正确口令的用户身份.如果服务器信息泄露,敌手获得了验证元,需要通过离线字典攻击才能恢复用户的口令.
三方PAKE协议不可避免地要受到敌手对口令的字典攻击.字典攻击分为在线字典攻击、离线字典攻击和三方PAKE协议特有的不可检测的在线字典攻击[11].不可检测的在线字典攻击是指敌手试图在线验证猜测的口令,而失败的尝试不会被服务器检测到. 只有提供显式的服务器对用户的认证,协议才能抵抗不可抗拒的在线字典攻击.安全的三方PAKE协议必须抵抗离线字典攻击和不可检测的在线字典攻击,而在线字典攻击是敌手能发起的最好的攻击方式.
三方PAKE协议还应满足针对服务器的密钥私密性[10],即2个用户实例共享的会话密钥只能由这2个实例获得,任何第三方包括可信的服务器都不能得知这个密钥.这意味着即使2个用户的会话密钥的建立需要服务器的帮助,但是会话密钥对服务器仍然保持私密性.
1.1 相关工作
基于口令的认证密钥交换[2]最早由Bellovin和Merritt于1992年提出,第1个PAKE的安全模型由Bellare等人[3]提出.Abdalla等人[10]在此基础上提出了三方PAKE协议的安全模型,并基于两方PAKE协议构造了通用的三方PAKE协议.
Wang等人[11]指出Abdalla等人[10]提出的三方PAKE协议不能抵抗不可检测的在线字典攻击,并对此协议进行了改进.吴树华等人[12]基于Gap Diffie-Hellman困难问题假设提出了前向安全的三方PAKE协议,该协议在随机谕言模型下是可证安全的.Lee等人[13]提出在随机谕言模型下可证安全高效的2个三方PAKE协议,分别提供了隐式服务器认证和显示服务器认证.
Kwon等人[16]提出了第1个在标准模型下可证安全的三方PAKE协议,并且基于Hash Diffie-Hellman 假设证明了协议的安全性.Yang等人[17]基于ElGamal加密方案和伪随机函数构造了在标准模型下可证安全的三方PAKE协议.文献[16-17]的协议都假设服务器拥有公钥,公钥证书的分发、存储和验证查询等操作增加了服务器的维护开销,同时用户需要存储服务器的公钥证书,失去了仅使用口令作为认证方式的便捷性.Nam等人[14]提出了仅以口令作为认证方式的在标准模型下可证安全的三方PAKE协议.
Bellovin和Merritt提出基于增强的加密密钥交换协议[15],服务器只存储单向加密的口令文件.Benhamouda等人[18]定义了口令Hash(password hashing)的概念并提出了2种具有代数结构的口令Hash方案,并构造了单轮和2轮的基于验证元的口令认证密钥交换协议.Kiefer等人[19]首次提出了零知识口令政策检查协议,即用户自己选择口令并在服务器上远程注册验证信息,不需要实际发送口令,并通过零知识证明来确保用户选取的口令符合服务器的口令政策.文献[19]提出了一种新的用于ASCII口令的口令Hash方案.
1.2 本文贡献
针对已有三方口令认证密钥交换协议存在的不足,本文利用Cramer和Shoup[20]提出的平滑投影Hash函数(smooth projective Hash functions, SPHFs)构造了基于验证元的三方口令认证密钥交换协议(verifier-based three-party password authenticated key exchange protocol, 3VPAKE).该协议在标准模型下是可证安全的,而且协议仅以口令作为认证方式,不依赖服务器拥有公钥.在3VPAKE协议中,服务器只存储用户口令的验证元,可以有效地抵抗服务器泄露.验证元由文献[19]提出的口令Hash方案生成.本文是第1个在标准模型下可证安全的基于验证元的三方口令认证密钥交换协议.
3VPAKE协议的设计基于目前最高效的单轮两方PAKE协议[8],即用户A和用户B分别发送投影密钥和密文给对方,并使用平滑投影Hash函数生成相同的会话密钥.在3VPAKE协议中,用户A和用户B不共享口令,所以服务器需要对用户A的口令生成的密文和用户B的口令生成的密文进行重新加密.用户A加密自己的口令并将生成的密文发送给服务器,服务器将密文中用户A的口令替换为用户B的口令,随后将新生成的密文发回A.用户B进行类似操作.
为抵抗不可检测的在线字典攻击,协议使用消息认证码(message authentication code, MAC)函数来使服务器对用户的身份进行认证,即服务器可以区分恶意的用户和诚实的用户.
2.1 加密方案
带标签的Cramer-Shoup加密方案由文献[21]提出,该方案是IND-CCA2安全的,由3个算法构成:
2) Enc(pk,m;r)加密消息为m,取随机数r∈p,密文C=(u1,u2,e,v),其中(,u1,u2,e);
3) Dec(sk,c)首先计算ξ=Hk(,u1,u2,e),检查是否成立.如果等式成立,计算M=e并输出M,否则输出⊥.
2.2 平滑投影Hash函数
平滑投影Hash函数由Cramer和Shoup[20]最先提出.本文使用文献[8]中的定义,X代表函数的域,L代表一种语言且L⊂X,存在证据w证明词C在L中.
1) HashKG(L).产生语言L的Hash密钥hk.
2) ProjKG(hk,L,C).计算投影密钥hp,hp的计算可能依赖词C.
3) Hash(hk,L,C).对任一C∈X,由Hash密钥hk输出其Hash值.
4) ProjHash(hp,L,C,w).对任一C∈X,由投影密钥hp和证据w输出其Hash值.
如果对所有的拥有证据w的C∈L,有Hash(hk,L,C)=ProjHash(hp,L,C,w),则SPHF是正确的.如果对所有的C∉L,Hash值h与G中的随机元素不可区分,则SPHF具有平滑性.
本文使用文献[8]提出的具有自适应平滑性的KVSPHF,投影密钥hp的产生不依赖于C,即在已知hp后选择C,平滑性依然成立.
2.3 口令Hash方案
口令Hash方案是用来计算口令验证值的一个单向过程,输入为用户的口令和盐值,输出为存储在服务器上的用来验证用户身份的验证值.本文使用文献[19]提出的口令Hash方案PH=(PSetup,PPHSalt,PPreHash,PHSalt,PHash),基于ASCII的口令pw映射为整数π.PH由5个算法构成:
1) PSetup(λ).生成口令Hash参数param=(p,g,h,λ),g,h是循环群G的2个独立的生成元,G的阶为长度为λ的素数p.
2) PPHSalt(param).生成预Hash盐值sP∈R.
3) PPreHash(param,π,sP).输出预Hash值P=gsPπ.
4) PHSalt(param).生成Hash盐值sH∈R.
5) PHash(param,P,sP,sH).输出Hash值H=(H1,H2)=(gsP,PhsH).
口令Hash方案的安全性由底层的循环群G和Pedersen承诺的安全性来保证.这些安全属性保证敌手只有进行暴力破解才能从用户口令的Hash值恢复用户的口令或口令的预Hash值.
本文在文献[10]提出的三方PAKE协议的安全模型的基础上增加了对前向安全和抵抗服务器泄露攻击定义.
1) 参与方.三方PAKE协议中的参与方包含2个非空的集合:用户集合U和服务器集合S.用户集合U由2个不相交的集合组成:诚实用户集合C和恶意用户集合E.
2) 长期秘密.每一个用户U∈U持有口令pwU,口令pwU映射为整数πU.服务器S持有所有用户的由口令Hash方案生成的Hash值和盐值.假设口令由用户选取,并且口令的最小熵为β.
3) 协议执行.假设概率多项式时间敌手A完全控制通信信道.A可能插入一个消息并修改它,创建一个信息或是重发、转发一个已有的消息.A可创建用户C和服务器S的多个实例参与协议的并发执行.用户U的第i个实例用Ui表示,服务器S的第j个实例用Sj表示.敌手通过查询谕言机与协议的参与方进行交互:
②SendClient(Ui,m).对敌手向用户发起的主动攻击进行建模.敌手将消息m发送给用户实例Ui,输出是Ui处理消息m产生的回应.
③SendServer(Sj,m).对敌手向服务器发起的主动攻击进行建模,敌手将消息m发送给用户实例Sj,输出是Sj处理消息m产生的回应.
⑤Corrupt(S).对敌手腐化服务器进行建模,查询的输出是所有用户的验证值H和sH.
⑥Corrupt(U).对敌手腐化用户进行建模,查询的输出是用户U的口令pwU和U的所有实例的状态.
5) 新鲜性.如果一个实例的会话密钥没有轻易地被敌手获得,则称这个实例是新鲜的.具体来说,实例Ui是新鲜的,如果满足3个条件:①Ui已经接受并且产生了一个有效的会话密钥;②Ui和Ui的伙伴没有被询问过Reveal查询;③敌手在执行Test查询之前没有执行过Corrupt(U)查询而且敌手没有执行过SendClient(Ui,m)查询.
6) 语义安全.考虑在敌手A存在情况下的三方PAKE协议∏的执行,敌手可以执行多次Execute,SendClient,SendServer,Reveal,Corrupt查询,但是对诚实用户的新鲜实例只能执行一次Test查询,并输出位b′.如果b′=b(b为在Test查询中选择的位值),则称敌手A获胜.敌手A正确猜到b的事件用Succ表示.A攻击协议∏的优势表示为AdvA,∏(k)=2Pr[Succ]-1.
如果敌手获胜的优势AdvA,∏(k)≤O(qs2β)+negl(k),则称3VPAKE协议∏是语义安全的.qs为Send查询的次数,β为口令分布的最小熵.
如果敌手获胜的优势AdvA,∏(k)≤negl(k),则称3VPAKE协议∏对服务器具有密钥私密性.
Fig. 1 Verifier-based three-party password authenticated key exchange protocol.图1 基于验证元的三方口令认证密钥交换协议
4.1 协议描述
本文提出了一个基于验证元的三方口令认证密钥交换协议,并在标准模型下证明了协议的安全性.
假设A和B是想要建立会话密钥的2个用户,S是可信的服务器.A和B拥有口令pwA和pwB,S拥有A和B口令的验证值(H1A,H2A,sHA)和(H1B,H2B,sHB).
3VPAKE协议使用带标签的CCA安全加密方 案,口令Hash方案PH=(PSetup,PPHSalt,PPreHash,PHSalt,Phash)和安全的消息认证码函数MAC.全局参数包括KG(1k)产生的加密方案的公钥pk=(p,g1,g2,h,c,d,Hk)和口令Hash方案的参数param=(p,g1,h,λ).
本文使用定义在语言L上的具有自适应平滑性的平滑投影Hash函数.L的定义如下:
L={(,c)|∃π,∃r:c=Enc
3VPAKE协议的描述如图1所示.假设用户A是发起方,A发送启动协议的请求给服务器并等待服务器的响应.协议包含4轮消息:
1) 服务器S收到A的请求后,选择2个随机值
sA,sB∈Rp,计算,分别发送和给A和B.
2)A收到服务器的消息后,选择随机值rA∈Rp,运行HashKG(L)生成hk=(η1,η2,θ,μ,ν)∈R,计算,用wAS作为MAC函数密钥计算σAS=MACwAS(A‖B‖S‖,最后计算发送给服务器S.类似地,B收到服务器的消息后,选择随机值rB∈Rp,运行HashKG(L)生成,计算,然后计算为MAC函数密钥计算σBS=MACwBS(A‖B‖S‖,最后计算发送给服务器S.
最后为密钥计算.A收到B发来的消息后,计算′=(A,B,hp′),ξ′=Hk(收到A发来的消息后,计算=(A,B,hp),ξ=Hk(,.
根据平滑投影Hash函数的平滑性得到skA=skB,协议正确性满足.
4.2 安全性证明
定理1. 如果(KG,Enc,Dec)是CCA安全的带标签的加密方案,(HashKG,ProjKG,Hash,ProjHash)是平滑投影Hash函数,MAC是安全的消息认证码函数,则图1的协议是安全的3VPAKE协议.
证明. ∏代表图1所示的协议,A代表攻击协议∏的概率多项式时间敌手.假设模拟器控制敌手访问的所有谕言机,而且模拟器知道所有的解密密钥.构造一个游戏序列,真实的攻击游戏对应G0.AdvGi(k)代表A在游戏Gi中的优势.
5) 游戏G5.继续修改Execute查询的回答:替换σAS,σBS,λAS,λBS为G中随机均匀选取的元素.由于MAC是安全的消息认证码,得到|AdvG5(k)-AdvG4(k)|≤negl(k).
6) 游戏G6.继续修改Execute查询的回答:替换CAS,CBS为假口令0的加密密文.A和B的共同的会话密码为sk=skA=skB=Hash(hk,L,CBS)×Hash(hk′,L,CAS),由于加密方案是CCA安全的,G6与G5是不可区分的,得到|AdvG6(k)-AdvG5(k)|≤negl(k).
7) 游戏G7.继续修改Execute查询的回答:替换共同的会话密码为G中的随机值,由于CAS,CBS不在语言L中,由SPHF的平滑性得到|AdvG7(k)-AdvG6(k)|≤negl(k).
8) 游戏G8.继续修改Execute查询的回答:替换共同的会话密码为G中的随机值,由于CAS,CBS不在语言L中,由SPHF的平滑性得到|AdvG8(k)-AdvG7(k)|≤negl(k).
游戏G1~G8表明敌手不能从被动攻击中获得任何信息.下面考虑Send查询,如果消息是之前的Send查询输出的,则称它是一个之前使用过的消息,否则称它为敌手伪造的消息.
考虑以上3种情况,情况①中Ⅰ的变化只增加了A的优势;情况①中Ⅱ的变化是不可区分的;情况②中的变化没有改变A的优势.
考虑以上3种情况,情况①中Ⅰ的变化只增加了A的优势;情况①中Ⅱ的变化是不可区分的;情况②的变化没有改变A的优势.
考虑以上3种情况,情况①中Ⅰ的变化只增加了A的优势;情况①中Ⅱ的变化是不可区分的;情况②中的变化没有改变A的优势.
14) 游戏G14.修改SendClient(A,eAS‖λAS)查询的回答,如果用户A被腐化,诚实地回答查询,否则将出现3种情况:
① 如果eAS是敌手伪造的,解密eAS得到H2Bh-sHB.
② 如果eAS是之前模拟器发出的,则不能通过用户A的验证.
考虑以上3种情况,情况①中Ⅰ的变化只增加了A的优势;情况①中Ⅱ和情况②中的变化是不可区分的.
对修改SendClient(B,eAS‖λBS)查询的回答查询的回答与上述类似.
16) 游戏G16.修改SendClient(A,hp′‖CBS)查询的回答.如果用户A被腐化,诚实地回答查询,否则将出现3种情况:
① 如果CBS是敌手伪造的,解密CBS得到H2Ah-sHA.
② 如果CBS是之前模拟器发出的,模拟器知道CBS对应的hk′,使用hk′计算会话密钥sk,而不使用CBS产生使用的随机数.
考虑以上3种情况,情况①中Ⅰ的变化只增加了A的优势;由平滑投影Hash函数的平滑性得到情况①中Ⅱ的变化是不可区分的;情况②中的变化没有改变A的优势.
对SendClient(B,hp‖CAS)查询的回答与上述类似.
17) 游戏G17.继续修改SendClient(A,hp′‖CBS)查询的回答.如果CBS是敌手伪造的:
② 否则,在G中随机均匀的选择sk作为会话密钥.
由文献[7]中的技术引理和CBS是CCA安全的密文,得到变化是不可区分的
对SendClient(B,hp‖CAS)查询的回答与上述类似.
在游戏G17中,敌手A的视图独立于用户的口令,AdvG17(k)≤qs2β成立.由游戏G1~G17可得到敌手获胜的优势AdvG0(k)≤qs2β+negl(k).
证毕.
定理2. 如果(KG, Enc, Dec)是CCA安全的带标签的加密方案,(HashKG,ProjKG,Hash,ProjHash)是平滑投影Hash函数,MAC是安全的消息认证码,则图1的3VPAKE协议提供针对服务器的密钥私密性.
证毕.
定理3. 如果(KG,Enc,Dec)是CCA安全的带标签的加密方案,(HashKG,ProjKG,Hash,ProjHash)是平滑投影Hash函数,MAC是安全的消息认证码,则图1的协议提供服务器对用户的认证.
由定理1中的部分证明,得到定理3.
本文的协议方案与文献[10,12,14,17]在计算代价和安全性方面进行了比较,如表1所示. 在计算代价方面,主要考虑计算代价较高的模幂运算,忽略其余的运算.
Table1 Performance Comparison with Ref[10,12,14,17]
文献[10,12]方案的安全性基于随机谕言模型,方案的计算代价较小,但这2个方案都不能抵抗不可检测的在线字典攻击;文献[14,17]满足抵抗不可检测的在线字典攻击,前向安全和针对服务器的密钥私密性等安全属性,但都不能抵抗服务器泄露攻击.文献[14]的通讯轮数为6轮,通信代价较高.文献[17]要求服务器拥有公钥证书,增加服务器维护开销.本文的协议的通信轮数为4轮,满足抵抗不可检测的在线字典攻击,前向安全,针对服务器的密钥私密性和抵抗服务器泄露攻击的安全属性,但协议的计算效率较低.
本文利用平滑投影Hash函数[20]构造了基于验证元的三方口令认证密钥交换协议.该协议在标准模型下是可证安全的,而且协议不依赖于服务器拥有公钥. 3VAPKE协议达到了抵抗服务器泄露攻击,抵抗不可检测的在线字典攻击和针对服务器的密钥私密性等安全属性.目前协议的计算效率较低,下一步的工作是进一步提高协议的计算效率.
[1]Gao Haiying. Provable secure ID-based authenticated key agreement protocol[J]. Journal of Computer Research and Development, 2012, 49(8): 1685-1689 (in Chinese)(高海英. 可证明安全的基于身份的认证密钥协商协议[J]. 计算机研究与发展, 2012, 49(8): 1685-1689)
[2]Bellovin S M, Merritt M. Encrypted key exchange: Password-based protocols secure against dictionary attacks[C]//Proc of the Research in Security and Privacy. Piscataway, NJ: IEEE, 1992: 72-84
[3]Bellare M, Pointcheval D, Rogaway P. Authenticated key exchange secure against dictionary attacks[G]//LNCS 1807: Advances in Cryptology (EUROCRYPT 2000). Berlin: Springer, 2000: 139-155
[4]Boyko V, MacKenzie P, Patel S. Provably secure password-authenticated key exchange using Diffie-Hellman[G] //LNCS 1807: Advances in Cryptology (EUROCRYPT 2000). Berlin: Springer, 2000: 156-171
[5]Katz J, Ostrovsky R, Yung M. Efficient password-authenticated key exchange using human-memorable passwords[G]//LNCS 2045: Advances in Cryptology (EUROCRYPT 2001). Berlin: Springer, 2001: 475-494
[6]Gennaro R, Lindell Y. A framework for password-based authenticated key exchange[G] //LNCS 2656: Advances in Cryptology (EUROCRYPT 2003). Berlin: Springer, 2003: 524-543
[7]Katz J, Vaikuntanathan V. Round-optimal password-based authenticated key exchange[J]. Journal of Cryptology, 2013, 26(4): 714-743
[8]Benhamouda F, Blazy O, Chevalier C, et al. New techniques for SPHFs and efficient one-round PAKE protocols[G]//LNCS 8042: Advances in Cryptology (CRYPTO 2013) . Berlin: Springer, 2013: 449-475
[9]Steiner M, Tsudik G, Waidner M. Refinement and extension of encrypted key exchange[J]. ACM SIGOPS Operating Systems Review, 1995, 29(3): 22-30
[10]Abdalla M, Fouque P A, Pointcheval D. Password-based authenticated key exchange in the three-party setting[G]//LNCS 3386: Public Key Cryptography (PKC 2005). Berlin: Springer, 2005: 65-84
[11]Wang Weijia, Hu Lei. Efficient and provably secure generic construction of three-party password-based authenticated key exchange protocols[G] //LNCS 4329: Progress in Cryptology (INDOCRYPT 2006). Berlin: Springer, 2006: 118-132
[12]Wu Shuhua, Zhu Yuefei. Three-party password-based authenticated key exchange with forward-security[J]. Chinese Journal of Computers, 2007, 30(10): 1833-1841 (in Chinese)(吴树华, 祝跃飞. 一个前向安全的基于口令认证的三方密钥交换协议[J]. 计算机学报, 2007, 30(10): 1833-1841)
[13]Lee T F, Hwang T. Simple password-based three-party authenticated key exchange without server public keys[J]. Information Sciences, 2010, 180(9): 1702-1714
[14]Nam J, Choo K-K R, Kim J, et al. Password-only authenticated three-party key exchange with provable security in the standard model[J/OL]. The Scientific World Journal, 2014 [2016-06-01]. https://www.hindawi.com/journals/tswj/2014/825072/
[15]Bellovin S M, Merritt M. Augmented encrypted key exchange: A password-based protocol secure against dictionary attacks and password file compromise[C]//Proc of the 1st ACM Conf on Computer and Communications Security. New York: ACM, 1993: 244-250
[16]Kwon J O, Jeong I R, Lee D H. Light-weight key exchange with different passwords in the standard model[J]. Journal of Universal Computer Science, 2009, 15(5): 1042-1064
[17]Yang Junhan, Cao Tianjie. Provably secure three-party password authenticated key exchange protocol in the standard model[J]. Journal of Systems and Software, 2012, 85(2): 340-350
[18]Benhamouda F, Pointcheval D. Verifier-based password-authenticated key exchange: New models and constructions: IACR Cryptology ePrint Archive[OL]. (2014-04-14) [2016-09-13]. http://eprint.iacr.org/2013/833
[19]Kiefer F, Manulis M. Zero-knowledge password policy checks and verifier-based PAKE[G]//LNCS 8713: Computer Security (ESORICS 2014). Berlin: Springer, 2014: 295-312
[20]Cramer R, Shoup V. Universal Hash proofs and a paradigm for adaptive chosen ciphertext secure public-key encryption[G]//LNCS 2332: Advances in Cryptology (EUROCRYPT 2002). Berlin: Springer, 2002: 45-64[21]Cramer R, Shoup V. A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack[G]//LNCS 1462: Advances in Cryptology (CRYPTO’98). Berlin: Springer, 1998: 13-25
Yang Xiaoyan, born in 1980. PhD candidate. Her main research interests include key exchange protocols and authentication protocols.
Hou Mengbo, born in 1974. PhD and associate professor. His main research interests include information security and key exchange protocols.
Wei Xiaochao, born in 1990. PhD candidate. His main research interests include secure multi-party computing and searchable encryption.
Verifier-Based Three-Party Password Authenticated Key Exchange Protocol
Yang Xiaoyan, Hou Mengbo, and Wei Xiaochao
(SchoolofComputerScienceandTechnology,ShandongUniversity,Jinan250101)
Three-party password authenticated key exchange (3PAKE) protocols enable two parties to establish a common session key where each party only shares one password with a trusted server. In the situation of large-scale peer-to-peer communication, a user in two-party PAKE protocols has to remembernpasswords if the user hasncommunication parties. The main advantage of 3PAKE protocols is that each user needs only to store a single password when he wants to communicate any party in the peer-to-peer circumstance. However, the security of the existing 3PAKE protocols is generally provided in the random oracle model, and in these protocols, passwords are stored in cleartext on the server. Only a few of protocols are proven secure in the standard model and do not require a server’s public key. We generally assumed that servers are secure. But once the password file in the server is compromised, the damage will be huge. In this paper, we propose a verifier-based three-party password authenticated key exchange protocol constructed by smooth projective Hash functions(SPHFs). The protocol is proven secure in the standard model. Our protocol satisfies the secure properties such as resilient to server corruption, undetectable on-line dictionary attack and key privacy.
authenticated key exchange (AKE); verifier; smooth projective Hash functions (SPHFs); three-party password authenticated key exchange (3PAKE); standard model
2016-06-16;
2016-08-16
国家自然科学基金项目(61572294)
TP309
This work was supported by the National Natural Science Foundation of China (61572294).