CN102137095A - 工业控制系统数据交换安全保护方法、系统和装置 - Google Patents
工业控制系统数据交换安全保护方法、系统和装置 Download PDFInfo
- Publication number
- CN102137095A CN102137095A CN2010106228812A CN201010622881A CN102137095A CN 102137095 A CN102137095 A CN 102137095A CN 2010106228812 A CN2010106228812 A CN 2010106228812A CN 201010622881 A CN201010622881 A CN 201010622881A CN 102137095 A CN102137095 A CN 102137095A
- Authority
- CN
- China
- Prior art keywords
- control system
- industrial control
- payload
- message
- summary info
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明公开一种工业控制系统数据交换安全保护方法、系统、接收端装置和发送端装置。该方法包括:工业控制系统的接收端从复合控制报文中提取有效载荷和完整性校验码;完整性校验码为签名或者根据有效载荷和秘密生成的摘要信息;根据有效载荷获得新的摘要信息;根据完整性校验码、公钥或秘密、新的摘要信息进行完整性验证。本发明的技术方案,对交互报文进行数据源认证,完整性保护以及抗重放攻击,工业控制系统控制中心(主站)与被控终端(子站)可以对报文发送方的身份进行验证,防止恶意人员冒充控制中心(主站)或被控终端(子站)对工业控制系统进行控制和破坏;同时对测量、控制、参数设置等报文进行保护,防止恶意人员对报文内容的篡改。
Description
技术领域
本发明属于工业控制领域,尤其涉及一种工业控制系统数据交换安全保护方法、系统和装置。
背景技术
工业控制系统(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}l是一个抗碰撞安全杂凑函数,这里l是系统安全参数,为杂凑函数的输出长度;
伪随机函数PRF:PRF:{0,1}*→{0,1}s是一个伪随机函数,这里s是系统安全参数,为伪随机函数的输出长度;
完整性校验码/签名产生装置f:该装置f的输入包括待计算完整性校验码的输入明文m∈M,以及持有者的一个秘密输入x。f可以是抗适应性伪造的公钥签名算法,也可以是通过私钥计算出的消息验证码方法,也可以是抗碰撞的安全单向函数,等等。
a||b:将字符串b拼接在字符串a后面。
图1示出本发明的工业控制系统数据交换安全保护方法的一个实施例的流程图。
如图1所示,在步骤102,工业控制系统的接收端接收来自工业控制系统的发送端的复合控制报文,复合控制报文包括有效载荷和完整性校验码。完整性校验码或者根据有效载荷的摘要信息和私钥生成、或者根据有效载荷和秘密计算得出的摘要信息。有效载荷例如是控制帧报文,或者控制帧报文||时戳,或者是控制帧报文||随机字符串;完整性校验码可以是有效载荷的摘要信息的签名,或者是有效载荷||秘密的摘要信息。
在步骤104,工业控制系统的接收端从复合控制报文中提取有效载荷和完整性校验码。
在步骤106,工业控制系统的接收端根据有效载荷例如通过哈希计算获得新的摘要信息。接收端可以根据有效载荷通过哈希计算获得的摘要信息作为新的摘要信息,或者根据有效载荷和秘密通过哈希计算获得的摘要信息作为新的摘要信息。
在步骤108,工业控制系统的接收端根据完整性校验码、公钥或秘密、新的摘要信息进行数据完整性验证。
上述实施例中,通过对发送报文添加完整性检查信息验证报文完整性;通过有效载荷||秘密生成完整性校验码可以验证源身份和报文的完整性;通过在报文中添加时戳或者随机字符串,可以抗重放攻击。
图2出本发明的工业控制系统数据交换安全保护方法的另一个实施例的流程图。在该实施例中,在控制中心(主站)安装私钥,在被控终端(子站)预置数据源方的公钥。
如图2所示,在步骤202,控制中心(主站)对待发送报文m计算摘要信息h=Hash(m)。
在步骤204,控制中心使用私钥对h计算签名,将产生的签名σ添加到待发送报文m后面,形成复合控制报文M。下表1示出复合控制报文M的格式:
工控协议原有数据报文 | 完整性校验码/签名 |
M | σ |
表1
在步骤206,终端(子站)接收复合控制报文M后,提取出原有载荷(原报文)m以及签名σ;
在步骤208,终端根据有效载荷m计算新的摘要信息h′。
在步骤210,终端使用控制中心(主站)的公钥以及新的摘要信息h′,对签名进行验证。
在步骤212,如果验证通过,则接受报文,否则,拒绝报文。
对于已有的处于运行状态的旧终端(子站),接收复合控制报文M后,可以按照原有数据格式,正常读取帧中的原有载荷m部分,忽略对完整性校验码的处理。例如,在中华人民共和国电力行业标准IEC61850-8-1的1-ISO/IEC8802-3帧格式中包括了长度项,可以记录报文的长度。“IEC60870-5-101/104应用于配电自动化系统”中“4.2101规约可变帧长格式”中通过“长度L”项可以列出报文的长度。完整性验证码/签名的长度可以预先设定,或者根据算法、安全参数确定。
上述实施例中,发送端对报文的摘要信息进行签名,接收端根据签名进行数据源认证和完整性验证,保证了信息交换的安全性;将签名放在有效载荷的后面,可以尽量兼容已有工业控制系统通信协议;新型终端进行验证处理,而旧终端可以省略完整性校验码的处理,从而可以尽量与现有系统兼容,避免对所有设备改造的巨大成本。
图3出本发明的工业控制系统数据交换安全保护方法的再一个实施例的流程图。在该实施例中,通过分享密钥以及杂凑函数实现数据源认证和完整性验证。
如图3所示,在步骤302,控制中心(主站)预置主秘密γ,被控终端(子站)i∈{0,1}*预置秘密xi=PRF(γ||i)。
在步骤304,控制中心要给被控终端i∈{0,1}*发送控制帧报文m,根据控制帧报文和被控终端的秘密计算完整性校验码h,完整性校验码h的计算方式为Hash(m||PRF(γ||i)),将产生的完整性校验码h添加到原控制帧报文后面形成复合控制报文M。
在步骤306,被控终端(子站)接收复合控制报文后,提取其中的控制帧报文m,利用秘密xi=PRF(γ||i)计算新的摘要信息Hash(m||xi)。
在步骤308,被控终端把新的摘要信息与接收到的完整性校验码进行比对以进行完整性验证。如果一致,表明数据源认证和完整性验证成功,则接受报文,否则,拒绝接受报文。
对于已有处于运行状态的旧的被控终端(子站),接收复合控制报文后,按照原有数据格式,正常读取报文中的原有载荷部分,并执行控制命令,忽略对完整性校验码的处理。
上述实施例中,数据交换双方通过预置秘密,对报文和秘密生成摘要信息,根据该摘要信息进行完整性验证和身份认证,计算复杂度低,处理速度快。
在工业控制领域的控制中心(主站)和被控终端(子站)之间具备时钟同步功能,利用时戳可以进一步实现抗重放攻击功能。
图4出本发明的工业控制系统数据交换安全保护方法的又一个实施例的流程图。在该实施例中,通过时戳实现抗重放攻击功能。
如图4所示,在步骤402,在控制中心(主站)安装私钥,在被控终端(子站)预置数据源方的公钥。控制中心对控制报文m和时戳time计算摘要信息h=Hash(m||time)。
在步骤404,控制中心使用私钥对摘要信息h计算签名。
在步骤406,控制中心将产生的签名和time添加到原控制报文后面形成复合控制报文M。
在步骤408,终端接收复合控制报文M后,提取时戳time。
在步骤410,终端判断时戳time是否晚于收到的最近的数据报文的时间,如果是,则继续步骤412,否则,拒绝接受该报文(步骤416)。
在步骤412,终端根据复合控制报文中提取的m和time计算新的摘要信息h′=Hash(m||time)。
在步骤414,终端使用数据源方的公钥和新的摘要信息h′对签名进行验证,验证签名是否有效。如果签名有效,则接受报文;否则,拒绝报文。
已有处于运行状态的旧终端(子站),接收复合控制报文后,按照原有数据格式,正常读取报文中的原有载荷部分,并执行控制命令,忽略对签名的处理。
上述实施例中,数据交换安全保护双方通过同步的时钟实现抗重放攻击,充分利用了现有的资源,便于实现。
上述实施例中利用控制中心(主站)和被控终端(子站)之间的时钟来实现抗重放攻击,此外,可以利用随机数来实现抗重放攻击功能。
图5出本发明的工业控制系统数据交换安全保护方法的又一个实施例的流程图。在该实施例中,在控制中心(主站)安装私钥,在被控终端(子站)预置数据源方的公钥。控制中心增加一个伪随机数发生器装置,被控终端增加一个存储所有接收到有效伪随机数的存储装置。
如图5所示,在步骤502,控制中心(主站)对报文m和随机数发生器所生成的随机字符串str∈{0,1}*计算摘要信息h=Hash(m||str)。
在步骤504,控制中心使用私钥对h计算签名。
在步骤506,控制中心将产生的签名和str添加到原报文后面形成复合控制报文M。
在步骤508,终端(子站)接收复合控制报文M后,从中提取随机字符串str。
在步骤510,终端判断str是否和已有接收到的有效列表中的任何一个伪随机字符串相同?如果是,则拒绝接受该报文(步骤516),否则,继续步骤512。
在步骤512,终端根据从复合控制报文提取的m和str计算新的摘要信息h′=Hash(m||str)。
在步骤514,终端根据控制中心的公钥以及新的摘要信息h′验证签名是否有效。如果签名有效,则接受报文;否则,拒绝该报文。
需要指出,上述实施例中,随机字符串可以是随机数。
已有处于运行状态的旧终端(子站),接收复合控制报文后,按照原有数据格式,正常读取报文中的原有载荷部分,并执行控制命令,忽略对签名的处理。
需要指出,在图2至图5的实施例中,都是控制中心作为发送端而终端作为接收端,本领域的技术人员应当理解,本发明同样适用于控制中心作为接收端而终端作为发送端,或者两个终端之间分别作为发送端和接收端。
本发明的实施例公开了一种以兼容原通信协议的方式实行安全通信的扩展机制,对发送报文添加具有数据源认证功能的完整性检查信息以及随机数信息,接收端对完整性检查信息进行验证源身份和报文的完整性,对交互报文进行数据源认证,完整性保护以及抗重放攻击。
图6示出本发明的工业控制系统数据交换安全保护系统的一个实施例的结构图。如图6所示,该工业控制系统数据交换安全保护系统的实施例包括工业控制系统发送端装置61和工业控制系统接收端装置60。
其中,工业控制系统发送端装置61包括校验码生成单元611和复合报文生成单元612。校验码生成单元611根据有效载荷、私钥或秘密生成完整性验证码。例如,校验码生成单元611根据有效载荷生成摘要信息,通过私钥对摘要信息进行加密生成签名,从而获得完整性验证码;或者校验码生成单元611根据有效载荷和秘密生成摘要信息,从而获得完整性验证码;复合报文生成单元612根据有效载荷和完整性验证码生成复合控制报文,向工业控制系统的接收端装置60发送复合控制报文。有效载荷例如是控制帧报文,或者控制帧报文||时戳,或者是控制帧报文||随机字符串;完整性校验码可以是有效载荷的摘要信息的签名,或者是有效载荷||秘密的摘要信息。
工业控制系统接收端装置60包括报文接收单元601、数据提取单元602、摘要计算单元603和完整性验证单元604。报文接收单元601接收来自工业控制系统的发送端的复合控制报文,复合控制报文包括有效载荷和完整性校验码;完整性校验码根据有效载荷的摘要信息和私钥生成、或者根据有效载荷和秘密的摘要信息生成。数据提取单元602从复合控制报文中提取有效载荷和完整性校验码;摘要计算单元603根据有效载荷例如通过哈希计算获得新的摘要信息;完整性验证单元604根据完整性校验码、公钥或秘密、新的摘要信息完成完整性验证。
根据本发明的一个实施例,发送端装置的校验码生成单元根据有效载荷和工业控制系统接收端的秘密生成完整性校验码。接收端装置的摘要计算单元根据有效载荷和工业控制系统接收端装置的秘密获得新的摘要信息。完整性验证单元比对完整性校验码和新的摘要信息进行完整性验证。
图7出本发明的工业控制系统数据交换安全保护系统的另一个实施例的结构图。如图7所示,该工业控制系统数据交换安全保护系统的实施例包括工业控制系统发送端装置71和工业控制系统接收端装置70。
其中,工业控制系统发送端装置71包括校验码生成单元711和复合报文生成单元712。校验码生成单元711包括摘要生成单元7111和签名生成单元7112。摘要生成单元7111根据有效载荷生成摘要信息;签名生成单元7112使用私钥对摘要生成单元7111生成的摘要信息进行加密生成签名;复合报文生成单元713根据有效载荷和签名生成单元7112生成的签名生成复合控制报文,向工业控制系统的接收端发送复合控制报文。
工业控制系统接收端装置70包括报文接收单元701、数据提取单元702、摘要计算单元703和完整性验证单元704。报文接收单元701接收来自工业控制系统的发送端的复合控制报文,复合控制报文包括有效载荷和完整性校验码;完整性校验码是根据有效载荷的摘要信息和私钥生成的签名。数据提取单元702从复合控制报文中提取有效载荷和完整性校验码;摘要计算单元703根据有效载荷例如通过哈希计算获得新的摘要信息;完整性验证单元704根据完整性校验码、公钥、新的摘要信息进行签名验证。
图8出本发明的工业控制系统数据交换安全保护系统的又一个实施例的结构图。如图8所示,该工业控制系统数据交换安全保护系统的实施例包括工业控制系统发送端装置81和工业控制系统接收端装置80。
其中,工业控制系统发送端装置81包括校验码生成单元811和复合报文生成单元812。校验码生成单元811包括摘要生成单元8111和签名生成单元8112。摘要生成单元8111根据有效载荷和时戳或随机字符串通过哈希计算生成摘要信息;签名生成单元8112使用私钥对摘要生成单元8111生成的摘要信息进行加密生成签名;复合报文生成单元812根据有效载荷、时戳或随机字符串、和签名生成单元8112生成的签名生成复合控制报文,向工业控制系统的接收端发送复合控制报文。
工业控制系统接收端装置80包括报文接收单元801、数据提取单元802、重放判断单元805、摘要计算单元803和完整性验证单元804。报文接收单元801接收来自工业控制系统的发送端的复合控制报文,复合控制报文包括有效载荷和完整性校验码、时戳或随机字符串。数据提取单元802从复合控制报文中提取有效载荷、完整性校验码和时戳或随机字符串。重放判断单元805通过时戳或随机字符串判断复合控制报文是否为重放报文,当复合控制报文为重放报文时,拒绝复合控制报文;否则,将有效载荷和时戳或随机字符串发送给摘要计算单元803,将完整性校验码发送给完整性验证单元804。摘要计算单元803根据有效载荷和时戳或随机字符串通过哈希计算获得新的摘要信息。完整性验证单元804根据完整性校验码、工业控制系统的发送端的公钥、新的摘要信息进行签名验证。
对于图6-8实施例中各个模块的具体实现,可以参见上文中图1-5实施例的描述,为简洁起见,在此没有详细描述。
在上面的几个实施例中,各个模块用框图示出以说明它们的功能。这些功能块可以用硬件、软件、固件、中间件、微代码、硬件描述语言或者它们的任意组合来实现。举例来说,一个或者两个功能块都可以利用运行在微处理器、数字信号处理器(DSP)或任何其他适当平台上的代码实现。代码可以表示过程、功能、子程序、程序、例行程序、子例行程序、模块或者指令、数据结构或程序语句的任意组合。代码可以位于计算机可读介质中。计算机可读介质可以包括一个或者多个存储设备,例如,包括RAM存储器、闪存存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或本领域公知的其他任何形式的存储介质。计算机可读介质还可以包括编码数据信号的载波。
可选地,或者除此之外,一个或者两个功能模块都可以利用专用集成电路(ASIC)、控制器、微控制器、状态机、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、离散门或者晶体管逻辑、离散硬件部件、或者它们的任意组合实现。
本领域技术人员将意识到硬件、固件和软件配置在这些情况下的可替换性,以及如何最好地实现每个特定应用地功能。
通过本发明的实施例,当工业控制系统控制中心或被控终端作为发送端发送控制或测量等报文时,在报文后添加完整性校验码或签名;接收端收到报文后,对完整性校验码或签名进行验证或解签,成功后再对报文进行处理。采用本发明实施例的技术方案,工业控制系统控制中心(主站)与被控终端(子站)可以对报文发送方的身份进行验证,防止恶意人员冒充控制中心(主站)或被控终端(子站)对工业控制系统进行控制和破坏;同时对测量、控制、参数设置等报文进行保护,防止恶意人员对报文内容的篡改。本发明在支持已有工控通信协议功能的前提下,能够实现控制中心(主站)与被控终端(子站)之间的数据源认证、完整性保护以及抗重放攻击功能。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (14)
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中任意一项所述的工业控制系统发送端装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106228812A CN102137095A (zh) | 2010-12-29 | 2010-12-29 | 工业控制系统数据交换安全保护方法、系统和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106228812A CN102137095A (zh) | 2010-12-29 | 2010-12-29 | 工业控制系统数据交换安全保护方法、系统和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102137095A true CN102137095A (zh) | 2011-07-27 |
Family
ID=44296751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010106228812A Pending CN102137095A (zh) | 2010-12-29 | 2010-12-29 | 工业控制系统数据交换安全保护方法、系统和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102137095A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188158A (zh) * | 2011-12-28 | 2013-07-03 | 清华大学 | 一种片上网络路由器及路由方法 |
CN103475478A (zh) * | 2013-09-03 | 2013-12-25 | 广东电网公司电力科学研究院 | 终端安全防护方法和设备 |
CN103581173A (zh) * | 2013-09-11 | 2014-02-12 | 北京东土科技股份有限公司 | 一种基于工业以太网的数据安全传输方法、系统及装置 |
CN103929423A (zh) * | 2014-04-15 | 2014-07-16 | 广东电网公司电力科学研究院 | 处理电力规约的IPSec VPN安全转发方法与系统 |
CN104392172A (zh) * | 2014-10-30 | 2015-03-04 | 北京科技大学 | 一种基于嵌入式的工业系统的安全检测方法及系统 |
WO2015035576A1 (zh) * | 2013-09-11 | 2015-03-19 | 北京东土科技股份有限公司 | 一种基于工业以太网的数据安全传输方法、系统及装置 |
CN106961110A (zh) * | 2017-04-25 | 2017-07-18 | 广东电网有限责任公司电力调度控制中心 | 电力系统自动电压控制方法和系统 |
CN107078866A (zh) * | 2014-11-10 | 2017-08-18 | 华为技术有限公司 | 低有效负荷确认的系统和方法 |
CN109993002A (zh) * | 2017-12-29 | 2019-07-09 | 西门子公司 | 一种数据完整性保护方法和装置 |
CN110717188A (zh) * | 2019-09-29 | 2020-01-21 | 武汉海昌信息技术有限公司 | 一种基于非对称性加密技术的公文批阅安全办法 |
CN114301590A (zh) * | 2021-12-28 | 2022-04-08 | 西安电子科技大学 | 基于tpm的无人机机载控制系统的可信启动方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558608A (zh) * | 2004-01-13 | 2004-12-29 | 重庆邮电学院 | 基于tcp/ip的工业控制网络的安全策略实现方法及系统 |
CN101076168A (zh) * | 2007-06-20 | 2007-11-21 | 华为技术有限公司 | 智能终端系统的管理方法和智能终端 |
CN101208981A (zh) * | 2005-05-17 | 2008-06-25 | 英特尔公司 | 在无线网络中协商保护管理帧的安全参数 |
CN101300809A (zh) * | 2005-11-03 | 2008-11-05 | 英特尔公司 | 用于使用直接链路建立(dls)协议在无线网络站点之间建立安全直接链路的方法、系统和可读介质 |
CN101379796A (zh) * | 2006-03-02 | 2009-03-04 | 英特尔公司 | 采用公共协议实现完整性保护和信源认证的快速漫游方法和移动站 |
-
2010
- 2010-12-29 CN CN2010106228812A patent/CN102137095A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558608A (zh) * | 2004-01-13 | 2004-12-29 | 重庆邮电学院 | 基于tcp/ip的工业控制网络的安全策略实现方法及系统 |
CN101208981A (zh) * | 2005-05-17 | 2008-06-25 | 英特尔公司 | 在无线网络中协商保护管理帧的安全参数 |
CN101300809A (zh) * | 2005-11-03 | 2008-11-05 | 英特尔公司 | 用于使用直接链路建立(dls)协议在无线网络站点之间建立安全直接链路的方法、系统和可读介质 |
CN101379796A (zh) * | 2006-03-02 | 2009-03-04 | 英特尔公司 | 采用公共协议实现完整性保护和信源认证的快速漫游方法和移动站 |
CN101076168A (zh) * | 2007-06-20 | 2007-11-21 | 华为技术有限公司 | 智能终端系统的管理方法和智能终端 |
Non-Patent Citations (1)
Title |
---|
王东滨等: "基于文件完整性检验的入侵检测及恢复技术的研究", 《计算机工程与应用》, no. 31, 31 December 2003 (2003-12-31) * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188158A (zh) * | 2011-12-28 | 2013-07-03 | 清华大学 | 一种片上网络路由器及路由方法 |
CN103475478A (zh) * | 2013-09-03 | 2013-12-25 | 广东电网公司电力科学研究院 | 终端安全防护方法和设备 |
CN103475478B (zh) * | 2013-09-03 | 2017-04-12 | 广东电网公司电力科学研究院 | 终端安全防护方法和设备 |
CN103581173A (zh) * | 2013-09-11 | 2014-02-12 | 北京东土科技股份有限公司 | 一种基于工业以太网的数据安全传输方法、系统及装置 |
WO2015035576A1 (zh) * | 2013-09-11 | 2015-03-19 | 北京东土科技股份有限公司 | 一种基于工业以太网的数据安全传输方法、系统及装置 |
CN103929423A (zh) * | 2014-04-15 | 2014-07-16 | 广东电网公司电力科学研究院 | 处理电力规约的IPSec VPN安全转发方法与系统 |
CN103929423B (zh) * | 2014-04-15 | 2017-08-25 | 广东电网公司电力科学研究院 | 处理电力规约的IPSec VPN安全转发方法与系统 |
CN104392172A (zh) * | 2014-10-30 | 2015-03-04 | 北京科技大学 | 一种基于嵌入式的工业系统的安全检测方法及系统 |
CN104392172B (zh) * | 2014-10-30 | 2017-07-04 | 北京科技大学 | 一种基于嵌入式的工业系统的安全检测方法及系统 |
CN107078866B (zh) * | 2014-11-10 | 2020-01-31 | 华为技术有限公司 | 低有效负荷确认的系统和方法 |
CN107078866A (zh) * | 2014-11-10 | 2017-08-18 | 华为技术有限公司 | 低有效负荷确认的系统和方法 |
CN106961110A (zh) * | 2017-04-25 | 2017-07-18 | 广东电网有限责任公司电力调度控制中心 | 电力系统自动电压控制方法和系统 |
CN106961110B (zh) * | 2017-04-25 | 2020-05-15 | 广东电网有限责任公司电力调度控制中心 | 电力系统自动电压控制方法和系统 |
CN109993002A (zh) * | 2017-12-29 | 2019-07-09 | 西门子公司 | 一种数据完整性保护方法和装置 |
CN109993002B (zh) * | 2017-12-29 | 2023-12-22 | 西门子公司 | 一种数据完整性保护方法和装置 |
CN110717188A (zh) * | 2019-09-29 | 2020-01-21 | 武汉海昌信息技术有限公司 | 一种基于非对称性加密技术的公文批阅安全办法 |
CN114301590A (zh) * | 2021-12-28 | 2022-04-08 | 西安电子科技大学 | 基于tpm的无人机机载控制系统的可信启动方法及系统 |
CN114301590B (zh) * | 2021-12-28 | 2023-11-10 | 西安电子科技大学 | 基于tpm的无人机机载控制系统的可信启动方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102137095A (zh) | 工业控制系统数据交换安全保护方法、系统和装置 | |
CN101753312B (zh) | 一种电网设备的安全认证方法、装置及一种负控终端 | |
CN106789015B (zh) | 一种智能配电网通信安全系统 | |
CN102983971B (zh) | 网络环境中进行用户身份认证的无证书签名方法 | |
CN104702466B (zh) | 一种基于iec62351的过程层安全测试系统及方法 | |
CN1922816B (zh) | 单向认证 | |
CN103888444A (zh) | 一种配电安全认证装置及其方法 | |
CN108833346A (zh) | 一种工业控制系统安全通信方法和装置 | |
CN103733564A (zh) | 利用隐式证书链的数字签名 | |
CN107888381A (zh) | 一种密钥导入的实现方法、装置及系统 | |
CN103888292A (zh) | 一种用于配电终端的运维工具及运维方法 | |
CN110098939A (zh) | 消息认证方法及装置 | |
CN104506500A (zh) | 一种基于变电站的goose报文认证方法 | |
CN107483191A (zh) | 一种sm2算法密钥分割签名系统及方法 | |
CN104618109A (zh) | 一种基于数字签名的电力终端数据安全传输方法 | |
CN104079408B (zh) | 一种工业控制系统中增强通信安全性的方法 | |
CN104811427A (zh) | 一种安全的工业控制系统通信方法 | |
CN103778353A (zh) | 电子文件的签署方法、装置和系统 | |
CN107249002B (zh) | 一种提高智能电能表安全性的方法、系统及装置 | |
CN101714919B (zh) | 基于rsa算法的前向安全数字签名算法 | |
CN104639328B (zh) | 一种goose报文认证方法及系统 | |
CN115001717A (zh) | 一种基于标识公钥的终端设备认证方法及系统 | |
CN101141278B (zh) | 数据传输系统、数据发送方法、数据处理方法及相应装置 | |
CN110505049A (zh) | 一种文本信息传输方法、装置及系统 | |
CN105162592B (zh) | 一种认证可穿戴设备的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110727 |