带内密钥协商传输方法及传输系统与流程

文档序号:14914301发布日期:2018-07-11 00:17阅读:335来源:国知局

本发明涉及移动通信技术领域,具体涉及一种带内密钥协商传输方法及传输系统。



背景技术:

密钥协商是指两个或多个实体协商,共同建立会话密钥,任何一个参与者均对结果产生影响,不需要任何可信的第三方。密钥协商通道主要分为带外协商和带内协商,带外协商是指密钥协商数据通过控制信令通道进行传输,完成密钥协商功能;带内协商是指密钥协商数据通过媒体通道进行传输,完成密钥协商功能。带外协商时,主要由控制协议负责协商信令的可靠传输,带内协商时,由于媒体通道内数据传输没有可靠保障,需设计一种带内的可靠传输方法,确保密钥协商的可靠性。

现有的带外密钥协商由于密钥协商承载在控制信令中,控制信令的传输通道是非透传通道,传输时会经过多次路由、转发,经过的控制设备较多,导致控制信令中的密钥协商数据存在被修改、过滤的情况发生,严重影响密钥协商的成功率;现有的带内密钥协商技术在保证可靠传输时,往往只是单纯的传输一包确认一包,再传下一包,处理较简单,传输效率低,另外,对于多步骤密钥协商时,存在密钥协商传输失步问题,难以保证密钥协商两端同时协商成功。



技术实现要素:

有鉴于此,本申请提供一种端到端的带内密钥协商传输方法及传输系统,保证在无线网络中通过媒体通道进行密钥协商的可靠性。

为解决以上技术问题,本发明提供的技术方案是一种带内密钥协商传输方法,同时应用于本端和对端,包括:

本端将待传输的密钥协商消息生成第0号至第N号传输包,其中,第N-1号传输包和第N号传输包里未承载密钥协商消息,每个传输包里均包含当前包序号信息和请求包序号信息,当前包序号信息为该传输包序号,请求包序号信息初始值为0,N为大于2的正整数;

本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端收到对端发送的请求包序号信息为N的传输包时进入下一步;

本端判断当前未收到的对端发送的传输包的最小序号是否为N,若是,则进入下一步,若不是,则本端按照预设时间间隔连续发送第N号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端发送的传输包里的请求包序号信息更新到N时进入下一步;

本端按照预设时间间隔连续发送当前包序号信息为N、请求包序号信息为N的传输包到对端,直到本端收到对端发送的当前包序号信息为N、请求包序号信息为N的传输包时或者本端已发送X次当前包序号信息为N、请求包序号信息为N的传输包到对端时,本端发送和接收密钥协商消息结束,X为大于0的正整数。

优选地,带内密钥协商传输方法还包括:当本端连续收到两次或两次以上对端发送的相同请求包序号信息的传输包后,本端重新发送当前包序号信息等于该请求包序号信息的传输包到对端。

优选地,所述本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端的方法,包括:

本端以第0号传输包作为起始传输包,依次发送从起始传输包至第N-1号传输包到对端;

本端发送完第N-1号传输包后,获取当前收到的对端发送的传输包的请求包序号信息,若该请求包序号信息小于N则进入下一步,若该请求包序号信息等于N则退出;

本端将当前包序号信息等于该请求包序号信息的传输包作为起始传输包,依次发送从起始传输包到第N-1号传输包到对端,返回上一步。

优选地,所述本端将待传输的密钥协商消息生成第0号至第N号传输包的方法,包括:

本端将待传输的密钥协商消息切分为N-1个密钥协商小包;

本端生成2个未包含密钥协商消息的密钥协商控制包;

本端依次为N-1个密钥协商小包和2个密钥协商控制包封装传输协议头,形成N+1个传输包;

本端对N+1个传输包从序号0开始编号,生成第0号至第N号传输包。

优选地,所述传输协议头里包含当前包序号信息和请求包序号信息。

优选地,所述本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号的方法,包括:

本端从第0号传输包开始检查已收到的对端发送的连续传输包,直到获得已收到的对端发送的连续传输包中的最大当前包序号信息;

本端更新待发送传输包里的请求包序号信息为该最大当前包序号信息加1。

本发明还提供一种带内密钥协商传输系统,同时应用于本端和对端,其特征在于,包括:

本端传输包生成模块,用于本端将待传输的密钥协商消息生成第0号至第N号传输包,其中,第N-1号传输包和第N号传输包里未承载密钥协商消息,每个传输包里均包含当前包序号信息和请求包序号信息,当前包序号信息为该传输包序号,请求包序号信息初始值为0,N为大于2的正整数;

本端发送控制模块,用于本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端收到对端发送的请求包序号信息为N的传输包时进入本端接收控制模块;

