1.一种面向异构网络的批量切换认证及密钥协商方法,其特征在于,包括以下步骤:S1、建立系统以及参与者注册:建立系统,并由若干参与者认证的用户在LTE‑A网络上进行注册,获取各自的身份信息;
S2、接入认证:将计算能力优于存储能力的设备作为组长,利用发现功能模块ADNSF发现目标接入网络WLAN,并由组长将完整的组认证信息发送至WLAN网络的AAA服务器对各参与者进行身份信息的认证,并判断身份信息是否认证成功,若是,则由WLAN网络的AAA服务器返回身份认证响应,完成批量切换认证及密钥协商,否则,进入步骤S3;
所述步骤S2包括以下步骤:
S201、将计算能力优于存储能力的设备作为组长;
S202、由用户设备UEi根据个人临时身份TIDi和组临时身份TIDG1计算得到用户设备UEi的消息验证码MACi/ANDSF,并将消息验证码MACi/ANDSF、个人临时身份TIDi和组临时身份TIDG1发送至组长;
所述消息验证码MACi/ANDSF的表达式如下:MACi/ANDSF=H(SKi‑ANDSF,TIDi||TIDG1)其中,H表示哈希函数,SKi‑ANDS表示用户设备UEi和发现功能模块ANDSF的共享密钥;
S203、通过组长对用户设备UEi的消息验证码MACi进行聚合,同时利用域名服务器DNS获取附近发现功能模块ANDSF的地址,并利用对称密钥SKLD‑ANDSF加密生成的随机数NLD、唯一确定的位置信息LLD、路线标识符IDroute及消息验证码MACG1/ANDSF进行完整性保护,并将其作为接入网信息请求发送至发现功能模块ANDSF;
S204、根据所述接入网的信息请求,通过消息验证码MACG1/ANDSF批量验证用户设备UEi的身份信息,并判断是否存在非法用户设备UEi,若是,则进入步骤S3,否则,由WLAN网络的AAA服务器返回身份认证响应,并进入步骤S205;
S205、利用发现功能模块ANDSF通过预设的接入网优先策略选择目标接入网络AAA,计算得到目标接入网络AAA服务器AAAWLAN用于验证用户设备UEi的参数信息,并利用对称密钥KANDSF‑AAA加密随机数NANDSF和NLD,分别计算得到用户设备UEi的本地身份、临时密钥及目标接入网络接入节点标识IDNAP,并结合用户设备UEi的参数信息计算得到消息验证码MACANDSF/AAA,并将消息验证码MACANDSF/AAA发送至目标接入网络AAA服务器AAAWLAN;
S206、由目标接入网络AAA服务器AAAWLAN计算得到消息验证码XMACANDSF/AAA,并和来自ANDSF的消息验证码MACANDSF/AAA判断消息验证码XMACANDSF/AAA是否通过验证,若是,则进入步骤S207,否则,终止协议,并进入步骤S3;
S207、由目标接入网络AAA服务器AAAWLAN选取随机数NAAA,并计算与用户设备UEi一一对应的会话密钥,根据对应的会话密钥利用对称密钥KANDSF‑AAA对随机数NAAA进行加密保护得到消息验证码MACAAA/ANDSF并发送至发现功能模块ANDSF;
S208、根据随机数NAAA以及对称密钥KANDSF‑AAA计算得到消息验证码XMACAAA/ANDSF,并将消息验证码MACAAA/ANDSF与消息验证码XMACAAA/ANDSF,进行对比,并根据对比结果验证消息完整性及目标接入网络AAA服务器AAAWLAN的身份信息,利用组临时密钥GTKG1加密随机数NAAA和NLD、目标接入网络接入节点标识IDNAP及时间戳TANDSF,并根据组临时密钥GTKG1、随机数NAAA、NLD以及时间戳TANDSF计算得到的消息验证码MACANDSF/G1,并将接入网选择决策发送给组长;
所述步骤S208中消息验证码XMACAAA/ANDSF的表达式如下:XMACAAA/ANDSF=H(KANDSF‑AAA,IDAAA||TAAA||NAAA||NANDSF)其中,XMACAAA/ANDSF表示目标接入网络AAA发送给ANDSF的消息验证码,IDAAA表示目标接入网络AAA的身份标识符,TAAA表示目标接入网络AAA发送消息的时间戳,NANDSF表示发现功能模块ANDSF的随机数;
所述消息验证码MACANDSF/G1的表达式如下:MACANDSF/G1=H(GTKG1,LIDG1||NAAA||NLD||IDNAP||TANDSF)其中,MACANDSF/G1表示发现功能模块ANDSF发送给G1组的消息验证码,表示组临时密钥,IDNAP表示目标接入网络接入节点标识,LIDG1表示G1组本地身份,TANDSF表示时间戳;
S209、利用组临时密钥GTKG1解密消息检查随机数NLD,并根据消息验证码MACANDSF/G1对步骤S208接受的消息完整性进行验证以及对消息源进行认证,并判断消息源是否认证成功,若是,则由组长将接入网选择决策消息广播至其他用户设备UEi,并进入步骤S2010,否则,终止协议,并进入步骤S3;
所述消息验证码MACANDSF/G1的表达式如下:MACANDSF/G1=H(GTKG1,LIDG1||NAAA||NLD||IDNAP||TANDSF)其中,GTKG1表示组临时密钥,IDNAP表示目标接入网络接入节点标识,NLD表示组长随机数,NAAA表示目标接入网络AAA服务器选择的随机数,LIDG1表示用户组/设备端UE的本地身份标识符,TANDSF表示发现功能模块ANDSF发送该条消息的时间戳;
S2010、通过用户设备UEi对解密消息进行验证,并根据验证结果计算得到与目标接入网络AAA服务器AAAWLAN共享的会话密钥SKiAAA,以及计算得到用户接入目标接入网络的本地个人身份LIDi和本地组身份LIDG1,以及用于生成用户设备UEi和目标接入网络AAA服务器AAAWLAN会话的个人临时密钥TKi,并根据预设的共享密钥计算得到新的临时密钥TKG1以及消息验证码MACi/LD,利用新的临时密钥TKG1以及消息验证码MACi/LD切换请求消息发送至组长;
S2011、由组长收集并验证用户设备UEi的切换请求信息,并利用对称密钥SKLD‑S‑GW对新生成的随机数NLD2进行加密保护,并结合时间戳TLD计算得到对应的消息验证码MACLD/S‑GW,并利用消息验证码MACLD/S‑GW为服务网关S‑GW生成身份验证票证TicP‑GW,切换信息经基站eNodeB发送服务网关S‑GW;
S2012、由服务网关S‑GW解密信息获取随机数NLD2,并根据所述随机数NLD2计算得到消息验证码XMACLD/S‑GW,将消息验证码XMACLD/S‑GW与接收的消息验证码MACLD/S‑GW进行对比,判断两值是否相等,若是,则认证成功,并进入步骤S2013,否则,重复步骤S2012;
S2013、根据随机数NLD2计算得到消息验证码MACS‑GW/P‑GW,并连同身份验证票据Tic P‑GW作为快速代理绑定更新请求转发至分组网关P‑GW;
所述消息验证码MACS‑GW/P‑GW的表达式如下:MACS‑GW/P‑GW=H(KS‑GW‑P‑GW,NLD2)其中,KS‑GW‑P‑GW表示服务网关S‑GW和分组网关P‑GW的共享密钥;
S2014、由分组网关P‑GW解密身份验证票据Tic P‑GW,并根据随机数NLD2生成消息验证码XMACS‑GW/P‑GW,将消息验证码XMACS‑GW/P‑GW与来自服务网关S‑GW的消息验证码MACS‑GW/P‑GW进行对比,判断两值是否相等,若是,则证明服务网关S‑GW为用户设备UEi授权的合法节点,并由分组网关P‑GW根据随机数NLD2计算得到消息验证码MACP‑GW/S‑GW,并将消息验证码MACP‑GW/S‑GW作为快速代理绑定确认消息发送至服务网关S‑GW,并进入步骤S2015,否则,结束协议,并进入步骤S3;
S2015、由分组网关P‑GW将用户设备UEi的数据分组缓存至其数据库中,并接收返回的数据包;
S2016、通过分组网关P‑GW利用对称密钥KP‑GW‑A‑GW对生成的随机数NP‑GW及所有用户设备UEi的本地身份LIDi进行加密,并计算得到其对应的消息验证码MACP‑GW/A‑GW;
所述消息验证码MACP‑GW/A‑GW的表达式如下:MACP‑GW/A‑GW=H(KP‑GW‑A‑GW,LID(1‑n)||LIDG1||NP‑GW)其中,H表示哈希函数,KP‑GW‑A‑GW表示分组网关P‑GW和网关A‑GW的共享密钥,LID(1‑n)表示G1组所包含的n个用户本地身份,用以接入WLAN时认证身份,LIDG1表示组本地身份,NP‑GW表示随机数;
S2017、将步骤S2016所得密文和消息验证码MACP‑GW/A‑GW作为切换分组转发地址请求消息发送至网关A‑GW,获取其代理转交地址CoA,并利用代理代理转交地址CoA分配临时IP地址至用户设备UEi;
S2018、利用网关A‑GW解密转发地址请求消息生成消息验证码XMACP‑GW/A‑GW,并利用消息验证码XMACP‑GW/A‑GW对分组网关P‑GW进行身份验证以及检查消息的完整性;
S2019、判断是否认证成功,若是,则由网关A‑GW选择随机数NA‑GW,并利用分组网关P‑GW和网关A‑GW的共享密钥KP‑GW‑A‑GW加密随机数NA‑GW与代理转交地址CoA,并计算得到消息验证码MACA‑GW/P‑GW以及将加密的密文及相应的消息验证码MACA‑GW/P‑GW作为对切换分组转发地址请求HPAR消息的响应发送至分组网关P‑GW,并进入步骤S2020,否则,结束协议,并进入步骤S3;
所述消息验证码MACA‑GW/P‑GW的表达式如下:MACA‑GW/P‑GW=H(KP‑GW‑A‑GW,Proxy‑CoAA‑GW||NA‑GW)其中,Proxy‑CoAA‑GW表示网关A‑GW的代理转交地址,H表示哈希函数,KP‑GW‑A‑GW表示分组网关P‑GW和网关A‑GW的共享密钥,NA‑GW表示随机数;
S2020、由分组网关P‑GW解密切换分组转发地址请求HPAR消息获取网关A‑GW的代理转交地址CoA和随机数NA‑GW,通过获取代理转交地址CoA计算得到消息验证码XMACA‑GW/P‑GW,并将消息验证码XMACA‑GW/P‑GW与MACA‑GW/P‑GW进行对比,并将根据对比结果判断与网关认证A‑GW身份是否合法,若是,则根据随机数NA‑GW计算得到消息验证码MACP‑GW/A‑GW,并将其作为快速代理绑定更新FPBU消息发送至网关A‑GW以建立连接,并进入步骤S2021,否则,结束协议,并进入步骤S3;
S2021、通过随机数NA‑GW计算得到消息验证码XMACP‑GW‑A‑GW验证分组网关P‑GW的身份,并利用随机数NA‑GW和NP‑GW计算得到消息验证码MACA‑GW/P‑GW,并将其作为快速代理绑定确认消息,并发送至分组网关P‑GW表明建立连接成功;
S2022、将用户设备UEi与当前基站断开连接,并连接到WLAN网络接入节点IDNAP;
S2023、由组长收集消息验证码MACi并聚合为MACG1,并将MACG1经WLAN访问网关A‑GW发送至目标接入网络AAA服务器AAAWLAN;
S2024、判断目标接入网络AAA服务器AAAWLAN是否对接收到的消息验证成功,若是,则返回响应消息MAC2,并进入步骤S2025,否则,忽略该消息,并进入步骤S2025;
S2025、通过服务网关P‑GW在用户设备UEi的切换过程中转发缓存的数据包;
S2026、当将所有缓存的数据包转发至用户设备UEi时,在分组网关P‑GW和访问网关A‑GW之间创建PMIPv6隧道,完成对认证的接入;
S3、认证失败,终止执行,从而完成批量切换认证及密钥协商。
2.根据权利要求1所述的面向异构网络的批量切换认证及密钥协商方法,其特征在于,所述步骤S205包括以下步骤:
S2051、利用发现功能模块ANDSF通过预设的接入网优先策略选择目标接入网络AAA;
S2052、为目标接入网络AAA服务器AAAWLAN计算得到用于验证用户设备UEi的个人本地身份与组本地身份,并根据所述个人本地身份计算得到用于生成用户设备UEi和目标接入网络AAA服务器AAAWLAN会话密钥的个人临时密钥,以及根据组本地身份利用预共享密钥计算得到新的临时密钥;
所述个人本地身份LIDi的表达式如下:其中,TIDi表示个人临时身份, 表示异或操作,SKi‑ANDSF表示用户设备UEi和发现功能模块ANDSF的预共享密钥;
所述组本地身份LIDG1的表达式如下:其中,TIDG1表示组临时身份,GTKG1表示G1组的共享密钥,TIDG1表示组临时身份;
所述个人临时密钥TKi的表达式如下:
TKi=H(SKi‑ANDSF||NLD||LIDi)i=1,2,3,…,n
所述新的临时密钥TKG1的表达式如下:TKG1=H(GTKG1||NLD||LIDG1)其中,H表示哈希函数,SKi‑ANDSF表示用户设备UEi和发现功能模块ANDSF的共享密钥,NLD表示随机数,LIDi表示本地个人身份,i表示第n个用户序号,GTKG1表示G1组的共享密钥;
S2053、利用对称密钥KANDSF‑AAA加密随机数NANDSF和NLD,以及为用户设备UEi计算得到本地身份、临时密钥及目标接入网络接入节点标识IDNAP;
S2054、根据所述随机数NANDSF和NLD、组本地身份、新的临时密钥及目标接入网络接入节点标识IDNAP计算得到消息验证码MACANDSF/AAA,并发送至目标接入网络AAA服务器AAAWLAN;
所述消息验证码MACANDSF/AAA的表达式如下:MACANDSF/AAA=H(KANDSF‑AAA,IDANDSF||TANDSF||NANDSF||NLD||TK(1‑n)||TKG1||LID(1‑n)||LIDG1||IDNAP)
其中,H表示哈希函数,TANDSF表示发现功能模块ANDSF发送消息的时间戳,TK(1‑n)表示个人临时密钥,TKG1表示G1组共享的临时密钥,LIDG1表示G1组的本地身份,IDNAP表示目标网络接入标识符,IDANDSF表示ANDSF身份标识符,LID(1‑n)表示第1‑n个用户序号的本地个人身份。
3.根据权利要求1所述的面向异构网络的批量切换认证及密钥协商方法,其特征在于,所述步骤S2010中消息验证码MACi/LD的表达式如下:MACi/LD=H(TKG1,LIDi||LIDG1||Ti)其中,TKG1表示新的临时密钥,Ti表示每个UE发送该消息的时间戳;
所述会话密钥SKiAAA的表达式如下:SKiAAA=H(TKi||NAAA||NLD)其中,TKi表示个人临时密钥,NLD和NAAA均表示随机数;
所述本地个人身份LIDi的表达式如下:其中,SKi‑ANDSF表示用户设备UEi和发现功能模块ANDSF的共享密钥,TIDi表示个人临时身份,NLD表示随机数,SKi‑ANDSF表示用户设备UEi和发现功能模块ANDSF的预共享密钥;
本地组身份LIDG1的表达式如下:
其中,GTKG1表示G1组的共享密钥,NLD表示随机数,H表示哈希函数;
所述个人临时密钥TKi的表达式如下:
TKi=H(SKi‑ANDSF||NLD||LIDi)其中,H表示哈希函数,SKi‑ANDSF表示用户设备UEi和发现功能模块ANDSF的共享密钥,NLD表示随机数,LIDi表示本地个人身份;
所述新的临时密钥TKG1的表达式如下:TKG1=H(GTKG1||NLD||LIDG1)其中,GTKG1表示G1组的共享密钥,NLD表示随机数,LIDG1表示G1组的本地身份;
所述消息验证码MACi/LD的表达式如下:MACi/LD=H(TKG1,LIDi|||LIDG1||Ti)其中,TKG1表示G1全组用户接入WLAN的临时密钥,LIDi表示用户设备UEi的本地身份,LIDG1表示G1组的本地身份,Ti表示每个UE发送该消息的时间戳。
4.根据权利要求1所述的面向异构网络的批量切换认证及密钥协商方法,其特征在于,所述步骤S2011中消息验证码MACLD/S‑GW的表达式如下:MACLD/S‑GW=H(SKLD‑S‑GW,TLD||NLD2)所述身份验证票证TicP‑GW的表达式如下:Tic P‑GW={LID(1‑n)||LIDG1||TLD||NLD2||IDNAP||H(LID(1‑n)||LIDG1||TLD||NLD2||IDNAP)}SKLD‑P‑GW
其中,IDNAP表示目标接入网络接入节点标识,SKLD‑P‑GW表示组长和分组网关P‑GW的预共享密钥,TLD表示时间戳,NLD2表示新生成的随机数,LID(1‑n)表示第1‑n个用户序号的本地个人身份,LIDG1表示G1组的本地身份,TLD表示时间戳,IDNAP表示临时密钥及目标接入网络接入节点标识,SKLD‑P‑GW组长和分组网关P‑GW的预共享密钥。
5.根据权利要求1所述的面向异构网络的批量切换认证及密钥协商方法,其特征在于,所述步骤S2014中消息验证码MACP‑GW/S‑GW的表达式如下:MACP‑GW/S‑GW=H(KS‑GW‑P‑GW,NLD2+1)所述消息验证码XMACS‑GW/P‑GW的表达式如下:XMACS‑GW/P‑GW=H(KS‑GW‑P‑GW,NLD2)其中,H表示哈希函数,KS‑GW‑P‑GW表示服务网关S‑GW和分组网关P‑GW的共享密钥,NLD2表示新生成的随机数。
6.根据权利要求1所述的面向异构网络的批量切换认证及密钥协商方法,其特征在于,所述步骤S2021中消息验证码MACP‑GW‑A‑GW的表达式如下:MACP‑GW/A‑GW=H(KP‑GW‑A‑GW,NA‑GW)其中,H表示哈希函数,KP‑GW‑A‑GW表示分组网关P‑GW和网关A‑GW的共享密钥,NA‑GW表示随机数。
7.根据权利要求1所述的面向异构网络的批量切换认证及密钥协商方法,其特征在于,所述步骤S2023中消息验证码MACi的表达式如下:MACi=H(TKi,NAAA||LIDG1||LIDi)其中,H表示哈希函数,MACi表示用户设备UEi聚合的消息验证码,TKi表示临时密钥,NAAA表示目标接入网络AAA选择的随机数,LIDG1表示G1组的本地身份,LIDi表示用户设备UEi的本地身份。