一种Mesh网络中的密钥协商方法、终端及网关与流程

文档序号:17658633发布日期:2019-05-15 22:13阅读:203来源:国知局

本发明实施例涉及通信领域,尤其涉及一种mesh网络中的密钥协商方法、终端及网关。



背景技术:

无线mesh网络用户节点的接入认证与密钥协商是节点漫游时最基本的安全协议,是安全路由等协议实现的基础。然而,在目前的安全协议中,终端在接入邻近的网络时,是将会话密钥直接发送给邻近的网关,以完成终端与网关之间的密钥协商,未能充分保护用户的隐私,降低了安全性。



技术实现要素:

本发明实施例提供一种mesh网络中的密钥协商方法、终端及网关,用以充分保护用户的隐私,提升安全性。

本发明实施例提供一种mesh网络中的密钥协商方法,包括:

终端在确认接入路由器合法后,生成第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;

所述终端将所述第一密钥基础数据通过所述第一路由器发送给第二网关,以使所述第二网关基于所述第一密钥基础数据生成会话密钥;

所述终端通过所述第一路由器接收所述第二网关发送的第二密钥基础数据,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;

所述终端基于所述第二密钥基础数据生成所述会话密钥,以完成所述终端与第二网关之间的密钥协商;

其中,所述终端、所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。

较佳的,所述终端根据如下公式生成第一密钥基础数据;

lmc=axmodp

其中,x为第一随机整数,p为素数,α为p的本原根,lmc为第一密钥基础数据。

较佳的,

所述终端通过所述第一路由器接收所述第二网关发送的第二密钥基础数据,包括:

所述终端通过所述第一路由器接收所述第二网关发送的根据如下公式生成的第二密钥基础数据;

所述终端基于所述第二密钥基础数据生成所述会话密钥,包括:

所述终端基于所述第二密钥基础数据根据如下公式生成会话密钥;

其中,y为第二随机整数,p为素数,α为p的本原根,x为第一随机整数,k为会话密钥,ln2为第二密钥基础数据。

本发明实施例还提供一种mesh网络中的密钥协商方法,包括:

第二网关接收终端通过第一路由器发送的第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;

所述第二网关基于所述第一密钥基础数据生成会话密钥;

所述第二网关通过所述第一路由器向所述终端发送第二密钥基础数据,以使所述终端根据所述第二密钥基础数据生成所述会话密钥,以完成所述网关与所述终端之间的密钥协商,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;

其中,所述终端和所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。

较佳的,所述第二网关基于所述第一密钥基础数据生成会话密钥,包括:

所述第二网关基于所述第一密钥基础数据根据如下公式生成会话密钥;

k=lmcymodp

其中,lmc为第一密钥基础数据,y为第二随机整数,p为素数,k为会话密钥。

本发明实施例还提供一种mesh网络中验证路由器的方法,包括:

第一网关接收第一路由器的身份信息,所述身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理后所得到的;

所述第一网关将所述身份信息与预设的身份信息进行比较,若所述身份信息与预设的身份信息相同,则确认第一路由器合法。

本发明实施例还提供一种终端,包括:

第一处理模块,用于在确认接入路由器合法后,生成第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;

第一发送模块,用于将所述第一密钥基础数据通过所述第一路由器发送给第二网关,以使所述第二网关基于所述第一密钥基础数据生成会话密钥;

第一接收模块,用于通过所述第一路由器接收所述第二网关发送的第二密钥基础数据,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;

所述第一处理模块,还用于基于所述第二密钥基础数据生成所述会话密钥,以完成所述终端与第二网关之间的密钥协商;

其中,所述终端、所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。

较佳的,所述第一处理模块根据如下公式生成第一密钥基础数据;

lmc=axmodp

其中,x为第一随机整数,p为素数,α为p的本原根,lmc为第一密钥基础数据。

较佳的,

所述第一发送模块,具体用于:

通过所述第一路由器接收所述第二网关发送的根据如下公式生成的第二密钥基础数据;

ln2=aymodp

所述第一处理模块,具体用于:

基于所述第二密钥基础数据根据如下公式生成会话密钥;

