一种基于身份代理群签名的PMIPv6认证系统及方法与流程

文档序号:11263515阅读:312来源:国知局
一种基于身份代理群签名的PMIPv6认证系统及方法与流程

本发明属于网络安全技术领域,特别涉及一种基于身份代理群签名的pmipv6认证系统及方法。



背景技术:

随着移动网络技术的发展和移动设备的增多,人们对移动设备接入网络的需求越发迫切。为了让移动节点能够高效安全地接入到移动网络中,2004年ietf提出了移动ipv6(mipv6)移动管理协议,使得移动节点在移动过程中能够保持服务不中断。但是部署mipv6协议必须改变移动节点协议栈,该协议不适合内存小且计算能力低的移动节点。mipv6协议也存在一些问题比如说切换延迟高,数据包的丢失多以及信令开销大等。为此,ietf提出了代理移动ipv6协议(proxymobileipv6,pmipv6),一个基于网络的区域性移动管理协议,其最大的特点是简化了网络端的控制减少了移动节点参与移动性管理的过程,移动管理全部由网路实体代替移动用户完成。

pmipv6网络中主要包括两个实体:本地移动锚(localmobilityanchor,lma)和移动接入网关(mobilityaccessgateway,mag)。其中lma作为移动节点家乡网络前缀的拓扑锚点,负责管理移动节点的绑定状态。mag的作用是检测移动节点的移动状态,并且代替移动节点进行移动性管理。pmipv6简化了网络端的控制并减少了用户参与移动性管理的过程,移动管理全部由mag代替移动节点mn(mobilenode)完成。相对于以往的协议,pmipv6能够减少切换延迟和信令开销。虽然pmipv6协议的性能在众多的移动管理协议中脱颖而出。但是pmipv6网络面临着以下安全问题的挑战:

(1)身份认证:移动节点进入到pmipv6网络时,要进行和网络进行相互认证。

(2)隐私保护:当移动节点进行切换的时候,如果自己的身份标识泄露,恶意节点可以节点的身份进行跟踪,可能会损害移动用户的利益。

(3)攻击模型:重放攻击、窃听攻击、篡改攻击会话劫持攻击等。

其中的认证和隐私保护越来越受到关注,解决pmipv6网络中认证和隐私保护问题成为热点。然而,一些国内外的学者主要考虑研究的是节点认证的问题,均做出了一定的贡献和成果。但是一些方案提高了方案的安全性却忽略了认证的效率,或者提高了效率却忽略了用户的隐私保护问题,不能满足pmipv6安全高效接入认证的需求。



技术实现要素:

针对现有技术存在的不足,本发明提供一种基于身份代理群签名的pmipv6认证系统及方法。

本发明的技术方案如下:

一种基于身份代理群签名的pmipv6认证系统,包括第三方信任根tr、本地移动锚lma及其连接的移动接入网关mag、移动节点mn;第三方信任根tr通过网络与本地移动锚lma连接并产生公共参数,移动接入网关mag与本地移动锚lma相连。

所述第三方信任根tr给本地移动锚lma颁发授权凭证和私钥,第三方信任根tr给移动节点mn颁发初始接入认证的私钥和证书。

本地移动锚lma作为群主即群管理者构成基于身份代理群;群成员包括与其相连的移动接入网关mag;本地移动锚lma给群内的移动接入网关mag和与移动接入网关mag相连的合法的移动节点mn颁发群签名私钥;本地移动锚lma同其群内的移动接入网关mag之间相互信任;同一个本地移动锚lma下的移动接入网关mag之间相互信任;不同本地移动锚lma下的移动接入网关mag之间互相不信任。

当移动节点mn初次接入到pmipv6网络的移动接入网关mag时,移动接入网关mag同移动节点mn完成初始的双向接入认证;当移动节点mn在同一个本地移动锚lma下不同的移动接入网关mag之间进行切换时,新的移动接入网关mag与移动节点mn完成群内切换接入认证;当移动节点mn切换到不同本地移动锚lma下的移动接入网关mag时,新的移动接入网关mag同移动节点mn完成群间切换接入认证。

所述第三方信任根tr给本地移动锚lma颁发授权凭证和私钥,具体是第三方信任根tr产生授权值,根据授权值计算授权凭证;第三方信任根tr把授权值和授权凭证发送给群管理者即本地移动锚lma;本地移动锚lma验证授权凭证的合法性,对合法的授权凭证进行保存。

