一种多方通信鉴权方法及系统与流程

文档序号:12630049阅读:481来源:国知局
一种多方通信鉴权方法及系统与流程
本发明涉及时分长期演进(TD-LTE,Time-divisionLongTermEvolution)通信技术中的系统安全领域,尤其涉及一种多方通信鉴权方法及系统。
背景技术
:随着家庭概念的不断加强,家庭集体活动越来越频繁,家庭群组之间的沟通日益增多,单纯的双方通话已经受到沟通的局限性,因此双方通话模式越来越无法满足家庭用户的沟通需求。家庭群聊通过提供全家多方通话的功能,可以进一步挖掘通信市场潜力,而在家庭群聊过程中的通信安全问题也受到越来越多的关注。目前,网络通信中面临的主要安全威胁有截断、中断、篡改、伪造。具体地,在3GPPLTE/SAE认证与密钥协商过程中对用户和网络进行双向认证,在此基础上进行密钥协商。但是,即使密钥协商采用对称密钥体制来确保通信过程中信息的机密性、完整性和可用性,仍然存在用户认证向量被截获,国际移动用户识别码(IMSI,InternationalMobileSubscriberIdentificationNumber)用户身份泄漏后恶意入侵者可以仿造用户身份入网,并通过截获用户认证向量获取机密通信密钥等安全缺陷。此外,在所述对称密钥体制中,用户终端(UE,UserEquipment)和本地用户服务器(HSS,HomeSubscriberServer)长期共享密钥(Key)且不支持数据签名,因此也存在潜在的安全风险。现有技术中包括TD-LTE加密组呼的方法,如:申请号为“CN201010210647”的中国专利中公开了一种基于TD-LTE集群通信系统的加密组呼方法,其中,所述方法包括:A、建立终端与eNB、终端与MME之间点到点的安全信道;B、主叫终端向网络侧请求建立组呼呼叫;网络侧确定允许后生成会话密钥,根据 预置的组密钥及会话密钥生成种子密钥;C、网络侧为主叫终端分配上行链路资源,建立组呼上行安全机制,为本次呼叫的所有被叫终端分配下行链路资源和会话密钥,被叫终端根据会话密钥及预置的组密钥生成种子密钥,网络侧与被叫终端建立组呼下行链接及组呼下行安全机制;D、网络侧为主叫终端授予讲话权,并通知所述被叫终端,完成组呼加密。采用所述方法能够实现下行组呼加密,提高组呼的安全性。虽然上述基于TD-LTE集群通信系统的加密组呼技术能一定程度地提高组呼安全性,但仍存在如下缺陷:首先,基于LTE/SAE的加密组呼技术使用对称密钥体制而非采用公用密钥体制,由于这种密码体制采用共享密钥的管理方式,当组内成员数量较多时,会出现认证密钥安全管理的问题,容易引起移动用户与运营商之间难以解决的付费纠纷问题;因此,这种方式对通信信息的加密本身具有很多局限性。其次,组呼的参与者必须处于组呼区一簇小区内,增加了技术应用的局限性。最后,每当有新成员加入或离开时,都要集中更新所有密钥,每次密钥更新过程都需要全部用户都重新与HSS进行交互,通信代价较大。因此,随着移动通信技术发展到TD-LTE阶段,在LTE网络环境中如何确保多方通信的安全性,确保在通信成员不断加入或离开的情况下满足通讯加密的安全需求,成为当前运营商迫切需要解决的问题。技术实现要素:有鉴于此,本发明实施例期望提供一种多方通信鉴权方法及系统,不仅能确保在多方通信密钥协商过程中的安全性,而且能实现密钥协商与密钥管理的最佳性能;同时能降低密钥更新的复杂度。为达到上述目的,本发明实施例的技术方案是这样实现的:本发明实施例提供了一种多方通信鉴权方法,包括:UE与网络之间进行双向认证;根据多方通信密钥协商算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥;所述UE获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。上述方案中,在所述UE与网络之间进行双向认证之前,所述方法还包括:所述UE发送用户注册请求至移动管理实体MME;所述双向认证包括:用户认证和网络认证;其中,所述用户认证包括:所述MME接收所述用户注册请求,发送用户身份验证请求至所述UE;所述UE接收所述用户身份验证请求,发送国际移动用户识别码IMSI至所述MME;所述MME接收所述IMSI,发送鉴权信息请求和所述IMSI至本地用户服务器HSS;所述HSS接收所述鉴权信息请求和所述IMSI,并对所述UE进行身份认证;所述网络认证包括:所述用户认证成功后,所述HSS发送HSS证书请求至密钥产生中心KGC;所述KGC接收所述HSS证书请求,生成HSS公钥、HSS私钥和HSS认证多项式并进行签名,将所述HSS公钥和所述具有签名的HSS认证多项式绑定至HSS证书;所述KGC发送所述HSS证书和所述HSS私钥至所述HSS;所述HSS接收所述HSS证书和所述HSS私钥,并将所述HSS证书发送至所述UE;所述UE接收所述HSS证书,并对所述网络进行认证。上述方案中,所述多方通信密钥协商算法包括:所述网络认证成功后,第一UE将第一IMSI作为第一公钥,并将以所述第一IMSI为变量的所述HSS认证多项式作为第一私钥s1;第二UE将第二IMSI作为第二公钥,并将以所述第二IMSI为变量的所述HSS认证多项式作为第二私钥s2;及第三UE将第三IMSI作为第三公钥,并将以所述第三IMSI为变量的所述HSS认证多项式作为第三私钥s3;所述第一UE、所述第二UE和所述第三UE分别生成时间戳和随机数其中,所述为正整数;根据生成元P,所述第一UE计算X1和Y1,所述第二UE计算X2和Y2,所述第三UE计算X3和Y3,其中,X1等于r1与P之积,Y1等于s1与X1之积;X2等于r2与P之积,Y2等于s2与X2之积;X3等于r3与P之积,Y3等于s3与X3之积;其中,所述P为正整数;所述第一UE发送第一组数值M1和所述第一UE使用所述第一私钥s1在所述M1上的签名至所述第二UE和所述第三UE,其中,所述M1包括所述第二IMSI、所述第三IMSI、X1、Y1和T1;所述第二UE发送第二组数值M2和所述第二UE使用所述第二私钥s2在所述M2上的签名至所述第一UE和所述第三UE,其中,所述M2包括所述第一IMSI、所述第三IMSI、X2、Y2和T2;及所述第三UE发送第三组数值M3和所述第三UE使用所述第三私钥s3在所述M3上的签名至所述第一UE和所述第二UE,其中,所述M3包括所述第一IMSI、所述第二IMSI、X3、Y3和T3;所述第一UE接收所述M2、所述第二UE使用所述第二私钥s2在M2上的签名、所述M3和所述第三UE使用所述第三私钥s3在所述M3上的签名;所述第二UE接收所述M1、所述第一UE使用所述第一私钥s1在所述M1上的签名、所述M3和所述第三UE使用所述第三私钥s3在所述M3上的签名;及所述第三UE接收所述M1、所述第一UE使用所述第一私钥s1在所述M1上的签名、所述M2和所述第二UE使用所述第二私钥s2在所述M2上的签名;所述第一UE计算所述传输会话密钥Z1为以Y2除以X2后与P的乘积加上X2、Y3除以X3后与P的乘积加上X3为变量的函数求幂,其中,所述幂为s1+r1;所述第二UE计算所述传输会话密钥Z2为以Y1除以X1后与P的乘积加上X1、Y3除以X3后与P的乘积加上X3为变量的函数求幂,其中,所述幂为s2+r2;所述第三UE计算所述传输会话密钥Z3为以Y1除以X1后与P的乘积加上X1、 Y2除以X2后与P的乘积加上X2为变量的函数求幂,其中,所述幂为s3+r3;其中,所述Z1等于Z2,并等于Z3。本发明实施例还提供了一种多方通信鉴权方法,包括:UE与网络之间进行双向认证;根据多方通信密钥协商算法和成员变更算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥,所述成员变更算法基于簇结构计算成员加入、成员离开、组间合并和组间分割时的所述传输会话密钥;所述UE获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。上述方案中,在所述UE与网络之间进行双向认证之前,还包括:所述UE发送用户注册请求至移动管理实体MME;所述双向认证包括:用户认证和网络认证;其中,所述用户认证包括:所述MME接收所述用户注册请求,发送用户身份验证请求至所述UE;所述UE接收所述用户身份验证请求,发送国际移动用户识别码IMSI至所述MME;所述MME接收所述IMSI,发送鉴权信息请求和所述IMSI至本地用户服务器HSS;所述HSS接收所述鉴权信息请求和所述IMSI,并对所述UE进行身份认证;所述网络认证包括:所述用户认证成功后,所述HSS发送HSS证书请求至密钥产生中心KGC;所述KGC接收所述HSS证书请求,生成HSS公钥、HSS私钥和HSS认证多项式并进行签名,将所述HSS公钥和所述具有签名的HSS认证多项式绑定至HSS证书;所述KGC发送所述HSS证书和所述HSS私钥至所述HSS;所述HSS接收所述HSS证书和所述HSS私钥,并将所述HSS证书发送至 所述UE;所述UE接收所述HSS证书,并对所述网络进行认证。上述方案中,所述多方通信密钥协商算法包括:所述网络认证成功后,第一UE将第一IMSI作为第一公钥,并将以所述第一IMSI为变量的所述HSS认证多项式作为第一私钥s1;第二UE将第二IMSI作为第二公钥,并将以所述第二IMSI为变量的所述HSS认证多项式作为第二私钥s2;及第三UE将第三IMSI作为第三公钥,并将以所述第三IMSI为变量的所述HSS认证多项式作为第三私钥s3;所述第一UE、所述第二UE和所述第三UE分别生成时间戳和随机数其中,所述为正整数;根据生成元P,所述第一UE计算X1和Y1,所述第二UE计算X2和Y2,所述第三UE计算X3和Y3,其中,X1等于r1与P之积,Y1等于s1与X1之积;X2等于r2与P之积,Y2等于s2与X2之积;X3等于r3与P之积,Y3等于s3与X3之积;其中,所述P为正整数;所述第一UE发送第一组数值M1和所述第一UE使用所述第一私钥s1在所述M1上的签名至所述第二UE和所述第三UE,其中,所述M1包括所述第二IMSI、所述第三IMSI、X1、Y1和T1;所述第二UE发送第二组数值M2和所述第二UE使用所述第二私钥s2在所述M2上的签名至所述第一UE和所述第三UE,其中,所述M2包括所述第一IMSI、所述第三IMSI、X2、Y2和T2;及所述第三UE发送第三组数值M3和所述第三UE使用所述第三私钥s3在所述M3上的签名至所述第一UE和所述第二UE,其中,所述M3包括所述第一IMSI、所述第二IMSI、X3、Y3和T3;所述第一UE接收所述M2、所述第二UE使用所述第二私钥s2在M2上的签名、所述M3和所述第三UE使用所述第三私钥s3在所述M3上的签名;所述第二UE接收所述M1、所述第一UE使用所述第一私钥s1在所述M1上的签名、所述M3和所述第三UE使用所述第三私钥s3在所述M3上的签名;及所述第三 UE接收所述M1、所述第一UE使用所述第一私钥s1在所述M1上的签名、所述M2和所述第二UE使用所述第二私钥s2在所述M2上的签名;所述第一UE计算所述传输会话密钥Z1为以Y2除以X2后与P的乘积加上X2、Y3除以X3后与P的乘积加上X3为变量的函数求幂,其中,所述幂为s1+r1;所述第二UE计算所述传输会话密钥Z2为以Y1除以X1后与P的乘积加上X1、Y3除以X3后与P的乘积加上X3为变量的函数求幂,其中,所述幂为s2+r2;所述第三UE计算所述传输会话密钥Z3为以Y1除以X1后与P的乘积加上X1、Y2除以X2后与P的乘积加上X2为变量的函数求幂,其中,所述幂为s3+r3;其中,所述Z1等于Z2,并等于Z3。上述方案中,所述根据所述多方通信密钥协商算法和成员变更算法计算所述UE的传输会话密钥包括:所述KGC生成由多个簇结构组成的第一密码树和第二密码树,其中,所述第一密码树的节点代表第一组多方通信UE,所述第二密码树的节点代表第二组多方通信UE;当有新UE加入所述第一组多方通信时,所述KGC在所述第一密码树添加第一叶子节点并生成第一簇结构,其中,所述第一叶子节点代表所述新UE;根据所述多方通信密钥协商算法,计算所述第一簇结构的第一簇内密钥;根据所述成员变更算法,使用所述第一簇内密钥和所述多个簇结构的簇内密钥计算第一根密钥,其中,所述第一根密钥为所述第一组多方通信UE的第一传输会话密钥;当有UE离开所述第一组多方通信时,根据代表所述离开的UE的节点所在位置生成第二簇结构,其它簇结构不变;根据所述多方通信密钥协商算法,计算所述第二簇结构的第二簇内密钥;根据所述成员变更算法,使用所述第二簇内密钥和所述其它簇结构的簇内密钥计算第二根密钥,其中,所述第二根密钥为所述第一组多方通信UE的第二传输会话密钥;当所述第一组多方通信与所述第二组多方通信合并生成第三组多方通信时, 所述KGC基于所述第一密码树和所述第二密码树生成根簇,根据所述成员变更算法,使用所述第一密码树的簇内密钥和所述第二密码树的簇内密钥计算第三根密钥,其中,所述第三根密钥为第三组多方通信UE的第三传输会话密钥;当所述第三组多方通信被分割为所述第一组多方通信与所述第二组多方通信时,所述第一密码树的簇结构和所述第一密码树的簇结构不变,根据所述成员变更算法分别计算所述第一密码树的第四根密钥和所述第二密码树的第五根密钥,其中,所述第四根密钥为所述第一组多方通信UE的第四传输会话密钥,所述第五根密钥为所述第二组多方通信UE的第五传输会话密钥。本发明实施例还提供了一种多方通信鉴权系统,包括:UE,用于与网络之间进行双向认证;根据多方通信密钥协商算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥;所述UE,还用于获得所述传输会话密钥后,对传输数据进行加密并进行多方通信;MME,用于所述网络与所述UE之间进行所述双向认证;HSS,用于所述网络与所述UE之间进行所述双向认证;KGC,用于所述网络与所述UE之间进行所述双向认证。上述方案中,所述UE还用于在所述UE与所述网络之间进行双向认证之前,发送用户注册请求至所述MME;所述UE与所述网络之间进行的所述双向认证包括:用户认证和网络认证;其中,当进行所述用户认证时,接收用户身份验证请求,发送IMSI至所述MME;当进行所述网络认证时,接收HSS证书,并对所述网络进行认证。本发明实施例还提供了一种多方通信鉴权系统,包括:UE,用于与网络之间进行双向认证;根据多方通信密钥协商算法和成员变更算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥,所述成员变更算法基于簇结构计算成员加入、成员离开、组间合并和组间分割时的所述传输会话密钥;所述UE,还 用于获得所述传输会话密钥后,对传输数据进行加密并进行多方通信;MME,用于所述网络与所述UE之间进行所述双向认证;HSS,用于所述网络与所述UE之间进行所述双向认证;KGC,用于所述网络与所述UE之间进行所述双向认证。上述方案中,所述UE还用于在所述UE与所述网络之间进行双向认证之前,发送用户注册请求至所述MME;所述UE与所述网络之间进行的所述双向认证包括:用户认证和网络认证;其中,当进行所述用户认证时,接收用户身份验证请求,发送IMSI至所述MME;当进行所述网络认证时,接收HSS证书,并对所述网络进行认证。本发明实施例所提供的多方通信鉴权方法及系统,由所述UE经由移动管理实体(MME,MobilityManagementEntity)、所述HSS和密钥产生中心(KGC,KeyGeneratingCenter)与网络之间进行双向认证,所述UE根据多方通信密钥协商算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥;或者,根据多方通信密钥协商算法和成员变更算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥,所述成员变更算法基于簇结构计算成员加入、成员离开、组间合并和组间分割时的所述传输会话密钥;所述UE获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。由于本发明实施例在所述UE与相关网络设备之间使用所述双向认证,可以避免出现伪基站等单向认证引起的安全风险;而且,由于采用两种算法结合计算传输会话密钥,其中的多方通信密钥协商算法能够提供安全的密钥,成员变更算法能够不对所有簇进行密钥更新,使得计算代价更小,因此,本发明实施例既保证了组内通信的前后向安全性,同时也减少了密钥更新带来的通信和计算代价;另外,所述UE采用基于对称密钥体制的加密算法对传输数据进行加解密,可以实现密钥协商与密钥管理的最佳性能。附图说明图1为本发明实施例1提供的多方通信鉴权方法的实现流程示意图;图2为本发明实施例1提供的多方通信鉴权方法的实现流程示意图;图3为本发明实施例2提供的多方通信鉴权方法的实现流程示意图;图4为本发明实施例4提供的密钥树结构示意图;图5为本发明实施例4提供的成员加入的树结构示意图;图6为本发明实施例5和6提供的多方通信鉴权系统的组成结构示意图。具体实施方式本发明实施例中,UE经由MME、HSS和KGC与网络之间进行双向认证,所述UE根据多方通信密钥协商算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥;或者,所述UE根据多方通信密钥协商算法和成员变更算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥,所述成员变更算法基于簇结构计算成员加入、成员离开、组间合并和组间分割时的所述传输会话密钥;所述UE获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。下面结合附图及具体实施例对本发明再做进一步详细的说明。实施例1实施例1为当UE个数为三时本发明提供的多方通信鉴权方法。图1和图2为本发明实施例1提供的多方通信鉴权方法的实现流程示意图,如图1和图2所示,所述方法包括:步骤110:用户终端UE与网络之间进行双向认证。这里,所述每个接入家庭群聊的UE都需要先执行步骤110中的双向认证,以保证UE侧和网络侧的可靠性和准确性;所述UE具体可为手机、智能终端、多媒体设备和流媒体设备。具体地,如图2所示,在步骤110之前,即在多个所述UE接入家庭群聊 之前,所述方法还包括:步骤101:UE发送用户注册请求至MME。这里,所述MME为第三代合作伙伴计划(3GPP,3rdGenerationPartnershipProject)LTE网络中提供接入网络控制的节点,负责用户的身份验证和移动性,能够完成空闲模式的UE定位、传呼过程和信令的处理。通过与所述HSS交互,所述MME能够对用户身份进行认证,为用户分配一个临时ID,能够实现接入安全和许可控制。所述HSS与不同域和子系统中的呼叫控制和会话管理实体进行联系,是存储用户信息的数据库,能够存储移动用户信息,包括用户标识、编号、用户安全信息、用户位置信息及轮廓信息。所述HSS负责完成用户接入网络时进行鉴权和授权的网络接入控制,产生用于完整性保护和加密的用户安全信息。在步骤110中,所述双向认证包括:用户认证和网络认证。其中,所述用户认证为网络侧设备对所述用户身份进行认证,所述网络认证为所述用户对所述网络进行认证。如图2所示,所述用户认证具体包括:步骤111:MME接收用户注册请求,发送用户身份验证请求至UE。具体地,所述用户身份验证请求要求所述UE上报所述IMSI至所述MME。步骤112:UE接收用户身份验证请求,发送IMSI至MME。步骤113:MME接收IMSI,发送鉴权信息请求和IMSI至HSS。在步骤113中,所述鉴权信息请求要求所述HSS对所述UE进行认证。步骤114:HSS接收鉴权信息请求和IMSI,并对UE进行身份认证。具体地,当所述身份认证失败,所述HSS拒绝所述UE加入多方通信。当所述身份认证成功,所述HSS继续进行所述网络认证。所述网络认证包括:步骤115:用户认证成功后,HSS发送HSS证书请求至KGC。这里,所述KGC负责密钥的产生、存储和传输,是公钥基础设施(PKI,PublicKeyInfrastructure)系统中可信的第三方,能够使得网络中所有节点的信任行为具有非否认性。所述KGC可以通过发行证书的机制证实他人的公钥信 息,所述证书中绑定公钥数据和相应私钥拥有者的身份信息,并带有所述KGC的数字签名。所述UE可以通过数字签名确认所述HSS的身份,实现接入层的双向鉴权。由于公钥证书包含可以唯一标识证书拥有者身份的信息、证书拥有者的公钥以及权威认证机构(CA,CertificateAuthority)的签名等信息,因此成员间的公钥可以通过互相交换证书来获得。这里,所述HSS请求所述KGC发送所述HSS证书给所述HSS。步骤116:KGC接收HSS证书请求,生成HSS公钥、HSS私钥和HSS认证多项式f(x)并进行签名,将HSS公钥和具有签名的HSS认证多项式f(x)绑定至HSS证书。具体地,所述KGC选择k+1个随机数并生成所述HSS认证多项式f(x),所述f(x)为以所述d0,d1,…,dk为系数的一元多项式,具体表达式为f(x)=d0+d1x+…dkxk∈Zq[x],其中,所述为正整数;随后,所述KGC在所述HSS认证多项式f(x)上进行数字签名;另外,所述KGC将P作为生成元,计算V0=d0P,V1=d1P,…Vk=dkP,并将{P,V0,V1,…,Vk}作为所述HSS公钥,将{d0,d1,…,dk}作为所述HSS私钥,其中,所述P为正整数;最后,所述KGC将所述HSS公钥和所述具有签名的HSS认证多项式f(x)绑定至所述HSS证书。步骤117:KGC发送HSS证书和HSS私钥至HSS。步骤118:HSS接收HSS证书和HSS私钥,并将HSS证书发送至UE。在步骤118中,所述HSS还将当前时间戳T发送至所述UE。这里,所述T∈Zq*.]]>步骤119:UE接收HSS证书,并对网络进行认证。在步骤119中,所述UE验证绑定在所述HSS证书中的所述HSS认证多项式f(x)上的所述KGC的签名,从而确认所述HSS的身份以对所述网络进行认证。至此,所述双向认证执行完毕;当所述网络认证失败,所述UE不会进行多方通信密钥协商;当所述网络认证成功后,所述UE进行多方通信密钥协商, 以进行多方通信。下面将进一步解释所述多方通信密钥协商。步骤120:根据多方通信密钥协商算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥。在步骤120中,所述UE的传输会话密钥是基于非对称密钥体制而生成的。需要说明的是,当所述UE个数等于三时,所述多方通信密钥协商算法具体参见实施例3中的描述;当所述UE个数大于三时如何计算所述UE的传输会话密钥具体参见实施例4中的描述。步骤130:所述UE获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。其中,所述传输数据可以是语音数据、文本数据、视频数据等等。在步骤130中,因为非对称密钥体制比对称密钥体制加密速度慢,所以所述UE获得根据所述非对称密钥体制而生成的所述传输会话密钥后,使用基于对称密钥体制的加密算法对实际传输的数据进行加密和解密,不会影响多方通信性能,通过这种技术的结合实现密钥协商与密钥管理的最佳性能。至此,多方通信鉴权的过程就完成了。本发明实施例所提供的多方通信鉴权方法在所述UE与所述网络之间使用所述双向认证,可以避免出现伪基站等单向认证引起的安全风险;另外,所述UE采用基于对称密钥体制的加密算法对传输数据进行加解密,可以实现密钥协商与密钥管理的最佳性能。实施例2实施例2为当UE个数大于三时本发明提供的多方通信鉴权方法。图3为本发明实施例2提供的多方通信鉴权方法的实现流程示意图,如图3所示,所述方法包括:步骤210:用户终端UE与网络之间进行双向认证。步骤220:根据多方通信密钥协商算法和成员变更算法计算所述UE的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传 输会话密钥,所述成员变更算法基于簇结构计算成员加入、成员离开、组间合并和组间分割时的所述传输会话密钥。步骤230:所述UE获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。本发明实施例所提供的多方通信鉴权方法当所述UE个数大于三时,所述UE根据所述成员变更算法计算所述UE的传输会话密钥,既保证了组内通信的前后向安全性,同时也减少了密钥更新带来的通信和计算代价。实施例3实施例3描述了多方通信密钥协商算法,所述通信密钥协商算法仅适用于三个UE之间进行多方通信密钥协商。具体地,当三个所述UE进行多方通信密钥协商时,所述三个UE使用所述多方通信密钥协商算法计算所述UE之间进行通信的传输会话密钥;所述多方通信密钥协商算法包括以下步骤:步骤310:所述网络认证成功后,第一UE将第一IMSI作为第一公钥,并将f(第一IMSI)作为第一私钥s1;第二UE将第二IMSI作为第二公钥,并将f(第二IMSI)作为第二私钥s2;第三UE将第三IMSI作为第三公钥,并将f(第三IMSI)作为第三私钥s3。在步骤310中,所述第一IMSI取代所述HSS认证多项式f(x)中的变量x被代入所述f(x)中,生成所述f(第一IMSI)=s1;所述第二IMSI取代所述HSS认证多项式f(x)中的变量x被代入所述f(x)中,生成所述f(第二IMSI)=s2;所述第三IMSI取代所述HSS认证多项式f(x)中的变量x被代入所述f(x)中,生成所述f(第三IMSI)=s3。其中,所述第一IMSI可以表示为IMSI1,所述第二IMSI可以表示为IMSI2,所述第三IMSI可以表示为IMSI3。步骤320:所述第一UE、所述第二UE和所述第三UE分别生成时间戳和随机数其中,所述为正整数。步骤330:根据生成元P,所述第一UE计算X1等于r1乘以P、Y1等于s1乘以X1;所述第二UE计算X2等于r2乘以P、Y2等于s2乘以X2;所述第三UE计算X3等于r3乘以P、Y3等于乘以s3X3;其中,所述P为正整数。在步骤330中,由于Y1等于s1乘以r1与P的乘积,且X1=r1P,所以Y1=s1(r1P)=s1X1;由于Y2等于s2乘以r2与P的乘积,且X2=r2P,所以Y2=s2(r2P)=s2X2;由于Y3等于s3乘以r3与P的乘积,且X3=r3P,所以Y3=s3(r3P)=s3X3。进一步地,在所述第一UE中,定义Ω1为所述第一IMSI的幂与V的乘积在零到k上的求和,Ω1也等于s1乘以P,即在所述第二UE中,定义Ω2为所述第二IMSI的幂与V的乘积在零到k上的求和,Ω2也等于s2乘以P,即在所述第三UE中,定义Ω3为所述第三IMSI的幂与V的乘积在零到k上的求和,Ω3也等于s3乘以P,即Ω3=Σi=0k(IMSI3)iVi=s3P.]]>这里,k为正整数。步骤340:所述第一UE发送第一组数值M1和所述第一UE使用所述第一私钥s1在所述M1上的签名至所述第二UE和所述第三UE,其中,所述M1包括所述第二IMSI、所述第三IMSI、X1、Y1和T1;所述第二UE发送第二组数值M2和所述第二UE使用所述第二私钥s2在所述M2上的签名至所述第一UE和所述第三UE,其中,所述M2包括所述第一IMSI、所述第三IMSI、X2、Y2和T2;及所述第三UE发送第三组数值M3和所述第三UE使用所述第三私钥s3在所述M3上的签名至所述第一UE和所述第二UE,其中,所述M3包括所述第一IMSI、所述第二IMSI、X3、Y3和T3。在步骤340中,所述M1可以表达为M1(第二IMSI,第三IMSI,X1,Y1,T1),所述M2可以表达为M2(第一IMSI,第三IMSI,X2,Y2,T2),所述M3可 以表达为M3(第一IMSI,第二IMSI,X3,Y3,T3)。在步骤340中,所述第一UE使用自己的第一私钥s1在M1上进行数字签名,生成Sig1(M1),以防信息被恶意更改;同样地,所述第二UE使用自己的第二私钥s2在M2上进行数字签名,生成Sig2(M2);所述第三UE使用自己的第三私钥s3在M3上进行数字签名,生成Sig3(M3)。步骤350:所述第一UE接收所述M2、所述第二UE使用所述第二私钥s2在所述M2上的签名、所述M3和所述第三UE使用所述第三私钥s3在所述M3上的签名;所述第二UE接收所述M1、所述第一UE使用所述第一私钥s1在所述M1上的签名、所述M3和所述第三UE使用所述第三私钥s3在所述M3上的签名;所述第三UE接收所述M1、所述第一UE使用所述第一私钥s1在所述M1上的签名、所述M2和所述第二UE使用所述第二私钥s2在所述M2上的签名。步骤360:所述第一UE计算所述传输会话密钥Z1为以Y2除以X2后与P的乘积加上X2、Y3除以X3后与P的乘积加上X3为变量的函数求幂,其中,所述幂为s1+r1;,所述第二UE计算所述传输会话密钥Z2为以Y1除以X1后与P的乘积加上X1、Y3除以X3后与P的乘积加上X3为变量的函数求幂,其中,所述幂为s2+r2;,所述第三UE计算所述传输会话密钥Z3为以Y1除以X1后与P的乘积加上X1、Y2除以X2后与P的乘积加上X2为变量的函数求幂,其中,所述幂为s3+r3;;其中,所述Z1等于Z2,并等于Z3。具体地,所述第一UE计算所述传输会话密钥Z1的数学表达式为所述第二UE计算所述传输会话密钥Z2的数学表达式为所述第三UE计算所述传输会话密钥Z3的数学表达式为Z3=e^(Y1X1P+X1,Y2X2P+X2)s3+r3.]]>在步骤360中,所述第一UE定义所述传输会话密钥 由于X2=r2P,X3=r3P,Y2=s2X2,Y3=s3X3,Ω2=s2P,Ω3=s3P,所以:Z1=e^(s2P+r2P,s3P+r3P)s1+r1=e^(Y2X2P+X2,Y3X3P+X3)s1+r1=e^(s2P+R2P,s3P+R3P)s1+r1=e^((s2+R2)P,(s3+R3)P)s1+r1=e^(P,P)(s1+r1)(s2+r2)(s3+r3);]]>同理,Z2=e^(Ω1+X1,Ω3+X3)s2+r2=e^(Y1X1P+X1,Y3X3P+X3)s2+r2=e^(P,P)(s1+r1)(s2+r2)(s3+r3);]]>Z3=e^(Ω1+X1,Ω2+X2)s3+r3=e^(Y1X1P+X1,Y2X2P+X2)s3+r3=e^(P,P)(s1+r1)(s2+r2)(s3+r3).]]>综上可以看出,所述传输会话密钥Z1=Z2=Z3,即:所述传输会话密钥Z1、Z2和Z3为所述第一UE、所述第二UE和所述第三UE为进行三方通信而协商的共享密钥。至此,所述多方通信密钥协商算法结束。实施例4实施例4具体描述了当所述UE个数大于三时,根据所述多方通信密钥协商算法和成员变更算法计算所述UE的传输会话密钥。当组内通信成员数量大于三时,组内成员会经常发生动态变化,比如:新成员加入、原有成员离开、组间合并和组间分割等操作。因此,为了保证组内通信的前向和后向安全性,需要更新原来的多方通信密钥。实施例4中使用了数据结构中的树结构和簇结构的概念,也使用了所述多方通信密钥协商算法和所述成员变更算法;所述成员变更算法基于新成员加入、原有成员离开、组间合并和组间分割四种情况计算所述UE的传输会话密钥。具体地,在成员变更之前,所述KGC生成由多个簇结构组成的第一密码树和第二密码树,其中,所述第一密码树的节点代表第一组多方通信UE,所述第二密码树的节点代表第二组多方通信UE。这里,所述第一密码树代表第一组多方通信的树结构,所述第二密码树代表第二组多方通信的树结构。具体地,图4为本发明实施例4提供的密钥树结构示意图,可以将图4中的密钥树作为所述第一组多方通信的树结构进行说明。 如图4所示,所述多个第一组多方通信UE被分配到多个拥有三个节点的簇中,簇结构与普通的二叉树结构类似,只是在两个孩子结点之间存在一条边相连;所述簇结构中的节点可分为叶子节点和中间节点两类。叶子节点只在一个簇内参与簇内密钥的生成,而中间结点不但参与本层簇中的密钥生成,还参与上层簇中的密钥生成。下面分别对所述四种成员变更情况进行描述。图5为本发明实施例4提供的成员加入的树结构示意图。如图5所示,第四UE为加入第一组多方通信的新UE,那么,当有新UE加入所述第一组多方通信时,所述KGC在所述第一密码树添加第一叶子节点并生成第一簇结构,其中,所述第一叶子节点代表所述新UE;根据所述多方通信密钥协商算法,计算所述第一簇结构的第一簇内密钥;根据所述成员变更算法,使用所述第一簇内密钥和所述多个簇结构的簇内密钥计算第一根密钥,其中,所述第一根密钥为所述第一组多方通信UE的第一传输会话密钥。如图5所示,由所述第一UE、所述第二UE和所述第三UE形成的簇结构的簇内密钥并无变化。根据所述成员变更算法,使用所述第一簇内密钥和所述簇内密钥计算所述第一根密钥,这里,所述第一根密钥即为所述四个UE之间进行多方通信的第一传输会话密钥。当有UE离开所述第一组多方通信时,根据代表所述离开的UE的节点所在位置生成第二簇结构,其它簇结构不变;根据所述多方通信密钥协商算法,计算所述第二簇结构的第二簇内密钥;根据所述成员变更算法,使用所述第二簇内密钥和所述其它簇结构的簇内密钥计算第二根密钥,其中,所述第二根密钥为所述第一组多方通信UE的第二传输会话密钥。这里,所述离开的UE可以是参与所述第一组多方通信的任意UE。当所述第一组多方通信与所述第二组多方通信合并生成第三组多方通信时,所述KGC基于所述第一密码树和所述第二密码树生成根簇,根据所述成员变更算法,使用所述第一密码树的簇内密钥和所述第二密码树的簇内密钥计算第三根密钥,其中,所述第三根密钥为第三组多方通信UE的第三传输会话密钥。这里,每组多方通信的旧密钥仍然作为输入,辅助所述第三传输会话密钥的生成。当所述第三组多方通信被分割为所述第一组多方通信与所述第二组多方通信时,所述第一密码树的簇结构和所述第一密码树的簇结构不变,根据所述成员变更算法分别计算所述第一密码树的第四根密钥和所述第二密码树的第五根密钥,其中,所述第四根密钥为所述第一组多方通信UE的第四传输会话密钥,所述第五根密钥为所述第二组多方通信UE的第五传输会话密钥。综上,当多方通信UE发生动态变化时,部分UE动态更新传输会话密钥,降低了密钥更新带来的通信和计算代价。实施例5图6为本发明实施例5提供的多方通信鉴权系统的组成结构示意图。如图6所示,所述系统包括:UE410,用于与网络之间进行双向认证;根据多方通信密钥协商算法计算所述UE410的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥;还用于获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。这里,当所述UE410个数为三时,所述UE410根据多方通信密钥协商算法计算所述UE410的传输会话密钥。进一步地,所述UE410还用于在所述UE410与所述网络之间进行双向认证之前,发送用户注册请求至MME420。具体地,所述UE410与所述网络之间进行的所述双向认证包括:用户认证和网络认证;其中,当进行所述用户认证时,接收用户身份验证请求,发送IMSI至所述MME420;当进行所述网络认证时,接收HSS证书,并对所述网络进行认证。MME420,用于所述网络与所述UE之间进行所述双向认证。具体地,所述MME420与所述网络之间进行所述双向认证包括:当进行所述用户认证时,接收所述用户注册请求,发送所述用户身份验证请求至所述 UE410;及接收所述IMSI,发送鉴权信息请求和所述IMSI至HSS430。HSS430,用于所述网络与所述UE之间进行所述双向认证。具体地,所述HSS430与所述网络之间进行所述双向认证包括:当进行所述用户认证时,接收所述鉴权信息请求和所述IMSI,并对所述UE410进行身份认证;当进行所述网络认证时,所述用户认证成功后,发送HSS证书请求至KGC440;及接收所述HSS证书和HSS私钥,并将所述HSS证书发送至所述UE410。KGC440,用于所述网络与所述UE之间进行所述双向认证。具体地,所述KGC440与所述网络之间进行所述双向认证包括:当进行所述网络认证时,接收所述HSS证书请求,生成HSS公钥、所述HSS私钥和HSS认证多项式f(x)并进行签名,将所述HSS公钥和所述具有签名的HSS认证多项式f(x)绑定至HSS证书;及发送所述HSS证书和所述HSS私钥至所述HSS430。需要说明的是,如图6所示,UE1、UE2和UE2属于同一小区并共用MME1、HSS1和KGC,UE4属于另一个小区,并使用MME2、HSS2和KGC。由此可见,本发明中家庭群聊的参与者可以在多个小区进行通话,不再受到单一HSS鉴权的局限。实施例6如图6所示,所述系统包括:UE410,用于与网络之间进行双向认证;根据多方通信密钥协商算法和成员变更算法计算所述UE410的传输会话密钥,其中,所述多方通信密钥协商算法基于非对称密钥体制协商所述传输会话密钥,所述成员变更算法基于簇结构计算成员加入、成员离开、组间合并和组间分割时的所述传输会话密钥;还用于获得所述传输会话密钥后,对传输数据进行加密并进行多方通信。这里,当所述UE410个数大于三时,所述UE410根据多方通信密钥协商算法和成员变更算法计算所述UE410的传输会话密钥。进一步地,所述UE410还用于在所述UE410与所述网络之间进行双向认证之前,发送用户注册请求至MME420。具体地,所述UE410与所述网络之间进行的所述双向认证包括:用户认证和网络认证;其中,当进行所述用户认证时,接收用户身份验证请求,发送IMSI至所述MME420;当进行所述网络认证时,接收HSS证书,并对所述网络进行认证。MME420,用于所述网络与所述UE之间进行所述双向认证。具体地,所述MME420与所述网络之间进行所述双向认证包括:当进行所述用户认证时,接收所述用户注册请求,发送所述用户身份验证请求至所述UE410;及接收所述IMSI,发送鉴权信息请求和所述IMSI至HSS430。HSS430,用于所述网络与所述UE之间进行所述双向认证。具体地,所述HSS430与所述网络之间进行所述双向认证包括:当进行所述用户认证时,接收所述鉴权信息请求和所述IMSI,并对所述UE410进行身份认证;当进行所述网络认证时,所述用户认证成功后,发送HSS证书请求至KGC440;及接收所述HSS证书和HSS私钥,并将所述HSS证书发送至所述UE410。KGC440,用于所述网络与所述UE之间进行所述双向认证。具体地,所述KGC440与所述网络之间进行所述双向认证包括:当进行所述网络认证时,接收所述HSS证书请求,生成HSS公钥、所述HSS私钥和HSS认证多项式f(x)并进行签名,将所述HSS公钥和所述具有签名的HSS认证多项式f(x)绑定至HSS证书;及发送所述HSS证书和所述HSS私钥至所述HSS430。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1