CN112689283B - 一种密钥保护和协商方法、***和存储介质 - Google Patents

一种密钥保护和协商方法、***和存储介质 Download PDF

Info

Publication number
CN112689283B
CN112689283B CN202011482095.7A CN202011482095A CN112689283B CN 112689283 B CN112689283 B CN 112689283B CN 202011482095 A CN202011482095 A CN 202011482095A CN 112689283 B CN112689283 B CN 112689283B
Authority
CN
China
Prior art keywords
server
user terminal
key
auxiliary
main server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011482095.7A
Other languages
English (en)
Other versions
CN112689283A (zh
Inventor
谢永
张松松
江政良
马瑞江
刘萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qinghai University
Original Assignee
Qinghai University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qinghai University filed Critical Qinghai University
Priority to CN202011482095.7A priority Critical patent/CN112689283B/zh
Publication of CN112689283A publication Critical patent/CN112689283A/zh
Application granted granted Critical
Publication of CN112689283B publication Critical patent/CN112689283B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明涉及一种密钥保护和协商方法、***和存储介质,方法包括:密钥***生成密钥参数,用户终端向主服务器和辅助服务器注册,由双服务器合作与用户终端进行密钥协商认证,其中密钥协商认证包括用户终端向辅助服务器和主服务器发送携带口令和用户名的验证消息,辅助服务器对验证消息进行认证,认证通过时,通过蜜罐技术验证是否存在与验证消息对应的密钥索引,当验证通过时发送辅助服务器消息;主服务器接收并验证验证消息和辅助服务消息,验证均通过时向用户终端发送密钥协商请求,用户终端根据密钥协商请求与主服务器进行密钥协商;主服务器执行密钥协商,辅助服务器存储部分盲化数据,解决了用户终端丢失和认证服务器被攻击而造成的数据丢失。

Description

一种密钥保护和协商方法、***和存储介质
技术领域
本发明涉及网络安全领域,具体涉及一种密钥保护和协商方法、***和存储介质。
背景技术
随着无线网络的进入千家万户,用户终端的使用开始多种多样,不仅仅是局限于手持电话,笔记本,传感器,甚至我们的手表现在也是可用移动网络的小型“电脑”;目前全球移动联网设备的总数将会从2014年的69亿增加到95亿;面向用户终端的各种服务或业务等特别多,尤其是现在5G技术的发展更加推动了面向用户终端业务进一步发展;据统计目前达到95%服务与业务都可以通过用户终端完成。
由于大部分业务都通过用户终端完成,用户终端虽然给工作与的生活带来了极大的便利,但是却隐含着很严重的问题;几乎每一个用户终端存在都会有遭受恶意攻击的风险,导致用户终端数据泄露导致认证信息的泄露,用户终端安全问题令人堪忧。
在所有的用户终端恶意事件中,主要部分是攻击者是利用用户终端在无线通信过程中的安全漏洞,进行拦截、窃听、欺骗和入侵等恶意攻击,获取用户隐私数据和认证信息;具体来说,攻击类型分为三个方面。第一点是攻击者通过攻击用户终端或者用户粗心大意而造成的设备丢失获得数据,因而对数据安全造成极大的威胁;第二点,用户终端在传输过程中,也极有可能被攻击者盗取数据;第三点,用户终端和服务器相互认证,服务器也是极有可能被攻陷的;因此,一个安全方案用来保证移动用户的数据在整个通信过程的完整性、隐私性是非常重要的。
为了保证用户终端的数据信息和认证信息的安全,一系列的学者提出了各种各样用户终端和服务器的认证协议,但是这些协议都未涉及一个的安全问题:为了完成安全认证,用户终端需要保存一些重要认证相关的数据;然而,若用户终端的丢失那么攻击者就可以通过各种手段获得用户终端的这些重要数据,而造成重要数据的泄露,因为有了用户终端上的数据,攻击者就有更多方式实现安全攻击,假扮攻击、修改攻击、伪造攻击等,这影响的不只是丢失用户终端的用户,其它未丢失用户终端的用户也有可能受到影响。
发明内容
本发明所要解决的技术问题是提供一种密钥保护和协商方法、***和存储介质,由双服务器合作与用户终端进行认证,使得敌手无论获得其中任何一方设备的数据,都不无法获取有效的认证数据,解决了用户终端丢失、被攻击而造成的数据丢失;也避免了提供认证服务的服务器被攻陷而造成用户终端数据的泄露。
本发明解决上述技术问题的技术方案如下:一种密钥保护和协商方法,包括:
S1、密钥***生成密钥参数;
S2、用户终端根据所述密钥参数向主服务器和辅助服务器注册;
S3、所述辅助服务器和所述主服务器合作与所述用户终端进行密钥协商认证;
所述S3包括:
S31、用户终端向所述辅助服务器和主服务器发送携带口令和用户名的验证消息;
S32、所述辅助服务器对所述验证消息进行认证;
S33、认证通过时,所述辅助服务器通过蜜罐技术验证是否存在与所述验证消息对应的密钥索引,当所述验证通过时,发送辅助服务器消息;
S34、所述主服务器接收并验证所述验证消息和所述辅助服务消息,验证均通过时,向所述用户终端发送密钥协商请求;
S35、所述用户终端根据所述密钥协商请求与所述主服务器进行密钥协商。
本发明的有益效果是:密钥***生成密钥参数,用户终端向主服务器和辅助服务器注册,由双服务器合作与用户终端进行密钥协商认证,其中密钥协商包括用户终端向辅助服务器和主服务器发送携带口令和用户名的验证消息,辅助服务器对验证消息进行认证,认证通过时,通过蜜罐技术验证是否存在与验证消息对应的密钥索引,当验证通过时发送辅助服务器消息;主服务器接收并验证验证消息和辅助服务消息,验证均通过时向用户终端发送密钥协商请求,用户终端根据密钥协商请求与主服务器进行密钥协商;通过一个主服务器,一个辅助服务器,合作进行用户终端的验证;主服务器负责最终的密钥协商执行;辅助服务器存储部分盲化数据,主服务器存储少量数据;任何一方设备被攻陷或者丢失,关键信息都不会造成泄露,也不会正常的进行认证;解决了用户终端丢失、被攻击而造成的数据丢失;也避免了提供认证服务的服务器被攻陷而造成用户终端数据的泄露。
为了解决上述技术问题,本发明还提供一种密钥保护和协商***,所述密钥保护和协商包括密钥***、主服务器、辅助服务器和用户终端,以实现上述的密钥保护和协商方法的步骤。
为了解决上述技术问题,本发明还提供一种存储介质,其特征在于,所述存储介质包括存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现上述的密钥保护和协商方法的步骤。
附图说明
图1为本发明一实施例提供的一种密钥保护和协商方法的流程示意图;
图2为本发明一实施例提供的一种密钥保护和协商***框架图;
图3为本发明一实施例提供的一种辅助服务器和主服务器合作与用户终端进行密钥协商认证的流程示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
名词解释:
z:可信的大整数;
q:可信的大素数,满足q>2z;
G:可信q阶加法循环群;
P:G上的生成元;
Ppubi:***公钥;
xi:服务器私钥;
hi:哈希函数,其中i=0,1,2,3,4;
E(a,b):椭圆曲线,满足y2=x3+ax2+bmodp,其中
Figure RE-GDA0002945294150000041
params:***公开参数;
IDi:用户终端身份信息;
sk:用户终端选择的Paillier加密的私钥;
pk:用户终端选择的Paillier加密的公钥;
Pr[E]:E事件的可能性表示;
Enc:Paillier加密算法;
Dec:Paillier解密算法;
Ti:***当前时间;
Di:主服务器和用户终端的验证信息;
πi:零知识证明子协议认证参数
Figure RE-GDA0002945294150000051
:蜜罐***认证信息。
如图1所示,图1为本发明实施例提供的一种密钥保护和协商方法的流程图,该密钥保护和协商方法包括:
S1、密钥***生成密钥参数;
S2、用户终端根据密钥参数向主服务器和辅助服务器注册;
S3、辅助服务器和主服务器合作与用户终端进行密钥协商认证;
如图2和3所示,图2为本实施例提供的一种密钥保护和协商***框架图,图3为种辅助服务器和主服务器合作与用户终端密钥协商认证的流程示意图,
S3包括:
S31、用户终端向辅助服务器和主服务器发送携带口令和用户名的验证消息;
S32、辅助服务器对验证消息进行认证;
S33、认证通过时,辅助服务器通过蜜罐技术验证是否存在与验证消息对应的密钥索引,当验证通过时,发送辅助服务器消息;
S34、主服务器接收并验证验证消息和辅助服务消息,验证均通过时,向用户终端发送密钥协商请求;
S35、用户终端根据密钥协商请求与主服务器进行密钥协商。
该密钥协商认证的流程包括由用户终端发送携带口令和用户名的验证消息,由辅助服务器对验证消息进行认证,认证通过后通过蜜罐技术验证是否存在与验证消息对应的密钥索引,验证通过时,发送辅助服务器消息;进而主服务器接受并验证用户终端发送的验证消息和辅助服务器发的辅助服务消息,验证均通过时,向用户终端发送密钥协商请求,最后用户终端根据密钥协商请求与主服务器进行密钥协商,通过主服务器和辅助服务器合作与用户终端进行密钥认证;密钥协商阶段由主服务器完成,辅助认证云服务器只存储用户部分盲化的数据,即使攻击者获得对应服务器,也无法形成有效信息;可有效防止用户终端丢失攻击,冒充攻击,离线猜测攻击等。
具体的,S31包括:
S311、用户终端输入身份IDi和口令PWi,计算h0(PWi||ni),h0为抗碰撞的哈希函数,随机数
Figure RE-GDA0002945294150000061
Figure RE-GDA0002945294150000062
表示在基于大素数q构成的非零乘法群里随机选择;
S312、用户终端选择随机数ri∈Zq *,分别计算用户终端认证信息Ri=riP,随机数加密信息Ci=Encpk(ri),认证信息Ei=ri -1Di,计算发送给主服务器的消息
Figure RE-GDA0002945294150000063
和βi1=h4(IDi,PIDi1,Ri,Ei,Ti);计算发送给辅助服务器的消息
Figure RE-GDA0002945294150000064
βi2=h4(IDi,PIDi2,Ri,Ci,Ti)和蜜罐验证消息相关值
Figure RE-GDA0002945294150000065
将{PIDi1,Ri,Ei,Tii1i}发送给主服务器,将 {Ri,Ci,PIDi2,Tii2,PPWi}发送给辅助服务器;P为G上的生成元,G表示可信q 阶加法循环群,h0,h2,h4为抗碰撞的哈希函数,Ppub1为***主公钥,Ppub2为***辅助公钥,Enc为Paillier加密算法,pk为用户终端选择的Paillier加密的公钥,Ti为***当前时间,Di为主服务器和用户终端的验证信息,πi为零知识证明子协议认证参数;
S32包括:
S321、辅助服务器随机选择r2∈Zq *和ρ∈Zq *,计算出辅助服务器认证值 R2=r2P,解出
Figure RE-GDA0002945294150000066
验证等式βi2=h4(IDi,PIDi2,Ri,Ci,Ti)是否成立,其中x2为辅助服务器的私钥;
S33包括:
S331、当等式成立时,辅助服务器计算h0(IDi),
Figure RE-GDA0002945294150000071
取出时间Treg,计算mi=h4(x2||h0(IDi)||Treg),查找是否存在
Figure RE-GDA0002945294150000072
Figure RE-GDA0002945294150000073
是蜜罐***认证信息;
在一些实施例中,当等式βi2=h4(IDi,PIDi2,Ri,Ci,Ti)不成立时,终止本次密钥保护和协商流程。当不存在
Figure RE-GDA0002945294150000074
时,终止本次密钥保护和协商流程。
S332、当存在
Figure RE-GDA0002945294150000075
时,辅助服务器计算密钥索引 ai=h1(h0(IDi)||Treg||mi)),验证ai是否和注册阶段生成的列表 {h0(IDi),Treg,ai,Honey_List=NULL}中的ai相等;当相等时,辅助服务器计算认证值
Figure RE-GDA0002945294150000076
计算主服务器认证值
Figure RE-GDA0002945294150000077
β2=h4(IDi,PIDi3,R2,C2,T2);将
Figure RE-GDA0002945294150000078
发送给主服务器;其中h1为抗碰撞的哈希函数,T2为辅助服务器当前时间戳,随机数ki∈Zq *,所述列表包括用户名h0(IDi)、当前时间Treg、密钥索引ai和蜜罐列表Honey_List=NULL;
S34包括:
S341、主服务器在接收到用户终端的{PIDi1,Ri,Ei,Tii1i},计算
Figure RE-GDA0002945294150000079
通过零知识证明子协议验证πi,x1为主服务器的私钥值;
S342、主服务器在收到辅助服务器的消息
Figure RE-GDA00029452941500000710
计算
Figure RE-GDA00029452941500000711
验证β2是否等于h4(IDi,PIDi3,R2,C2,T2),h4为抗碰撞的哈希函数;
S343、当β2等于h4(IDi,PIDi3,R2,C2,T2)时,主服务器通过零知识证明子协议验证
Figure RE-GDA00029452941500000712
计算ks=Dsk(C2)modq=rir2ki,验证等式ksEi=(x1+h0(IDi))R2是否成立;其中Ei=ri -1ki -1(x1+h0(IDi)P,其中sk为用户终端选择的Paillier加密的私钥;
S344、当等式成立时,主服务器随机选择r1∈Zq *,计算出R1=r1P,R1i=r1Ri,计算将要认证的会话密钥值sk1i=h3(IDi,R1i,Ri,R1,Ti,T1),β1=h4(IDi,R1,T1,sk1i,Ti),将认证消息{R11,T1}送给用户终端,h3为抗碰撞的哈希函数,T1为当前时间戳;
S35包括:
S351、用户终端收到{R11,T1},计算Ri1=riR1,sks1=h3(IDi,Ri1,Ri,R1,Ti,T1),计算β'1=h4(IDi,R1,T1,ski1,Ti),判断β'1是否等于β1;若是,则密钥协商成功。
在本实施例中,由双服务器合作与用户终端进行密钥协商认证,其中密钥协商包括由用户终端发送口令、用户名的验证消息,由辅助服务器认证消息,认证通过后通过蜜罐技术进行验证,验证通过时,由主服务器接受并验证用户终端和辅助服务器两方的验证消息,向用户终端发送密钥协商请求,最后用户终端对密钥协商请求进行验证,验证成功时密钥协商成功;通过一个主服务器,一个辅助服务器,合作进行用户终端的验证;主服务器负责最终的密钥协商执行;辅助服务器存储部分盲化数据,主服务器存储少量数据;任何一方设备被攻陷或者丢失,关键信息都不会造成泄露,也不会正常的进行认证;解决了用户终端丢失、被攻击而造成的数据丢失;也避免了提供认证服务的服务器被攻陷而造成用户终端数据的泄露。
在本实施例中,蜜罐***可以位于辅助服务器内,也可以是独立于主服务器和辅助服务器的***;当辅助服务器验证通过时,由蜜罐***验证,具体的,计算密钥索引ai=h1(h0(IDi)||Treg||mi)),验证ai是否和对应列表 {h0(IDi),Treg,ai,Honey_List=NULL}的ai相等,其中列表是注册阶段生成的,由用户名、当前时间、密钥索引和蜜罐列表组成;如果ai和注册阶段生成的列表 {h0(IDi),Treg,ai,Honey_List=NULL}中的ai不相等时,那么说明用户终端有可能掉入蜜罐攻击,辅助服务器判断Honey_List条目是否小于阈值MAX,当小于MAX时,辅助服务器将
Figure RE-GDA0002945294150000081
写入辅助服务器中;当Honey_List条目大于等于 MAX,辅助服务器报错,终止用户终端名IDi的使用权;其中MAX可以根据实际需求进行灵活调整,例如MAX=10。
在本实施例中,S1具体包括:
S11,密钥生成中心选取大质数p,选择安全的椭圆曲线Ep(a,b),其中
Figure RE-GDA0002945294150000091
在Ep(a,b)上选择一个点P作为生成元生成阶为q加法群G,其中
Figure RE-GDA0002945294150000092
表示在基于大素数q构成的非零乘法群里随机选择;
S12,主服务器选择一个密钥
Figure RE-GDA0002945294150000093
作为主密钥,并计算公式Ppub1=x1P,获得Ppub1作为主公钥,将主密钥x1安全保存;辅助服务器选择一个密钥
Figure RE-GDA0002945294150000094
作为主密钥,并计算公式Ppub2=x2P获得,Ppub2作为辅助公钥,将辅助密钥x2安全保存;
S13,密钥生成中心构造抗碰撞的哈希函数,分别记为:h0=G*×G->Zp*、 h1=G*×G×G->Zp*、h2=G*×G×G×G->Zp*、h3=G*×G×G×G×G->Zp*和 h4=G*×G×G×G×G×G->Zp*,其中h0,h1,h2,h3,h4表示抗碰撞的哈希函数,A→B 表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
S14,密钥生成中心公布公共参数params=(G,P,q,hi,Ppub1,Ppub2),其中公共参数Pars包括加法循环群G,加法循环群G上的生成元P,安全的椭圆曲线 Ep(a,b),哈希函数h0,h1,h2,h3,h4,主公钥Ppub1和辅助公钥Ppub2
通过密钥生成中心生成密码***参数,确定主服务器和辅助服务器的主公钥和辅助公寓,密钥生成中心公布公共参数params=(G,P,q,hi,Ppub1,Ppub2);进而便于后续主服务器、辅助服务器和用户终端进行密钥协商,提供密钥协商认证的可靠性和安全性。
在本实施例中,S2具体包括:
S21,用户终端选择随机数
Figure RE-GDA0002945294150000095
输入身份IDi和口令PWi,计算 h0(PWi||ni);用户终端通过安全信道方式向主服务器发送h0(IDi)以及h0(PWi||ni);h0为抗碰撞的哈希函数;
S22,主服务器选取随机数ki∈Zq *,计算Di=ki -1(x1+h1(IDi))P,并将Di通过安全信道传给用户终端;将{h0(IDi),ki,h0(PWi||ni)}通过安全信道传给辅助服务器;其中P椭圆曲线的生成元,h1为抗碰撞的哈希函数,Di为主服务器和用户终端的验证信息;
S23,辅助服务器通过搜索h0(IDi)检查是否是新用户终端,当是新用户终端时,辅助服务器在数据库中创建一个新的列表
{h0(IDi),Treg,ai,Honey_List=NULL},计算mi=h4(x2||h0(IDi)||Treg),
Figure RE-GDA0002945294150000101
生成蜜罐值honeyword存入Honey_List,得到
{h0(IDi),Treg,ai,Honey_List=NULL};ai=h1(h0(IDi)||Treg||mi))作为密钥索引;h4为抗碰撞的哈希函数,列表包括用户名h0(IDi)、当前时间Treg、密钥索引ai和蜜罐列表Honey_List=NULL;
S24,用户终端收到主服务器发送的Di,存储ni与Di
在本实施例中,当辅助服务器通过搜索h0(IDi)检查不是新用户终端,更新Treg和ai
用户终端根据密钥参数向主服务器和辅助服务器注册,先由用户终端向主服务器发送带身份的验证请求,主服务器确定和用户终端的验证信息,进而由辅助服务器在数据库中创建列表,确定密钥索引,实现用户终端和主服务器、辅助服务器的注册,保证后续密钥协商的可靠性和安全性。
可以理解的是,用户终端可能会有需要定期更改密钥,还包括更新密钥步骤:当用户终端有了新的密钥PWn,用户终端重新计算h0(PWn||ni),发给主服务器,辅助服务器更新相应的
Figure RE-GDA0002945294150000102
作为密钥索引并存入辅助服务器中。
需要说明的是,主服务器通过零知识证明子协议验证πi包括:
主服务器初始化***参数params=(G,P,q,Ri,h,pk,IDi),
Figure RE-GDA0002945294150000111
计算R'i=Enc(ri);h表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
主服务器选择一个随机数
Figure RE-GDA0002945294150000112
计算K=kP,计算
Figure RE-GDA0002945294150000113
计算z=k-ri·emodq和ke=Enc(k);输出(z,ke,e);
主服务器计算Kv=zP+eRi,计算ev=h(Ri,Kv,IDi)和kv=ke·(R'i)-e,当e=ev且Encpk(z)=kv时,输出1认证通过;当e≠ev或者Encpk(z)≠kv时,输出0认证失败终止程序。
主服务器通过零知识证明子协议验证
Figure RE-GDA0002945294150000114
包括:
主服务器初始化***参数params=(G,P,q,R2,h,pk,IDi),
Figure RE-GDA0002945294150000115
计算R'2=Enc(r2);h表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
主服务器选择一个随机数
Figure RE-GDA0002945294150000116
计算K=kP,计算
Figure RE-GDA0002945294150000117
计算z=k-r2·emodq;输出(z,e);
主服务器计算Kv=zP+eR2,计算ev=h(R2,Kv,IDi),当e=ev,输出1认证通过;当e≠ev时,输出0认证失败终止程序。
通过零知识证明为协议认证的安全性加上了另一把锁。
本实施例还提供一种密钥保护和协商***,密钥保护和协商包括密钥***、主服务器、辅助服务器和用户终端,以实现上述密钥保护和协商方法的步骤,在此不再一一赘述。
本实施例还提供一种存储介质,存储介质包括存储有一个或者多个计算机程序,一个或者多个计算机程序可被一个或者多个处理器执行,以实现上述实施例中的密钥保护和协商方法的步骤,在此不再一一赘述。
通过本实施例提供的密钥保护和协商方法、***和存储介质,用一个用户终端与双服务器完成认证与密钥协调,用户终端上会存储一些认证所需的信息,即使用户终端丢失,敌手也无法通过用户终端的信息实现认证。
第一个目的是实现一个用户终端和服务器的认证与密钥协商。即使用户终端被攻击或者丢失后,存储在终端上的信息被攻击者获得,但还是无法与云服务器进行相互认证与密钥协商。
从服务器的角度说,第二个目的为用户提供业务服务的主服务器并未存储任何用户身份信息。即使攻击者成功攻击主服务器,也得不到任何用户信息。辅助认证云服务器只存储用户部分盲化的数据,即使攻击者获得,也无法形成有效信息。
大部分的计算工作在密钥协商阶段由主服务器完成;可有效防止用户终端丢失攻击,冒充攻击,离线猜测攻击等;此外,通信成本和计算开销与同类方案相比,成本较低。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明实施例所提供的技术方案进行了详细介绍,本发明中应用了具体个例对本发明实施例的原理以及实施方式进行了阐述,以上实施例的说明只适用于帮助理解本发明实施例的原理;以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种密钥保护和协商方法,其特征在于,所述密钥保护和协商方法包括:
S1、密钥***生成密钥参数;
S2、用户终端根据所述密钥参数向主服务器和辅助服务器注册;
S3、所述辅助服务器和所述主服务器合作与所述用户终端进行密钥协商认证;
所述S3包括:
S31、用户终端向所述辅助服务器和主服务器发送携带口令和用户名的验证消息;
S32、所述辅助服务器对所述验证消息进行认证;
S33、认证通过时,所述辅助服务器通过蜜罐技术验证是否存在与所述验证消息对应的密钥索引,当所述验证通过时,发送辅助服务器消息;
S34、所述主服务器接收并验证所述验证消息和所述辅助服务器消息,验证均通过时,向所述用户终端发送密钥协商请求;
S35、所述用户终端根据所述密钥协商请求与所述主服务器进行密钥协商;
其中,
所述S31包括:
S311、用户终端输入身份IDi和口令PWi,计算h0(PWi||ni),所述h0为抗碰撞的哈希函数,随机数
Figure FDA0003293017270000021
Figure FDA0003293017270000022
表示在基于大素数q构成的非零乘法群里随机选择;
S312、用户终端选择随机数
Figure FDA0003293017270000023
分别计算用户终端认证信息Ri=riP,随机数加密信息Ci=Encpk(ri),认证信息
Figure FDA0003293017270000024
计算发送给主服务器的消息
Figure FDA0003293017270000025
和βi1=h4(IDi,PIDi1,Ri,Ei,Ti);计算发送给辅助服务器的消息
Figure FDA0003293017270000026
βi2=h4(IDi,PIDi2,Ri,Ci,Ti)和蜜罐验证消息相关值
Figure FDA0003293017270000027
将{PIDi1,Ri,Ei,Tii1i}发送给主服务器,将{Ri,Ci,PIDi2,Tii2,PPWi}发送给辅助服务器;所述P为G上的生成元,所述G表示可信q阶加法循环群,h0,h2,h4为抗碰撞的哈希函数,Ppub1为***主公钥,Ppub2为***辅助公钥,Enc为Paillier加密算法,pk为用户终端选择的Paillier加密的公钥,Ti为***当前时间,所述Di为所述主服务器和所述用户终端的验证信息,πi为零知识证明子协议认证参数;
所述S32包括:
S321、所述辅助服务器随机选择r2∈Zq *和ρ∈Zq *,计算出辅助服务器认证值R2=r2P,解出
Figure FDA0003293017270000028
验证等式βi2=h4(IDi,PIDi2,Ri,Ci,Ti)是否成立,其中x2为辅助服务器的私钥;
所述S33包括:
S331、当等式成立时,所述辅助服务器计算h0(IDi),
Figure FDA0003293017270000029
取出时间Treg,计算mi=h4(x2||h0(IDi)||Treg),查找是否存在
Figure FDA00032930172700000210
所述
Figure FDA00032930172700000211
是蜜罐***认证信息;
S332、当存在
Figure FDA0003293017270000031
时,所述辅助服务器计算密钥索引ai=h1(h0(IDi)||Treg||mi)),验证ai是否和注册阶段生成的列表{h0(IDi),Treg,ai,Honey_List=NULL}中的ai相等;当相等时,所述辅助服务器计算认证值
Figure FDA0003293017270000032
计算主服务器认证值
Figure FDA0003293017270000033
β2=h4(IDi,PIDi3,R2,C2,T2);将
Figure FDA0003293017270000034
发送给主服务器;其中h1为抗碰撞的哈希函数,所述T2为所述辅助服务器当前时间戳,随机数ki∈Zq *;所述列表包括用户名h0(IDi)、当前时间Treg、密钥索引ai和蜜罐列表Honey_List=NULL;
所述S34包括:
S341、所述主服务器在接收到用户终端的{PIDi1,Ri,Ei,Tii1i}时,计算
Figure FDA0003293017270000035
通过零知识证明子协议验证πi,x1为主服务器的私钥值;
S342、所述主服务器在收到辅助服务器的消息
Figure FDA0003293017270000036
时,计算
Figure FDA0003293017270000037
验证β2是否等于h4(IDi,PIDi3,R2,C2,T2),所述h4为抗碰撞的哈希函数;
S343、当β2等于h4(IDi,PIDi3,R2,C2,T2)时,所述主服务器通过零知识证明子协议验证
Figure FDA0003293017270000038
计算ks=Dsk(C2)modq=rir2ki,验证等式ksEi=(x1+h0(IDi))R2是否成立;其中
Figure FDA0003293017270000039
其中sk为用户终端选择的Paillier加密的私钥;
S344、当等式成立时,所述主服务器随机选择r1∈Zq *,计算出R1=r1P,R1i=r1Ri,计算将要认证的会话密钥值sk1i=h3(IDi,R1i,Ri,R1,Ti,T1),β1=h4(IDi,R1,T1,sk1i,Ti),将认证消息{R11,T1}送给用户终端,h3为抗碰撞的哈希函数,所述T1为所述当前时间戳;
所述S35包括:
S351、用户终端收到{R11,T1},计算Ri1=riR1,sks1=h3(IDi,Ri1,Ri,R1,Ti,T1),计算β′1=h4(IDi,R1,T1,ski1,Ti),判断β′1是否等于β1;若是,则密钥协商成功。
2.根据权利要求1所述的密钥保护和协商方法,其特征在于,所述S332还包括:
当ai和注册阶段生成的列表{h0(IDi),Treg,ai,Honey_List=NULL}中的ai不相等时,辅助服务器判断Honey_List条目是否小于阈值MAX,当小于所述MAX时,所述辅助服务器将
Figure FDA0003293017270000041
写入辅助服务器中;当Honey_List条目大于或等于所述MAX,所述辅助服务器报错,终止所述用户终端名IDi的使用权。
3.根据权利要求2所述的密钥保护和协商方法,其特征在于,所述S2具体包括:
S21,用户终端选择随机数
Figure FDA0003293017270000042
输入身份IDi和口令PWi,计算h0(PWi||ni);用户终端通过安全信道方式向所述主服务器发送h0(IDi)以及h0(PWi||ni);所述h0为抗碰撞的哈希函数;
S22,主服务器选取随机数ki∈Zq *,计算
Figure FDA0003293017270000043
并将Di通过安全信道传给用户终端;将{h0(IDi),ki,h0(PWi||ni)}通过安全信道传给辅助服务器;其中P椭圆曲线的生成元,所述h1为抗碰撞的哈希函数,所述Di为主服务器和用户终端的验证信息;
S23,辅助服务器通过搜索h0(IDi)检查是否是新用户终端,当是新用户终端时,辅助服务器在数据库中创建一个新的列表{h0(IDi),Treg,ai,Honey_List=NULL},计算mi=h4(x2||h0(IDi)||Treg),
Figure FDA0003293017270000051
生成蜜罐值honeyword存入Honey_List,得到{h0(IDi),Treg,ai,Honey_List=NULL};所述ai=h1(h0(IDi)||Treg||mi))作为密钥索引;所述h4为抗碰撞的哈希函数;所述列表包括用户名h0(IDi)、当前时间Treg、密钥索引ai和蜜罐列表Honey_List=NULL;
S24,用户终端收到主服务器发送的Di,存储ni与Di
4.根据权利要求3所述的密钥保护和协商方法,其特征在于,所述S23还包括:辅助服务器通过搜索h0(IDi)检查不是新用户终端时,更新Treg和ai
5.根据权利要求3所述的密钥保护和协商方法,其特征在于,所述S2还包括:
当用户终端有了新的密钥PWn,用户终端重新计算h0(PWn||ni),发给主服务器和辅助服务器,辅助服务器更新相应的
Figure FDA0003293017270000052
作为密钥索引并存入辅助服务器中。
6.根据权利要求1-5任一项所述的密钥保护和协商方法,其特征在于,所述通过零知识证明子协议验证πi包括:
所述主服务器初始化***参数params=(G,P,q,Ri,h,pk,IDi),所述
Figure FDA0003293017270000053
计算R′i=Enc(ri);所述h表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
所述主服务器选择一个随机数
Figure FDA0003293017270000061
计算K=kP,计算
Figure FDA0003293017270000062
计算z=k-ri·emodq和ke=Enc(k);输出(z,ke,e);
所述主服务器计算Kv=zP+eRi,计算ev=h(Ri,Kv,IDi)和kv=ke·(R′i)-e,当e=ev且Encpk(z)=kv时,认证通过;当e≠ev或者Encpk(z)≠kv时,认证失败终止程序。
7.根据权利要求1-5任一项所述的密钥保护和协商方法,其特征在于,所述通过零知识证明子协议验证
Figure FDA0003293017270000063
包括:
所述主服务器初始化***参数params=(G,P,q,R2,h,pk,IDi),所述
Figure FDA0003293017270000064
计算R′2=Enc(r2);所述h表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
所述主服务器选择一个随机数
Figure FDA0003293017270000065
计算K=kP,计算
Figure FDA0003293017270000066
计算z=k-r2·emodq;输出(z,e);
所述主服务器计算Kv=zP+eR2,计算ev=h(R2,Kv,IDi),当e=ev,认证通过;当e≠ev时,认证失败终止程序。
8.一种密钥保护和协商***,其特征在于,所述密钥保护和协商***包括密钥***、主服务器、辅助服务器和用户终端,以实现上述权利要求1-7任一项所述的密钥保护和协商方法。
9.一种存储介质,其特征在于,所述存储介质包括存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现上述权利要求1-7任一项所述的密钥保护和协商方法。
CN202011482095.7A 2020-12-15 2020-12-15 一种密钥保护和协商方法、***和存储介质 Active CN112689283B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011482095.7A CN112689283B (zh) 2020-12-15 2020-12-15 一种密钥保护和协商方法、***和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011482095.7A CN112689283B (zh) 2020-12-15 2020-12-15 一种密钥保护和协商方法、***和存储介质

