[发明专利]移动P2P用户身份认证方法有效
申请号: | 201010238066.6 | 申请日: | 2010-07-27 |
公开(公告)号: | CN101902476A | 公开(公告)日: | 2010-12-01 |
发明(设计)人: | 陈惠芳;谢磊;陈高翔;谭云栈 | 申请(专利权)人: | 浙江大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;H04W12/04;H04W12/06 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 杜军 |
地址: | 310027 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种移动P2P用户身份认证方法。现有的方法计算量大、认证复杂度高。本发明方法首先系统初始化和用户注册,包括设置系统参数、公开一部分系统参数和用户向注册服务器提交自身账号和密码进行注册。然后进行登录认证,包括用户输入自己的账号和密码进行登录。最后是服务请求认证,包括用户向移动P2P网络发起查询,向另一用户提出服务请求,另一用户进行验证,直至连接成功。本发明在认证服务器对用户身份认证时采用虚拟智能卡和静态密码的双因素认证,有较高的安全性;用户之间的认证不需要服务器的参与,降低了认证服务器的负担,也降低了移动终端的运算量。 | ||
搜索关键词: | 移动 p2p 用户 身份 认证 方法 | ||
【主权项】:
1.移动P2P用户身份认证方法,其特征在于该方法包括以下步骤:步骤(1)系统初始化和用户注册;在系统初始化阶段,移动P2P网络设置系统参数,并将其中一部分系统参数公开,公开的系统参数包括大素数p、大素数p的本原根g,认证服务器的公钥PUAS和注册服务器的公钥PUREG;用户注册是指第一次使用移动P2P网络的用户,向注册服务器提交自身账号ID和密码PW进行注册,通过账号和密码,用户可以登录到移动P2P网络并获取服务;用户注册的具体步骤是:a)用户发送注册请求消息至注册服务器;注册请求消息是用户使用注册服务器的公钥PUREG对自身账号ID和密码PW进行加密后的消息,加密算法为E(PUREG,[ID||PW]),其中E()是公钥加密算法,“||”为比特连接符,用于将一个比特串连接到另一个比特串上;b)注册服务器对注册请求消息用自身私钥进行解密,得到该用户的账号ID和密码PW,解密算法为D(PRREG,E(PUREG,[ID||PW])),其中D()为对应于E()的公钥解密算法;注册服务器再从整数域中随机选择参数β作为用户密钥,并计算秘密参数
其中K为注册服务器的主密钥,h(.)为单向哈希函数,
为异或运算;注册服务器将包含参数h(.)、ID、N、h(PW)和β的虚拟智能卡发放给提交注册请求的用户;c)注册服务器将该用户的身份信息用认证服务器的公钥加密后发送给认证服务器,用户的身份信息包括用户的账号ID和密钥β,加密算法为E(PUAS,[β||ID]),认证服务器用自身私钥解密后即可获得注册用户的身份信息;d)用户获得注册服务器返回的虚拟智能卡,将其保存到移动终端;注册成功后,用户可以通过虚拟智能卡、账号和密码登录到移动P2P网络中;步骤(2)登录认证;登录认证是指用户在存有虚拟智能卡的移动终端上通过输入正确的账号和密码登录到认证服务器并进行身份认证;登录认证包括本地登录和服务器验证;本地登录是指移动终端在本地验证用户输入的账号和密码的正确性,本地登录的具体方法是:e)用户输入自己的账号ID和密码PW进行登录,移动终端利用本地存储的虚拟智能卡对密码PW进行哈希运算,得到h(PW)’;将用户输入的ID和计算得到的h(PW)’与保存在虚拟智能卡中的ID和h(PW)进行比较;若用户输入的ID与保存在虚拟智能卡中的ID一致且计算得到的h(PW)’与保存在虚拟智能卡中的h(PW)一致,则本地登录成功;若用户输入的ID与保存在虚拟智能卡中的ID不一致或计算得到的h(PW)’与保存在虚拟智能卡中的h(PW)不一致,说明用户输入的ID或PW有误,本地登录失败;本地登录成功后,移动终端发送登录认证信息到认证服务器进行验证,服务器验证的具体方法是:f)移动终端随机选择整数u,使得u<p;计算公开参数a,a=gumodp;mod表示取模运算;g)移动终端计算登录的动态ID(DID)、验证参数C和用户标示符UID,具体为
C=h(DID//β//a//T1),UID=ID||a;其中T1为用户的本地时间戳,由于DID的生成依赖于本地时间戳,因此用户每次登录都会生成不同的DID,C为用于验证自身身份的验证参数,用户将UID、C和T1发送到认证服务器;h)认证服务器在T’时间收到用户的认证请求、UID、C和T1,认证服务器对T1进行验证,若T’-T1≤ΔT,继续验证;若T’-T1>ΔT,则认证失败;其中ΔT为时间参数,由P2P系统根据用户和认证服务器的时延进行确定;i)认证服务器从UID中得到ID和a,并查找与该用户ID对应的β,然后计算DID’=h(h(K||ID)||T1),C’=h(DID’||β||a||T1),验证C’和收到的C是否一致,若C’=C,表明该用户为合法用户,用户通过认证,若C’≠C,则认证失败;j)用户通过身份认证后,认证服务器用私钥PRAS为用户生成票据Ticket,具体为Ticket=E(PRAS,[ID||a||h(DID’)||T2||Lifetime]),并将票据Ticket发送给用户;其中T2为认证服务器生成票据Ticket的时间,Lifetime为票据的生存时间,T2与Lifetime用于确定票据的有效期,防止用户使用过期的票据;k)认证服务器向P2P系统发布用户的身份标识符UID,其它用户可通过移动P2P网络提供的搜索和查询协议发现该用户并进行服务请求;步骤(3)服务请求认证;服务请求认证是指通过登录认证的合法用户,需要向移动P2P网络中的其它用户请求服务时,用户之间进行的相互身份认证;服务请求认证的具体步骤是:l)用户A需要获取B提供的服务,则用户A向移动P2P网络发起查询,找到符合要求的用户B及其UIDB,用户A从返回的UIDB中得到用户B的公开参数b,
m)用户A向用户B提出服务请求,并发送认证信息TicketA和UIDA给用户B,TicketA为认证服务器为用户A发放的票据,UIDA为用户A此次登录的用户标识符,UIDA=IDA||aA;n)用户B使用认证服务器的公钥PUAS解密TicketA,得到IDA||aA||h(DIDA’)||T2||Lifetime,根据T2和Lifetime检查TicketA是否过期,若TicketA未过期,则将解密后的IDA、aA和用户A发送的UIDA进行比较,若解密后的IDA、aA与用户A发送的UIDA中的IDA、aA相同,则继续认证;若解密后的IDA、aA与用户A发送的UIDA中的IDA、aA不同,则认为A的身份被假冒,直接退出认证过程;o)用户B从整数域中随机选择一个整数r,计算中间值
对称密钥KAB=h(Temp||r)和参数M=h(KAB||r||IDB),并将M和r发送给用户A;p)用户A收到用户B发送的M和r后,计算
M’=h(KAB’||r||IDB),并与M进行比较,若M’=M,则认证了用户B和KAB的真实性,继续下一步骤;否则退出认证;KAB为用户A和用户B之间共享的对称密钥;q)用户A用对称密钥KAB对DIDA和NonceAB进行加密,并发送NonceAB给用户B,加密算法为:E(KAB,DIDA||NonceAB),其中NonceAB为用户A随机选择的整数;r)用户B使用对称密钥KAB对用户A发送的消息进行解密并计算h(DIDA),将计算得到的h(DIDA)与TicketA中的h(DIDA’)进行比较,若计算得到的h(DIDA)与TicketA中的h(DIDA’)一致,则认为用户A拥有正确的DIDA,且用户A经过了认证服务器的认证,同时用户B保存NonceAB,在B与A断开连接后根据NonceAB进行快速重认证;若计算得到的h(DIDA)与TicketA中的h(DIDA’)不一致,则退出认证;至此,用户A和用户B之间通过认证;用户B与用户A建立连接,并为用户A提供所需的服务。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201010238066.6/,转载请声明来源钻瓜专利网。
- 上一篇:液滴喷头及液滴喷出装置
- 下一篇:泛化置信度传播的双目立体视觉匹配方法