所述第三方信任根tr给移动节点mn颁发初始接入认证的私钥和证书,具体是第三方信任根tr产生一系列随机数,根据随机数计算移动节点mn对应的假名及该假名对应的私钥和证书;第三方信任根tr把假名以及对应的证书和私钥通过可信信道发送给移动节点mn;移动节点mn将其假名进行哈希处理,得到移动节点mn的公钥,并保存证书和私钥。

所述本地移动锚lma给群内的移动接入网关mag颁发群签名私钥prmag,具体是移动接入网关mag将其身份标识和公钥发送给本地移动锚lma注册;本地移动锚lma计算移动接入网关mag的群签名私钥prmag同时给移动接入网关mag颁发一个授权,授权里面包含第三方信任根tr给本地移动锚lma的授权凭证,通过授权能验证移动接入网关mag的合法性;移动接入网关mag收到并保存授权和本地移动锚lma颁发的群签名私钥prmag,同时移动接入网关mag计算一个随机数,得到由该随机数与本地移动锚lma颁发的群签名私钥组成的移动接入网关mag的群签名私钥对。

所述当移动节点mn初次接入到pmipv6网络的移动接入网关mag时,移动接入网关mag同移动节点mn完成初始的双向接入认证;具体是:移动节点mn选择随机数作为计算第一密钥协商参数;根据第三方信任根tr颁发给移动节点mn的证书、第一密钥协商参数、移动节点mn的假名和当前时间戳,计算移动节点mn的签名,移动节点mn把签名信息发送给要接入的移动接入网关mag1;移动接入网关mag1对时间戳新鲜的移动节点mn的签名和证书进行验证,签名和证书均合法的移动节点mn为合法用户,移动接入网关mag1把移动节点mn的假名和第一密钥协商参数转发给移动接入网关mag1连接的本地移动锚lma1;本地移动锚lma1产生一个随机数来计算本地移动锚lma1和移动节点mn之间的共享密钥;然后计算移动节点mn的群签名私钥,同时,对移动节点mn的群签名私钥、第三方信任中心tr颁发给本地移动锚lma1的授权凭证和授权值、本地移动锚lma1所在群的群公钥进行加密,将*得到密文发送给移动接入网关mag1;移动接入网关mag1选择随机数来计算第二密钥协商参数,根据移动接入网关mag1的身份标识、第二密钥协商参数和当前时间戳计算移动接入网关mag1的签名、移动接入网关mag1和移动节点mn之间的共享密钥,将移动接入网关mag1的签名以及收到来自本地移动锚lma1的消息发送给移动节点mn;移动节点mn计算本地移动锚lma1和移动节点mn之间的共享密钥,解密密文获得移动节点mn的群签名私钥;移动节点mn计算一个随机数,与移动节点mn的群签名私钥构成群签名私钥对;移动节点mn验证时间戳新鲜的移动接入网关mag1合法;最后移动节点mn计算并保存移动接入网关mag1和移动节点mn之间的共享密钥。

所述当移动节点mn在同一个本地移动锚lma下不同的移动接入网关mag之间进行切换时,新的移动接入网关mag与移动节点mn完成群内切换接入认证;具体是:移动节点mn选择随机数来计算第三密钥协商参数;移动节点mn计算签名;移动节点mn把签名信息发送到要切换接入的移动接入网关mag2;移动接入网关mag2验证时间戳新鲜的移动节点mn的签名合法性,要切换接入的移动接入网关mag2选择随机数来计算第四密钥协商参数,计算要切换接入的移动接入网关mag2与移动节点mn之间的共享密钥;移动接入网关mag2计算签名,将签名信息发送给移动节点mn;移动节点mn验证时间戳新鲜的移动接入网关mag2的签名的合法性,计算要切换接入的移动接入网关mag2与移动节点mn之间的共享密钥并保存。

所述当移动节点mn切换到不同本地移动锚lma下的移动接入网关mag时,新的移动接入网关mag同移动节点mn完成群间切换接入认证;具体是:

移动节点mn选择随机数计算移动节点mn的群签名;移动节点mn将签名信息发送给要切换接入的移动接入网关mag3;移动接入网关mag3验证移动节点mn的群签名的合法性;移动接入网关mag3选择随机数并计算移动接入网关mag3的签名和移动接入网关mag3与移动节点mn之间的共享密钥并保存;移动接入网关mag3把签名信息发送给移动节点mn;移动节点mn对时间戳新鲜的移动接入网关mag3的签名和授权进行验证,授权和签名验证全部通过后,移动节点mn计算移动接入网关mag3与移动节点mn之间的共享密钥并保存。

