数据安全传输方法及其装置、系统、列车与流程

文档序号:16734504发布日期:2019-01-28 12:31阅读:199来源:国知局
数据安全传输方法及其装置、系统、列车与流程

本发明涉及车辆工程技术领域,尤其涉及一种数据安全传输方法及其装置、系统、列车。



背景技术:

随着轨道列车的快速发展,列车业务也越来越多样化。目前,列车业务可以采用通过现有网络来传输数据,但是现有网络的安全性并不能满足列车对数据安全性的要求。

为了防止黑客或者其他人员随意篡改、非法接入等操作影响列车的正常运行,而导致行车安全,因此,安全传输列车数据成为亟待解决的问题。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本发明的第一个目的在于提出一种数据安全传输方法,以实现安全地传输列车上的数据以解决现有技术中列车数据的传输过程中存在被窃取或者篡改等问题。

本发明的第二个目的在于提出另一种数据安全传输方法。

本发明的第三个目的在于提出一种数据源节点。

本发明的第四个目的在于提出一种数据宿节点。

本发明的第五个目的在于提出一种数据安全传输系统。

本发明的第六个目的在于提出一种列车。

为达上述目的,本发明第一方面实施例提出了一种数据安全传输方法,包括:

获取源数据标识符;

根据待传输的实际数据以及第一源数据校验信息,计算第二源数据校验信息,其中,所述第二源数据校验信息为安全数据校验码;

将所述源数据标识符、待传输的实际数据、所述第一源数据校验信息以及所述安全数据校验码,封装在数据包中形成安全数据包;

将所述安全数据包发送给数据宿节点,由数据宿节点对所述安全数据包进行校验。

本发明实施例提供的数据安全传输方法,通过在数据包中增加源数据标识符、第一源数据校验信息以及安全数据校验码,来改变数据包的格式,以便于增加数据包的安全性,并且将上述信息携带在数据包中发送数据宿节点,由数据宿节点根据上述信息对数据包进行安全校验,提高了数据传输的安全性。

为达上述目的,本发明第二方面实施例提出了一种数据安全传输方法,包括:

接收由数据源节点发送的安全数据包;

根据所述安全数据包中的源数据标识符对所述安全数据包进行数据源校验;

当所述数据源校验成功后,根据所述安全数据包中的安全数据校验码对所述安全数据包中的实际数据进行数据内容校验;

当所述数据内容校验成功后,根据所述安全数据包中的第一源数据校验信息对所述安全数据包进行完整性校验;

当所述完整性校验成功后,将所述安全数据包中的实际数据使用到对应的应用中。

本发明实施例提供的数据安全传输方法,通过在安全数据包中携带有源数据标识符、第一源数据校验信息以及安全数据校验码,当数据宿节点接收到安全数据包后,数据宿节点采用三层校验机制,来校验安全数据包的安全性或者合法性,即数据宿节点分别根据上述信息对全数据包进行安全校验,提高了数据传输的安全性。

为达上述目的,本发明第三方面实施例提出了一种数据源节点,包括:

获取模块,用于获取源数据标识符;

计算模块,用于根据待传输的实际数据以及第一源数据校验信息,计算第二源数据校验信息,其中,所述第二源数据校验信息为安全数据校验码;

封装模块,用于将所述源数据标识符、待传输的实际数据、所述第一源数据校验信息以及所述安全数据校验码,封装在数据包中形成安全数据包;

发送模块,用于将所述安全数据包发送给数据宿节点,由数据宿节点对所述安全数据包进行校验。

本发明实施例提供的数据源节点,通过在数据包中增加源数据标识符、第一源数据校验信息以及安全数据校验码,来改变数据包的格式,以便于增加数据包的安全性,并且将上述信息携带在数据包中发送数据宿节点,由数据宿节点根据上述信息对数据包进行安全校验,提高了数据传输的安全性。

为达上述目的,本发明第四方面实施例提出了一种数据宿节点,包括:

接收模块,用于接收由数据源节点发送的安全数据包;

第一校验模块,用于根据所述安全数据包中的源数据标识符对所述安全数据包进行数据源校验;

第二校验模块,用于当所述数据源校验成功后,根据所述安全数据包中的安全数据校验码对所述安全数据包中的实际数据进行数据内容校验;