本端接收控制模块,用于本端判断当前未收到的对端发送的传输包的最小序号是否为N,若是,则进入本端结束控制模块,若不是,则本端按照预设时间间隔连续发送第N号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端发送的传输包里的请求包序号信息更新到N时进入本端结束控制模块;

本端结束控制模块,用于本端按照预设时间间隔连续发送当前包序号信息为N、请求包序号信息为N的传输包到对端,直到本端收到对端发送的当前包序号信息为N、请求包序号信息为N的传输包时或者本端已发送X次当前包序号信息为N、请求包序号信息为N的传输包到对端时,本端发送和接收密钥协商消息结束,X为大于0的正整数。

优选地,所述本端发送控制模块还用于,当本端连续收到两次或两次以上对端发送的相同请求包序号信息的传输包后,本端重新发送当前包序号信息为该请求包序号信息的传输包到对端。

优选地,本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端的方法,包括:

本端以第0号传输包作为起始传输包,依次发送从起始传输包至第N-1号传输包到对端;

本端发送完第N-1号传输包后,获取当前收到的对端发送的传输包的请求包序号信息,若该请求包序号信息小于N则进入下一步,若该请求包序号信息等于N则退出;

本端将当前包序号信息等于该请求包序号信息的传输包作为起始传输包,依次发送从起始传输包到第N-1号传输包到对端,返回上一步。

优选地,所述本端将待传输的密钥协商消息生成第0号至第N号传输包的方法,包括:

本端将待传输的密钥协商消息切分为N-1个密钥协商小包;

本端生成2个未包含密钥协商消息的密钥协商控制包;

本端依次为N-1个密钥协商小包和2个密钥协商控制包封装传输协议头,形成N+1个传输包;

本端对N+1个传输包从序号0开始编号,生成第0号至第N号传输包。

优选地,所述传输协议头里包含当前包序号信息和请求包序号信息。

优选地,所述本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号的方法,包括:

本端从第0号传输包开始检查已收到的对端发送的连续传输包,直到获得已收到的对端发送的连续传输包中的最大当前包序号信息;

本端更新待发送传输包里的请求包序号信息为该最大当前包序号信息加1。

本申请与现有技术相比,其有益效果详细说明如下:本申请提供的带内密钥协商传输方法及传输系统,解决了现有的带内密钥协商传输方法效率低下,密钥协商失步问题,实现了密钥协商两端高效、可靠的进行密钥协商,并且保证了密钥协商的同步性,另外由于该传输方法和传输系统不依赖于网络接入方式,能够更方便的应用。

附图说明

图1为本发明实施例一带内密钥协商传输方法的流程示意图;

图2为本发明实施例二带内密钥协商传输方法的流程示意图;

图3为本发明实施例三本端和对端的带内密钥协商传输系统的结构示意图。

具体实施方式

为了使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施例对本发明作进一步的详细说明。

如图1所示,本发明实施例一提供一种带内密钥协商传输方法,该方法同时应用于本端和对端,本端和对端仅用于区分开进行密钥协商的两端,本端和对端可以互换,当该方法应用于名为对端的一端时,名为对端的一端为该方法中所指的本端,名为本端的一端为该方法中所指的对端,该方法具体包括:

S1:本端将待传输的密钥协商消息生成第0号至第N号传输包,其中,第N-1号传输包和第N号传输包里未承载密钥协商消息,每个传输包里均包含当前包序号信息和请求包序号信息,当前包序号信息为该传输包序号,请求包序号信息初始值为0,N为大于2的正整数;

S2:本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端收到对端发送的请求包序号信息为N的传输包时进入下一步;

S3:本端判断当前未收到的对端发送的传输包的最小序号是否为N,若是,则进入下一步,若不是,则本端按照预设时间间隔连续发送第N号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端发送的传输包里的请求包序号信息更新到N时进入下一步;

S4:本端按照预设时间间隔连续发送当前包序号信息为N、请求包序号信息为N的传输包到对端,直到本端收到对端发送的当前包序号信息为N、请求包序号信息为N的传输包时或者本端已发送X次当前包序号信息为N、请求包序号信息为N的传输包到对端时,本端发送和接收密钥协商消息结束,X为大于0的正整数。

其中,步骤S1中本端将待传输的密钥协商消息生成第0号至第N号传输包的方法,包括:

S11:本端将待传输的密钥协商消息切分为N-1个密钥协商小包;

S12:本端生成2个未包含密钥协商消息的密钥协商控制包;

S13:本端依次为N-1个密钥协商小包和2个控制包封装传输协议头,形成N+1个传输包;

S14:本端对N+1个传输包从序号0开始编号,生成第0号至第N号传输包。