其中,y为第二随机整数,p为素数,α为p的本原根,x为第一随机整数,k为会话密钥,ln2为第二密钥基础数据。

本发明实施例还提供一种网关,包括:

第二接收模块,用于接收终端通过第一路由器发送的第一密钥基础数据,所述第一密钥基础数据是终端基于第一随机整数和预设素数所生成的;

第二处理模块,用于基于所述第一密钥基础数据生成会话密钥;

第二发送模块,用于通过所述第一路由器向所述终端发送第二密钥基础数据,以使所述终端根据所述第二密钥基础数据生成所述会话密钥,以完成所述网关与所述终端之间的密钥协商,所述第二密钥基础数据是所述网关基于第二随机整数和所述预设素数所生成的;

其中,所述终端和所述第一路由器位于第一网路中,所述网关位于第二网络中,所述第二网络为所述终端待接入的网络。

较佳的,所述第二处理模块,具体用于:

基于所述第一密钥基础数据根据如下公式生成会话密钥;

k=lmcymodp

其中,lmc为第一密钥基础数据,y为第二随机整数,p为素数,k为会话密钥。

本发明实施例还提供一种网关,包括:

第三接收模块,用于接收第一路由器的身份信息,所述身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理后所得到的;

第三处理模块,用于将所述身份信息与预设的身份信息进行比较,若所述身份信息与预设的身份信息相同,则确认第一路由器合法。

上述实施例提供的一种mesh网络中的密钥协商方法及终端,包括:终端在确认接入路由器合法后,生成第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;所述终端将所述第一密钥基础数据通过所述第一路由器发送给第二网关,以使所述第二网关基于所述第一密钥基础数据生成会话密钥;所述终端通过所述第一路由器接收所述第二网关发送的第二密钥基础数据,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;所述终端基于所述第二密钥基础数据生成所述会话密钥,以完成所述终端与第二网关之间的密钥协商;其中,所述终端、所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。可以看出,终端基于第一随机整数生成第一密钥基础数据,以由第二网关基于第一密钥基础数据生成会话密钥,而第二网关基于第二随机整数生成第二密钥基础数据,以由终端根据第二密钥基础数据生成所述会话密钥,由于在网路中传输的第一密钥基础数据是基于第一随机整数生成的,第二密钥基础数据是基于第二随机整数所生成的,因此,攻击者很难由第一密钥基础数据和第二密钥基础数据反推出第一随机整数和第二随机整数,所以,也就无法知道会话密钥,从而变相的保护了终端的隐私,提升了安全性。

上述实施例提供的一种mesh网络中的密钥协商方法及网关,包括:第二网关接收终端通过第一路由器发送的第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;所述第二网关基于所述第一密钥基础数据生成会话密钥;所述第二网关通过所述第一路由器向所述终端发送第二密钥基础数据,以使所述终端根据所述第二密钥基础数据生成所述会话密钥,以完成所述网关与所述终端之间的密钥协商,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;其中,所述终端和所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。可以看出,终端基于第一随机整数生成第一密钥基础数据,以由第二网关基于第一密钥基础数据生成会话密钥,而第二网关基于第二随机整数生成第二密钥基础数据,以由终端根据第二密钥基础数据生成所述会话密钥,由于在网路中传输的第一密钥基础数据是基于第一随机整数生成的,第二密钥基础数据是基于第二随机整数所生成的,因此,攻击者很难由第一密钥基础数据和第二密钥基础数据反推出第一随机整数和第二随机整数,所以,也就无法知道会话密钥,从而变相的保护了终端的隐私,提升了安全性。

上述实施例提供的一种mesh网络中验证路由器的方法及网关,包括:第一网关接收第一路由器的身份信息,所述身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理后所得到的;所述第一网关将所述身份信息与预设的身份信息进行比较,若所述身份信息与预设的身份信息相同,则确认第一路由器合法。可以看出,由于第一路由器的身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理以后所得到的,并不是基于第一网络的标识信息和第一路由器的标识信息直接得到的,即网络中传输的第一路由器的身份信息是对第一网络的标识信息和第一路由器的标识信息进行处理以后的,而不是将第一网络的标识信息和第一路由器的标识信息直接在网络中传输,因此,攻击者也无法得到第一路由器的真实身份,可以保护第一路由器的身份信息的隐私,从而也变相的保护了终端的身份信息,从而进一步提升了安全性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。

图1为本发明实施例提供的一种mesh网络架构示意图;

图2为本发明实施例提供的一种mesh网络中的密钥协商方法的流程示意图;

图3为本发明实施例提供的另一实施例提供的一种mesh网络中的密钥协商方法的流程示意图;

图4为本发明实施例的提供一种mesh网络中验证路由器的方法流程示意图;

图5为本发明另一实施例提供的一种mesh网络中的密钥协商方法的流程示意图;

图6为本发明实施例提供的一种终端的结构示意图;

图7为本发明实施例提供的一种网关的结构示意图;

图8为本发明另一实施例提供的一种网关的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

为了描述方便,现将整个mesh网络具体抽象成如图1所示的网络,其中,终端所处的网络为第一网络,第一网络的邻近网络为第二网络,第一路由器和第一网关位于第一网络中,第二路由器、第i路由器以及第二网关位于第二网络中,第二网络为终端即将接入的网络,即第二网路为终端即将漫游到的网络。

基于图1所示的网络架构的基础上,本发明实施例提供一种mesh网络中的密钥协商方法,如图2所示,该方法可包括:

s201、终端在确认接入路由器合法后,生成第一密钥基础数据,所述第一密钥基础数据是终端基于第一随机整数和预设素数所生成的。

s202、终端将第一密钥基础数据通过第一路由器发送给第二网关,以使第二网关基于第一基础数据生成会话密钥。

s203、终端通过第一路由器接收第二网关发送的第二密钥基础数据,第二密钥基础数据时第二网关基于第二随机整数和所述预设素数所生成的。

s204、终端基于第二密钥基础数据生成所述会话密钥,以完成终端与第二网关之间的密钥协商。

基于图1所示的网络架构的基础上,本发明实施例还提供一种mesh网络中的密钥协商方法,如图3所示,该方法可包括:

s301、第二网关接收终端通过第一路由器发送的第一密钥基础数据,第一密钥基础数据是终端基于第一随机整数和预设素数所生成的。

s302、第二网关基于第一密钥基础数据生成会话密钥。

s303、第二网关通过所述第一路由器向所述终端发送第二密钥基础数据,以使终端根据第二密钥基础数据生成所述会话密钥,以完成第二网关与所述终端之间的密钥协商,所述第二密钥基础数据是第二网关基于第二随机整数和所述预设素数所生成的。

具体的,终端在确认接入路由器合法后,可通过下列公式(1)生成第一密钥基础数据。

lmc=axmodp公式(1)

其中,x为第一随机整数,p为素数,α为p的本原根,lmc为第一密钥基础数据。

终端在根据上述公式(1)生成第一密钥基础数据后,通过第一路由器将第一密钥基础数据发送给第二网关,第二网关接收到第一密钥基础数据后,第二网关可通过下列公式(2)生成会话密钥。

k=lmcymodp公式(2)

其中,lmc为第一密钥基础数据,y为第二随机整数,p为素数,k为会话密钥。

第二网关在根据上述公式(2)生成会话密钥以后,可通过下列公式(3)生成第二密钥基础数据。

其中,y为第二随机整数,p为素数,α为p的本原根,ln2为第二密钥基础数据。

第二网关在根据上述公式(3)生成第二密钥基础数据以后,可通过第一路由器向终端发送第二密钥基础数据,终端在接收到第二网关发送的第二密钥基础数据以后,可通过下列公式(4)生成会话密钥。

其中,x为第一随机整数,p为素数,ln2为第二密钥基础数据,k为会话密钥。

根据迪菲-赫尔曼(diffie-hellman)算法原理,上述上述公式(2)中的会话密钥k与上述公式(4)中的会话密钥k是相同的,下面予以说明。

首先简述一下diffie-hellman算法的原理,设p是一个大素数,α为p的本原根,p和α作为公开的全程元素,节点a选择一个随机的保密整数xa,并将发送节点b,节点b选择一个保密的整数xb,并且节点b根据计算出共享密钥,然后节点b将发送给用户a,然后用户a根据计算出共享密钥,根据diffie-hellman算法的原理,节点a根据计算出的共享密钥与节点b根据计算出的共享密钥是相同的。

同理,本申请中,终端首先选择第一随机整数x,并将第一密钥基础数据lmc=axmodp发送给第二网关,第二网关选择一随机整数y,并根据k=lmcymodp计算出会话密钥,然后第二网关将第二密钥基础数据发送给终端,以使终端根据计算出会话密钥,因此,根据diffie-hellman算法的原理,终端计算出的会话密钥k与第二网关计算出的会话密钥k是相同的。之后,终端和第二网关在协商好会话密钥以后,可以采用该会话密钥对终端与第二网关之间的数据进行加密。

可以看出,终端在第二网关之间进行密钥协商的过程中,由于x是终端生成的随机整数,y是第二网关生成的随机整数,而在网络中传输的是lmc=axmodp和真实的密钥并不在网络中传输,因此,攻击者很难由和lmc反推出x和y,所以就无法知道会话密钥,协议前向安全。

此外,在终端与第二网络每次通信前还可选择不同的随机整数,从而能够确保密钥的新鲜性,有效地防止了重放攻击。

本发明实施例还提供一种mesh网络中验证路由器的方法,如图4所示,该方法可包括:

s401、第一网关接收第一路由器的身份信息,该身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理后所得到的。

具体的,第一路由器可根据下列公式(5)对第一网络的标识信息和第一路由器的标识信息进行处理。

其中,为第一路由器的标识信息,为第一网络的标识信息表示按比特进行异或运算,表示对第一路由器的标识信息进行哈希函数运算以后的值,该哈希函数存在如下特性:

(1)函数的输入是任意长,输出是固定长。

(2)已知x求h(x)较为容易,反之在计算上是不可行的。

(3)对任意的x≠y,使h(x)=h(y)在计算上是不可行的。

由于第一路由器采用上述公式(5)对第一网络的标识信息和第一路由器的标识信息进行了处理,攻击者也无法得知第一路由器的真实身份,可以保护第一路由器的身份信息的隐私,从而也变相的保护了终端的身份信息的隐私。

s402、第一网关将所述身份信息与预设的身份信息进行比较,若所述身份信息与预设的身份信息相同,则确认第一路由器合法。

具体的,第一路由器判断接收到的第一路由器的身份信息与预设的身份信息是否相同,若接收到的第一路由器的身份信息与预设的身份信息相同,则确认第一路由器合法。

可选的,第一路由器可根据上述公式(5)预先计算第一路由器的身份信息,待接收到第二网关发送的第一路由器的身份信息以后,判断两者是否相同,如果相同,则第一网关确认第一路由器是合法的,否则,确认第一路由器不合法。如此,可以防止第一路由器的假名在网络传输的过程中被篡改,能够保护第一路由器的隐私,从而也变相的保护了终端的隐私。

下面基于图1所示的网络架构阐述mesh网络中密钥协商协议的具体流程。

s501、终端向第一路由器发送用第一路由器的公钥加密的挑战信息c。

s502、第一路由器接收到挑战信息后,用自己的私钥解密挑战信息c,并产生时间戳t1。

s503、第一路由器用终端的公钥加密挑战信息c+1和时间戳t1,并将加密后的挑战信息c+1和时间戳t1发送给终端。

s504、终端接收到信息后解密信息,得到c+1和时间戳t1,确定第一路由器合法,并判断时间戳t1是否有效,若有效,则生成接入请求消息、第一密钥基础数据lmc、时间戳t2。

其中,接入请求消息可为与终端的身份有关的信息,例如,请求接入消息可包括终端的imsi(internationalmobilesubscriberidentificationnumber,国际移动用户识别码)等信息。

终端可根据上述公式(1)lmc=axmodp生成第一密钥基础数据lmc,其中,x为第一随机整数,p为素数,α为p的本原根,lmc为第一密钥基础数据。

当终端应用于车载系统时,x为一随机整数,p和α的数值可从交通管理部门处获取,只要保证α为p的本原根即可。

s505、终端将接入请求消息、第一密钥基础数据lmc、时间戳t2以及c+2发送给第一路由器。

s506、第一路由器接收到接入请求消息、第一密钥基础数据lmc、时间t2以及c+2后,确认终端合法,然后根据上述公式(5)计算自己的假名

其中,为第一路由器的标识信息,为第一网络的标识信息,终端的公钥pkmc,表示按比特进行异或运算,表示对第一路由器的标识信息进行哈希函数运算以后的值。

由于第一路由器使用了假名隐藏自己的身份,攻击者也无法得知第一路由器的真实身份,可以保护第一路由器的身份信息的隐私,从而也变相的保护了终端的身份信息的隐私。

s507、第一路由器将接入请求消息、第一密钥基础数据lmc、时间t2、第一网络的代理标识终端的公钥pkmc以及自己的假名进行加密后一起发送给邻近的第二路由器,通过第二路由器和其它路由器最终传到第二网关中。

第一路由器将终端的公钥pkmc发送给第二网关,以便第二网关以后再向终端第二基础密钥数据时,可采用的终端的公钥pkmc对第二基础密钥数据进行加密。

s508、第二网关接收到第一路由器发送的接入请求消息、第一密钥基础数据lmc、时间t2、第一网络的代理标识终端的公钥pkmc以及第一路由器的假名以后,用第一网络的系统公钥对第一密钥基础数据lmc、时间t2、终端的公钥pkmc以及第一路由器的假名进行加密。

s509、第二网关将加密后的第一密钥基础数据lmc、时间t2以及第一路由器的假名发送给第一网关。

可选的,第二网关还可将终端的公钥pkmc发送给第一网关,以便第一网关在与终端进行通信时,采用终端的公钥pkmc对通信数据进行加密。

s510、第一网关在接收到第二网关发送的第一密钥基础数据lmc、时间t2以及第一路由器的假名以后,第一网关对第一路由器进行验证。

具体的,第一路由器判断接收到的第一路由器的假名与预设的身份信息是否相同,若接收到的第一路由器的假名与预设的身份信息相同,则确认第一路由器合法。

可选的,第一路由器可根据上述公式(5)预先计算第一路由器的身份信息,待接收到第二网关发送的第一路由器的假名以后,判断两者是否相同,如果相同,则第一网关确认第一路由器是合法的,否则,确认第一路由器不合法。如此,可以防止第一路由器的假名在网络传输的过程中被篡改,能够保护第一路由器的隐私,从而也变相的保护了终端的隐私。

s511、第一网关在确认第一路由器合法以后,向第二网关发送第一路由器合法的消息。

s512、第二网关在接收到第一网关发送的第一路由器合法的消息以后,基于第一密钥基础数据lmc生成会话密钥k。

具体的,第二网关可根据上述公式(2)k=lmcymodp生成会话密钥,其中,lmc为第一密钥基础数据,y为第二随机整数,p为素数,k为会话密钥。

s513、第二网关通过第一路由器发送第二密钥基础数据发送给终端。

具体的,第二网关可根据上述公式(3)生成第二密钥基础数据,其中,y为第二随机整数,p为素数,α为p的本原根,ln2为第二密钥基础数据。

可选的,第二网关可采用终端的公钥pkmc对第二密钥基础数据ln2进行加密。

s514、终端根据第二密钥基础数据计算会话密钥k。

具体的,终端可根据上述公式(4)生成会话密钥k,其中,x为第一随机整数,p为素数,ln2为第二密钥基础数据,k为会话密钥。

在终端计算会话协商密钥以后,终端与第二网络之间便可以采用上述密钥进行会话通信了。

上述流程中,终端首先选择第一随机整数x,并将第一密钥基础数据lmc=axmodp发送给第二网关,第二网关选择一随机整数y,并根据k=lmcymodp计算出会话密钥,然后第二网关将第二密钥基础数据发送给终端,以使终端根据计算出会话密钥,因此,根据diffie-hellman算法的原理,终端计算出的会话密钥k与第二网关计算出的会话密钥k是相同的。之后,终端和第二网关在协商好会话密钥以后,可以采用该会话密钥对终端与第二网关之间的数据进行加密。

