CN101902476B - 移动p2p用户身份认证方法 - Google Patents

移动p2p用户身份认证方法 Download PDF

Info

Publication number
CN101902476B
CN101902476B CN201010238066.6A CN201010238066A CN101902476B CN 101902476 B CN101902476 B CN 101902476B CN 201010238066 A CN201010238066 A CN 201010238066A CN 101902476 B CN101902476 B CN 101902476B
Authority
CN
China
Prior art keywords
user
authentication
nonce
certificate server
uid
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201010238066.6A
Other languages
English (en)
Other versions
CN101902476A (zh
Inventor
陈惠芳
谢磊
陈高翔
谭云栈
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201010238066.6A priority Critical patent/CN101902476B/zh
Publication of CN101902476A publication Critical patent/CN101902476A/zh
Application granted granted Critical
Publication of CN101902476B publication Critical patent/CN101902476B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及一种移动P2P用户身份认证方法。现有的方法计算量大、认证复杂度高。本发明方法首先系统初始化和用户注册,包括设置系统参数、公开一部分系统参数和用户向注册服务器提交自身账号和密码进行注册。然后进行登录认证,包括用户输入自己的账号和密码进行登录。最后是服务请求认证,包括用户向移动P2P网络发起查询,向另一用户提出服务请求,另一用户进行验证,直至连接成功。本发明在认证服务器对用户身份认证时采用虚拟智能卡和静态密码的双因素认证,有较高的安全性;用户之间的认证不需要服务器的参与,降低了认证服务器的负担,也降低了移动终端的运算量。

Description

移动P2P用户身份认证方法
技术领域
本发明属于互联网身份认证领域,涉及一种在移动P2P网络中用户身份认证方法。
背景技术
在P2P(Peer-to-Peer)网络中,每个用户的地位都是对等的,同时具有客户端(Client)和服务器(Server)的功能,因此P2P网络也称为对等网络。在P2P网络中,每个用户都可以自由地加入和退出网络,用户之间可以更好地共享资源。P2P技术在文件共享、即时通信、分布式计算和流媒体播放等众多领域都得到了广泛的应用。
P2P技术在带来突破性优势的同时,也不可避免的产生一些问题,其中网络安全问题尤为突出。P2P网络的对等性和匿名性会使得恶意用户不易被发现,恶意用户会发布虚假资源、传播病毒、恶意攻击正常用户等等,不仅影响到部分正常用户的使用,甚至会导致整个P2P系统的崩溃。
保证P2P网络安全最直接的方法是采用身份认证技术,来验证用户身份的真实性和合法性,并阻止非法用户进入网络。身份认证技术是P2P系统安全的第一道防线。
当前的P2P网络中常用的身份认证技术有以下几种:
(1)基于PKI(Public Key Infrastructure,公钥基础设施)机制的身份认证技术
传统的PKI技术通常由可信的第三方为合法用户颁发数字证书,用户之间可以通过对方的数字证书进行相互认证而不需要认证服务器的参与。传统的PKI技术安全性强,可靠性高,但存在着证书获取、撤销和跨域认证等困难,在用户加入和退出频繁的P2P网络中问题尤为突出。
(2)基于ID-PKC(Identity based-Public Key Cryptograph,基于身份的公钥加密体系)机制的身份认证技术
在ID-PKC中,用户的公钥直接由其身份信息ID导出,而相应的私钥则由PKG(Private Key Generator,私钥生成器)生成。ID-PKC解决了PKI中证书管理的问题,但其仍需要一个可信的PKG来生成所有用户的私钥,因此PKG知道所有用户的私钥并可以冒充任意一个用户,所以基于ID-PKC的认证技术存在密钥托管的问题。
(3)基于零知识证明的身份认证技术
在零知识证明中,证明者试图向验证者证明某个论断是正确的,或者证明者拥有某个知识,却不向验证者透露任何有用的消息。零知识证明简单有效,同样不需要认证服务器的参与,但零知识证明通常需要多轮的交互来降低证明者欺骗验证者的概率,在连接容易断开的P2P网络中,认证过程交互次数越多,认证失败的可能性就越大。因此零知识证明不适合用户会频繁退出和加入,或者连接容易断开的P2P应用场景。
移动P2P采用无线通信技术来实现可移动终端之间数据资源的共享。除了具有传统的P2P技术一些特点外,由于移动性和无线性,移动P2P技术有以下突出的特点:
(1)网络的高度动态性。用户的移动性和频繁的加入和退出,使移动P2P网络的拓扑结构变化频繁。
(2)用户自身资源受限。移动终端的处理能力、存储能力和能量供应等都受一定的限制。
(3)有限的带宽。移动P2P采用无线通信技术,链路带宽与固定网络相比较低。
由于移动P2P技术有其自身的特点,因此移动P2P网络中的用户身份认证机制必须适合移动P2P网络中高度动态,用户资源受限,带宽有限,连接容易断开等特点。主要从以下3个方面来考虑:
(1)认证方法要尽量简单,交互次数少,计算量小。
(2)认证过程不需要认证服务器的参与。由于用户可以自由地和其它用户进行通信,因此用户之间需要频繁地进行认证。所以认证过程尽量不要认证服务器的参与。
(3)用户之间的移动性和无线连接的不稳定性导致用户和用户容易断开,这时已经建立连接的用户之间需要进行再次认证。因此需要有快速的重认证方法,降低认证的复杂度。
发明内容
由于现有P2P网络中身份认证技术不能很好地适用于移动P2P网络的应用场景,因此本发明提出一种适合移动P2P网络架构特点的身份认证方法。
本发明所提出的移动P2P身份认证方法适用于具有基础设施的3G移动网络的应用场景,本发明所提出的移动P2P网络结构由注册服务器、认证服务器和移动用户组成,其架构见附图1。
本发明所提出的身份认证方法包括用户注册和用户身份认证,其中用户身份认证包括登录认证、服务请求认证和短暂断线之后的快速重认证。
本发明方法具体包括如下步骤:
步骤(1)系统初始化和用户注册。
在系统初始化阶段,移动P2P网络设置系统参数,并将其中一部分系统参数公开,公开的系统参数包括大素数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(.)为单向哈希函数,
Figure BSA00000207040300032
为异或运算;
注册服务器将包含参数<h(.),ID,N,h(PW),β>的虚拟智能卡发放给提交注册请求的用户,h(PW)为用户密码的哈希值;
c)注册服务器将该用户的身份信息用认证服务器的公钥加密后发送给认证服务器,所述的用户的身份信息包括用户的账号ID和密钥β,具体为E(PUAS,[β||ID]),认证服务器用自身私钥解密后即可获得注册用户的身份信息;
d)用户获得注册服务器返回的虚拟智能卡,将其保存到移动终端。注册成功后,用户可以通过虚拟智能卡、账号和密码登录到移动P2P网络中。
步骤(2)登录认证。
登录认证是指用户在存有虚拟智能卡的移动终端上通过输入正确的账号和密码登录到认证服务器并进行身份认证。登录认证包括本地登录和服务器验证。本地登录是指移动终端在本地验证用户输入的账号和密码的正确性。本地登录的具体方法是:
e)用户输入自己的账号ID和密码PW进行登录,移动终端利用本地存储的虚拟智能卡对密码PW进行哈希运算,得到h(PW)’,并将用户输入的ID和计算得到的h(PW)’,与保存在虚拟智能卡中的ID和h(PW)进行比较。若两者一致,则本地登录成功;若两者不一致,说明用户输入的ID或PW有误,本地登录失败;
本地登录成功后,移动终端发送登录认证信息到认证服务器进行验证,服务器验证的具体方法是:
f)移动终端随机选择整数u,使得u<p,并计算公开参数a=gu mod p;mod表示取模运算;
g)移动终端计算登录的动态ID(DID)、验证参数C和用户标示符UID,具体为
Figure BSA00000207040300041
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=E(PRAS,[ID||a||h(DID’)||T2||Lifetime]),并将票据Ticket发送给用户。其中T2为认证服务器生成票据Ticket的时间,Lifetime为票据的生存时间,T2与Lifetime用于确定票据的有效期,防止用户使用过期的票据;
k)认证服务器向P2P系统发布用户的身份标识符UID,其它用户可通过移动P2P网络提供的搜索和查询协议发现该用户并进行服务请求。
步骤(3)服务请求认证。
服务请求认证是指通过登录认证的合法用户,需要向移动P2P网络中的其它用户请求服务时,用户之间进行的相互身份认证。服务请求认证的具体步骤是:
l)若用户A需要获取B提供的服务,则其向移动P2P网络发起查询,找到符合要求的用户B及其UIDB,用户A从返回的UIDB中得到用户B的公开参数b,
Figure BSA00000207040300051
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进行比较,若相同,则继续认证;若不同,则认为A的身份被假冒,直接退出认证过程;
o)用户B从整数域中随机选择一个整数r,计算中间值
Figure BSA00000207040300052
对称密钥KAB=h(Temp||r)和参数M=h(KAB||r||IDB),并将<M,r>发送给用户A;
p)用户A收到用户B发送的<M,r>后,计算
Figure BSA00000207040300053
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),与TicketA中的h(DIDA’)进行比较。若两者一致,则认为用户A拥有正确的DIDA,且用户A经过了认证服务器的认证,同时用户B保存NonceAB,在B与A断开连接后根据NonceAB可以进行步骤(4)中的快速重认证;若两者不一致,则退出认证;
至此,用户A和用户B之间通过认证,用户B与用户A建立连接,并为用户A提供所需的服务。
步骤(4)连接短暂断开后的快速重认证。
若用户A和用户B已经通过认证,但由于某种原因用户A与用户B暂时失去连接,在一定时间Toff后向用户B重新发起连接,用户B对用户A需重新认证,本发明所提出的快速重认证方法具体步骤是:
s)用户A向用户B提出重服务认证请求,并发送认证信息<UIDA>给用户B;
t)用户B在本地查找是否存在与UIDA对应的KAB和NonceAB,若不存在KAB和NonceAB,则说明用户B之前并未对用户A进行认证,快速重认证失败;若存在,则用户B产生一个新的随机数Nonce’AB并用KAB加密NonceAB后发送给用户A,E(KAB,Nonce’AB);
u)用户A用KAB对消息进行解密,得到Nonce’AB,计算并发送h(NonceAB||Nonce’AB)给用户B;
v)用户B根据本地保存的NonceAB,计算h(NonceAB||Nonce’AB)’,并与A发送的消息进行比较。若两者一致,则用户A通过认证,用户A和用户B将NonceAB更新为Nonce’AB;若两者不一致,则认证失败。
本发明在认证服务器对用户身份认证时采用虚拟智能卡和静态密码的双因素认证,有较高的安全性;用户之间的认证不需要服务器的参与,降低了认证服务器的负担,也降低了移动终端的运算量;用户之间短暂断开连接后采用快速重认证方法,避免了再次进行相同的认证,提高了效率。
附图说明
图1为本发明所采用的移动P2P网络结构示意图;
图2为本发明方法中移动用户注册过程流程图;
图3为本发明方法中移动用户登录认证过程流程图;
图4为本发明方法中移动用户之间服务请求认证过程流程图;
图5为本发明方法中移动用户间快速重认证过程流程图。
具体实施方式
下面结合附图进一步说明本发明提出的移动P2P网络中用户身份认证方法的具体实施过程。
本发明采用具有基础设施的3G移动网络作为移动P2P网络的应用场景,其架构如图1所示。该移动P2P网络结构由注册服务器1、认证服务器2、基站控制器3、基站4和移动用户5组成。注册服务器处理新用户的注册,为用户生成虚拟智能卡;认证服务器负责认证登录所述移动P2P网络的的用户,并发放票据。移动用户采用手机、PDA、笔记本等移动设备,通过基站接入到3G核心网络。
经过注册的合法移动用户登录时,由认证服务器对其进行认证。移动用户通过身份认证后,可以从该移动P2P网络获取服务,也可以为该网络中的其他用户提供服务。请求服务的用户与提供服务的用户若是首次进行通信,提供服务的用户需要确认服务请求者的身份是否合法。此外,由于移动网络的高度动态性,用户之间原先建立的连接容易断开,需要进行快速的重认证。
用户注册过程:图2为移动用户第一次使用该移动P2P网络,向注册服务器进行注册的过程。假设用户A向注册服务器请求注册,包括以下步骤:
a)用户A发送注册请求消息至注册服务器,具体为E(PUREG,[IDA||PWA]),IDA和PWA分别为用户向服务器提交的账号和密码;
b)注册服务器对注册请求消息用自身私钥进行解密,得到该用户的账号IDA和密码PWA,具体为D(PRREG,E(PUREG,[IDA||PWA]));注册服务器再从整数域随机选择参数βA,作为用户密钥,并计算秘密参数
Figure BSA00000207040300071
Figure BSA00000207040300072
c)注册服务器将包含参数<h(.),IDA,NA,h(PWA),βA>的虚拟智能卡发放给用户A;
d)注册服务器将用户A的身份信息,用认证服务器的公钥加密后发送给认证服务器,所述的用户A的身份信息具体为E(PUAS,[βA||IDA]),认证服务器用自身私钥解密后即可获得用户A的身份信息;
用户A获得注册服务器返回的虚拟智能卡,将其保存到本地。注册成功后,用户A可以通过所述的虚拟智能卡和所述的账号和密码登录到移动P2P网络中。
用户登录认证过程:完成注册后,用户A需要登录并通过认证服务器的认证才能加入到所述的移动P2P网络。用户登录认证过程如图3所示,包括如下步骤:
a)用户输入自己的账号IDA和密码PWA进行登录,移动终端利用本地存储的虚拟智能卡对密码PWA进行哈希运算,得到h(PWA)’;
b)将用户输入的ID和计算得到的h(PWA)’,与保存在虚拟智能卡中的对应参数进行比较。若两者一致,则本地登录成功;若两者不一致,说明用户输入的IDA或PWA有误,本地登录失败;
c)用户A随机选择整数uA<p,并计算公开参数
Figure BSA00000207040300081
并计算登录的动态IDA(DIDA)、参数C和用户标示符UIDA,具体为
Figure BSA00000207040300082
C=h(DIDA//βA//aA//T1),UIDA=IDA||aA
d)用户将所述的UIDA、C和T1发送到服务器进行认证;
e)认证服务器在T’时间收到用户的认证请求和参数UIDA、C和T1,认证服务器对T1进行验证,若T’-T1≤ΔT,继续验证;若T’-T1>ΔT,则认证失败;所述的ΔT为时间参数,由P2P系统根据用户和认证服务器的时延进行确定;
f)认证服务器从UID中得到ID和a,并查找与该用户ID对应的β,然后计算DIDA’=h(h(K||IDA)||T1),C’=h(DIDA’||βA||a||T1);
g)认证服务器验证C’和收到的C是否一致,若C’=C,表明该用户为合法用户,用户通过认证,若C’≠C,则认证失败;
h)用户通过身份认证后,认证服务器用私钥PRAS为用户生成票据,具体为TicketA=E(PRAS,[IDA||a||h(DIDA’)||T2||Lifetime]),。其中h(DIDA’)为认证服务器计算得到的用户DIDA的哈希值,T2为认证服务器生成票据TicketA的时间,Lifetime为票据的生存时间,T2与Lifetime用于确定票据的有效期,防止用户使用过期的票据;
i)认证服务器将票据TicketA发送给用户。
j)认证服务器向系统发布用户的身份标识UIDA,其它用户通过移动P2P网络提供的搜索和查询协议发现该用户并进行服务请求。
服务请求认证过程:假设用户A向用户B请求某一项服务,需要进行服务请求认证。用户之间服务请求认证的过程如图4所示,包括如下步骤:
a)若用户A需要获取B提供的服务,则其向移动P2P网络发起查询;
b)用户A找到符合要求的用户B及其UIDB,用户A从返回的UIDB中得到用户B的公开参数
Figure BSA00000207040300084
c)用户A向用户B提出服务请求,并发送认证信息<TicketA,UIDA>给用户B,TicketA为认证服务器为用户A发放的票据,UIDA为用户A此次登录的用户标识,UIDA=IDA||aA
d)用户B使用认证服务器的公钥PUAS解密TicketA,可得到IDA||aA||h(DIDA’)||T2||Lifetime,根据T2和Lifetime检查TicketA是否过期,若过期则退出认证过程,否则继续认证;
e)用户将解密后的IDA、aA和用户A发送的UIDA进行比较,若相同,则继续认证;若不同,则认为A的身份被假冒,退出认证过程;
f)用户B从整数域中随机选择一个整数r,计算中间值
Figure BSA00000207040300091
密钥KAB=h(Temp||r)和参数M=h(KAB||r||IDB);
g)用户B将<M,r>发送给用户A;
h)用户A收到用户B的消息后,计算
Figure BSA00000207040300092
M’=h(KAB’||r||IDB);
i)用户A比较M’和M,若M’=M,则认证了用户B和KAB的真实性,继续下一步骤;否则退出认证;KAB为用户A和用户B之间共享的对称密钥;
j)用户A用对称密钥KAB对DIDA和NonceAB进行加密,并发送NonceAB给用户B,E(KAB,DIDA||NonceAB),其中NonceAB为用户A随机选择的整数;
k)用户B使用对称密钥KAB对用户A发送的消息进行解密并计算h(DIDA),与TicketA中的h(DIDA’)进行比较。若两者一致,则认为用户A拥有正确的DIDA,且用户A经过了认证服务器的认证,同时用户B保存NonceAB,在B与A断开连接后根据NonceAB可以进行步骤(4)中的快速重认证若两者不一致,则退出认证;
至此,用户A和用户B之间通过认证,用户B与用户A建立连接,并为用户A提供所需的服务。
快速重认证过程:假设用户A和用户B已经通过认证,但由于某种原因用户A与用户B暂时失去连接,在一定时间Toff后向用户B重新发起连接,用户B对用户A需重新认证。快速重认证过程如图5所示,包括以下步骤:
a)用户A发送包含UIDA的重认证请求给用户B;
b)用户B在本地查找是否存在与UIDA对应的KAB和NonceAB
c)若用户B未查找到与UIDA对应的KAB和NonceAB,则说明用户B之前并未对用户A进行认证,快速重认证失败;若存在,则用户B产生一个新的随机数Nonce’AB
d)用户B用KAB加密Nonce’AB发送给用户A,E(KAB,Nonce’AB);
e)用户A对消息进行解密,得到Nonce’AB,计算并发送N=h(NonceAB||Nonce’AB)给用户B;
f)用户B计算N’=h(NonceAB||Nonce’AB)’,将N’与用户A发送过来的N进行比较,若两者不一致,则认证失败;
g)若两者一致,则用户A通过认证,用户A和用户B将NonceAB更新为Nonce’AB;。
下面对本发明方法进行简单的安全分析。
1)窃听攻击。登录认证中,用户的DID没有在信道中传输,因此不会被窃听。服务器可以验证DID来自与其对应的合法用户。服务请求认证过程中,发送的消息用KAB加密,而KAB=h(Temp||r),恶意用户只能窃听到r,但是得不到KAB。同样,快速重认证中,用户之间交互的消息都是用会话密钥加密的,因此恶意用户也无法窃听。
2)伪装攻击。在登录认证中,根据DID的计算公式
Figure BSA00000207040300101
Figure BSA00000207040300102
恶意用户需要知道用户的PW和N,才能伪装成其它用户。但是由于hash函数的单向性,恶意用户无法从用户发送的DID中计算出原来的PW和N,因此也无法伪装成合法用户。在服务请求认证中,恶意用户无法获取正确的uA和DIDA,因此无法伪装。在快速重认证中,恶意用户无法获取正确的KAB和NonceAB进行应答,因而不能伪装成合法用户。
3)重放攻击。本发明在登录认证过程中加入了时间戳,用于防止恶意用户的重放攻击。假设恶意用户重放合法用户A的登录认证消息,UIDA、C和T1。认证服务器在验证T1时发现T’-T1>ΔT,从而退出认证过程,恶意用户重放攻击失败。对于服务请求认证过程,用户B随机选择参数r来计算密钥KAB,每次KAB的值都不同,因此恶意用户无法通过重放服务请求认证消息来通过认证。
4)中间人攻击。本发明的服务请求认证中KAB的计算类似于D-H密钥交换,而D-H密钥交换协议容易受到中间人攻击。但是本发明中用户的公开参数a经过认证服务器的签名,恶意用户无法改变a进行中间人攻击。

