用于防篡改地传输控制数据的方法和系统与流程

文档序号:19713656发布日期:2020-01-17 19:21阅读:174来源:国知局
用于防篡改地传输控制数据的方法和系统与流程

本发明是基于申请日为2011年7月22日、申请号为201180038045.2、发明名称为“用于防篡改地传输控制数据的方法和系统”的中国专利申请(pct国际申请pct/ep2011/062639进入中国国家阶段)的母案的分案申请。

本发明涉及一种用于防篡改地在网络的控制单元之间传输控制数据的方法和系统。



背景技术:

图1示出一种传统网络,其中,控制数据在控制单元之间传输或者说交换。在图1中所示的实例中,两个控制网络通过一个传输网络相互相连。这两个控制网络分别具有用于连接到传输网络上的网关(gw)。这两个控制网络分别包含多个控制单元se,这些控制单元例如通过总线连接到控制网络的网关上。这两个控制网络通过传输网络交换控制数据sd1,sd2,sd3…。控制单元se可以是不同的装置,例如控制计算器、可存储编程的控制装置、机器人手臂、传感器、执行器和类似物。此外,还有可能的是,控制网络通过传输网络与控制中心通信,例如scada系统(数据采集与监视控制系统)。

传输网络例如可以是基于以太网的或者基于ip的生产网络,该生产网络将不同制造单元的控制网络相互连接。此外,传输网络也可以是列车网络,该列车网络将各个车厢的网络相互连接。列车例如具备用于执行列车控制或者说车辆控制或者其他运行功能的数据网络。此外,传输网络还可以是能量自动化网的网络。

为了正确地执行控制装置的监控功能,控制网络和通过它相连接的控制组件或者说控制单元必须按规定运行。然而,在对控制网络进行篡改的情况下,就无法确保这一点。这样一来就可能影响正常运行,并且有可能威胁受控设备的安全。

在空间上紧凑连续的环境中,可以通过物理性的安全措施保护控制网络不被篡改,使得攻击者无法入侵该控制网络。然而,在分散的控制网络中,例如布置在生产设备中或者车辆中(例如列车),就不可能做到这一点。在这样的分散的控制网络中,控制数据一般都通过传输网络在分隔开的网络区域之间传输。例如这样就能够在列车各部分(车厢)之间实现数据传输。此外,还能够在列车内在空间上分隔开的区域之间进行数据传输,例如在安装在车顶容器中或者车厢地板中的开关柜和控制组件之间。此外例如还从信号塔向车道信号单元或者向道岔传输控制数据。另一个实例是在具有不同的控制网络的制造单元之间传输数据。此外,能够通过传输网络在传感器/执行器和过程自动化设备的控制装置,例如精炼厂,之间进行数据传输。还有一个实例是在能量自动化系统的变电站控制器(substation-controller)和控制中心之间传输数据。

因此,控制网络经常用物理方法布置成访问保护的形式,例如布置在特殊的电缆盒中,从而使第三者不能触及控制网络,并尽可能地防止发生篡改。然而这样做通常耗费巨大,并且由于安装麻烦,而且还必须要采取维修保养措施,所以一般无法实施。

此外公知的是,在传输时通过校验和来保护数据,例如利用crc校验和。然而校验和仅适合用于识别偶然的传输错误。因此,传统的方法也采用或者说使用加密校验和,例如信息确认码或者数字签名。其中,被传输的控制数据被添加上加密校验和。在接收时会检查加密校验和。在进行接收的控制器一方仅进一步处理这种其加密校验和已被检查通过的控制数据。于是通过加密校验和保护了被传输的控制数据。然而,要将这种加密的保护集成到现有的组件中花费高昂,因为这需要一定的计算量、一定的存储空间和一定的改进消耗。同样地,要预设一个在传输之前对数据进行解密或者说设有加密校验和的单独的前置加密组件,只能通过大量的技术上的耗费才能实现。另一个缺点在于,进行加密计算操作会导致延迟,这尤其是在实时性很关键的控制和调节任务中不希望发生,或者甚至可能有损安全性。此外,预设这种前置加密组件对相应的控制设备并非无反作用的。



技术实现要素:

因此,本发明的目的是,实现用于通过网络在控制单元之间防篡改地传输控制数据的一种方法和一种系统,该方法和系统能够技术上以低耗费来实现,但是在传输控制数据时能够相对于篡改提供高级保护。