第三校验模块,用于当所述数据内容校验成功后,根据所述安全数据包中的第一源数据校验信息对所述安全数据包进行完整性校验;

使用模块,用于当所述完整性校验成功后,将所述安全数据包中的实际数据使用到对应的应用中。

本发明实施例提供的数据宿节点,通过在安全数据包中携带有源数据标识符、第一源数据校验信息以及安全数据校验码,当数据宿节点接收到安全数据包后,数据宿节点采用三层校验机制,来校验安全数据包的安全性或者合法性,即数据宿节点分别根据上述信息对全数据包进行安全校验,提高了数据传输的安全性。

为达上述目的,本发明第五方面实施例提出了一种数据安全传输系统,包括:本发明第三方面实施例所述的数据源节点和本发明第四方面实施例所述的数据宿节点。

为达上述目的,本发明第六方面实施例提出了一种列车,包括:多个列车组,其中,列车组上设置有本发明第三方面实施例所述的数据源节点和本发明第四方面实施例所述的数据宿节点。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明实施例提供的一种数据安全传输方法的流程示意图;

图2为本发明实施例提供的另一种数据安全传输方法的流程示意图;

图3为本发明实施例提供的另一种数据安全传输方法的流程示意图;

图4为本发明实施例提供的一种数据源节点的结构示意图;

图5为本发明实施例提供的另一种数据源节点的结构示意图;

图6为本发明实施例提供的一种数据宿节点的结构示意图;

图7为本发明实施例提供的另一种数据宿节点的结构示意图;

图8为本发明实施例提供的一种数据安全传输系统的结构示意图;

图9为本发明实施例提供的一种列车的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的数据安全传输方法及其装置、系统、列车。

图1为本发明实施例提出的数据安全传输方法的流程示意图。本实施例提供的数据安全传输方法可以用于列车上,该列车由一个或者多个列车组组成,每个列车组由一节或者多节车厢节点组成。本实施例提供的数据安全传输方法的执行主体可以为列车组上的数据源节点。

如图1所示,该数据安全传输方法包括以下步骤:

s101,获取待传输的实际数据的源数据标识符。

本实施例中,当数据源节点需要传输数据时,可以获取在数据宿节点用于对该数据的数据包进行数据源校验的源数据标识符。具体地,获取数据源节点的安全消息标识符、安全传输协议版本号以及列车组标识符以及列车拓扑计数器的计数值。进一步地,对安全消息标识符、安全传输协议版本号、列车组标识符以及列车拓扑计数器的计数值进行循环冗余计算,得到源数据标识符,该源数据标识符为一个循环冗余码。例如,该列车拓扑计数器的计数值的初始值可以为“0xffffffff”。其中,源数据标识符用于由数据源宿节点对安全数据包进行数据源校验;所述安全数据包由数据源节点按照预设的格式封装形成的,由数据源节点发送给数据宿节点。

其中,安全消息标识符为用户定义的安全消息标识符,每个列车组的安全消息标识符是唯一。进一步地,不同安全消息类型对应的安全消息标识符也不相同,可以根据实际情况由用户自行定义。列车组标识符为实际列车组的通用唯一识别码(universallyuniqueidentifier,简称uuid),不同的列车编组对应不同的列车标识符。列车拓扑计数器根据列车的编组特征生成计数值,不同编组对应的计数值不同。例如由三节列车组的列车对应的列车拓扑计数器的计数值,与四节列车组的列车对应的列车拓扑计数器的计数值不同。其中,三节列车组为每节列车组由三节车厢组成,而四节每节列车组由每个列车组由四节车厢组成。其中,只有安全消息标识符是需要预配置的。

实际应用中,列车上需要传输的数据可以分为常规数据和安全数据,当待发送的数据为常规数据时,可以按照现有的传输方式进行传输,列车拓扑计数器的计数值可以设置为0。

s102,根据待传输的实际数据以及第一源数据校验信息,计算第二源数据校验信息,其中,第二源数据校验信息为安全数据校验码。