Claims (2)

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()的公钥解密算法;
注册服务器再从整数域中随机选择参数β作为用户密钥,并计算秘密参数 
Figure RE-FSB00000946107500011
其中K为注册服务器的主密钥,h(.)为单向哈希函数, 
Figure RE-FSB00000946107500012
为异或运算;
注册服务器将包含参数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=gumod p;mod表示取模运算;
g)移动终端计算登录的DID、验证参数C和用户标示符,其中DID为动态ID, 
Figure RE-FSB00000946107500021
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网络中的其它用户请求服务时,用户之间进行的相互身份认证;服务请求认证的具体步骤是:
1)用户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,计算中间值 
Figure RE-FSB00000946107500032
对称密钥KAB=h(Temp ||r)和参数M=h(KAB||r||IDB),并将M和r发送给用户A;
p)用户A收到用户B发送的M和r后,计算 
Figure RE-FSB00000946107500033
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提供所需的服务。
2.根据权利要求1所述的移动P2P用户身份认证方法,其特征在于所述的快速重认证的具体步骤是:
s)用户A向用户B提出重服务认证请求,并发送认证信息UIDA给用户B;
t)用户B在本地查找是否存在与UIDA对应的KAB和NonceAB,若不存在KAB和NonceAB,则说明用户B之前并未对用户A进行认证,快速重认证失败;若存在KAB和NonceAB,则用户B产生一个新的随机数Nonce’AB并用KAB加密Nonce’AB后发送给用户A,加密算法为:E(KAB,Nonce’AB);
u)用户A用KAB对消息进行解密,得到Nonce’AB计算h(NonceAB||Nonce’ AB)并将h(NonceAB ||Nonce’AB)发送给用户B;
v)用户B根据本地保存的NonceAB,计算h(NonceAB ||Nonce’AB)’,并与A发送的消息进行比较;若A发送的h(NonceAB||Nonce’AB)与h(NonceAB||Nonce’AB)’一致,则用户A通过认证,用户A和用户B将NonceAB更新为Nonce’AB;若A发送的h(NonceAB||Nonce’AB)与h(NonceAB ||Nonce’AB)’不一致,则认证失败。 
CN201010238066.6A 2010-07-27 2010-07-27 移动p2p用户身份认证方法 Active CN101902476B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010238066.6A CN101902476B (zh) 2010-07-27 2010-07-27 移动p2p用户身份认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010238066.6A CN101902476B (zh) 2010-07-27 2010-07-27 移动p2p用户身份认证方法