利用所述的系统进行基于身份代理群签名的pmipv6认证的方法,包括:

步骤1:第三方信任根tr生成公私钥及发布系统公共参数;

步骤2:移动节点mn和本地移动锚lma向第三方信任根tr注册,本地移动锚lma给群内移动接入网关mag颁发合法的群签名私钥和授权;

步骤3:如果移动节点mn初次接入pmipv6网络,执行步骤4;如果移动节点mn在同一个本地移动锚lma所在代理群内进行切换,执行步骤5;如果移动节点mn在不同的本地移动锚lma所在代理群间进行切换,执行步骤6。

步骤4:所述在移动节点mn初次接入到pmipv6网络的移动接入网关mag时移动接入网关mag同移动节点mn完成初始的双向接入认证,包括:

步骤4.1:移动节点mn选择随机数来计算第一密钥协商参数;根据第三方信任根tr颁发给移动节点mn的证书、第一密钥协商参数、移动节点mn的假名和当前时间戳,计算移动节点mn的签名,移动节点mn把签名信息发送给要接入的移动接入网关mag1;

步骤4.2:移动接入网关mag1验证当前时间戳的新鲜性,如果不新鲜则丢弃该签名信息;如果新鲜则验证移动节点mn的签名和证书;如果移动节点mn的签名和证书均合法,移动接入网关mag1确认移动节点mn为可靠用户即认证移动节点mn合法,移动接入网关mag1把移动节点mn的假名和第一密钥协商参数转发给移动接入网关mag1连接的本地移动锚lma1;

步骤4.3:本地移动锚lma1产生一个随机数,计算本地移动锚lma1和移动节点mn之间的共享密钥;计算移动节点mn的群签名私钥,同时,对移动节点mn的群签名私钥、第三方信任中心tr颁发给本地移动锚lma1的授权凭证和授权值、本地移动锚lma1所在群的群公钥加密得到密文,发送给移动接入网关mag1;

步骤4.4:移动接入网关mag1选择随机数来计算第二密钥协商参数,根据移动接入网关mag1的身份标识、第二密钥协商参数和当前时间戳,计算移动接入网关mag1的签名,计算移动接入网关mag1和移动节点mn之间的共享密钥,将移动接入网关mag1的签名以及收到来自本地移动锚lma1的消息发送给移动节点mn;

步骤4.5:移动节点mn计算本地移动锚lma1和移动节点mn之间的共享密钥,解密密文获得移动节点mn的群签名私钥;移动节点mn计算一个随机数,与移动节点mn的群签名私钥共同构成移动节点mn的群签名私钥对;移动节点mn验证时间戳ts2,如果新鲜继续用移动接入网关mag1的公钥pkmag1验证移动接入网关mag1的签名signmag1,验证通过后确认移动接入网关mag1合法;移动节点mn计算并保存移动接入网关mag1和移动节点mn之间的共享密钥;

步骤5:在移动节点mn在同一个本地移动锚lma下不同的移动接入网关mag之间进行切换时,新的移动接入网关mag与移动节点mn完成群内切换接入认证,具体包括:

步骤5.1:移动节点mn选择随机数来计算第三密钥协商参数;移动节点mn计算签名;移动节点mn把签名信息发送到要切换接入的移动接入网关mag2;

步骤5.2:移动接入网关mag2验证时间戳ts3的新鲜性,如果不新鲜则丢弃该消息;如果新鲜则验证移动节点mn的签名,如合法,则移动接入网关mag2选择随机类计算第四密钥协商参数,计算移动接入网关mag2与移动节点mn之间的共享密钥;移动接入网关mag2计算移动接入网关mag2的签名,将签名信息发送给移动节点mn;

步骤5.3:移动节点mn验证当前时间戳的新鲜性;如果新鲜则验证要切换接入的移动接入网关mag2的签名,验证要切换接入的移动接入网关mag2的签名合法后,计算要切换接入的移动接入网关mag2与移动节点mn之间的共享密钥并保存;

步骤6:在移动节点mn切换到不同本地移动锚lma下的移动接入网关mag时,新的移动接入网关mag同移动节点mn完成群间切换接入认证,具体包括:

步骤6.1:移动节点mn选择随机数,计算移动节点mn的群签名;移动节点mn将签名信息发送给要切换接入的移动接入网关mag3;

步骤6.2:移动接入网关mag3验证移动节点mn的群签名的合法性:如合法,移动接入网关mag3选择随机数并计算移动接入网关mag3的签名,通过本地移动锚lma2的身份标识能够得到本地移动锚lma2所在群的群公钥,计算要切换接入的移动接入网关mag3与移动节点mn之间的共享密钥并保存;把移动接入网关mag3的签名信息发送给移动节点mn;

步骤6.3:移动节点mn验证当前时间戳的新鲜性;如果新鲜,则用移动接入网关mag3的公钥验证移动接入网关mag3的签名的正确性,授权信息和签名验证全部通过后,移动节点mn计算移动接入网关mag3与移动节点mn之间的共享密钥并保存。

所述步骤4.2中的验证移动节点mn的签名和证书具体是:用移动节点mn的公钥来验证移动节点mn的签名,用第三方信任根tr的公钥来验证移动节点mn的证书。

所述步骤2移动节点mn和本地移动锚lma向第三方信任根tr注册,本地移动锚lma给群内移动接入网关mag颁发合法的群签名私钥和授权,包括:

首先,第三方信任根tr给移动节点mn颁发初始接入认证的私钥和证书,具体是:第三方信任根tr产生一系列随机数,根据随机数计算移动节点mn对应的假名及该假名对应的私钥和证书,通过可信信道发送给移动节点mn;移动节点mn将其假名进行哈希处理,得到移动节点mn的公钥,并保存证书和私钥;

其次,第三方信任根tr给本地移动锚lma颁发授权凭证,具体是:第三方信任根tr产生授权值,然后根据授权值计算授权凭证;第三方信任根tr把授权值和授权凭证发送给群管理者即本地移动锚lma;本地移动锚lma验证授权凭证的合法性;

最后,本地移动锚lma给移动接入网关mag颁发群签名私钥:移动接入网关mag将其身份标识和公钥,发送给本地移动锚lma注册;本地移动锚lma计算移动接入网关mag的私钥,同时给移动接入网关mag颁发一个授权,授权里面包含第三方信任根tr给本地移动锚lma的授权凭证,通过授权能验证移动接入网关mag的合法性;移动接入网关mag收到并保存授权和本地移动锚lma颁发的群签名私钥prmag,同时移动接入网关mag计算一个随机数与本地移动锚lma颁发的群签名私钥一起构成移动接入网关mag的群签名私钥对。

有益效果:

本发明将基于身份的代理群签名方案,应用在pmipv6协议的移动节点移动管理通信过程中,使用了基于身份的代理群签名,有效的保护了移动节点的隐私;根据系统的网络架构模型,对相应的代理群签名方案进行了改进,使其更加简洁高效;在群内切换时采用了快速切换的思想大大提高了切换的效率;同时多种签名及密钥协商方案的运用使该方案能够对抗多重攻击,有效的保证了方案的安全性。

附图说明

图1为本发明具体实施方式的基于身份代理群签名的pmipv6认证系统架构及信任模型图;

图2~图3为本发明具体实施方式的注册授权过程的示意图;

图4为本发明具体实施方式的移动节点初始接入认证过程的示意图;

图5为本发明具体实施方式的移动节点群内切换接入认证过程的示意图;

图6为本发明具体实施方式的移动节点群间切换接入认证过程的示意图。

具体实施方式

下面结合附图对本发明的具体实施方式做详细说明。

本实施方式是将基于身份代理群签名的pmipv6认证系统及方法应用到移动节点移动通信管理过程中,有效保护了移动节点在切换过程中的身份隐私,提高了整体的接入认证效率,同时使系统能够对抗多重攻击,有效保证了方案的安全性。

基于身份代理群签名的pmipv6认证系统架构及信任模型如图1所示,基于身份代理群签名的pmipv6认证系统,采用pmipv6分层网络架构,pmipv6网络通过移动接入网关mag来对接入的移动节点mn进行认证。整个系统的架构分为三层:最顶层的是第三方信任根tr,中间层是本地移动锚lma及其连接的移动接入网关mag,最底层是移动节点mn;架构模型中所有实体都无条件地信任第三方信任根tr,系统中:

第三方信任根tr:是系统公认的第三方信任机构,产生公共参数;通过网络与两个本地移动锚lma连接,所述第三方信任根tr给本地移动锚lma颁发授权凭证和私钥,第三方信任根tr给移动节点mn颁发初始接入认证的私钥和证书,如图2所示;第三方信任根tr给本地移动锚lma颁发授权凭证和私钥,具体是第三方信任根tr产生授权值,根据授权值计算授权凭证;第三方信任根tr把授权值和授权凭证发送给群管理者即本地移动锚lma;本地移动锚lma验证授权凭证的合法性,对合法的授权凭证进行保存。第三方信任根tr给移动节点mn颁发初始接入认证的私钥和证书,具体是第三方信任根tr产生一系列随机数,根据随机数计算移动节点mn对应的假名及该假名对应的私钥和证书;第三方信任根tr把假名以及对应的证书和私钥通过可信信道发送给移动节点mn;移动节点mn将其假名进行哈希处理,得到移动节点mn的公钥,并保存证书和私钥。

本地移动锚lma:作为群主即群管理者构成基于身份代理群;群成员包括与其相连的移动接入网关mag;本地移动锚lma给群内的移动接入网关mag和与移动接入网关mag相连的合法的移动节点mn颁发群签名私钥,本地移动锚lma给mag颁发群签名私钥如图3所示;本地移动锚lma同其群内的移动接入网关mag之间相互信任;同一个本地移动锚lma下的移动接入网关mag之间相互信任。本地移动锚lma给群内的移动接入网关mag颁发群签名私钥,具体是移动接入网关mag将其身份标识和公钥发送给本地移动锚lma注册;本地移动锚lma计算移动接入网关mag的私钥同时给移动接入网关mag颁发一个授权,授权里面包含第三方信任根tr给本地移动锚lma的授权凭证,通过授权能验证移动接入网关mag的合法性;移动接入网关mag收到并保存授权和本地移动锚lma颁发的群签名私钥prmag,同时移动接入网关mag计算一个随机数,得到由该随机数与本地移动锚lma颁发的群签名私钥组成的移动接入网关mag的群签名私钥对。

移动接入网关mag:在移动节点mn初次接入到pmipv6网络的移动接入网关mag时移动接入网关mag同移动节点mn完成初始的双向接入认证;在移动节点mn在同一个本地移动锚lma下不同的移动接入网关mag之间进行切换时,新的移动接入网关mag与移动节点mn完成群内切换接入认证;在移动节点mn切换到不同本地移动锚lma下的移动接入网关mag时,新的移动接入网关mag同移动节点mn完成群间切换接入认证。

所述当移动节点mn初次接入到pmipv6网络的移动接入网关mag时,移动接入网关mag同移动节点mn完成初始的双向接入认证过程如图4所示;具体是:移动节点mn选择随机数来计算第一密钥协商参数;根据第三方信任根tr颁发给移动节点mn的证书、第一密钥协商参数、移动节点mn的假名和当前时间戳,计算移动节点mn的签名,移动节点mn把签名信息发送给要接入的移动接入网关mag1;移动接入网关mag1时间戳新鲜的移动节点mn的签名和证书进行验证,签名和证书均合法的移动节点mn为合法用户,移动接入网关mag1把移动节点mn的假名和第一密钥协商参数转发给移动接入网关mag1连接的本地移动锚lma1;本地移动锚lma1产生一个随机数来计算本地移动锚lma1和移动节点mn之间的共享密钥;然后计算移动节点mn的群签名私钥,同时,对移动节点mn的群签名私钥、第三方信任中心tr颁发给本地移动锚lma1的授权凭证和授权值、本地移动锚lma1所在群的群公钥加密得到密文发送给移动接入网关mag1;移动接入网关mag1选择随机数来计算第二密钥协商参数,根据移动接入网关mag1的身份标识、第二密钥协商参数和当前时间戳计算移动接入网关mag1的签名、移动接入网关mag1和移动节点mn之间的共享密钥,将移动接入网关mag1的签名以及收到来自本地移动锚lma1的消息发送给移动节点mn;移动节点mn计算本地移动锚lma1和移动节点mn之间的共享密钥,解密密文获得移动节点mn的群签名私钥;移动节点mn计算一个随机数,与移动节点mn的群签名私钥构成群签名私钥对;移动节点mn验证时间戳新鲜的移动接入网关mag1合法;最后移动节点mn计算并保存移动接入网关mag1和移动节点mn之间的共享密钥。

所述当移动节点mn在同一个本地移动锚lma下不同的移动接入网关mag之间进行切换时,新的移动接入网关mag与移动节点mn完成群内切换接入认证过程如图5所示;具体是:移动节点mn选择随机数来计算第三密钥协商参数;移动节点mn计算签名;移动节点mn把签名信息发送到要切换接入的移动接入网关mag2;移动接入网关mag2验证时间戳新鲜的移动节点mn的签名合法性,要切换接入的移动接入网关mag2选择随机数来计算第四密钥协商参数,计算要切换接入的移动接入网关mag2与移动节点mn之间的共享密钥;移动接入网关mag2计算签名,将签名信息发送给移动节点mn;移动节点mn对时间戳新鲜的移动接入网关mag2的签名验证合法性,计算要切换接入的移动接入网关mag2与移动节点mn之间的共享密钥并保存。