可以看出,终端在第二网关之间进行密钥协商的过程中,由于x是终端生成的随机整数,y是第二网关生成的随机整数,而在网络中传输的是lmc=axmodp和真实的密钥并不在网络中传输,因此,攻击者很难由和lmc反推出x和y,所以就无法知道会话密钥,协议前向安全。

此外,在会话密钥建立过程中,终端和第一路由器、第一路由器和第二网关、第二网关和第一网关之间都对彼此之间的身份进行了验证。第一路由器对第一网关的身份认证中,第一路由器和第二网关、第二网关和第一网关都用对方的公钥加密信息,这样,也就实现了相互之间的双向身份认证。攻击者若要假冒第二网络的服务器,由于他没有信任的第三方颁发的私钥而无法解密报文,也就无法冒出第二网关和终端协商的共享密钥,所以这种攻击也是不可能的,从而可以防止假冒攻击。

基于相同的技术构思,本发明实施例还提供一种终端,如图6所示,该终端可包括:

第一处理模块601,用于在确认接入路由器合法后,生成第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;

第一发送模块602,用于将所述第一密钥基础数据通过所述第一路由器发送给第二网关,以使所述第二网关基于所述第一密钥基础数据生成会话密钥;

第一接收模块603,用于通过所述第一路由器接收所述第二网关发送的第二密钥基础数据,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;

第一处理模块601,还用于基于所述第二密钥基础数据生成所述会话密钥,以完成所述终端与第二网关之间的密钥协商;

其中,所述终端、所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。

较佳的,第一处理模块601根据如下公式生成第一密钥基础数据;

lmc=axmodp

其中,x为第一随机整数,p为素数,α为p的本原根,lmc为第一密钥基础数据。

较佳的,第一发送模块602,具体用于:

通过所述第一路由器接收所述第二网关发送的根据如下公式生成的第二密钥基础数据;

第一处理模块601,具体用于:

基于所述第二密钥基础数据根据如下公式生成会话密钥;

其中,y为第二随机整数,p为素数,α为p的本原根,x为第一随机整数,k为会话密钥,ln2为第二密钥基础数据。

本发明实施例还提供一种网关,如图7所示,该网关可包括:

第二接收模块701,用于接收终端通过第一路由器发送的第一密钥基础数据,所述第一密钥基础数据是终端基于第一随机整数和预设素数所生成的;

第二处理模块702,用于基于所述第一密钥基础数据生成会话密钥;

第二发送模块703,用于通过所述第一路由器向所述终端发送第二密钥基础数据,以使所述终端根据所述第二密钥基础数据生成所述会话密钥,以完成所述网关与所述终端之间的密钥协商,所述第二密钥基础数据是所述网关基于第二随机整数和所述预设素数所生成的;

其中,所述终端和所述第一路由器位于第一网路中,所述网关位于第二网络中,所述第二网络为所述终端待接入的网络。

较佳的,第二处理模块702,具体用于:

基于所述第一密钥基础数据根据如下公式生成会话密钥;

k=lmcymodp

其中,lmc为第一密钥基础数据,y为第二随机整数,p为素数,k为会话密钥。

本发明实施例还提供一种网关,如图8所示,该网关可包括:

第三接收模块801,用于接收第一路由器的身份信息,所述身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理后所得到的;

第三处理模块802,用于将所述身份信息与预设的身份信息进行比较,若所述身份信息与预设的身份信息相同,则确认第一路由器合法。

本发明实施例中,终端可以是无线终端,无线终端可以是指向用户提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(例如,ran,radioaccessnetwork)与一个或多个核心网进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。例如,个人通信业务(pcs,personalcommunicationservice)电话、无绳电话、会话发起协议(sip)话机、无线本地环路(wll,wirelesslocalloop)站、个人数字助理(pda,personaldigitalassistant)等设备。无线终端也可以称为订户单元(subscriberunit)、订户站(subscriberstation),移动站(mobilestation)、移动台(mobile)、远程站(remotestation)、接入点(accesspoint)、远程终端(remoteterminal)、接入终端(accessterminal)、用户终端(userterminal)、用户代理(useragent)、用户设备(userdevice)、或用户装备(userequipment)。

