一种基于格的口令认证密钥交换方法及系统技术方案

技术编号:22692063 阅读:55 留言:0更新日期:2019-11-30 05:23
本发明专利技术公开了一种基于格的口令认证密钥交换方法及系统。本发明专利技术通过使用错误协调机制AKC,当两个参与方交换完信息seed,y

A method and system of password authentication key exchange based on lattice

The invention discloses a lattice based password authentication key exchange method and system. By using the error coordination mechanism AKC, when two participants exchange the information seed, y

【技术实现步骤摘要】
一种基于格的口令认证密钥交换方法及系统
本专利技术属于密码
,涉及一种基于格的口令认证密钥交换方法及系统。
技术介绍
由于大部分公钥密码算法都比对称密码算法速度慢,因此密钥交换仍然是保密通信过程中的重要问题。同时,在通信过程中需要使用认证来防止假冒、篡改、否认等攻击。将认证与密钥交换结合在一起,就产生了认证密钥交换协议,先对通信方的身份进行认证,在成功认证的基础上,为下一步的安全通信生成所使用的会话密钥。口令认证密钥交换是指协议的参与方通过共享一个低熵、易于记忆的口令,来建立一个共同的会话密钥,以实现在不安全的信道上进行安全保密通信。口令作为协议参与方的长期密钥,在没有泄露或被窃取的情况下,用于双方的相互认证,以及会话密钥的建立。由于在身份验证过程中使用低熵口令,口令认证密钥交换避免了使用额外的设备和公钥基础设施,不需要与受信任的第三方通信,而是基于服务器和客户端之间的直接信任,认证过程更加灵活简单。这是一类非常实用的密钥交换协议,有着广阔的应用前景。随着量子计算机的发展,许多密码原语可能受到量子敌手的威胁。这使得能够抵抗量子计算机攻击的密码协议成为研究热点,称为后量子密码。格是构建后量子密码系统的最常用数学技巧之一。相较于其他的困难性假设,理想格上的Ring-LWE问题更加通用和高效。定义整系数多项式环其中n表示多项式的维度,取值为2的幂,q为正整数,令χ为Rq上的分布,从Rq中随机选取a,根据分布χ选取秘密s和错误e,Ring-LWE问题的一个实例为(a,b=as+e)∈Rq×Rq。Ring-LWE问题引入了错误项,通信双方只能计算得到近似相等的值,因此对错误的处理成为基于格的密码方案需要解决的重要问题。其中一种方式就是使用错误协调机制,思想类似于模糊提取器,能够从近似相等的值中提取出相同的协调值。而非对称密钥共识AKC就是一种错误协调机制,其包含两个函数(k1,v)←Con(σ1,params)和k2←Rec(σ2,v,params),其中params=(q,t,g,d,aux)表示相关参数,(q,t,g,d)都是正整数且满足2≤t,g≤q和aux是由(q,t,g,d)确定的辅助参数,可以置为空,是辅助协调的信号值,是协调值,当|σ1-σ2|q≤d时,k1=k2。如果AKC的参数满足(2d+1)t<q(1-t/g),则AKC是正确且安全的,并且v独立于k1。其具体过程如下,通过将Con和Rec函数分别应用于多项式的每个系数,可以将它们扩展到多项式上:Con(σ1,params):输入σ1和params,从中随机选取k1,计算输出v。Rec(σ2,v,params):输入σ2和params,计算输出k2。目前基于格的口令认证密钥交换协议相对较少,且大多是基于CRS,为了达到在标准模型下的安全性,往往需要复杂的密码组件,效率不高。而基于ROM的方法,会使协议设计更加简单高效,但已有的构造由于对错误协调机制的分析不够紧致,造成了性能和安全性的损失。另外,当大量客户端同时连接服务器,存在高并发时,服务器的负载较大,现有的后量子口令认证密钥交换不够高效,不足以应用到这种场景。
技术实现思路
针对现有技术中存在的技术问题,本专利技术的目的在于提供一种基于格的口令认证密钥交换方法及系统,以使得通信参与方能够在不安全的信道上协商出共同的会话密钥,并通过低熵的口令进行相互认证;该密钥将在之后的对称密码中使用,从而建立安全的通信信道。首先,为了在客户端-服务器场景中提高口令认证密钥交换的效率和实用性,本专利技术提出了一种高效的口令认证密钥交换方法,并对安全性和性能进行综合考虑,给出了具体的参数选择,进一步提高了协议的安全强度,同时减少了传输的消息大小。该方法没有使用CRS进行构造,规避了CRS构造中由于使用复杂的密码组件所带来的低效,方法更加简单和高效。在认证过程中,客户端和服务端分别持有低熵口令和口令的哈希值,当二者匹配时,可以计算出相同的验证值,双方将认证成功,并能得到一致的会话密钥,进行后续保密通信。本专利技术的技术方案为:一种基于格的口令认证密钥交换方法,其步骤包括:1)客户端C随机选取种子seed并生成公共参数a,然后从环Rq上的中心二项分布中选取秘密sC和错误eC,计算yC=asC+eC,γ=H1(pwC),m=yC+γ,然后将<Cid,m,seed>发送给服务器S;其中pwC为客户端C的口令;2)服务器S接收到客户端C发送的消息<Cid,m,seed>后,首先检查m,如果不在环Rq上,则协议终止,否则根据种子seed生成公共参数a,并根据环Rq上的中心二项分布选取秘密sS和错误eS、eσ;然后计算yS=asS+eS、yC=m+γ′、σS=yCsS+eσ,并对σS进行协调,得到协调值kσ和信号值v;然后计算验证值k=H2(Cid,Sid,m,yS,kσ,γ′)和验证值k″=H3(Cid,Sid,m,yS,kσ,γ′),将<yS,v,k>发送给客户端C;其中,环Rq为整系数多项式环,γ′为服务器S持有的客户端C的口令哈希值;对于l∈{2,3,4},哈希函数Hl:{0,1}*→{0,1}λ,λ表示最终共享的会话密钥的比特长度,H2和H3用于验证,H4用于密钥派生,Cid表示客户端标识;3)客户端C接收到消息<yS,v,k>后,首先检查yS,如果不在环Rq上,则协议终止,否则计算σC=ySsC,调用协调函数Rec(σC,v),得到协调值k′σ=「t(v/g-σ2/q)modt」;然后计算γ′=-γ,将H2(Cid,Sid,m,yS,kσ,γ′)与k进行比较,若不相同则协议终止,否则计算k′=H3(Cid,Sid,m,yS,k′σ,γ′),得到最终的会话密钥skC=H4(Cid,Sid,m,yS,k′σ,γ′),并将k′发送给服务器S;其中,2≤t,g≤q和Sid为服务器S的标识,g、q、d、t为正整数;4)服务器S验证k′是否等于k″,若相等,则计算得到最终的会话密钥skS=H4(Cid,Sid,m,yS,kσ,γ′)。一种基于格的口令认证密钥交换系统,其特征在于,包括服务器和若干客户端;其中,服务器S,用于接收到客户端C发送的消息<Cid,m,seed>并检查m,如果m不在环Rq上,则协议终止,否则根据种子seed生成公共参数a,并根据环Rq上的中心二项分布选取秘密sS和错误eS、eσ;然后计算yS=asS+eS、yC=m+γ′、σS=yCsS+eσ,并对σS进行协调,得到协调值kσ和信号值v;然后然后计算验证值k=H2(Cid,Sid,m,yS,kσ,γ′)和验证值k″=H3(Cid,Sid,m,yS,kσ,γ′),将<yS,v,k>发送给客户端C;以及接收客户端发送的k′并验证k′是否等于k″,若相等,则计算得到最终的会话密钥skS=H4(Cid,Sid,m,yS,kσ,γ′);客户端C,用于随机选取种子seed并生成公共参数a,然后从环本文档来自技高网
...

【技术保护点】
1.一种基于格的口令认证密钥交换方法,其步骤包括:/n1)客户端C随机选取种子seed并生成公共参数a,然后从环R

【技术特征摘要】
1.一种基于格的口令认证密钥交换方法,其步骤包括:
1)客户端C随机选取种子seed并生成公共参数a,然后从环Rq上的中心二项分布中选取秘密sC和错误eC,计算yC=asC+eC,γ=H1(pwC),m=yC+γ,然后将<Cid,m,seed>发送给服务器S;其中pwC为客户端C的口令;
2)服务器S接收到客户端C发送的消息<Cid,m,seed>后,首先检查m,如果不在环Rq上,则协议终止,否则根据种子seed生成公共参数a,并根据环Rq上的中心二项分布选取秘密sS和错误eS、eσ;然后计算yS=asS+eS、yC=m+γ′、σS=yCsS+eσ,并对σS进行协调,得到协调值kσ和信号值v;然后计算验证值k=H2(Cid,Sid,m,yS,kσ,γ′)和验证值k″=H3(Cid,Sid,m,yS,kσ,γ′),将<yS,v,k>发送给客户端C;其中,环Rq为整系数多项式环,γ′为服务器S持有的客户端C的口令哈希值;对于l∈{2,3,4},哈希函数Hl:{0,1}*→{0,1}λ,λ表示最终共享的会话密钥的比特长度,H2和H3用于验证,H4用于密钥派生,Cid表示客户端标识;
3)客户端C接收到消息<yS,v,k>后,首先检查yS,如果不在环Rq上,则协议终止,否则计算σC=ySsC,调用协调函数Rec(σC,v),得到协调值然后计算γ′=-γ,将H2(Cid,Sid,m,yS,kσ,γ′)与k进行比较,若不相同则协议终止,否则计算k′=H3(Cid,Sid,m,yS,k′σ,γ′),得到最终的会话密钥skC=H4(Cid,Sid,m,yS,k′σ,γ′),并将k′发送给服务器S;其中,2≤t,g≤q和Sid为服务器S的标识,g、q、d、t为正整数;
4)服务器S验证k′是否等于k″,若相等,则计算得到最终的会话密钥skS=H4(Cid,Sid,m,yS,kσ,γ′)。


2.如权利要求1所述的方法,其特征在于,步骤1)中,对σS进行协调的方法为:从中随机选取kσ,计算得到协调值kσ和信号值v。


3.如权利要求1所述的方法,其特征在于,|σC-σS|q=|eSsC-eCsS-eσ|q≤d,(2d+1)t<q(1-t/g)。


4.如权利要求1所述的方法,其特征在于,步骤1)中,使用伪随机生成器Gen和种子seed生成公共参数a;如果Gen的输出值a大于或等于5q,则重新生成a,否则将当前生成的a循环减去q,直到更新后的a值小于或等于q,将最终得到的结果作为公共参数a。


5.如权利要求1所述的方法,其特征在于,通过计算得到中心二项分布;其中xi和xi′是均匀独立的比特。...

【专利技术属性】
技术研发人员:杨颖珊顾小卓王斌
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1