所述当移动节点mn切换到不同本地移动锚lma下的移动接入网关mag时,新的移动接入网关mag同移动节点mn完成群间切换接入认证过程如图6所示;具体是:

移动节点mn选择随机数计算移动节点mn的群签名;移动节点mn将签名信息发送给要切换接入的移动接入网关mag3;移动接入网关mag3验证移动节点mn的群签名的合法性;移动接入网关mag3选择随机数并计算移动接入网关mag3的签名和移动接入网关mag3与移动节点mn之间的共享密钥并保存;移动接入网关mag3把签名信息发送给移动节点mn;移动节点mn对时间戳新鲜的移动接入网关mag3的签名验证其中的授权的正确性,授权信息和签名验证全部通过后,移动节点mn计算移动接入网关mag3与移动节点mn之间的共享密钥并保存。

为保证最底层的移动节点mn能够安全高效地接入到移动接入网关mag上从而能够获得整个网络中的服务,移动节点mn和移动接入网关mag之间互相不信任,通过本地移动锚lma代理第三方信任根tr的签名职能,接收第三方信任根tr颁发的授权,向本地移动锚lma为群主的群内成员颁发群签名密钥。本实施方式中所述的移动节点mn为准备接入到pmipv6网络中的移动设备,例如手机、平板等。

为方便后续描述,给出如表1所示的标识及说明。

表1相关标识及说明

本实施方式结合了wukl、zouj等人提出的代理群签名方案和hans,wangj等提出的群签名方案,减少了方案的计算开销和信令开销。在群间切换接入认证时,移动节点mn通过执行基于身份的代理群签名来完成和移动接入网关mag的双向认证。

上述系统进行基于身份代理群签名的pmipv6认证方法,包括:

步骤1:第三方信任根tr生成公私钥及发布系统公共参数;

首先,第三方信任根tr设置参数如下:

第三方信任根tr选择两个大素数p、q,及椭圆曲线e:y2=x3+1,第三方信任根tr生成两个阶为q的循环群g1,g2和一个双线性对e:g1×g1→g2;

其次,第三方信任根tr选择一个生成元p∈g1和一个随机密钥s∈zq*,然后计算其公钥ppub=sp;

最后,第三方信任根tr选择三个哈希函数h:{0,1}*→g1,h1:{0,1}*×g1→g2,h2:{0,1}*→zq*。系统公共参数为para={g1,g2,q,p,ppub,h,h1,h2,e,pg},pg是群公钥。

步骤2:移动节点mn和本地移动锚lma向第三方信任根tr注册,本地移动锚lma给群内移动接入网关mag颁发合法的群签名私钥和授权;如图2~3所示;

首先,第三方信任根tr给移动节点mn颁发初始接入认证的私钥和证书,即移动节点mn把身份标识idmn发送给第三方信任根tr进行注册,具体是:第三方信任根tr产生一系列随机数n1,n2...nm∈zq*,根据随机数ni计算移动节点mn对应的假名及该假名psei对应的私钥prmn=sh(psei)和证书certtr-mn=sign_blmq_prtr{ti,psei},blmq是一个基于身份的签名方案,其中ti为对应假名的有效期;第三方信任根tr把假名psei以及对应的证书certtr-mn和移动节点mn的私钥prmn通过可信信道发送给移动节点mn;移动节点mn将其假名进行哈希处理,得到移动节点mn的公钥pkmn=h(psei),并保存证书和私钥。

其次,第三方信任根tr给本地移动锚lma颁发授权凭证,具体是:第三方信任根tr产生授权值w∈{0,1}*,然后根据授权值w计算授权凭证sw=sh(w);第三方信任根tr把w和sw发送给群管理者即本地移动锚lma;本地移动锚lma验证授权凭证sw的合法性:如果等式e(p,sh(w))=e(ppub,h(w))成立,则授权凭证sw是合法的,保存该授权凭证;否则授权凭证sw无效。