Publications (2)

Publication Number Publication Date
CN112689283A CN112689283A (zh) 2021-04-20
CN112689283B true CN112689283B (zh) 2021-11-23

Family

ID=75448009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011482095.7A Active CN112689283B (zh) 2020-12-15 2020-12-15 一种密钥保护和协商方法、***和存储介质

Country Status (1)

Country Link
CN (1) CN112689283B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107342859A (zh) * 2017-07-07 2017-11-10 安徽大学 一种匿名认证方法及其应用
CN108322486A (zh) * 2018-05-07 2018-07-24 安徽大学 一种车联网云环境下面向多服务器架构的认证协议
CN110581836A (zh) * 2018-06-11 2019-12-17 阿里巴巴集团控股有限公司 一种数据处理方法、装置及设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9258117B1 (en) * 2014-06-26 2016-02-09 Amazon Technologies, Inc. Mutual authentication with symmetric secrets and signatures
CN105471833B (zh) * 2015-05-14 2019-04-16 瑞数信息技术(上海)有限公司 一种安全通讯方法和装置
CN105516201B (zh) * 2016-01-20 2018-10-23 陕西师范大学 一种多服务器环境下轻量级匿名认证与密钥协商方法
US10243930B2 (en) * 2017-01-11 2019-03-26 Mastercard International Incorporated Systems and methods for secure communication bootstrapping of a device
CN108400962B (zh) * 2017-02-08 2022-03-29 格尔软件股份有限公司 一种多服务器架构下的认证和密钥协商方法
US11146395B2 (en) * 2017-10-04 2021-10-12 Amir Keyvan Khandani Methods for secure authentication
CN109041205A (zh) * 2018-08-23 2018-12-18 刘高峰 客户端注册方法、装置及***
CN110234111B (zh) * 2019-06-10 2022-06-17 北京航空航天大学 一种适用于多网关无线传感器网络的双因素认证密钥协商协议

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107342859A (zh) * 2017-07-07 2017-11-10 安徽大学 一种匿名认证方法及其应用
CN108322486A (zh) * 2018-05-07 2018-07-24 安徽大学 一种车联网云环境下面向多服务器架构的认证协议
CN110581836A (zh) * 2018-06-11 2019-12-17 阿里巴巴集团控股有限公司 一种数据处理方法、装置及设备