本发明实施例适用的通信制式包括但不限于:全球移动通信系统(globalsystemofmobilecommunication,gsm)、码分多址(codedivisionmultipleaccess,cdma)is-95、码分多址(codedivisionmultipleaccess,cdma)2000、时分同步码分多址(timedivision-synchronouscodedivisionmultipleaccess,td-scdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、时分双工-长期演进(timedivisionduplexing-longtermevolution,tddlte)、频分双工-长期演进(frequencydivisionduplexing-longtermevolution,fddlte)、长期演进-增强(longtermevolution-advanced,lte-advanced)、个人手持电话系统(personalhandy-phonesystem,phs)、802.11系列协议规定的无线保真(wirelessfidelity,wifi)、全球微波互联接入(worldwideinteroperabilityformicrowaveaccess,wimax),以及未来演进的各种无线通信系统。

综上,上述实施例提供的一种mesh网络中的密钥协商方法及终端,包括:终端在确认接入路由器合法后,生成第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;所述终端将所述第一密钥基础数据通过所述第一路由器发送给第二网关,以使所述第二网关基于所述第一密钥基础数据生成会话密钥;所述终端通过所述第一路由器接收所述第二网关发送的第二密钥基础数据,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;所述终端基于所述第二密钥基础数据生成所述会话密钥,以完成所述终端与第二网关之间的密钥协商;其中,所述终端、所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。可以看出,终端基于第一随机整数生成第一密钥基础数据,以由第二网关基于第一密钥基础数据生成会话密钥,而第二网关基于第二随机整数生成第二密钥基础数据,以由终端根据第二密钥基础数据生成所述会话密钥,由于在网路中传输的第一密钥基础数据是基于第一随机整数生成的,第二密钥基础数据是基于第二随机整数所生成的,因此,攻击者很难由第一密钥基础数据和第二密钥基础数据反推出第一随机整数和第二随机整数,所以,也就无法知道会话密钥,从而变相的保护了终端的隐私,提升了安全性。

上述实施例提供的一种mesh网络中的密钥协商方法及网关,包括:第二网关接收终端通过第一路由器发送的第一密钥基础数据,所述第一密钥基础数据是所述终端基于第一随机整数和预设素数所生成的;所述第二网关基于所述第一密钥基础数据生成会话密钥;所述第二网关通过所述第一路由器向所述终端发送第二密钥基础数据,以使所述终端根据所述第二密钥基础数据生成所述会话密钥,以完成所述网关与所述终端之间的密钥协商,所述第二密钥基础数据是所述第二网关基于第二随机整数和所述预设素数所生成的;其中,所述终端和所述第一路由器位于第一网路中,所述第二网关位于第二网络中,所述第二网络为所述终端待接入的网络。可以看出,终端基于第一随机整数生成第一密钥基础数据,以由第二网关基于第一密钥基础数据生成会话密钥,而第二网关基于第二随机整数生成第二密钥基础数据,以由终端根据第二密钥基础数据生成所述会话密钥,由于在网路中传输的第一密钥基础数据是基于第一随机整数生成的,第二密钥基础数据是基于第二随机整数所生成的,因此,攻击者很难由第一密钥基础数据和第二密钥基础数据反推出第一随机整数和第二随机整数,所以,也就无法知道会话密钥,从而变相的保护了终端的隐私,提升了安全性。

上述实施例提供的一种mesh网络中验证路由器的方法及网关,包括:第一网关接收第一路由器的身份信息,所述身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理后所得到的;所述第一网关将所述身份信息与预设的身份信息进行比较,若所述身份信息与预设的身份信息相同,则确认第一路由器合法。可以看出,由于第一路由器的身份信息是第一路由器对第一网络的标识信息和第一路由器的标识信息进行处理以后所得到的,并不是基于第一网络的标识信息和第一路由器的标识信息直接得到的,即网络中传输的第一路由器的身份信息是对第一网络的标识信息和第一路由器的标识信息进行处理以后的,而不是将第一网络的标识信息和第一路由器的标识信息直接在网络中传输,因此,攻击者也无法得到第一路由器的真实身份,可以保护第一路由器的身份信息的隐私,从而也变相的保护了终端的身份信息,从而进一步提升了安全性。

本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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