具体的,将待传输的密钥协商消息按照预设大小或合适大小切分成多个密钥协商小包,以下以密钥协商消息长度为L,密钥协商小包长度为PL,密钥协商小包个数为M举例说明,如果[L/PL]大于0,则M=[L/PL]+1;如果[L/PL]等于0,则M=[L/PL];其中“[L/PL]”表示“L除PL取整”,总传输包数N=切分的密钥协商小包个数M+1包结尾控制包+1包结束控制包,如果[L/PL]大于0则切分的小包为[L/PL]+1,如果[L/PL]等于0则切分的小包为[L/PL],例如当L=12,PL=5,切分的小包数量为三包,[12/5]+1=3,即5,5,2;当L=12,PL=4时,切分的小包数量也为三包,[12/4]=3,即4,4,4。因为除了密钥协商数据包还有两包密钥协商控制包,因此总的传输包包数N还要加上2,最后两个传输包没有承载密钥协商数据,为两个密钥协商控制包,第N-1个包我们称为结尾控制包,第N个包我们称为结束控制包,其它包称为密钥协商数据包,为切分好的密钥协商小包和密钥协商控制包封装可靠传输协议头,形成N+1个传输包;给每个传输包进行编号,以序号0开始,定义最后一个传输包的序号为N,结尾控制包的序号为N-1,结束控制包的序号为N。

其中,传输协议头里包含当前包序号信息和请求包序号信息。具体的,请求包序号信息顾名思义就是期望对端发送的下一包序号,比如本端收到对端发送的当前包序号为0的包,本端反馈的请求包序号为1,如果本端收到对端的当前包序号为0,1,2,5,6,则本端反馈的请求包序号为3,因为3还没收到。请求包序号信息的初始值为0。

其中,步骤S2中本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端的方法,包括:

S211:本端以第0号传输包作为起始传输包,依次发送从起始传输包至第N-1号传输包到对端;

S212:本端发送完第N-1号传输包后,获取当前收到的对端发送的传输包的请求包序号信息,若该请求包序号信息小于N则进入下一步,若该请求包序号信息等于N则退出;

S213:本端将当前包序号信息等于该请求包序号信息的传输包作为起始传输包,依次发送从起始传输包到第N-1号传输包到对端,返回上一步。

具体的,可以启动超时定时器,依次发送当前包序号为0、1、2……N-1的传输包。

其中,步骤S2中,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号的方法,包括:

S221:本端从第0号传输包开始检查已收到的对端发送的连续传输包,直到获得已收到的对端发送的连续传输包中的最大当前包序号信息;

S222:本端更新待发送传输包里的请求包序号信息为该最大当前包序号信息加1。

具体的,当本端收到对端发送的连续包最大序号为RSEQ时,本端请求包序号更新为RSEQ+1,RSEQ是指接收到的对端发送的连续包最大序号,例如本端收到对端发送传输包的当前包序号为0,1,2,5,6,则RSEQ=2,那么本端发送的请求包序号信息就应该是RSEQ+1=3。

其中,步骤S4中密钥协商传输过程中存在3个关键状态,本端发送成功状态、本端接收成功状态,对端发送成功状态。

本端发送成功状态:当本端收到对端发送的请求包序号信息为N的传输包时,即说明本端发送的第0号至第N-1号传输包都被对端确认收到,表明本端已经成功发送完所有数据包到对端。例如,本端是通过收到对端的请求包序号信息来确认对端是否收齐数据包,例如总传输包包数为10包,根据前面的分析,当前包序号信息为0到7的包为密钥协商数据包,当前包序号信息为8的包为结尾控制包,当前包序号信息为9的包为结束控制包,当收到对端的请求包序号信息为9时,表明对端已经收完当前包序号信息为0至8的传输包。

本端接收成功状态:当本端收到对端发送的结尾控制包及之前的数据包时,本端发送请求包序号信息为N的传输包到对端时表明本端已经成功接收完所有对端发送的数据包。本端已收到对端发送的当前包序号信息为0至N-1的传输包时,代表本端已经成功接收完所有对端发送的数据包。

对端发送成功状态:当本端收到对端发送的当前包序号信息为N、请求包序号信息为N的传输包时,或者本端已发送X次当前包序号信息为N、请求包序号信息为N的传输包到对端时(该实施例中X设置为6次),则代表对端发送成功所有的数据包。(1)当本端收到对端发送的结束控制包说明对端已经确认收到了本端发送的结尾控制包,对端发送成功;(2)当本端发送结束控制包若干次,仍然没有收到对端发送的结束控制包,很可能由于结束控制包只发送一次而丢失,这时同样认为对端已发送成功,这种情况下只要本端重传的结束控制包有一包到达对端,就可以保证流程继续正常进行,对端发送成功。

