工业控制系统数据交换安全保护方法、系统和装置的制作方法

文档序号:7899020阅读:376来源:国知局
专利名称:工业控制系统数据交换安全保护方法、系统和装置的制作方法
技术领域
本发明属于工业控制领域,尤其涉及一种工业控制系统数据交换安全保护方法、 系统和装置。
背景技术
工业控制系统(ICS)是对多种控制系统的总称,包括监控和数据采集(SCADA)系 统、分布式控制系统(DCS),以及可编程逻辑控制器(PLC)之类的小型的控制系统装置。工 业控制系统普遍应用于电力、自来水、石油、天然气、化工、交通运输、制药、纸浆和造纸、能 源、食品饮料制造。工业控制系统由主站、网络和子站组成。工业控制系统的基本工作原理 是子站对工业过程测量数据进行采集,通过网络将数据送至主站,主站分析后通过网络向 子站发送控制或参数设置等命令,子站对工业过程进行动作并将回执行结果和/或状态返 回给主站。目前工业控制系统中使用的通信协议包括IEC 60870-5-101、IEC60870-5-103、 IEC 60870-5-104、IEC 60970、IEC61850、DNP 3等,这些协议的特点是以可靠性为基本需
求,并没有考虑收发认证、数据完整性和数据保密性等安全内容。而且工业控制系统应用的 计算环境恶劣,不仅网络通信方式众多,包括专线拨号、光纤专网、移动GPRS、卫星通信等, 而且设备以分布式的状态,完全暴露在开放式的计算环境之中,存在敌手攻击的可能性。开 放的网络环境和“零安全机制”的通信协议使得工业控制系统面临众多信息安全风险。

发明内容
本发明要解决的一个技术问题是提供一种工业控制系统数据交换安全保护方法, 能够提高工业控制系统数据交换的安全性。本发明提供一种工业控制系统数据交换安全保护方法,包括工业控制系统的接收端接收来自工业控制系统的发送端的复合控制报文,复合控 制报文包括有效载荷和完整性校验码;完整性校验码根据有效载荷的摘要信息和私钥生 成、或者根据有效载荷和秘密的摘要信息生成;工业控制系统的接收端从复合控制报文中提取有效载荷和完整性校验码;工业控制系统的接收端根据有效载荷获得新的摘要信息;工业控制系统的接收端根据完整性校验码、公钥或秘密、新的摘要信息进行完整 性验证。根据本发明的数据交换安全保护方法的一个实施例,复合控制报文中的完整性校 验码由工业控制系统的发送端根据有效载荷和工业控制系统的接收端的秘密生成;工业控制系统的接收端根据有效载荷获得新的摘要信息包括工业控制系统的接收端根据有效载荷和工业控制系统的接收端的秘密获得新的 摘要信息;工业控制系统的接收端根据完整性校验码、公钥或秘密、新的摘要信息进行完整性验证包括工业控制系统的接收端比对完整性校验码和新的摘要信息进行完整性验证。根 据本发明的数据交换安全保护方法的一个实施例,复合控制报文中的完整性校 验码为工业控制系统的发送端对有效载荷进行哈希计算获得摘要信息、通过私钥对摘要信 息进行加密获得签名;工业控制系统的接收端根据有效载荷获得新的摘要信息包括工业控制系统的接收端根据有效载荷进行哈希计算获得新的摘要信息;工业控制系统的接收端根据完整性校验码、公钥或秘密、新的摘要信息进行完整 性验证包括工业控制系统的接收端根据完整性校验码、工业控制系统的发送端的公钥、新的 摘要信息进行签名验证。根据本发明的数据交换安全保护方法的一个实施例,复合控制报文还包括时戳或 随机字符串;工业控制系统的接收端根据有效载荷获得新的摘要信息包括工业控制系统的接收端根据有效载荷和时戳或随机字符串通过哈希计算获得新 的摘要信息;方法还包括工业控制系统的接收端通过时戳或随机字符串判断复合控制报文是否为重放报 文,当复合控制报文为重放报文时,拒绝复合控制报文。根据本发明的数据交换安全保护方法的一个实施例,该方法还包括工业控制系统的接收端根据配置属性确定是否对完整性校验码进行验证。本发明的工业控制系统数据交换安全保护方法,通过对发送报文添加完整性检查 信息验证报文完整性,提高了数据交换的安全性。本发明要解决的另一个技术问题是提供一种工业控制系统接收端装置和发送端 装置,能够提高工业控制系统数据交换的安全性。本发明提供一种工业控制系统接收端装置,包括报文接收单元,用于接收来自工业控制系统的发送端的复合控制报文,复合控制 报文包括有效载荷和完整性校验码;完整性校验码根据有效载荷的摘要信息和私钥生成、 或者根据有效载荷和秘密的摘要信息生成;数据提取单元,用于从复合控制报文中提取有效载荷和完整性校验码;摘要计算单元,用于根据有效载荷获得新的摘要信息;完整性验证单元,用于根据完整性校验码、公钥或秘密、新的摘要信息完成完整性 验证。根据本发明的接收端装置的一个实施例,完整性校验码根据有效载荷和秘密的摘 要信息生成;摘要计算单元根据有效载荷和工业控制系统接收端装置的秘密获得新的摘要 信息;完整性验证单元比对完整性校验码和新的摘要信息进行完整性验证。根据本发明的接收端装置的一个实施例,完整性校验码根据有效载荷的摘要信息 和私钥生成;完整性验证单元根据完整性校验码、工业控制系统的发送端的公钥、新的摘要 信息进行签名验证。
根据本发明的接收端装置的一个实施例,复合控制报文还包括时戳或随机字符 串;数据提取单元用于从复合控制报文中提取有效载荷、完整性校验码和时戳或随机 字符串;摘要计算单元根据有效载荷和时戳或随机字符串通过哈希计算获得新的摘要信 息;装置还包括重放判断单元,用于通过时戳或随机字符串判断复合控制报文是否为重放报文, 当复合控制报文为重放报文时,拒绝复合控制报文。本发明还提供一种工业控制系统发送端装置,包括校验码生成单元,用于根据有效载荷、私钥或秘密生成完整性验证码;复合报文生成单元,用于根据有效载荷和完整性验证码生成复合控制报文,向工 业控制系统的接收端发送复合控制报文。

根据本发明的发送端装置的一个实施例,校验码生成单元根据有效载荷和工业控 制系统接收端的秘密生成完整性校验码。根据本发明的发送端装置的一个实施例,校验码生成单元包括摘要生成单元,用 于根据有效载荷生成摘要信息;签名生成单元,用于使用私钥对摘要生成单元生成的摘要 信息进行加密生成签名;复合报文生成单元根据有效载荷和签名生成单元生成的签名生成复合控制报文, 向工业控制系统的接收端发送复合控制报文。根据本发明的发送端装置的一个实施例,摘要生成单元根据有效载荷和时戳或随 机字符串通过哈希计算生成摘要信息;复合报文生成单元根据有效载荷、时戳或随机字符串、和签名生成复合控制报文, 向工业控制系统的接收端发送复合控制报文。本发明还提供一种工业控制系统的数据交换安全保护系统,包括上述工业控制系 统接收端装置,以及上述工业控制系统发送端装置。


图1示出本发明的工业控制系统数据交换安全保护方法的一个实施例的流程图;图2出本发明的工业控制系统数据交换安全保护方法的另一个实施例的流程图;图3出本发明的工业控制系统数据交换安全保护方法的再一个实施例的流程图;图4出本发明的工业控制系统数据交换安全保护方法的又一个实施例的流程图;图5出本发明的工业控制系统数据交换安全保护方法的又一个实施例的流程图;图6示出本发明的工业控制系统数据交换安全保护系统的一个实施例的结构图;图7出本发明的工业控制系统数据交换安全保护系统的另一个实施例的结构图;图8出本发明的工业控制系统数据交换安全保护系统的又一个实施例的结构图。
具体实施例方式下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。
工业控 制通信协议广泛应用于各种工业控制领域,但这些协议(比如配电自动化 系统主站和子站之间广泛应用的IEC60870-5-101规约,简称101规约)普遍缺失数据源认 证功能、数据的完整性验证功能以及数据的抗重放功能。针对这种情况,在兼容已有通信协 议和数据格式的前提下,实施安全功能的扩展,具有很强的现实意义。为了清楚起见,定义如下的基本密码学原语安全单向函数Hash :Hash :{0,1}*— {0,1}1是一个抗碰撞安全杂凑函数,这里1是 系统安全参数,为杂凑函数的输出长度;伪随机函数PRF=PRF :{0,1}*— {0,1}s是一个伪随机函数,这里s是系统安全参 数,为伪随机函数的输出长度;完整性校验码/签名产生装置f 该装置f的输入包括待计算完整性校验码的输 入明文me M,以及持有者的一个秘密输入χ。f可以是抗适应性伪造的公钥签名算法,也可 以是通过私钥计算出的消息验证码方法,也可以是抗碰撞的安全单向函数,等等。a| |b 将字符串b拼接在字符串a后面。图1示出本发明的工业控制系统数据交换安全保护方法的一个实施例的流程图。如图1所示,在步骤102,工业控制系统的接收端接收来自工业控制系统的发送端 的复合控制报文,复合控制报文包括有效载荷和完整性校验码。完整性校验码或者根据有 效载荷的摘要信息和私钥生成、或者根据有效载荷和秘密计算得出的摘要信息。有效载荷 例如是控制帧报文,或者控制帧报文11时戳,或者是控制帧报文11随机字符串;完整性校 验码可以是有效载荷的摘要信息的签名,或者是有效载荷11秘密的摘要信息。在步骤104,工业控制系统的接收端从复合控制报文中提取有效载荷和完整性校 验码。在步骤106,工业控制系统的接收端根据有效载荷例如通过哈希计算获得新的摘 要信息。接收端可以根据有效载荷通过哈希计算获得的摘要信息作为新的摘要信息,或者 根据有效载荷和秘密通过哈希计算获得的摘要信息作为新的摘要信息。在步骤108,工业控制系统的接收端根据完整性校验码、公钥或秘密、新的摘要信 息进行数据完整性验证。上述实施例中,通过对发送报文添加完整性检查信息验证报文完整性;通过有效 载荷11秘密生成完整性校验码可以验证源身份和报文的完整性;通过在报文中添加时戳 或者随机字符串,可以抗重放攻击。图2出本发明的工业控制系统数据交换安全保护方法的另一个实施例的流程图。 在该实施例中,在控制中心(主站)安装私钥,在被控终端(子站)预置数据源方的公钥。如图2所示,在步骤202,控制中心(主站)对待发送报文m计算摘要信息h = Hash(m)0在步骤204,控制中心使用私钥对h计算签名,将产生的签名ο添加到待发送报文 m后面,形成复合控制报文M。下表1示出复合控制报文M的格式
权利要求
1.一种工业控制系统数据交换安全保护方法,其特征在于,包括工业控制系统的接收端接收来自工业控制系统的发送端的复合控制报文,所述复合控 制报文包括有效载荷和完整性校验码,所述完整性校验码根据所述有效载荷的摘要信息和 私钥生成、或者根据所述有效载荷和秘密的摘要信息生成;所述工业控制系统的接收端从所述复合控制报文中提取所述有效载荷和所述完整性 校验码;所述工业控制系统的接收端根据所述有效载荷获得新的摘要信息; 所述工业控制系统的接收端根据所述完整性校验码、公钥或所述秘密、所述新的摘要 信息进行完整性验证。
2.根据权利要求1所述的数据交换安全保护方法,其特征在于,所述复合控制报文中 的完整性校验码由所述工业控制系统的发送端根据所述有效载荷和所述工业控制系统的 接收端的秘密生成;所述工业控制系统的接收端根据所述有效载荷获得新的摘要信息包括 所述工业控制系统的接收端根据所述有效载荷和所述工业控制系统的接收端的秘密 获得所述新的摘要信息;所述工业控制系统的接收端根据所述完整性校验码、公钥或所述秘密、所述摘要信息 进行完整性验证包括所述工业控制系统的接收端比对所述完整性校验码和所述新的摘要信息进行完整性 验证。
3.根据权利要求1所述的数据交换安全保护方法,其特征在于,所述复合控制报文中 的完整性校验码为所述工业控制系统的发送端对所述有效载荷进行哈希计算获得摘要信 息、通过私钥对所述摘要信息进行加密获得签名;所述工业控制系统的接收端根据所述有效载荷获得新的摘要信息包括 所述工业控制系统的接收端根据所述有效载荷进行哈希计算获得所述新的摘要信息;所述工业控制系统的接收端根据所述完整性校验码、公钥或所述秘密、所述新的摘要 信息进行完整性验证包括所述工业控制系统的接收端根据所述完整性校验码、所述工业控制系统的发送端的公 钥、所述新的摘要信息进行签名验证。
4.根据权利要求1所述的数据交换安全保护方法,其特征在于,所述复合控制报文还 包括时戳或随机字符串;所述工业控制系统的接收端根据所述有效载荷获得新的摘要信息包括 所述工业控制系统的接收端根据所述有效载荷和所述时戳或随机字符串通过哈希计 算获得所述新的摘要信息; 所述方法还包括所述工业控制系统的接收端通过所述时戳或随机字符串判断所述复合控制报文是否 为重放报文,当所述复合控制报文为重放报文时,拒绝所述复合控制报文。
5.根据权利要求1所述的数据交换安全保护方法,其特征在于,还包括
6.一种工业控制系统接收端装置,其特征在于,包括报文接收单元,用于接收来自工业控制系统的发送端的复合控制报文,所述复合控制 报文包括有效载荷和完整性校验码;所述完整性校验码根据所述有效载荷的摘要信息和私 钥生成、或者根据所述有效载荷和秘密的摘要信息生成;数据提取单元,用于从所述复合控制报文中提取所述有效载荷和所述完整性校验码;摘要计算单元,用于根据所述有效载荷获得新的摘要信息;完整性验证单元,用于根据所述完整性校验码、公钥或所述秘密、所述新的摘要信息完 成完整性验证。
7.根据权利要求6所述的接收端装置,其特征在于,所述完整性校验码根据所述有效 载荷和秘密的摘要信息生成;所述摘要计算单元根据所述有效载荷和所述工业控制系统接收端装置的秘密获得所 述新的摘要信息;所述完整性验证单元比对所述完整性校验码和所述新的摘要信息进行完整性验证。
8.根据权利要求6所述的接收端装置,其特征在于,所述完整性校验码根据所述有效 载荷的摘要信息和私钥生成;所述完整性验证单元根据所述完整性校验码、所述工业控制系统的发送端的公钥、所 述新的摘要信息进行签名验证。
9.根据权利要求6所述的接收端装置,其特征在于,所述复合控制报文还包括时戳或 随机字符串;数据提取单元用于从所述复合控制报文中提取所述有效载荷、所述完整性校验码和所 述时戳或随机字符串;所述摘要计算单元根据所述有效载荷和所述时戳或随机字符串通过哈希计算获得所 述新的摘要信息;所述装置还包括重放判断单元,用于通过所述时戳或随机字符串判断所述复合控制报文是否为重放报 文,当所述复合控制报文为重放报文时,拒绝所述复合控制报文。
10.一种工业控制系统发送端装置,其特征在于,包括校验码生成单元,用于根据有效载荷、私钥或秘密生成完整性验证码;复合报文生成单元,用于根据所述有效载荷和所述完整性验证码生成复合控制报文, 向工业控制系统的接收端发送所述复合控制报文。
11.根据权利要求10所述的工业控制系统发送端装置,其特征在于,所述校验码生成 单元根据所述有效载荷和所述工业控制系统接收端的秘密生成所述完整性校验码。
12.根据权利要求10所述的工业控制系统发送端装置,其特征在于,所述校验码生成 单元包括摘要生成单元,用于根据所述有效载荷生成摘要信息;签名生成单元,用于使用所述私钥对所述摘要生成单元生成的摘要信息进行加密生成 签名;所述复合报文生成单元根据所述有效载荷和所述签名生成单元生成的签名生成复合 控制报文,向工业控制系统的接收端发送所述复合控制报文。
13.根据权利要求12所述的工业控制系统发送端装置,其特征在于,所述摘要生成单元根据所述有效载荷和时戳或随机字符串通过哈希计算生成所述摘要信息;所述复合报文生成单元根据所述有效载荷、所述时戳或随机字符串、和所述签名生成 复合控制报文,向工业控制系统的接收端发送所述复合控制报文。
14. 一种工业控制系统的数据交换安全保护系统,其特征在于,包括如权利要求6-9中 任意一项所述的工业控制系统接收端装置,以及如权利要求10-13中任意一项所述的工业 控制系统发送端装置。
全文摘要
本发明公开一种工业控制系统数据交换安全保护方法、系统、接收端装置和发送端装置。该方法包括工业控制系统的接收端从复合控制报文中提取有效载荷和完整性校验码;完整性校验码为签名或者根据有效载荷和秘密生成的摘要信息;根据有效载荷获得新的摘要信息;根据完整性校验码、公钥或秘密、新的摘要信息进行完整性验证。本发明的技术方案,对交互报文进行数据源认证,完整性保护以及抗重放攻击,工业控制系统控制中心(主站)与被控终端(子站)可以对报文发送方的身份进行验证,防止恶意人员冒充控制中心(主站)或被控终端(子站)对工业控制系统进行控制和破坏;同时对测量、控制、参数设置等报文进行保护,防止恶意人员对报文内容的篡改。
文档编号H04L12/56GK102137095SQ20101062288
公开日2011年7月27日 申请日期2010年12月29日 优先权日2010年12月29日
发明者徐志博, 梁潇, 郑晓昆, 高昆仑 申请人:中国电力科学研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1