最后,本地移动锚lma给移动接入网关mag颁发群签名私钥pkmag:移动接入网关mag将其身份标识idmag和公钥pkmag=h(idmag)(该公钥是把idmag采用哈希函数h处理得到的),发送给本地移动锚lma注册;本地移动锚lma计算移动接入网关mag的私钥prlma-mag=apkmag,其中a∈zq*是lma的私钥,同时给移动接入网关mag颁发一个授权authlma-mag=sw+ah(idmag),授权里面包含第三方信任根tr给本地移动锚lma的授权凭证,通过授权能验证移动接入网关mag的合法性;移动接入网关mag收到并保存授权authlma-mag和本地移动锚lma颁发的群签名私钥prmag,同时移动接入网关mag计算一个随机数b∈zq*,使得bh2(idmag)≡1modφ(n),φ(n)为欧拉函数,其中n通过两个大素数p、q相乘得到,随机数b与本地移动锚lma颁发的群签名私钥prmag一起构成移动接入网关mag的群签名私钥对(b,prmag)。当移动节点mn成功接入到本地移动锚lma所在的代理群时,本地移动锚lma给移动节点mn颁发群签名私钥。

步骤3:如果移动节点mn初次接入pmipv6网络,执行步骤4;如果移动节点mn在同一个本地移动锚lma所在代理群内进行切换,执行步骤5;如果移动节点mn在不同的本地移动锚lma所在代理群间进行切换,执行步骤6。

步骤4:当移动节点mn首次接入到pmipv6网络时,进行初始接入认证,如图4所示,包括:

步骤4.1:移动节点mn选择随机数r1∈zq*来计算r1p,作为第一密钥协商参数;根据第三方信任根tr颁发给移动节点mn的证书certtr-mn、第一密钥协商参数r1p、移动节点mn的假名psei和当前时间戳ts1,计算移动节点mn的签名signmn=sign_blmq_prmn{certtr-mn,r1p,psei,t1},移动节点mn把签名信息发送给要接入的移动接入网关mag1;

步骤4.2:移动接入网关mag1验证当前时间戳ts1的新鲜性,如果不新鲜则丢弃该签名信息;如果新鲜则验证移动节点mn的签名signmn和证书certtr-mn,具体是用移动节点mn的公钥来验证移动节点mn的签名signmn,用第三方信任根tr的公钥来验证移动节点mn的证书certtr-mn;如果移动节点mn的签名signmn和证书certtr-mn均合法,移动接入网关mag1确认移动节点mn为可靠用户即认证移动节点mn合法,移动接入网关mag1把移动节点mn的假名psei和第一密钥协商参数r1p转发给移动接入网关mag1连接的本地移动锚lma1;

步骤4.3:本地移动锚lma1产生一个随机数rlma1∈zq*,计算本地移动锚lma1和移动节点mn之间的共享密钥klma1-mn=r1rlma1p;然后计算移动节点mn的群签名私钥skmn=ah(psei),同时,对移动节点mn的群签名私钥skmn、第三方信任中心tr颁发给本地移动锚lma1的授权凭证sw1和授权值w1、本地移动锚lma1所在群的群公钥加密得到密文clma1=eklma1-mn{skmn,sw1,w1,pg1},其中,sw1和w1分别为第三方信任中心tr颁发给本地移动锚lma1的授权凭证和授权值,pg1为本地移动锚lma1所在群的群公钥。最后,本地移动锚lma1把密文clma1和rlma1p发送给移动接入网关mag1;

步骤4.4:移动接入网关mag1选择随机数r2∈zq*来计算r2p,作为第二密钥协商参数,根据移动接入网关mag1的身份标识、第二密钥协商参数r2p和当前时间戳ts2,计算移动接入网关mag1的签名signmag1=sign_blmq_prmag1{idmag1,r2p,ts2},其中的时间戳ts2是为了防止重放攻击,计算移动接入网关mag1和移动节点mn之间的共享密钥kmag1-mn=r1r2p,将移动接入网关mag1的签名signmag1以及收到来自本地移动锚lma1的消息(clma1和rlma1p)发送给移动节点mn;

步骤4.5:移动节点mn收到消息后,首先计算本地移动锚lma1和移动节点mn之间的共享密钥klma1-mn=r1rlma1p,解密密文clma1,获得移动节点mn的群签名私钥skmn;移动节点mn计算一个随机数bmn∈zq*,使其满足bmnh2(idmn)≡1modφ(n),n由两个大素数p、q乘积得到,保存群签名私钥对(bmn,skmn);然后移动节点mn验证当前时间戳ts2,如果新鲜继续用移动接入网关mag1的公钥pkmag1验证移动接入网关mag1的签名signmag1,验证通过后确认移动接入网关mag1合法;最后移动节点mn计算并保存移动接入网关mag1和移动节点mn之间的共享密钥kmag1-mn=r2r1p。