Publications (2)

Publication Number Publication Date
CN101902476A CN101902476A (zh) 2010-12-01
CN101902476B true CN101902476B (zh) 2013-04-24

Family

ID=43227677

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010238066.6A Active CN101902476B (zh) 2010-07-27 2010-07-27 移动p2p用户身份认证方法

Country Status (1)

Country Link
CN (1) CN101902476B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105872124A (zh) * 2016-03-29 2016-08-17 努比亚技术有限公司 联系人同步装置及方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102111411A (zh) * 2011-01-21 2011-06-29 南京信息工程大学 P2p网络中对等用户结点间的加密安全数据交换方法
CN103347018A (zh) * 2013-07-02 2013-10-09 山东科技大学 一种基于智能卡的多服务环境下远程身份认证方法
CN103346887A (zh) * 2013-07-02 2013-10-09 山东科技大学 一种基于智能卡多服务器环境下的低复杂度身份认证方法
CN103973703A (zh) * 2014-05-23 2014-08-06 杭州智屏科技有限公司 一种用于应用程序和服务器之间交换数据安全的请求方法
US10250698B2 (en) * 2014-08-25 2019-04-02 Futurewei Technologies, Inc. System and method for securing pre-association service discovery
CN104486314A (zh) * 2014-12-05 2015-04-01 北京众享比特科技有限公司 基于对等网络的身份认证系统和身份认证方法
CN105142143A (zh) * 2015-10-22 2015-12-09 上海斐讯数据通信技术有限公司 一种验证方法及其系统
CN105682253A (zh) * 2016-03-02 2016-06-15 上海小蚁科技有限公司 建立通信的方法、设备、终端和计算机可读存储介质
CN105975846B (zh) * 2016-04-29 2019-04-12 宇龙计算机通信科技(深圳)有限公司 终端的认证方法及系统
GB201609460D0 (en) * 2016-05-30 2016-07-13 Silverleap Technology Ltd Increased security through ephemeral keys for software virtual contactless card in a mobile phone
CN107592308B (zh) * 2017-09-13 2021-03-30 西安电子科技大学 一种面向移动支付场景的双服务器多因子认证方法
CN111212427A (zh) * 2020-01-14 2020-05-29 陈良准 一种基于移动终端的应用app账户登录管理系统
CN112370076A (zh) * 2020-11-10 2021-02-19 马炎 一种超声医疗设备的信息采集预警系统
CN112732832B (zh) * 2021-01-06 2024-02-13 上海泰砥科技有限公司 基于did及零知识证明的区块链供应链金融供应方法及系统
CN114928455B (zh) * 2022-07-18 2022-11-04 北京微芯感知科技有限公司 一种多链多身份的分布式数字身份管理方法
CN115314228B (zh) * 2022-10-10 2023-03-24 广东电网有限责任公司佛山供电局 无人机身份认证方法、装置和系统
CN115622779B (zh) * 2022-10-13 2023-04-28 杭州光海科技有限公司 一种低成本的校园一卡通的信息传送方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101207805A (zh) * 2006-12-20 2008-06-25 北京汉辰科技有限公司 一种利用p2p机顶盒技术的流媒体传输系统及其方法
CN101697540A (zh) * 2009-10-15 2010-04-21 浙江大学 一种p2p服务请求用户身份认证方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8356176B2 (en) * 2007-02-09 2013-01-15 Research In Motion Limited Method and system for authenticating peer devices using EAP

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101207805A (zh) * 2006-12-20 2008-06-25 北京汉辰科技有限公司 一种利用p2p机顶盒技术的流媒体传输系统及其方法
CN101697540A (zh) * 2009-10-15 2010-04-21 浙江大学 一种p2p服务请求用户身份认证方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈高翔等.《基于EPA的功能安全通信的认证》.《自动化仪表》.2006,第27卷(第10期),1-3. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105872124A (zh) * 2016-03-29 2016-08-17 努比亚技术有限公司 联系人同步装置及方法
CN105872124B (zh) * 2016-03-29 2020-01-10 深圳市移动力量科技有限公司 联系人同步装置及方法

