[发明专利]一种三方密钥协商产生方法有效
申请号: | 200810044225.1 | 申请日: | 2008-04-17 |
公开(公告)号: | CN101252577A | 公开(公告)日: | 2008-08-27 |
发明(设计)人: | 许春香;罗淑丹;张敏 | 申请(专利权)人: | 电子科技大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L9/08;H04L9/32 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610054四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明属于通信技术领域,涉及网络通信的安全问题,特别涉及“用户-服务器-用户”网络结构的基于口令认证的三方密钥交换协议——3PAKE协议。本发明基于CDH假设,利用离散对数的难解性和哈希函数的单向性,包括下述三大核心步骤:1.服务器对请求通信的双方用户进行身份验证;2.请求通信的双方用户对服务器身份进行验证;3.请求通信的用户双方相互进行身份验证。本发明克服了现有的S-3PAKE协议存在的发起者伪装攻击、响应者伪装攻击、中间人攻击和在线口令猜测攻击的漏洞,具有抗平凡攻击、抗中间人攻击、抵御发起者伪装攻击、响应者伪装攻击、抗离线猜测攻击、抗重放攻击、前向安全性和已知密钥安全性,它还具有完美的抗在线猜测攻击的特性。 | ||
搜索关键词: | 一种 密钥 协商 产生 方法 | ||
【主权项】:
1、一种三方密钥协商产生方法,该方法基于“用户-服务器-用户”的网络结构,其中:“服务器S”代表一个可靠的服务器,“用户A”和“用户B”分别表示在一次三方密钥协商产生过程中的发起者与接收者;“S”代表服务器S的身份信息,“A”和“B”分别代表用户A和用户B的身份信息;“pwA”表示只在用户A与服务器S之间共享的用于认证用户A身份的口令,“pwB”表示只在用户B与服务器S之间共享的用于认证用户B身份的口令;“S”、“A”、“B”、“pwA”和“pwB”均为已转化为数值形式的信息;(G,g,p)表示有限循环群G,Zp *=[1,p-1],Zp是整数模p的一个剩余类,g是Zp的生成元,p为一个大素数;H()表示对任意一个0、1序列进行哈希函数运算,所得到的结果属于Zp-1的哈希函数;其特征是,包括以下顺序步骤:第一步:用户A向服务器S发出通信请求的消息A‖B:用户A将用户A与用户B的身份信息连接起来,作为一个整体信息发送给服务器S,告知服务器S,用户A想与用户B进行通信;第二步:服务器S收到消息A‖B以后,对用户A和用户B的身份进行验证,具体包括以下步骤:步骤1:服务器S分别选择随机数x1∈Z* p以及y1∈Z* p,并且运用与用户A共享的口令pwA和与用户B共享的口令pwB计算和然后将消息XS发送给用户A,将消息YS发送给用户B;步骤2:用户A收到消息XS以后,首先运用口令pwA计算然后选择一个随机数x∈Z* p,计算和用于向服务器S验证自己身份的信息 并将消息A‖X‖X1发送给服务器S;用户B收到消息YS以后,首先运用口令pwB计算然后选择一个随机数y∈Z* p,计算和用于向服务器S验证自己身份的信息并将消息B‖Y‖Y1发送给服务器S;步骤3:服务器S收到消息A‖X‖X1和消息B‖Y‖Y1以后,首先通过其与用户A共享的口令pwA计算通过其与用户B共享的口令pwB计算接着运用H()分别算出和如果X′1≠X1,或Y′1≠Y1,则用户A与用户B的身份不正确,服务器S终止此次三方密钥的协商产生过程;如果X′1=X1,且Y′1=Y1,即用户A与用户B的身份正确;第三步:服务器S对用户A和用户B的身份进行验证后,用户A和用户B对服务器S的身份进行验证,具体包括以下步骤:步骤4:服务器S选择一个随机数z∈Z* p,并计算 X3=H(gyz,S),Y3=H(gxz,S),其中X3和Y3是服务器S分别用来向用户A和用户B验证自己身份的信息;然后服务器S分别将消息S‖X2‖X3发送给用户A,将消息S‖Y2‖Y3发送给用户B;步骤5:用户A收到消息S‖X2‖X3以后,首先运用之前选择的随机数x计算然后算出X′3=H(gyz,S),若X′3=X3,即服务器S的身份得到了验证;若X′3≠X3,则用户A终止此次三方密钥的协商产生过程;用户B收到消息S‖Y2‖Y3以后,首先运用之前选择的随机数y计算然后算出Y′3=H(gxz,S),若Y′3=Y3,即服务器S的身份得到了验证;若尸Y′3≠Y3,则用户B终止此次三方密钥的协商产生过程;第四步:用户A和用户B对服务器S的身份进行验证后,用户A和用户B之间进行相互认证,具体包括以下步骤:步骤6:用户A计算gxyz=(gyz)x,以及用户A用于向用户B验证自己身份的信息MA=H(A,B,gxyz),并将消息MA发送给用户B;用户B计算gxyz=(gxz)y,以及用户B用于向用户A验证自己身份的信息MB=H(B,A,gxyz),并将消息MB发送给用户A;步骤7:用户A收到消息MB以后,计算M′B=H(B,A,gxyz),若M′B=MB,即用户B的身份得到了验证;若M′B≠MB,则用户A终止此次三方密钥协商产生过程;用户B收到消息MA以后,计算M′A=H(A,B,gxyz),若M′A=MA,即用户A的身份得到了验证;若M′A≠MA,则用户B终止此次三方密钥协商产生过程;第五步:用户A和用户B之间进行相互认证后,用户A和用户B分别计算产生此次安全通信的会话密钥SKA和SKB,且SKA=SKB:用户A计算SKA=H(A,B,S,gxyz)作为之后与用户B进行安全通信的会话密钥;用户B计算.SKB=H(A,B,S,gxyz)作为之后与用户A进行安全通信的会话密钥。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200810044225.1/,转载请声明来源钻瓜专利网。
- 上一篇:多档变速器
- 下一篇:一种治疗慢性呼吸系统换气功能障碍的中成药