步骤5:在移动节点mn在同一个本地移动锚lma下不同的移动接入网关mag(从mag1切换到mag2)之间进行切换时,新的移动接入网关mag与移动节点mn完成群内切换接入认证,采用快速切换保证认证效率;认证过程中没有用到移动节点mn身份标识idmn,保护了移动节点mn的隐私。

如图5所示,具体包括:

步骤5.1:移动节点mn选择随机数r3∈zq*来计算r3p作为第三密钥协商参数;移动节点mn计算移动节点mn的签名signmn=sign_hmac_kmag1-mn{r3p,idmag1,ts3},ts3为当前时间戳;移动节点mn把签名信息发送到要切换接入的移动接入网关mag2;

步骤5.2:要切换接入的移动接入网关mag2验证时间戳ts3的新鲜性,如果不新鲜则丢弃该消息;如果新鲜则验证移动节点mn的签名signmn,如合法,要切换接入的移动接入网关mag2选择随机数r4∈zq*,计算r4p作为第四密钥协商参数,计算要切换接入的移动接入网关mag2与移动节点mn之间的共享密钥kmag2-mn=r4r3p;移动接入网关mag2计算移动接入网关mag2的签名signmag2=sign_hmac_kmag1-mn{r4p,idmag2,ts4},将签名信息发送给移动节点mn,ts4为当前时间戳;

步骤5.3:移动节点mn验证当前时间戳ts4的新鲜性;如果新鲜则验证要切换接入的移动接入网关mag2的签名signmag2,验证签名signmag2合法后,计算要切换接入的移动接入网关mag2与移动节点mn之间的共享密钥kmag2-mn=r4r3p并保存。

步骤6:在移动节点mn切换到不同本地移动锚lma下的移动接入网关mag(从移动接入网关mag2切换到移动接入网关mag3,移动接入网关mag2、移动接入网关mag3分别连接本地移动锚lma1和lma2)时,新的移动接入网关mag同移动节点mn完成群间切换接入认证;通过移动mn执行基于身份的代理群签名来完成认证,保护了移动节点mn的隐私。

如图6所示,具体包括:

步骤6.1:移动节点mn选择随机数x、r5∈zq*,计算群签名signmn=sign_pgs_prlma1-mn{a,b,c,d,r5p,sw1,idlma1,w1},其中,sw1和w1是第三方信任根tr颁发给本地移动锚lma1的授权凭证和授权值,proxygroupsignature(pgs)为基于身份的代理群签名方案,a=xp,b=x-1skmn+h1(r5p,sw1)bmn,c=h2(psei)pkmn,d=h2(psei)a;移动节点mn将签名信息发送给要切换接入的移动接入网关mag3;

步骤6.2:移动接入网关mag3为了验证移动节点mn的群签名signmn,需要计算α=e(pg1,c);β=e(d,b);σ=e(a,h1(r5p,sw1));通过验证等式β=?ασ是否成立来验证移动节点mn的群签名signmn的合法性:如合法,要切换接入的移动接入网关mag3的选择随机数r6并计算要切换接入的移动接入网关mag3的签名signmag3=sign_blmq_prlma2-mag3{authlma2-mag3,idmag3,w2,idlma2,ts5},其中authlma2-mag3=sw2+a2h(idmag3)表示要切换接入的移动接入网关mag3所连接的本地移动锚lma2给移动接入网关mag3颁发的授权,sw2为第三方信任中心tr颁发给本地移动锚lma2的授权凭证,通过本地移动锚lma2的身份标识idlma2能够得到本地移动锚lma2所在群的群公钥,计算移动接入网关mag3与移动节点mn之间的共享密钥kmag3-mn=r6r5p并保存,ts5为当前时间戳;最后,移动接入网关mag3把签名signmag3及相关信息(authlma2-mag3,idmag3,w2,pg2,ts5)发送给移动节点mn;

步骤6.3:移动节点mn验证当前时间戳ts5的新鲜性;如果新鲜,则用移动接入网关mag3的公钥pkmag3验证移动接入网关mag3的签名signmag3,通过验证e(p,authlma2-mag3)=?e(ppub,h(w2))e(pg2,h(idmag3))(其中,w2为tr颁发给lma2的授权值)等式是否成立来验证授权authlma2-mag3的正确性,授权信息和签名验证全部通过后,移动节点mn计算移动接入网关mag3与移动节点mn之间的共享密钥kmag3-mn=r6r5p并保存。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1