Also Published As

Publication number Publication date
CN112689283A (zh) 2021-04-20

Similar Documents

Publication Publication Date Title
Wazid et al. Design of secure key management and user authentication scheme for fog computing services
Chen et al. Server-aided public key encryption with keyword search
Eddine et al. EASBF: An efficient authentication scheme over blockchain for fog computing-enabled internet of vehicles
Chattaraj et al. A new two-server authentication and key agreement protocol for accessing secure cloud services
US8422670B2 (en) Password authentication method
JP2008545353A (ja) 未知の通信当事者間における信頼できる関係の確立
Srinivas et al. Provably secure biometric based authentication and key agreement protocol for wireless sensor networks
Dabra et al. LBA-PAKE: lattice-based anonymous password authenticated key exchange for mobile devices
Chakrabarti et al. Password-based authentication: Preventing dictionary attacks
Yu et al. Provably secure single sign-on scheme in distributed systems and networks
CN113849815B (zh) 一种基于零信任和机密计算的统一身份认证平台
Mahmood et al. PUF enable lightweight key-exchange and mutual authentication protocol for multi-server based D2D communication
Ul Hassan et al. An Improved SIP Authenticated Key Agreement Based on Dongqing et al.
Berini et al. HCALA: Hyperelliptic curve-based anonymous lightweight authentication scheme for Internet of Drones
Jia et al. A Redesigned Identity-Based Anonymous Authentication Scheme for Mobile-Edge Computing
Huszti et al. A simple authentication scheme for clouds
Kumar et al. A conditional privacy-preserving and desynchronization-resistant authentication protocol for vehicular ad hoc network
Karmakar et al. A PUF and Fuzzy Extractor-Based UAV-Ground Station and UAV-UAV authentication mechanism with intelligent adaptation of secure sessions
Lee et al. Secure and anonymous authentication scheme for mobile edge computing environments
Salvakkam et al. Design of fully homomorphic multikey encryption scheme for secured cloud access and storage environment
Harkins Secure password ciphersuites for transport layer security (TLS)
CN112689283B (zh) 一种密钥保护和协商方法、***和存储介质
Alotaibi et al. A lightweight and fog-based authentication scheme for internet-of-vehicles
CN112511544A (zh) 针对多服务器环境下认证协议的优化方法
JP5099771B2 (ja) 二要素認証システム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant