当前位置: 首页 > 专利查询>赵运磊专利>正文

一种身份隐藏且非延展安全的认证密钥协商方法技术

技术编号:12407104 阅读:157 留言:0更新日期:2015-11-29 04:07
本发明专利技术提供了一种身份隐藏且非延展安全的认证密钥协商方法,包括:第一设备将确定出的X′=AXd发送给第二设备,其中A=ga为第一设备公钥和X=gx和d=hd(X,auxd);第二设备确定Y′=BYe,其中B=gb为第二设备公钥和Y=gy和e=he(Y,auxe),并根据DH-指数y、私钥b以及X′确定S,并基于S确定KA和KB,根据KB和认证加密函数AE确定CB=AE(KB,(IB,B,CERTB,Y,DataB)),并将Y′和CB发送给第一设备;第一设备根据DH-指数x、私钥a以及Y′确定S,并基于S确定KA和KB,第一设备根据KA确定CA=AE(KA,(IA,A,CERTA,X,DataA)),并将CA发送给第二设备。在本会话密钥协商方法中,经合理的参数设置,每个设备运行2.5个模指数运算。这极大地减少了各个设备的数据计算量,提高了会话密钥的生成效率,并具有更优良的应用灵活。

【技术实现步骤摘要】

本专利技术涉及密码
,具体地说,涉及一种身份隐藏且非延展安全的认证密 钥协商方法。
技术介绍
认证密码协商是密码理论及应用的核心内容。大多数的认证密钥协商协议均需明 文传输交互双方的身份和公钥信息。而在移动互联时代,在很多应用中用户的身份和公钥 证书信息往往属于敏感信息,因此发展身份隐藏的认证密钥协商方法近年得到了网络与信 息安全理论与应用工程的大量关注。 目前主流的身份隐藏密钥协商协议是IETF的IKE协议国际标准。IKE协议运行过 程如下: 第一轮:第一用户发送参数X = gx至第二用户,其中,g表示有限群G'的循环子 群G的生成元,X表示第一用于的DH-指数; 第二轮:第二用户发送参数Y = gy至第一用户,第二用户还计算参数K = Xy和参 数CB=AE(K,(IB,B,CERTB,Sig B)),其中SigB是第二用户利用其私钥对(X,Y)的数字签名, 第二用户将(Y,C b)发送至第一用户。 第三轮:第一用户计算参数K = Yx和参数C a=AE (K,(IA,A,CERTA,SigA)),其中 SigA是第一用户利用其私钥对(X,Y)的数字签名。第一用户将Cb发送至用户B。 密码算法的主要计算单元是模指数运算。DSA数字签名标准的生成需要1个模指 数运算,签名验证需要2个模指数运算。而对于IKE协议,每个用户需运行1次数字签名生 成和1次数字签名验证,共计需运行3个模指数运算。另外,每个用户需运行另外2个模指 数运算。 具体而言,这2个模指数运算分别为第一用户计算(X = gx,K = Γ)和第二用户计 算(Y = gy,K = Xy)。因此,对于IKE算法来说,每个用户总共至少需要运行5个模指数运 算。这也就导致了 IKE算法难以在计算受限的设备(例如手机、智能卡等移动设备)上的 配置和应用。 因此,在移动互联大规模普及和应用的背景下,亟需一种更为高效的新型身份隐 藏且安全的认证密钥协商方法。
技术实现思路
为解决上述问题,本专利技术提供了一种身份隐藏且非延展安全的认证密钥协商方 法,所述方法包括: 第一设备根据其生成的DH-指数X e Zq和第一设备的公钥A = gae G, 第一辅助信息auxA其可为空的数据集合,以及第一设备需加密传输的可为空数据集 合0 &七&4,确定第一参数父'=厶父4 6或父'=厶呔£6,其中父=8)!£6,(1 = 11(父, auxd),Arf :{0,1}' -> {Ο,#是一个转换函数,1彡Ld< I q I,I q I表示q的二进制长度, 并将所述第一参数X'以及第一辅助信息auxA&送给第二设备,其中,g表示有限群G'的循环子群G的阶为q的生成元,a e Zq是 第一设备的私钥,1&表示第一设备的身份,CERT A是第一设备的公钥证书,CERT B是第二设备 的公钥证书,18表示第二设备的身份,B = g be G是第二设备的公钥,b e Z q是第二设备的 私钥; 第二设备根据其生成的DH-指数y e Zq和第二设备的公钥B = gbe G以及第二辅 助信息auxB其可为空的数据集合,以及第二设备需加密传输的可为空数据集合Data B,其中 b e Zq是第二设备的私钥,以及接受到所述第一参数X'及第一辅助信息auxA确定第二参 一个转换函数,K I q|,hJPhd可相同或不同,所述第二设备根据(b,y)以及第二辅助信息auxB以及接收到的所述 第一参数t及所述第一辅助信息auxA,确定预先共享密钥S,根据S以及{X',Y',auxA, auxB}的一个子集利用密钥导出函数KDF确定第一设备和第二设备的认证加密密钥心和 Kb,其中KJPKb相等或不等,第二设备利用一个对称加密算法AE计算Cb= AE (KB,(IB,B, CERTB,Y,DataB)),其中DataB是第二设备其它需加密传输的可为空的数据集合,所述第二设 备将第二参数Y'和CjP aux B发送给所述第一设备,并导出会话密钥; 所述第一设备根据(a,x)以及所述第一辅助信息auxJP aui以及接受到的所述 第二参数t以及第二辅助信息auxB确定S,根据S以及{X',Y<,aux A,auxB}的一个子集 利用密钥导出函数KDF确定第一设备和第二设备的认证加密密钥心和K B,然后利用Kb解密 接收到的所述Cb得到(I B,B,CERTB,Y);所述第一设备验证公钥证书CERTb和第二参数t 的有效性,若验证结果不正确则终止运行,若验证结果正确则计算Ca= AE (K A,(IA,A,CERTa, X,DataA)),其中第一设备其它需加密传输的可为空的数据集合;第一设备将CA& 送给第二设备,并导出会话密钥; 所述第二设备利用Ka解密接收到的所述Ca得到(I A,A,CERTA,X),验证公钥证书 CERTa和第一参数t的有效性,若验证结果不正确则终止运行,若验证结果正确则导出会 话密钥; 具体实施中,推荐 X' =AXlY' =BY e,或,X' =AdX 且 Y' =BeY; 要求第一设备和第二设备应计算出相同的预先共享密钥S,并导出相同的会话密 钥。 根据本专利技术的一个实施例, d = hd(IA,A,X,aux' d),aux' d为空或包含一个时间戳和/或一个第一设备选 取的随机数1^和/或第二设备的身份和/或公钥信息,其中r Ae auxA或;r Ae 〇313&,11(1是 一个哈希函数或匕的输出是X的X-轴坐标或X的X-轴坐标的一个函数; 和 / 或,e = hed B,Y,X ',aux ' e)或 e = h(IB,B,Y = gy,aux ' J,且可为空,或aiD^ e包含一个时间戳和/或一个第二设备选取的 随机数1'[5和/或第一设备的身份和/或公钥信息,其中1'[5£&1? [5或1'[5£0&1&[5,11(;是一个 哈希函数或i的输出是Y的X-轴坐标或Y的X-轴坐标的一个函数; 和/或,31!^包含第一设备生成的随机数和/或时间戳和/或第一设备的身份信 息和/或第一设备的IP地址信息,或auxA为空;aux 8包含第二设备生成的随机数和/或时 间戳和/或第二设备的身份信息和/或第二设备的IP地址信息,或auxB为空; 和/或,根据所需达到的安全强度需要,X的长度|x|以及y的长度|y|可 变,以及d的长度L d以及e的长度变,即:0< |x| < |q|,0< |y| < |q|,0 < Ld< |q|,0<Le彡|q|,其中|q|表示的是q的长度,或x = h X(x ',auxx),其中hx: {0,1:T- {0,1} |x|是一个哈希函数,X' e {〇,1厂是第一设备选取的保密的随机数,推荐 Ld= L e= ,I X I = I y I = 或 I X I = I y =kl ; 和/或,所述第二设备确定出S后,还判断S是否为G'中的单位元,如果S为单 位元,则停止执行后续步骤,否则继续后续步骤;和/或,所述第一设备确定出S后,还判断 S是否为G'中的单位元,如果S为单位元,本文档来自技高网
...

【技术保护点】
一种身份隐藏且非延展安全的认证密钥协商方法,其特征在于,所述方法包括:第一设备根据其生成的DH‑指数x∈Zq和第一设备的公钥A=ga∈G,第一辅助信息auxA其可为空的数据集合,以及第一设备需加密传输的可为空数据集合DataA,确定第一参数X′=AXd∈G或X′=AdX∈G,其中X=gx∈G,d=h(X,auxd),是一个转换函数,1≤Ld≤|q|,|q|表示q的二进制长度,并将所述第一参数X′以及第一辅助信息auxA发送给第二设备,其中,g表示有限群G′的循环子群G的阶为q的生成元,a∈Zq是第一设备的私钥,IA表示第一设备的身份,CERTA是第一设备的公钥证书,CERTB是第二设备的公钥证书,IB表示第二设备的身份,B=gb∈G是第二设备的公钥,b∈Zq是第二设备的私钥;第二设备根据其生成的DH‑指数y∈Zq和第二设备的公钥B=gb∈G以及第二辅助信息auxB其可为空的数据集合,以及第二设备需加密传输的可为空数据集合DataB,其中b∈Zq是第二设备的私钥,以及接受到所述第一参数X′及第一辅助信息auxA确定第二参数Y′=BYe∈G或Y′=BeY∈G,其中Y=gy∈G,e=he(Y,auxe),是一个转换函数,1≤Le≤|q|,he和hd可相同或不同,所述第二设备根据(b,y)以及第二辅助信息auxB以及接收到的所述第一参数X′及所述第一辅助信息auxA,确定预先共享密钥S,根据S以及{X′,Y′,auxA,auxB}的一个子集利用密钥导出函数KDF确定第一设备和第二设备的认证加密密钥KA和KB,其中KA和KB相等或不等,第二设备利用一个对称加密算法AE计算CB=AE(KB,(IB,B,CERTB,Y,DataB)),其中DataB是第二设备其它需加密传输的可为空的数据集合,所述第二设备将第二参数Y′和CB和auxB发送给所述第一设备,并导出会话密钥;所述第一设备根据(a,x)以及所述第一辅助信息auxA和auxe以及接受到的所述第二参数Y′以及第二辅助信息auxB确定S,根据S以及{X′,Y′,auxA,auxB}的一个子集利用密钥导出函数KDF确定第一设备和第二设备的认证加密密钥KA和KB,然后利用KB解密接收到的所述CB得到(IB,B,CERTB,Y);所述第一设备验 证公钥证书CERTB和第二参数Y′的有效性,若验证结果不正确则终止运行,若验证结果正确则计算CA=AE(KA,(IA,A,CERTA,X,DataA)),其中DataA是第一设备其它需加密传输的可为空的数据集合;第一设备将CA发送给第二设备,并导出会话密钥;所述第二设备利用KA解密接收到的所述CA得到(IA,A,CERTA,X),验证公钥证书CERTA和第一参数X′的有效性,若验证结果不正确则终止运行,若验证结果正确则导出会话密钥。...

【技术特征摘要】

【专利技术属性】
技术研发人员:赵运磊李俊全
申请(专利权)人:赵运磊
类型:发明
国别省市:上海;31

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

1