本发明实现一种用于在通过网络将控制数据从第一控制单元传输到第二控制单元时识别篡改的方法,具有步骤:

a)在发送方通过完整性校验信息生成单元为由第一控制单元发送的控制数据生成完整性校验信息数据;

b)借助加密的密钥通过完整性校验信息生成单元为发送方生成的完整性校验信息数据计算加密的校验和;

c)将发送方生成的完整性校验信息数据和所属的由完整性校验信息生成单元计算的加密的校验和传输给完整性校验确认单元,该完整性校验确认单元在接收方借助加密的密钥确认加密校验和;

d)在接收方通过完整性校验确认单元为通过第二控制单元所接收的控制数据生成完整性校验信息数据;并且

e)将完整性校验确认单元在接收方生成的完整性校验信息数据和连同通过完整性校验确认单元确认的加密的校验和一起被接收的、在发送方生成的完整性校验信息数据进行比较,用于识别对传输的控制数据的篡改。

在根据本发明的方法的一种可能的实施方式中,在具有包管理数据和有效数据的控制数据包中不加密地传输控制数据。

在根据本发明的方法的一种可能的实施方式中,生成的完整性校验信息数据是由至少一部分在控制数据包中或者在一定数量的控制数据包中包含的控制数据和/或包管理数据的哈希值构成的。

在根据本发明的方法的一种可能的实施方式中,完整性校验信息数据是由完整性校验信息生成单元为每个控制数据包生成,其中,完整性校验信息数据具有:控制数据包的包管理数据的哈希值,控制数据包的有效数据的哈希值和用于提供发送方生成完整性校验信息数据的时间点的时间标记。

在根据本发明的方法的一种可能的实施方式中,完整性校验信息数据以有规律的时间间隔由完整性校验信息生成单元生成。

在根据本发明的方法的一种可能的实施方式中,控制数据通过无线的或者有线的传输网络实时地传输。

在根据本发明的方法的一种可能的实施方式中,由完整性校验信息生成单元计算的加密校验和连同发送方生成的完整性校验信息数据通过用于控制数据的传输网络或者通过单独的通信连接从第一控制单元传输到第二控制单元。

在根据本发明的方法的一种可能的实施方式中,完整性校验确认单元在识别出由第一控制单元向第二控制单元传输控制数据时出现篡改的情况下生成警报信息,并且将这个生成的警报信息发送给第二控制单元。

在根据本发明的方法的一种可能的实施方式中,第二控制单元在接收到警报信息后通过完整性校验确认单元转为安全运行状态。

本发明还实现一种数据传输系统,用于将控制数据通过网络从第一控制单元传输到第二控制单元,其具有:

a)至少一个完整性校验信息生成单元,其在发送方为由第一控制单元发送的控制数据生成完整性校验信息数据,并且借助加密的密钥为生成的完整性校验信息数据计算加密校验和,并且具有

b)至少一个完整性校验确认单元,其接收由完整性校验信息生成单元在发送方生成的完整性校验信息数据和所属的计算出的加密校验和,并且借助加密的密钥确认该加密校验和,其中,完整性校验确认单元为通过第二控制单元接收到的控制数据在接收方生成完整性校验信息数据,并且将这些在接收方生成的完整性校验信息数据与连同被确认的加密校验和一起被接收到的、在发送方生成的、获得的完整性校验信息数据进行比较,用于识别对传输的控制数据的篡改。

在根据本发明的数据传输系统的一种可能的实施方式中,第一控制单元连接在具有第一网关的第一控制网络上,其中,第二控制单元连接在具有第二网关的第二控制网络上,其中,控制网络的这两个网关通过传输网络相互连接。

在根据本发明的数据传输系统的一种可能的实施方式中,第一控制网络和/或第二控制网络和/或传输网络是以太网,特别是profinet。

在根据本发明的数据传输系统的一种可能的实施方式中,控制单元分别具有传感器、执行器和控制计算机。

在根据本发明的数据传输系统的一种可能的实施方式中,网络是车辆网络,特别是列车网络。

在根据本发明的数据传输系统的另一种可能的实施方式中,网络是能量控制网络。

在根据本发明的数据传输系统的另一种可能的实施方式中,网络是自动化控制网络,特别是过程控制网络或者生产控制网络。

在根据本发明的数据传输系统的一种可能的实施方式中,完整性校验信息生成单元集成在第一控制网络的第一网关中,并且完整性校验确认单元集成在第二控制网络的第二网关中。

附图说明

此外,参照附图描述用于防篡改地通过网络在控制单元之间传输控制数据的、根据本发明的数据传输系统的根据本发明的方法的可能的实施方式。

其示出:

图1是用于示出在传统的系统中为传输网络在控制单元之间进行数据传输的图表;

图2是在根据本发明的数据传输系统中用于示出在控制单元之间防篡改地传输控制数据的、可能的实施方式的图表;

图3是在根据本发明的数据传输系统中用于示出在控制单元之间防调制地传输控制数据的、可能的实施方式的另一个图表;

图4是用于示出根据本发明的、在控制单元之间防篡改地传输控制数据的方法的一种可能的实施方式的流程图;

图5是用于示出根据本发明的、在控制单元之间防篡改地传输控制数据的方法的一种可能的实施方式的信号图表。

具体实施方式

正如能够从图2中看出的那样,在根据本发明的数据传输系统1的一种可能的实施方式中,控制数据sd在控制单元se之间通过数据传输系统1的传输网络2进行传输。在图2中所示的实施例中,两个分隔开的控制网络3-1,3-2通过传输网络2相互连接。在图2中所示的实施例中,两个控制网络3-1,3-2中的每一个都具有网关(gw)4-1,4-2,用于将各自的控制网络连接到传输网络2上。在这两个网关4-1,4-2的每一个上都通过总线5-i连接着至少一个控制单元se。这两个控制网络3-1,3-2例如构成生产设备中的不同制造单元的控制网络。

在根据本发明的方法中,首先在步骤s1中,正如按照图4所示的过程图中所示的那样,在发送方,也就是说在进行发送的控制单元se一边,通过完整性校验信息生成单元ipee为由控制单元发送的控制数据生成完整性校验信息数据ipid。完整性校验信息生成单元ipee例如能集成到第一控制网络3-1的第一网关4-1中。

在进一步的步骤s2中,在发送方借助加密密钥通过完整性校验信息生成单元ipee为发送方生成的完整性校验信息数据ipid计算出加密校验和kps。在一种可能的实施方式中,集成到第一控制网络3-1的网关4-1中的完整性校验信息生成单元ipee从通过总线5-1所连接的、第一控制网络3-1的控制单元se获得控制数据,并且为从控制单元se获得的控制数据生成完整性校验信息数据ipid。紧接着,集成到网关4-1中的完整性校验信息生成单元ipee借助加密密钥为发送方生成的完整性校验信息数据ipid计算出加密校验和kps。

紧接着,在步骤s3中,在发送方生成的完整性校验信息数据ipid和所属的由完整性校验信息生成单元ipee计算出的加密校验和kps连同控制数据sd或者时间上偏移地传输给完整性校验确认单元ipve,该完整性校验确认单元例如集成在第二控制网络3-2的网关4-2中。在一种变体中,完整性校验信息数据ipid的传输是与控制数据sd的传输分开实现的。特别是能够在不同的数据帧或者说不同的数据包中实现对完整性校验信息数据ipid和控制数据sd的传输。在一种变体中,通过不同的网络或者说通过不同的虚拟局域网vlan实现对完整性校验信息数据ipid和控制数据sd的传输。完整性校验确认单元ipve借助加密的密钥确认获得的加密校验和kps。

此外,在进一步的步骤s4中,通过完整性校验确认单元ipve为未加密地接收到的控制数据sd在接收方生成完整性校验信息数据ipid′。

在进一步的步骤s5中,将由完整性校验确认单元ipve在接收方生成的完整性校验信息数据ipid′与发送方生成的完整性校验信息数据ipid进行比较,用于识别出对传输的控制数据的篡改,完整性校验信息数据连同由完整性校验确认单元ipve所确认的加密校验和kps一起被接收。

正如图2中所示的那样,在一种可能的实施方式中,控制数据sd被传输到具有包管理数据和有效数据的控制数据包中。在根据本发明的方法中,控制数据sd在未改变或者说未加密的情况下通过传输网络2传输。然而,与控制数据分开地通过传输网络2一起传输控制数据sd的加密保护的校验信息或者说加密校验和kps。在图2中所示的实施例中,第一控制网络3-1的网关4-1向由第一控制网络3-1传输到第二控制网络3-2的控制数据sd额外地发送由第二网关4-2检查的加密的校验信息或者说加密校验和kps。在根据本发明的方法中,在检查点上获得通过传输网络2加密保护的控制数据,并且与控制数据分开地向远离的检查单元传输控制数据sd的校验信息。在图2中所示的实例中,这个远离的检查单元,也就是完整性校验确认单元ipve,位于一个单独的子网络中。同样地,该完整性校验确认单元ipve也获得通过传输网络2接收到的控制数据sd,并且在使用接收到的校验信息的情况下进行检查。如果在接收方生成的完整性校验信息数据ipid′与发送方生成的完整性校验信息数据ipid不同,那么被传输的控制数据sd就有可能已经被篡改了。在这种情况下,可以发起一次控制行动或者说错误处理。在一种可能的实施方式中,在识别出从第一控制单元se1向第二控制单元se2传输控制数据sd时出现的篡改行为的情况下,完整性校验确认单元ipve生成警报信息,并且将这个警报信息例如发送给第二控制单元se2。第二控制单元能够在接收到警报信息后通过完整性校验确认单元ipve转为安全运行状态。可选地,也可以使整个进行接收的控制网络3-2进入安全运行状态。此外有可能的是,仅向操作人员显示警报信息。安全运行状态例如能够通过紧急关机或者说紧急停机触发。此外有可能的是,以网络为基础的控制局限在安全运行状态下,例如为此要关闭相应的网关。在这种情况下,仅仍然进行自主的控制。此外,还能够要求向操作者发出警报提示,或者说由操作人员明确地做出警报确认。

在根据本发明的方法的一种可能的实施方式中,在步骤s1中的发送方生成的完整性校验信息数据ipid是由至少一部分在控制数据包或者在一定数量的控制数据包中包含的控制数据和/或包管理数据的哈希值构成的。此外,为了计算该哈希值,可以使用加密的哈希函数,例如md5,sha-1,sha256。在一种可能的实施方式中,通过完整性校验信息生成单元ipee为每个控制数据包生成完整性校验信息数据ipid。此外,完整性校验信息数据ipid可以具有控制数据包的包管理数据的哈希值、控制数据包的有效数据的哈希值以及用于提供发送方生成完整性校验信息数据ipid的时间点的时间标记。

在根据本发明的方法的一种可能的实施方式中,在步骤s1中以有规律的时间间隔由完整性校验信息生成单元ipee生成完整性校验信息数据ipid。在一种可能的实施方式中,由完整性校验信息生成单元ipee计算出的加密校验和kps连同发送方生成的完整性校验信息数据ipid通过传输网络2传输。可选地,计算出的加密校验和kps可以通过单独的通讯连接从第一控制网络3-1的第一控制单元se1传输到第二控制网络3-2的第二控制单元se2。每个在图2中所示的控制单元se都可以分别具备传感器、执行器和集成的控制计算机。

在图2中所示的实施方式中,完整性校验信息生成单元ipee集成在第一控制网络3-1的第一网关4-1中,并且完整性校验确认单元ipve集成在第二控制网络3-2的第二网关4-2中。在一种可选的实施方式中,完整性校验信息生成单元ipee和完整性校验确认单元ipve分别构成为单独的附加设备。图3示出一个这种实施例。此外,完整性校验信息生成单元ipee和完整性校验确认单元ipve分别构成一个能够单独地连接到相应的控制网络上的设备。例如,这些附加设备ipee和ipve能够设计为前置组。在另一种可能的实施方式中,完整性校验信息生成单元ipee能够集成到进行发送的控制单元se中,并且完整性校验确认单元ipve能够集成到进行接收的控制单元se中。在一种可能的实施方式中,附加设备不仅包括完整性校验信息生成单元ipee,还包括完整性校验确认单元ipve,并且因此能够在进行传输的双方使用。

在一种可能的实施方式中,校验信息或者说计算出的加密校验和kps在它那一方以加密保护的形式传输,例如通过macsec,ipsec或者ssl/tls。可以通过加密校验和,例如信息确认码或者数字签名,来保护校验信息。

在一种可能的实施方式中,延迟地传输校验信息或者说计算出的加密校验和kps。例如每隔1秒或者每隔5秒或者每隔60秒传输校验信息或者说加密校验和kps。在这种实施方式中,进行接收的控制单元直接处理接收到的控制数据sd。如果后来由控制单元接收到的校验信息或者说加密校验和kps显示出可能有篡改,那么进行接收的控制单元se2能够相应地做出反应。

在一种可能的实施方式中,通过有线的传输网络传输控制数据sd。在一种可选的实施方式中,通过无线的传输网络2传输控制数据sd。在一种可能的实施方式中,实现实时地传输控制数据sd。

图5示出一个实例,用于阐述根据本发明的、在控制单元se之间防篡改地传输数据的方法。在所示实例中,控制单元se1传输三个控制数据包sd到例如位于第二控制网络3-2中第二控制单元se2。完整性校验信息生成单元ipee为控制数据sd测定加密保护的校验信息,并且将该校验信息传输给完整性校验确认单元ipve。该完整性校验确认单元ipve借助获得的加密校验和kps检查接收到的控制数据sd是否正确。如果不正确,那么就由完整性校验确认单元ipve生成警报信息。警报信息能够传输给进行接收的控制单元se,该控制单元就转为安全运行状态。

正如在图5中能够看出的那样,在所示实例中,在第二控制数据包sd中发生了一次篡改m。在所示实例中,只有在传输了三个控制数据包sd1,sd2,sd3之后才由完整性校验信息生成单元ipee计算加密校验和kps:kps=f(pi1,pi2,pi3),其中,f是加密函数。该计算出的加密校验和kps被传输给完整性校验信息生成单元ipve。在图5中所示的实例中,在完整性校验信息生成单元ipee一方为每个被传输的控制数据包sd形成并缓存一个校验信息pi。在发送出预先给定数量hi3的控制数据包sd之后,就在发送方实现对加密校验和kps的计算,并且将该校验和kps发送给完整性校验确认单元ipve。在所示实例中,完整性校验确认单元一方在接收到控制数据包sd时同样也分别测定并缓存一个校验信息pi。借助接收到的加密校验和kps,接收方存储的校验信息pi在确认步骤v中得以确认。如果必须考虑到一个或者多个控制数据包sd中存在偏差或者说出现篡改,那么完整性校验确认单元ipve使接收到被篡改的控制数据sd2′的控制单元se2紧急停机nh,正如图5中所示的那样。在图5中所示的实例中,加密的校验信息pi是由多个输入内容组成的,其中,为每个控制数据包sd分别实现一次输入。在一种可能的实施方式中,每个输入内容都由时间标记、包管理数据的哈希值以及有效数据的哈希值组成。例如包管理数据包括发送地址、接收地址以及使用的协议。在另一种可能的实施方式中,可以添加包含在控制数据sd中的计数值。编码提供的优点在于,不必为未修改的值,也就是报头(header)和有效数据,计算新的哈希值。

由三个输入内容组成的加密校验信息的一种可能的改进方案,例如:

20100517-163325129.87.3.2129.76.2.15tcp/657-8003ae6

20100517-163327129.87.3.1129.76.2.12udp/3124a1efe23

20100517-163412129.87.3.4129.77.2.14tcp/80-31239e6b8a26

加密的校验信息pi由三个输入内容组成:以yyyymmdd-hhmmss格式化的时间标记、发送ip地址、接收ip地址以及协议(tcp/udp)。此外,每个输入内容具有发送端口号和接收端口号,这些端口号具有数据域的32比特位的哈希值。

在另一种类型的编码中,可以提供存在于一定的时间段内的测量变量或者说控制指示的数值范围。在循环的数据通讯中可以有利的是,其中,被传输的数据高度冗余。

根据本发明的方法可以被理解为加密的完整性覆盖网络,其中,通过完整性覆盖防篡改地传输加密的校验信息,以便确认控制数据sd的准确传输。

如果在根据本发明的方法中通过传输网络2传输的控制数据sd被篡改了,那么这就会被识别出,并且向操作者发出警报,或者说自动地触发安全功能。在对控制数据可能进行的篡改中,对于相应的设备防止了威胁安全性的情况的发生。

根据本发明的方法能够以简单的方式应用在已存在的系统和设备中,并且能够进行改进,因为不是加密保护原本的控制通讯,而是额外补充地实现对控制数据传输的加密保护式监控。在一种根据本发明的方法中,原本的控制通讯不发生变化。此外,根据本发明的方法能够以节约资源的方式得以实施,因为不必为每个控制数据包sd都计算一个单独的加密校验和。

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