进一步地,在发送之前还需要计算用于在数据宿节点进行数据内容校验的第二源数据校验信息,该第二源数据校验信息为安全数据校验码。该安全数据校验码为由数据宿节点对安全数据包进行数据内容校验的其中,数据宿节点可以根据该安全数据校验码对接收到的安全数据包进行数据内容的校验。

第二源数据校验信息是根据待传输的实际数据以及第一源数据校验信息计算的得到的。具体地,从待传输的实际数据的第一位数值开始直到第一源数据校验信息的最后一位,进行循环冗余计算,得到该第二源数据校验信息。本实施例中,第一源数据校验信息包括数据协议版本号和数据序列计数器的计数值。第一源数据用于由数据宿节点对安全数据包的完整性进行校验。

其中,数据协议版本号用于标识数据源节点当前用于封装实际数据的数据协议的版本。数据序列计数器的计数值在每次生成、存储新的安全数据时就会增加。该数据序列计数器的计数值呈递增趋势。

s103,将源数据标识符、实际数据、第一源数据校验信息以及安全数据校验码,封装在数据包中形成安全数据包。

在获取到源数据标识符、实际数据、第一源数据校验信息以及安全数据校验码之后,可以按照要求的封装格式,将上述信息封装在数据包中,形成一个待发送的安全数据包。

s104,将安全数据包发送给数据宿节点,由数据宿节点对安全数据包进行校验。

在形成了安全数据包之后,将安全数据包发送给数据宿节点,数据宿节点接收到安全数据包后,可以对该安全数据包进行校验。

本实施例中,数据源节点向数据宿节点发送数据时,需要在预设的发送周期内将安全数据包发送给数据宿节点。进一步地,数据宿节点在预设的接收周期内接收该安全数据包,其中,接收周期为发送周期的n倍,n大于等于1。一般情况下,n取5,即安全数据包的接收周期为5倍的发送周期。

可选地,本实施例中的列车具有自动编组功能,可以对该列车的编组进行监测,由于不同编组的列车组对应的列车拓扑计数器不同,因此当监测到该列车的编组发生变化时,需要调整该列车的列车拓扑计数器。

本实施例提供的数据安全传输方法,通过在数据包中增加源数据标识符、第一源数据校验信息以及安全数据校验码,来改变数据包的格式,以便于增加数据包的安全性,并且将上述信息携带在数据包中发送数据宿节点,由数据宿节点根据上述信息对数据包进行安全校验,提高了数据传输的安全性。

图2为本发明实施例提供的另一种数据安全传输方法的流程示意图。本实施例提供的数据安全传输方法可以用于列车上,该列车由一个或者多个列车组组成,每个列车组由一节或者多节车厢节点组成。本实施例提供的数据安全传输方法的执行主体可以为列车组上的数据宿节点。

如图2所示,该数据安全传输方法包括以下步骤:

s201,接收由数据源节点发送的安全数据包。

本实施例中,该安全数据包由数据源节点按照预设的格式进行封装得到,数据源节点向数据宿节点发送安全数据包,数据宿节点可以接收到该安全数据包。关于安全数据包中包括的内容以及封装可参见上述实施例中相关内容的记载,此处不再赘述。

s202,根据安全数据包中的源数据标识符对安全数据包进行数据源校验。

本实施例中,数据宿节点可以从安全数据包中提取出源数据标识符,例如,可以按照源数据标识符的起始位置以及源数据标识符占用的比特数,进而得到源数据标识符。

进一步地,获取数据宿节点本地存储的安全消息标识符、安全传输协议、数据源节点所在列车组的列车组标识符以及数据宿节点列车组的列车拓扑计数器的计数值。数据宿节点可以对安全消息标识符、安全传输协议、数据源节点所在列车组的列车组标识符以及数据宿节点列车组的列车拓扑计数器的计数值进行循环冗余计算,得到第一循环冗余码。

进一步地,在获取到第一循环冗余码和源数据标识符之后,可以将第一循环冗余码和源数据标识符进行比较,如果第一循环冗余码与源数据标识符一致,则可以确定数据源校验成功。如果两者不一致,说明数据源校验不成功,该安全数据包为存在风险的数据包。

s203,当数据源校验成功后,根据安全数据包中的安全数据校验码对安全数据包中的实际数据进行数据内容校验。