Also Published As

Publication number Publication date
CN101902476A (zh) 2010-12-01

Similar Documents

Publication Publication Date Title
CN101902476B (zh) 移动p2p用户身份认证方法
Son et al. Design of blockchain-based lightweight V2I handover authentication protocol for VANET
CN107919956B (zh) 一种面向物联网云环境下端到端安全保障方法
Cui et al. HCPA-GKA: A hash function-based conditional privacy-preserving authentication and group-key agreement scheme for VANETs
He et al. A strong user authentication scheme with smart cards for wireless communications
CN102026195B (zh) 基于一次性口令的移动终端身份认证方法和系统
CN107360571B (zh) 在移动网络中的匿名相互认证和密钥协商协议的方法
CN109327313A (zh) 一种具有隐私保护特性的双向身份认证方法、服务器
Chattaraj et al. A new two-server authentication and key agreement protocol for accessing secure cloud services
Wang et al. Ultra super fast authentication protocol for electric vehicle charging using extended chaotic maps
Lin et al. A new strong-password authentication scheme using one-way hash functions
Li et al. AEP-PPA: An anonymous, efficient and provably-secure privacy-preserving authentication protocol for mobile services in smart cities
CN111682938A (zh) 面向中心化移动定位系统的三方可认证密钥协商方法
CN107493165B (zh) 一种具有强匿名性的车联网认证及密钥协商方法
CN110020524A (zh) 一种基于智能卡的双向认证方法
WO2014069985A1 (en) System and method for identity-based entity authentication for client-server communications
Mishra et al. A pairing-free identity based authentication framework for cloud computing
Chaturvedi et al. A secure zero knowledge authentication protocol for wireless (mobile) ad-hoc networks
CN108270572B (zh) 一种基于位置和口令的密钥交换协议
CN116388995A (zh) 一种基于puf的轻量级智能电网认证方法
Nikooghadam et al. A provably secure ECC-based roaming authentication scheme for global mobility networks
Truong et al. Robust mobile device integration of a fingerprint biometric remote authentication scheme
Ma et al. A robust authentication scheme for remote diagnosis and maintenance in 5G V2N
Itoo et al. A robust ECC-based authentication framework for energy internet (EI)-based vehicle to grid communication system
Kim et al. Further improved remote user authentication scheme

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant