在自动化装置之间防操纵的数据传输的制作方法

文档序号:7738962阅读:175来源:国知局
专利名称:在自动化装置之间防操纵的数据传输的制作方法
技术领域
本发明涉及一种用于将数据 报文从自动化设备的第一自动化装置传输到自动化设备的第二自动化装置的方法。本发明还涉及一种相应的自动化装置和一种具有这样的自动化装置的自动化设备。
背景技术
对于供电网、工业过程或制造设备的自动化,采用通常包括多个自动化装置的自动化设备。在供电网的情况下,自动化设备例如具有保护装置、控制装置、站控制装置和电网控制装置作为自动化装置。在此,提到的自动化装置承担用于控制、监视和保护供电网的不同的任务。自动化的过程通常是安全性关键的应用。因此例如关于供电网存在提高的安全性要求,因为在此涉及特定区域的基础设施的主要组成部分,用于例如对家用、公共设施、工商业和工业企业、电信设备和其他耗电器供电。因此要保护自动化设备以防止如通过通信连接的外部干扰可能出现的错误传输数据报文。此外在自动化设备中的数据传输中还越来越频繁地应用公知的通信结构;例如在用于供电网的自动化的设备中使用越来越多的利用公知的以太网技术的通信网络。广泛应用的通信技术的采用使得一方面可以将新的装置和应用简单嵌入到现有的网络中并且不同制造商的自动化装置具有可相互操作性,然而另一方面也成为了第三方操纵对自动化设备的潜在的攻击点。例如可以考虑如下情形,在该情形中未经授权的第三方将错误的或改变的数据报文馈入到自动化设备的未受保护的通信网络中,以便由此有针对地触发自动化设备的故障。例如在此可以由攻击者馈入冲撞通信网络的拓扑的新配置的那些数据报文。在重复馈入这些数据报文的情况下,自动化设备的通信网络通过持续的新配置被带入过载状态,在该过载状态下最坏的情况不再能够传输用于自动化所需的数据报文。因此要保护为了对各个过程进行自动化而采用的自动化设备,一方面防止错误的数据传输,并且另一方面防止通过外部侵入进行的操纵。为了确保在自动化装置之间的通信路径,目前公知采用加密方法,例如按照PKI (Public Key Infrastruktur,公钥基础设施),其中传输的数据报文借助由公共的和私有的密钥组成的不对称密钥对来验证,以确保传输的数据的数据完整性。然而这样的验证方法的前提条件是具有相对高的计算容量,以便能够实时地加密和解密要发送的和要接收的数据报文。为此所使用的自动化装置的计算容量由此不再提供给其他应用,从而自动化装置必须构造为具有高的计算容量,由此自动化装置的制造成本相应提高。替换地,例如DE1004004344A1对于与因特网相连的自动化设备提出,通过设置单向通信连接这样构造网络拓扑,使得不可能从因特网对自动化设备进行未授权的访问。然而该替换方案没有考虑在自动化设备本身的内部未授权地馈入数据报文的可能性。

发明内容
由此本发明要解决的技术问题是,能够以对自动化装置的计算容量的相对小的要求确保在自动化设备的自动化装置之间的数据报文的传输不出现传输错误和第三方操纵。本发明通过一种用于在自动化设备的自动化装置之间传输数据报文的方法解决上述技术问题,其中在两个自动化装置中产生具有秘密字符串序列的一致的列表,其中从对两个自动化装置来说是已知的秘密的起始字符串(Ausgangs-Zeichenfolge)中通过多次应用单向函数这样产生序列,即,分别从在序列中的前面的秘密字符串借助单向函数来产生在序列中随后的秘密字符串。在第一自动化装置中产生数据报文,其包括数据片段和检验标识,其中检验标识是在使用至少所述数据段和在第一自动化装置的列表中在序列的 第η个位置上所实施的秘密字符串的条件下产生的。将数据报文传输到第二自动化装置,并且在使用至少所接收的数据报文的所述数据段和在第二自动化装置的列表中在序列的第η个位置上所实施的秘密字符串的条件下产生比较检验标识。将接收的数据报文的检验标识与比较检验标识相比较,并且当检验标识与比较检验标识一致时将其分类为可信任的。在此,单向函数应当理解为一种对应规定,该对应规定是不可逆的,S卩,在使用单向函数的条件下虽然可以从输入值计算目标值,然而通过单向函数的逆从目标值反向计算输入值是不可能的或者仅具有可忽略的微小可能性。对于单向函数的例子例如是所谓的哈希(Hash)函数,例如 SHA-1 (SHA = Secure Hash Algorithm,安全哈希算法)、SHA-256、MD5 (MD = Message Digest Algorithm,信息摘要算法)。通过在自动化装置中呈现具有秘密字符串的一致的列表对并且在传输数据报文时分别将秘密字符串引入到检验标识的产生中,可以以相对小的计算开销检验所接收的数据报文的完整性。也就是为此仅需在使用相应的秘密字符串的条件下在接收的自动化装置中产生比较检验标识,所述比较检验标识与在所接收的数据报文中包含的检验标识相比较。比较检验标识的产生和与所传输的检验标识的比较,与PKI密钥方法的应用相比,需要明显更小的计算开销。按照本发明的方法的一种优选扩展,如果检验标识与比较检验标识不同,则将数据报文作为无效的舍弃。由此可以实现,在检验标识与比较检验标识不一致的情况下将接收的数据报文归类为不可靠的并且作为无效的舍弃。因此在接收的自动化装置中不执行在数据报文中可能存在的命令。按照本发明的方法的另一个优选实施方式,也可以在使用单向函数的条件下产生检验标识和比较检验标识。由此在传输数据报文时可以实现特别的安全性,因为从数据报文的数据内容中不能推出所使用的秘密字符串。按照本发明的方法的另一个优选实施方式,在数据报文的每个进一步传输中,利用这样的秘密字符串产生检验标识和比较检验标识,所述秘密字符串在序列中分别位于在上一次传输数据报文时使用的秘密字符串的前面。通过以相反顺序使用序列的秘密字符串-也就是例如对于第一数据报文的传输以在序列的最后的秘密字符串开始,对于数据报文的下一个传输分别跟随序列中更前面的秘密字符串-可以针对未授权的第三方的操纵实现更高的安全性。也就是,攻击者不能从窃取的数据报文中推出后面的数据报文的检验标识,因为通过单向函数产生的秘密字符串排除了对序列中的各个前面的秘密字符串的推导。在这种关联中具有优势的是,在此分别使用这样的秘密字符串,所述秘密字符串在序列中紧挨着位于在上一次传输数据报文时使用的秘密字符串之前。以这种方式,可以以有效方式使用序列的所有秘密字符串用于传输数据报文,而不能从窃取的数据报文推导出下一个数据报文的检验标识。按照另一个优选实施方式,在第一自动化装置中产生的数据报文也包括索引值,该索引值给出,在序列中的哪个位置上存在对 于该数据报文的检验标识所使用的秘密字符串。由此可以有利地实现,即使在通过第一装置任意选择秘密字符串的情况下或在从一系列先后跟随的数据报文中丢失所发送的数据报文的情况下,第二自动化装置可以容易地找到合适的秘密字符串以用于检验所接收的数据报文的完整性。在这种关联中具有优势的是,第二自动化装置从接收的数据报文中读出索引值,并且为了形成比较检验标识而使用在序列中位于通过索引值给出的位置上的那个秘密字符串。关于在两个自动化装置中秘密字符串序列的产生,具有优势的是,在从第一自动化装置向第二自动化装置传输数据报文时,使用与在从第二自动化装置向第一自动化装置传输数据报文时不同的具有秘密字符串序列的列表。以这种方式更强地防范对数据报文的未授权的操纵,因为自动化装置的发送和接收装置使用具有秘密字符串的不同列表对。按照本发明的方法的另一个优选实施方式,在两个自动化装置之一中随机产生秘密起始字符串,并且以加密的形式传输到另一个自动化装置。以这种方式可以保护为了计算秘密字符串序列的列表而被用作开始值的秘密起始字符串以防未授权的窥探。作为加密方法,例如可以使用具有不对称密钥对的PKI方法,因为该方法本来就已经由许多自动化装置所掌握。因为秘密起始字符串很少必须被传输,所以由此产生的计算负担是可忽略的小的。优选还可以设置,在使用最后在序列中实施的秘密数据串之后,该秘密数据串还没有被用于形成检验标识和比较检验标识,在两个自动化装置中在使用新的起始字符串的条件下产生新的秘密字符串序列。以这种方式确保,在两个自动化装置中总是储备足够数量的秘密字符串用于传输数据报文。新序列的产生在此可以有利地作为后台功能进行,从而自动化装置的计算功率由此仅稍微受到影响。上面提到的技术问题还通过一种具有控制装置和通信装置的自动化装置解决,所述通信装置构造为用于将数据报文通过通信连接传输到第二自动化装置,其中控制装置构造为用于执行按照前面描述的实施例的方法。特别具有优势的是,自动化装置是对于供电网的自动化设备的自动化装置。因为供电网属于特别敏感的基础设施并且由此属于值得保护的对象,所以关于安全性要求对于相应的自动化设备存在特别高的要求。上面提到的技术问题还通过一种具有至少两个相应于前面的描述而构造的为了传输数据报文而通过通信连接互相连接的自动化装置的自动化设备来解决。


以下借助附图结合实施例详细解释本发明。其中,
图I示出了自动化设备的示意图,图2示出了第二自动化装置的示意图,图3示出了用于解释在两个自动化装置之间传输数据报文的方法流程,图4A和4B示出了数据报文的例子,并且图5示出了用于解释形成具有秘密字符串序列的列表的方法流程。
具体实施例方式图I示出了自动化设备10。对于以下解释示例性假定,自动化设备10是供电网的自动化装置。然而本发明也可以应用于其他的自动化设备,例如用于生产过程自动化或工业设备自动化的自动化设备。
·
自动化设备10包括所谓的现场设备IlaUlb和11c,它们在空间上靠近自动化的供电网(未示出)布置并且其中例如可以是电气保护设备或电气控制设备。这些现场设备例如用于自动化地监视和保护供电网的部件,并且用于远程控制地打开和闭合在供电网中的电气开关。对于在用于供电网的自动化设备中的现场设备的其他例子例如是用于采集供电网中的电能质量的功率质量设备。自动化设备10还包括站控制设备12,其执行被设置在上级的控制功能和对现场设备IlaUlb和Ilc的测量值和消息进行综合。此外自动化设备10还包括电网控制设备13,例如用于操作和观察供电网的电网控制中心的数据处理装置。现场设备11a、lib、11c、站控制设备12以及电网控制设备13在下面应当被概括称为自动化装置。现场设备I la、I lb、I Ic和站控制设备12通过环形的通信总线14而彼此相连,而在站控制设备12和电网控制设备13之间设置了单独的通信总线15。图I中的所述自动化设备10的拓扑结构仅仅被理解成示例性的。在本发明的范围内,可以设置任意的设备拓扑结构。在自动化设备10的运行中,通过通信总线14和15在单个自动化装置之间交换数据报文,所述数据报文可以包含例如测量值、事件消息和控制命令。此外,通过通信总线14和15也可以传输特定的检验数据报文,其用于监视自动化设备的通信连接和拓扑结构。对于所有的传输的数据报文,存在数据完整性的要求,也就是说,数据报文的内容不允许通过传输错误或者未授权的第三方的操纵而被改变,因为否则的话可能会出现自动化设备10的故障。传输错误主要是由于传输路径中的随机干扰或者外部影响引起的,而第三方的操纵总是有意地产生的。图I的实施例中在此假设,在位置16将未被授权操作自动化设备10的数据处理装置17与通信总线14相连。在通信总线14的不安全实施的情况下,攻击者可以通过数据处理装置17将能够影响自动化设备工作方式安全性的错误的或被操纵了的数据报文馈入到通信总线14中。例如,这样的数据报文可能包含用于重新配置自动化设备10的自动化装置的命令、用于供电网组件的错误的控制命令或例如冒充在两个自动化装置之间的通信连接的故障的错误的检验数据报文。由此重要的是,将这些为了操纵目的而混入的数据报文识别为不可靠的并且不在自动化装置中执行其内容。以下参考图2至5描述对不可靠的数据报文的这样的识别。
图2示出了没有进一步详细示出的自动化设备的第一自动化装置20a和第二自动化装置20b。自动化装置20a和20b基本上具有相同的构造。由此仅对于自动化装置20a示例性地描述该结构。自动化装置20a具有控制装置21,其包括计算装置22、存储装置23和安全性模块24。计算装置22例如可以是微处理器,例如所谓的CPU (Central Processing Unit,中央处理单元)。存储装置23可以通过可写和可读的数据存储器(例如硬盘、闪存)的任何形式来构造。安全性模块24仅出于图示目的特别强调地示出并且通常构造为由计算装置22实施的软件。计算装置22、存储装置23和安全性模块24为了数据交换而通过内部的通信总线25互相相连。此外,控制装置21还具有秘密字符串序列的列表26,其或者存储在单独的存储装置中或者存储在存储装置23中。两个自动化装置20a和20b具有相同的具有秘密字符串序列的列表。这些相同的列表也称为列表对。控制装置21为了数据交换而与通信装置27相连。通信装置27构造为通过设置在自动化装置20a和20b之间的通信连接28来发送和接收数据报文“TEL”。在列表对的每个列表26中包含的秘密字符串序列在两个自动化装置20a和20b中从起始字符串Xtl出发以相应的方式产生,方法是,首先从起始字符串Xtl中通过应用单向函数,例如,哈希函数H(X),形成第一秘密字符串X1 = H (X0)。通过重新应用所述单向函数,从该第一秘密字符串Xl中形成第二秘密字符串X2 = H(X1)=H(H(X0))o该单向函数对分别最后计算的秘密字符串的该重复应用被一直应用,直到该序列包括事先确定的数量的秘密字符串。在序列中最后的秘密字符串Xm由此按照如下确定Xm = H (Xnrl)。除了单个秘密字符串之外,列表26附加地还包括与各个秘密字符串对应的索引值n,其给出了在秘密字符串序列中的位置,在该位置上存在确定的字符串。以下仅示例性示出具有索引值η和各个与之对应的秘密字符串Xn的列表26的实施例,其是从起始字符串“INITIAL_VALUE”出发在应用单向函数的条件下按照哈希算法SHA-I产生的
权利要求
1.一种用于从自动化设备的第一自动化装置(20a)向所述自动化设备的第二自动化装置(20b)传输数据报文的方法,其中执行以下步骤 -在两个自动化装置(20a,20b)中产生具有秘密字符串序列的一致的列表(26),其中,由两个自动化装置(20a,20b)中已知的秘密起始字符串通过多次应用单向函数这样产生序列,即,分别从在所述序列中的前面的秘密字符串中借助单向函数产生在该序列中随后的秘密字符串; -在所述第一自动化装置(20a)中产生数据报文,其包括数据片段和检验标识,其中,所述检验标识是在使用至少所述数据段和在该第一自动化装置(20a)的列表中在序列的第η个位置上实施的秘密字符串的条件下产生的; -将数据报文传输到所述第二自动化装置(20b); -在使用至少所接收的数据报文的所述数据段和在所述第二自动化装置(20b)的列表中在序列的第η个位置上实施的秘密字符串的条件下产生比较检验标识; -将所接收的数据报文的所述检验标识与所述比较检验标识进行比较;并且 -如果该检验标识与该比较检验标识一致,则将所接收的数据报文分类为可信任的。
2.根据权利要求I所述的方法,其特征在于, -如果所述检验标识与所述比较检验标识不同,则将所述数据报文作为无效的舍弃。
3.根据权利要求I或2所述的方法,其特征在于, -所述检验标识和所述比较检验标识也在使用单向函数的条件下产生。
4.根据上述权利要求中任一项所述的方法,其特征在于, -在数据报文的每个进一步传输中,利用这样的秘密字符串产生所述检验标识和所述比较检验标识,所述秘密字符串在序列中分别位于在上一次传输数据报文时使用的秘密字符串的前面。
5.根据权利要求4所述的方法,其特征在于, -使用这样的秘密字符串,所述秘密字符串在序列中紧挨着位于在上一次传输数据报文时使用的秘密字符串之前。
6.根据上述权利要求中任一项所述的方法,其特征在于, -在所述第一自动化装置(20a)中所产生的数据报文也包括索引值,所述索引值给出,在所述序列中的哪个位置上存在对于该数据报文的检验标识所使用的秘密字符串。
7.根据权利要求6所述的方法,其特征在于, -所述第二自动化装置(20b)从所接收的数据报文中读出索引值,并且为了形成所述比较检验标识而使用在所述序列中位于通过所述索引值给出的位置上的那个秘密字符串。
8.根据上述权利要求中任一项所述的方法,其特征在于, -在从所述第一自动化装置(20a)向所述第二自动化装置(20b)传输数据报文时,使用与在从该第二自动化装置(20b)向该第一自动化装置(20a)传输数据报文时不同的具有秘密字符串序列的列表。
9.根据上述权利要求中任一项所述的方法,其特征在于, -在一个或两个自动化装置(20a,20b)中随机产生所述秘密起始字符串并且以加密的形式传输到另一个自动化装置(20b,20a)。
10.根据上述权利要求中任一项所述的方法,其特征在于,-在使用最后在序列中实施的秘密数据串之后,所述秘密数据串还没有被用于形成检验标识和比较检验标识,在两个自动化装置(20a,20b)中在使用新的起始字符串的条件下产生新的秘密字符串序列。
11.一种具有控制装置(21)和通信装置(27)的自动化装置(20a),所述通信装置被构造为用于通过通信连接(28)将数据报文传输到第二自动化装置(20b),其特征在于, -所述控制装置(21)被构造为用于执行按照上述权利要求中任一项所述的方法。
12.根据权利要求11所述的自动化装置,其特征在于, -所述自动化装置是用于供电网的自动化设备的自动化装置。
13.一种具有至少两个自动化装置的自动化设备,所述自动化装置为了传输数据报文而通过通信连接被互相连接并且被按照权利要求11或12构造。
全文摘要
为了能够在使用相对小的计算容量的条件下针对错误和操纵从而确保在自动化装置(20a,20b)之间的数据报文的传输,本发明建议在两个自动化装置(20a,20b)中通过多次应用单向函数产生具有秘密字符串序列的一致的列表(26),并且对于数据报文利用秘密字符串中的一个来产生检验标识。在接收的自动化装置(20b)中将所述检验标识与同样利用秘密字符串所产生的比较检验标识进行比较。仅当所述比较检验标识与该检验标识一致时才将所述数据报文归类为可靠的。本发明还涉及自动化装置(20a,20b)和一种自动化设备(10)。
文档编号H04L29/06GK102804724SQ200980160006
公开日2012年11月28日 申请日期2009年6月23日 优先权日2009年6月23日
发明者G.纽曼 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1