[发明专利]一种隐私保护的会话密钥协商方法有效
申请号: | 201510526076.2 | 申请日: | 2015-08-25 |
公开(公告)号: | CN105162585B | 公开(公告)日: | 2018-06-15 |
发明(设计)人: | 姚期智;赵运磊 | 申请(专利权)人: | 清华大学 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L29/06 |
代理公司: | 北京聿宏知识产权代理有限公司 11372 | 代理人: | 张文娟;朱绘 |
地址: | 100084 北京市海淀区1*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种会话密钥协商方法,包括:第一设备将确定出的X′发送给第二设备;第二设备根据DH‑指数y和公钥B,确定Y′;第二设备根据DH‑指数y、私钥b以及X′,确定S,并基于S以及aux,确定KA和KB,根据KB确定CB,并将Y′和CB发送给第一设备;第一设备根据Y′确定S,并根据S以及aux,确定KA和KB以及K′,第一设备根据得到的参数确定会话密钥,还根据KA,利用预设认证加密函数确定CA,并将CA发送给第二设备;第二设备利用KA对CA进行解密得到CERTA和DH‑指数x,并验证CERTA和DH‑指数x的有效性,若公钥证书CERTA和DH‑指数x有效,则根据得到的参数确定会话密钥。在本会话密钥协商方法中,协议交互的每个设备至多需要进行三个模指数运算。这也就极大地减少了各个设备的数据计算量,提高了会话密钥的生成效率,节省了设备的硬件资源。 1 | ||
搜索关键词: | 会话密钥协商 会话密钥 参数确定 公钥 模指数运算 函数确定 认证加密 设备利用 数据计算 协议交互 隐私保护 硬件资源 解密 私钥 预设 验证 | ||
第一设备根据其生成的DH‑指数x和第一设备的公钥A,确定第一参数X′,并将所述第一参数X′发送给第二设备;
第二设备根据其生成的DH‑指数y和第二设备的公钥B,确定第二参数Y';
所述第二设备根据所述DH‑指数y、第二设备的私钥b以及接收到的所述第一参数X′,确定预先共享密钥S,并基于预先共享密钥S以及辅助信息aux,利用预设密钥导出函数确定第一设备和第二设备的认证加密密钥KA和KB以及额外导出密钥K',根据第二设备的认证加密密钥KB,利用预设认证加密函数确定第二设备密文CB,并将第二参数Y'和第二设备密文CB发送给所述第一设备;
所述第一设备根据接收到的第二参数Y'确定预先共享密钥S,并根据预先共享密钥S以及辅助信息aux,利用预设密钥导出函数确定第一设备和第二设备的认证加密密钥KA和KB以及额外导出密钥K',所述第一设备根据得到的参数确定会话密钥,还根据第一设备的认证加密密钥KA,利用预设认证加密函数确定第一设备密文CA,并将第一设备密文CA发送给所述第二设备;
所述第二设备利用认证加密密钥KA对所述第一设备密文CA进行解密得到第一设备的公钥证书CERTA和DH‑指数x,并验证第一设备的公钥证书CERTA和DH‑指数x的有效性,若公钥证书CERTA和DH‑指数x有效,则根据得到的参数确定会话密钥;
其中,所述第一设备根据如下表达式确定第一参数X′:
X'=Agx
所述第二设备根据如下表达式确定第二参数Y':
Y'=Bgy
其中,g表示有限群G'的循环子群G的生成元。
2.如权利要求1所述的方法,其特征在于,所述第一设备将所述第一参数X′发送给第二设备时,还将自身生成的第一辅助信息auxA发送给第二设备;
且/或,所述第二设备将第二参数Y'和第二设备密文CB发送给所述第一设备时,还将自身生成的第二辅助信息auxB发送给所述第一设备。
3.如权利要求2所述的方法,其特征在于,所述第一辅助信息auxA包含第一设备生成的随机数、时间戳和/或第一设备的身份信息,或所述第一辅助信息auxA为空;
且/或,所述第二辅助信息auxB包含第二设备生成的随机数、时间戳和/或第二设备的身份信息,或所述第二辅助信息auxB为空。
4.如权利要求1~3中任一项所述的方法,其特征在于,DH‑指数x的长度|x|以及DH‑指数y的长度|y|是可变的。5.如权利要求1所述的方法,其特征在于,所述第二设备确定出预先共享密钥S后,在确定第一设备和第二设备的认证加密密钥KA和KB前,还判断S是否为有限群G′中的单位元,如果S为单位元,则停止执行后续步骤,否则继续执行后续步骤;
且/或,所述第一设备确定出预先共享密钥S后,在确定第一设备和第二设备的认证加密密钥KA和KB前,还判断S是否为有限群G′中的单位元,如果S为单位元,则停止执行后续步骤,否则继续执行后续步骤。
6.如权利要求1所述的方法,其特征在于,所述第一设备根据如下表达式确定预先共享密钥S:
S=Y'(a+x)t
所述第二设备根据如下表达式确定预先共享密钥S:
S=X'(b+y)t
其中,t表示伴随因子,a和b分别表示第一设备和第二设备的私钥。
7.如权利要求1所述的方法,其特征在于,所述第一设备根据如下表达式确定预先共享密钥S:
S=Y'(a+x)或S=Y'(ax)
所述第二设备根据如下表达式确定预先共享密钥S:
S=X'(b+y)或S=X'(by)
其中,a和b分别表示第一设备和第二设备的私钥。
8.如权利要求7所述的方法,其特征在于,所述第二设备在确定S前,先检测第一参数X'∈G是否成立,若不成立,则停止执行后续步骤;否则继续执行后续步骤。9.如权利要求1所述的方法,其特征在于,所述第一设备得到第一设备和第二设备的认证加密密钥KA和KB以及额外导出密钥K'后,在生成第一设备密文CA前,还利用第二设备的认证加密密文KB对所述第二设备密文CB进行解密,得到第二设备的公钥证书CERTB和DH‑指数y,并验证第二设备的公钥证书CERTB和DH‑指数y的有效性,若公钥证书CERTA和DH‑指数y有效,则继续执行后续步骤以生成第一设备密文CA,否则终止运行后续步骤。10.如权利要求9所述的方法,其特征在于,所述第一设备利用第二设备的认证加密密文KB对所述第二设备密文CB进行解密,还得到第二设备的公钥B,所述第一设备在确定第一设备密文CA前,还验证B∈G是否成立,如果成立,则继续执行后续步骤,否则终止执行后续步骤。
11.如权利要求9或10所述的方法,其特征在于,所述第一设备通过验证y∈Zq且Y'=Bgy∈G是否成立来验证DH‑指数y的有效性,如果成立,则判定DH‑指数y有效,否则判定DH‑指数y无效。12.如权利要求1所述的方法,其特征在于,所述第二设备通过验证x∈Zq且X'=Agx∈G是否成立来验证DH‑指数x的有效性,如果成立,则判定DH‑指数x有效,否则判定DH‑指数x无效。13.如权利要求1所述的方法,其特征在于,所述第一设备在确定预先共享密钥S前,还验证第二参数Y'∈G是否成立,如果成立,则继续执行后续步骤,否则终止执行后续步骤。
14.如权利要求1所述的方法,其该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510526076.2/,转载请声明来源钻瓜专利网。
- 上一篇:一种适用于环锭纺包芯纱的导丝装置
- 下一篇:一种天然气过滤器