上面的3个关键状态的流转顺序由当时网络情况决定,当3个关键状态都已经满足时,可以确定本端和对端都已经收齐密钥协商消息,此时将密钥协商消息提交给密钥协商模块处理,本端和对端都可以进入发送和接收下一条密钥协商消息的状态,仍然按上述步骤进行。

如图2所示,本发明实施例二提供另一种带内密钥协商传输方法,该方法与实施例一比较,区别在于该方法在步骤S2中,还包括:当本端连续收到两次或两次以上对端发送的相同请求包序号信息的传输包后,本端重新发送当前包序号信息为该请求包序号信息的传输包到对端。

具体的,当在网络传输中发生丢包时,本端将连续收到两次对端发送的相同请求包序号的传输包,则此时本端重传当前包序号等于该请求包序号的传输包。例如,对端先收到当前包序号为0,1,2的包,再收到当前包序号为4的包,由于传输包的传输过程有延时,此时发送的传输包的请求包序号为3,再收到当前包序号为5的包,此时发送的传输包的请求包序号仍然为3;本端端收到两次相同的请求包序号3的传输包时就知道可能该包已经丢失,本端立即重新发送当前包序号为3的传输包到对端。

如图3所示,本发明实施例三提供一种带内密钥协商传输系统,同时应用于本端和对端,本端和对端仅用于区分开进行密钥协商的两端,本端和对端可以互换,本端和对端均包含相同的密钥协商传输系统,该系统具体包括:

本端传输包生成模块,用于本端将待传输的密钥协商消息生成第0号至第N号传输包,其中,第N-1号传输包和第N号传输包里未承载密钥协商消息,每个传输包里均包含当前包序号信息和请求包序号信息,当前包序号信息为该传输包序号,请求包序号信息初始值为0,N为大于2的正整数。

本端发送控制模块,用于本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端收到对端发送的请求包序号信息为N的传输包时进入本端接收控制模块。

本端接收控制模块,用于本端判断当前未收到的对端发送的传输包的最小序号是否为N,若是,则进入本端结束控制模块,若不是,则本端按照预设时间间隔连续发送第N号传输包到对端,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号,当本端发送的传输包里的请求包序号信息更新到N时进入本端结束控制模块。

本端结束控制模块,用于本端按照预设时间间隔连续发送当前包序号信息为N、请求包序号信息为N的传输包到对端,直到本端收到对端发送的当前包序号信息为N、请求包序号信息为N的传输包时或者本端已发送X次当前包序号信息为N、请求包序号信息为N的传输包到对端时,本端发送和接收密钥协商消息结束,X为大于0的正整数。

其中,本端发送控制模块还用于,当本端连续收到两次或两次以上对端发送的相同请求包序号信息的传输包后,本端重新发送当前包序号信息为该请求包序号信息的传输包到对端。

其中,本端将待传输的密钥协商消息生成第0号至第N号传输包的方法,包括:

本端将待传输的密钥协商消息切分为N-1个密钥协商小包;

本端生成2个未包含密钥协商消息的密钥协商控制包;

本端依次为N-1个密钥协商小包和2个密钥协商控制包封装传输协议头,形成N+1个传输包;

本端对N+1个传输包从序号0开始编号,生成第0号至第N号传输包。

其中,传输协议头里包含当前包序号信息和请求包序号信息。

其中,本端按照预设时间间隔循环发送第0号至第N-1号传输包到对端的方法,包括:

本端以第0号传输包作为起始传输包,依次发送从起始传输包至第N-1号传输包到对端;

本端发送完第N-1号传输包后,获取当前收到的对端发送的传输包的请求包序号信息,若该请求包序号信息小于N则进入下一步,若该请求包序号信息等于N则退出;

本端将当前包序号信息等于该请求包序号信息的传输包作为起始传输包,依次发送从起始传输包到第N-1号传输包到对端,返回上一步。

其中,本端发送每个传输包前更新该传输包里的请求包序号信息为当前未收到的对端发送的传输包的最小序号的方法,包括:

本端从第0号传输包开始检查已收到的对端发送的连续传输包,直到获得已收到的对端发送的连续传输包中的最大当前包序号信息;

本端更新待发送传输包里的请求包序号信息为该最大当前包序号信息加1。

上述带内密钥协商传输方法及带内密钥协商传输系统具有带内密钥协商传输高效率,高可靠性和高同步性的优点。

以上仅是本发明的优选实施方式,应当指出的是,上述优选实施方式不应视为对本发明的限制,本发明的保护范围应当以权利要求所限定的范围为准。对于本技术领域的普通技术人员来说,在不脱离本发明的精神和范围内,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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