本实施例中,当数据源校验成功后,由于数据宿节点设置有三层校验机制,在校验完数据源之后,还需要继续对实际数据内容进行校验。

具体地,首先确定安全数据包中的实际数据的起点位置,其中,该起点位置为源数据标识符末位的下一位,确定安全数据包中第一源数据校验信息的终止位置。从实际数据的起点位置对应的第一位数值开始,直到终止位置对应的最后一位数值进行循环冗余计算,得到第二循环冗余码。进一步地,将第二循环冗余码与安全数据校验码进行比较。如果第二循环冗余码与安全数据校验码一致,则确定数据内容校验成功。如果第二循环冗余码与安全数据校验码不一致,则确定数据内容校验不成功。

作为一种可能地实现方式,在获取到第二循环冗余码之后,还可以将此次计算出的循环冗余码与上次接收安全数据包时计算出的第二循环冗余码进行比较,如果第二循环冗余码与上次接收安全数据包时计算出的第二循环冗余码一致,则可以判定此次接收到安全数据包与上次接收到的安全数据包重复。也就是说,此次安全数据包为重复安全数据包。

s204,当数据内容校验成功后,根据安全数据包中的第一源数据校验信息对安全数据包进行完整性校验。

本实施例中,当数据内容校验成功后,由于数据宿节点设置有三层校验机制,在校验完数据内容之后,还需要继续对数据的完整性行校验。

具体地,从安全数据包中提取数据协议版本号,将提取的数据协议版本号与数据宿节点本地存储的数据协议版本号进行比较,如果两个数据协议版本号一致,则从安全数据包中提取数据序列计数器的计数值,将提取的数据序列计数器的计数值与数据宿节点上次存储的数据序列计数器的计数值进行比较,如果提取的数据序列计数器的计数值大于等于上次存储的数据序列计数器的计数值且两者的差值在预设的范围内,则确定完整性校验成功。如果提取的数据序列计数器的计数值小于上次存储的数据序列计数器的计数值或者两者的差值在预设的范围内,则确定出完整性校验不成功。

本实施例中,当数据内容校验成功后,如果安全数据包的提取的数据协议版本号与数据宿节点本地存储的数据协议版本号一致,则可以确定该安全数据包为一个正确安全数据包,但是为了保证该安全数据包为一个能够使用的数据包,则好需要将提取的数据序列计数器的计数值与上次存储的数据序列计数器的计数值比较,如果提取的数据序列计数器的计数值小于上次存储的数据序列计数器的计数值或者两者的差值未在预设的范围内,可以将安全数据包确定为一个正确但无效的数据包。

s205,当完整性校验成功后,将安全数据包中的实际数据使用到对应的应用中。

进一步地,当接收到的安全数据包的完整性校验成功后,可以说明该安全数据包为一个新的安全数据包,进而可以将安全数据包中的实际数据使用到对应的应用中。

可选地,数据宿节点在接收到安全数据包之后,还可以判断该安全数据包是否为初始安全数据包,例如,可以对对接收到的安全数据包的个数进行计数,当第一次接收到正确的安全数据包时,计数值才会计数为1。一般情况下在下述场景下,才会将安全数据包识别为初始的安全数据包:非重复的刚上电或复位后收到的第一个正确的安全数据包、由冗余数据源节点发送的第一个正确的安全数据包,或者通信损耗后收到的第一个正确的安全数据包。

在确出初始的安全数据包可以用于实现数据源节点和数据宿节点的同步,设置本次初始安全数据包的列车数据序列拓扑计数器和源数据标识符,并在此时启动一个接收安全数据包的接收周期的定时器,在这个接收周期内接收到下一个安全数据包,在该周期内接到的安全数据包才算是新的安全数据包,在接收到新的安全数据包后就会进行三层校验机制,当满足三层校验机制时,该新的安全数据包才是可以应用在应用中的安全数据包。

可选地,本实施例中的列车具有自动编组功能,可以对该列车的编组进行监测,由于不同编组的列车组对应的列车拓扑计数器不同,因此当监测到该列车的编组发生变化时,需要调整该列车的列车拓扑计数器。

本发明实施例提供的数据安全传输方法,通过在安全数据包中携带有源数据标识符、第一源数据校验信息以及安全数据校验码,当数据宿节点接收到安全数据包后,数据宿节点采用三层校验机制,来校验安全数据包的安全性或者合法性,即数据宿节点分别根据上述信息对全数据包进行安全校验,提高了数据传输的安全性。

图3为本发明实施例提供的另一种数据安全传输方法的流程示意图。本实施例中,以数据源节点和数据宿节点之间的数据传输的过程对上述实施例中的数据安全传输方法进行解释说明。其中,数据源节点为安全数据的发送方,数据宿节点为安全数据的接收方,数据源节点和数据宿节点是相对于安全数据传输方向而定的,一个数据源节点可对应一个或多个数据宿节点。当数据传输变化时,数据源节点与数据宿节点的角色也会发生变化,即数据源节点变为数据宿节点,而数据宿节点变成数据源节点。本实施例中,以列车组x上的设备a为数据源节点,列车组y上的设备b为数据宿节点为例进行介绍。

如图3所示,该数据安全传输方法包括以下步骤:

s301,设备a按照预设的格式对数据进行封装,形成安全数据包。

其中,设备a和设备b的安全传输协议版本一致,设备a和设备b的安全消息标识符为0x00002048。发送安全数据包的周期和接收安全数据包的周期配置为接收安全数据包的周期为5倍发送安全数据包的周期。

具体地,将安全消息标识符为0x00002048、设备a的安全协议传输版本号、列车组x的列车标识符及当前列车编组对应的列车拓扑计数器,从计数器的初始值为“0xffffffff”进行计算循环冗余码,然后将计算出的该循环冗余码作为源数据标识符封装到数据包中。进一步地,从实际数据的第一个数值至第一源数据校验信息的最后一位的数值,进行循环冗余计算,得到安全数据校验码。

在获取到源数据标识符、实际数据以及安全数据校验码之后,可以按照表1的格式对上述数据进行封装。表1中安全数据包中包括源数据单元、实际数据单元、源数据校验信息单元,其中,源数据单元中包括:安全消息标识符、安全传输协议版本号、列车组标识符以及列车拓扑计数器的计数值,以及基于上述信息计算出的源数据标识符。数据单元中包括待传输的实际数据。源数据校验单元包括数据协议版本号和数据序列计数器的计数值,以及安全数据校验码。其中,数据协议版本号和数据序列计数器的计数值为第一源校验信息,而安全数据校验码为第二源校验信息。关于安全数据校验码的生成过程可参见上述实施例中相关内容的记载,此处不再赘述。

表1

s302,设备a发送封安全数据包。

s303,设备b接收安全数据包并触发三层校验机制。

设备b对安全数据包进行数据源校验、数据内容校验以及完整性校验。

s304,设备b进行第一层数据源校验。

设备b将对应的安全消息标识符、设备b的安全协议传输版本号、对应列车组x的列车标识符以及当前列车组y的列车拓扑计数器的计数值,从计数值的初始值为“0xffffffff”进行计算,得到第一循环冗余码。在获取到第一循环冗余之后,可以将第一循环冗余码与源数据标识符进行比较,以判断数据源校验是否成功,关于数据源校验的具体过程,可参见上述实施例中相关内容的记载,此处不再赘述。

s305,数据源校验是否成功,如果成功则执行s306,否则执行s311。

s306,设备b进行第二层数据内容校验。

设备b从实际数据的第一个数值即安全数据包中源数据标识符后的第一个数据到第一源校验信息中最后一位数值,进行循环冗余码计算,得到第二循环冗余码。在获取到第二循环冗余码之后,将第二循环冗余码与安全数据校验码进行比较,以判断数据内容校验是否成功,关于数据内容校验的具体过程,可参见上述实施例中相关内容的记载,此处不再赘述。

s307,数据内容校验是否成功,如果成功则执行s308,否则执行s311。

s308,设备b进行第三层完整性校验。

s309,完整性校验是否成功,如果成功则执行310,否则执行s311。

本实施例中,通过完整性校验,可以筛选掉错误的安全数据包。将从安全数据包中提取出的数据协议版本号与设备b存储的数据协议版本号进行比较,如果两者一致,进一步地比较从安全数据包中提出的数据序列计数器的计数值,将该计数值与上次存储的数据序列计数器的计数值进行比较,如果提取的数据序列计数器的计数值大于等于上次存储的所述数据序列计数器的计数值且两者的差值在预设的范围内,则确定完整性校验成功。而如果从安全数据包中提取出的数据协议版本号与设备b存储的数据协议版本号不一致,或者提取的数据序列计数器的计数值小于上次存储的所述数据序列计数器的计数值,或者两者的差值在预设的范围内,则执行s311。

s310,将安全数据包应用到对应的应用中。

经过三层校验机制的校验,表明该数据包为安全数据包,可以将安全数据包中的实际数据内容用于相应的应用中。

s311,丢弃安全数据包。

本实施例中,当列车的编组变化时,设备a以预设的格式封装安全数据包的过程中,安全消息标识符为0x00002048、设备a的安全协议传输版本、列车组x的列车标识符均未变化,由于不同的编组对应不通过的列车拓扑计数器,因此,当前列车编组对应的列车拓扑计数器会发生改变,从而计算出源数据标识符也会发生改变。相应地,处于列车组y上的设备b也会根据实际列车的编组重新变化列车拓扑计数器,计算出第一循环冗余码也会发生变化,从而可以实现当编组变化时自适应地改变校验值,保证数据的安全与可靠。

本发明实施例提供的数据安全传输方法,通过在安全数据包中携带有源数据标识符、第一源数据校验信息以及安全数据校验码,当数据宿节点接收到安全数据包后,数据宿节点采用三层校验机制,来校验安全数据包的安全性或者合法性,即数据宿节点分别根据上述信息对全数据包进行安全校验,提高了数据传输的安全性。

图4为本发明实施例提供的一种数据源节点的结构示意图。如图4所示,该数据源节点包括:获取模块41、计算模块42、封装模块43和发送模块44。

其中,获取模块41,用于获取待传输的实际数据的源数据标识符。

计算模块42,用于根据所述实际数据以及第一源数据校验信息,计算第二源数据校验信息,其中,所述第二源数据校验信息为安全数据校验码。

封装模块43,用于将所述源数据标识符、所述实际数据、所述第一源数据校验信息以及所述安全数据校验码,封装在数据包中形成安全数据包。

发送模块44,用于将所述安全数据包发送给数据宿节点,由数据宿节点对所述安全数据包进行校验。

在图4的基础之上,图5为本发明实施例提供的另一种数据源节点的结构示意图。如图5所示,获取模块41包括:

获取单元411,用于获取数据源节点的安全消息标识符、安全传输协议版本号以及列车组标识符以及列车拓扑计数器的计数值。

计算单元412,用于对所述安全消息标识符、所述安全传输协议版本号、所述列车组标识符以及所述列车拓扑计数器的计数值进行循环冗余计算,得到所述源数据标识符。

进一步地,所述计算模块42,具体用于从所述实际数据的第一位数值开始直到所述第一源数据校验信息的最后一位,进行循环冗余计算,得到所述第二源数据校验信息;其中,所述第一源数据校验信息包括数据协议版本号和数据序列计数器的计数值。

进一步地,数据源节点还包括:监测模块45和调整模块46。

监测模块45,用于对所述列车的编组进行监测。

调整模块46,用于当监测到所述列车的编组发生变化时,调整所述列车拓扑计数器。

本实施例提供的数据安全传输方法,通过在数据包中增加源数据标识符、第一源数据校验信息以及安全数据校验码,来改变数据包的格式,以便于增加数据包的安全性,并且将上述信息携带在数据包中发送数据宿节点,由数据宿节点根据上述信息对数据包进行安全校验,提高了数据传输的安全性。

图6为本发明实施例提供的一种数据宿节点的结构示意图。如图6所示,该数据宿节点包括:接收模块61、第一校验模块62、第二校验模块63、第三校验模块64和使用模块65。

接收模块61,用于接收由数据源节点发送的安全数据包。

第一校验模块62,用于根据所述安全数据包中的源数据标识符对所述安全数据包进行数据源校验。

第二校验模块63,用于当所述数据源校验成功后,根据所述安全数据包中的安全数据校验码对所述安全数据包中的实际数据进行数据内容校验。

第三校验模块64,用于当所述数据内容校验成功后,根据所述安全数据包中的第一源数据校验信息对所述安全数据包进行完整性校验。

使用模块65,用于当所述完整性校验成功后,将所述安全数据包中的实际数据使用到对应的应用中。

图6的基础之上,图7为本发明实施例提供的另一种数据宿节点的结构示意图。如图7所示,该数据宿节点还包括:第一判断模块66、第二判断模块67、监测模块68和调整模块69。

其中,第一校验模块62,包括:

第一提取单元,用于从所述安全数据包中提取源数据标识符。

第一获取单元,用于获取数据宿节点本地存储的所述安全消息标识符、安全传输协议、所述数据源节点所在列车组的列车组标识符以及所述数据宿节点所在列车组的列车拓扑计数器的计数值。

第一计算单元,用于对所述安全消息标识符、所述安全传输协议、所述列车组标识符以及所述列车拓扑计数器的计数值进行循环冗余计算,得到第一循环冗余码。

第一比较单元,用于将所述第一循环冗余码与所述源数据标识符进行比较。

第一确定单元,用于如果所述第一循环冗余码与所述源数据标识符一致,则确定数据源校验成功。

其中,第二校验模块63,包括:

位置确定单元,用于确定所述安全数据包中的实际数据的起点位置;其中,所述起点位置为所述源数据标识符末位的下一位;以及确定所述安全数据包中第一源数据校验信息的终止位置。

第二计算单元,用于从所述实际数据的所述起点位置对应的第一位数值开始,直到所述终止位置对应的最后一位数值进行循环冗余计算,得到第二循环冗余码。

第二比较单元,用于将所述第二循环冗余码与所述安全数据校验码进行比较。

第二确定单元,用于如果所述第二循环冗余码与所述安全数据校验码一致,则确定数据内容校验成功。

进一步地,第一判断模块66,用于将所述第二循环冗余码与上次接收安全数据包时计算出的第二循环冗余码进行比较,以及如果所述第二循环冗余码与上次接收安全数据包时计算出的第二循环冗余码一致,则判定此次接收到所述安全数据包与上次接收到的所述安全数据包重复。

进一步地,所述第三校验模块64,包括:

第二提取单元,用于从所述安全数据包中提取所述数据协议版本号。

第三比较单元,用于将提取的所述数据协议版本号与所述数据宿节点本地存储的数据协议版本号进行比较。

第三提取单元,用于如果两个数据协议版本号一致,则从所述安全数据包中提取数据序列计数器的计数值。

第四比较单元,用于将提取的所述数据序列计数器的计数值与所述数据宿节点上次存储的所述数据序列计数器的计数值进行比较。

第三确定单元,用于如果提取的所述数据序列计数器的计数值大于等于所述上次存储的所述数据序列计数器的计数值且两者的差值在预设的范围内,则确定完整性校验成功。

进一步地,第二判断模块67,用于判断所述安全数据包是否为初始的安全数据包,以及如果所述安全数据包为所述初始安全数据包,则对所述数据宿节点进行同步配置。

进一步地,监测模块68,用于对所述列车的编组进行监测。

调整模块69,用于当监测到所述列车的编组发生变化时,调整所述列车拓扑计数器。

本发明实施例提供的数据安全传输方法,通过在安全数据包中携带有源数据标识符、第一源数据校验信息以及安全数据校验码,当数据宿节点接收到安全数据包后,数据宿节点采用三层校验机制,来校验安全数据包的安全性或者合法性,即数据宿节点分别根据上述信息对全数据包进行安全校验,提高了数据传输的安全性。

图8为本发明实施例提供的一种数据安全传输系统的结构示意图。如图8所示,该数据安全传输系统包括:数据源节点1和数据宿节点2。关于数据源节点1和数据宿节点2的介绍可参见上述实施例中相关内容的记载,此处不再赘述。

图9为本发明实施例提供的一种列车的结构示意图。如图9所示,该列车上包括多个列车组,每个列车组由多个节车厢组成。每个列车组中设置有数据源节点1和数据宿节点2。关于数据源节点1和数据宿节点2的介绍可参见上述实施例中相关内容的记载,此处不再赘述。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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