本发明属于电力网络安全技术领域,具体涉及基于qr-code的安全级烟气在线监测系统和装置。
背景技术:
烟气在线监测系统(continuousemissionmonitoringsystem)简称cems系统,是许多大型发电厂正常运行和环保数据监测传输的重要在线监测系统,主要监测参数为so2、nox、o2以及烟气流速、温度、压力、湿度、粉尘浓度等。监测数据实时反应生产情况,为生产运行人员操作设备提供依据,也为环保部门提供排放监测信息。同时cems数据也是国家排污费税收取以及相关环保处罚的一个重要依据,因此cems的运行稳定性至关重要。
当前,大部分发电厂的cmes系统均采用一端接入发电厂电力监控系统生产控制大区网络,另一端通过gprs、vpn、4g等方式接入环保局政府的网络的模式,这种模式将高安全级的电力监控系统网络和低安全级的管理信息大区网络直接连在了一起,不满足国家能源局、公安部等部委关于电力监控系统“网络分区、专网专用、横向隔离、纵向认证”的安全级要求,也不满足各大发电集团规定的工控网络中严禁接入无线网络设备的要求,为电力监控系统等关键基础设施的安全、稳定运行埋下了隐患;此外,一部分发电厂为了解决此问题,协调环保局,在cmes系统的两端分别安装了电力专用的单向隔离装置,使得网络安全能够满足有关部委的要求,但该方案存在投资成本增加、协调成本较高、资产管理比较复杂、升级改造不方便等问题,限制了该方案的推广和应用,且由于单向隔离装置仍然采用单芯光纤进行物理连接,根据最新的网络攻击技术的发展,已经出现了单芯光纤双向传输数据的网络攻击方法,且隔离装置安全依赖于配置策略的条目数量,所以安全性面临着越来越多的挑战。
qrcode码,是一种矩阵二维码,它具有一维条码及其它二维条码所具有的信息容量大、可靠性高、可表示汉字及图象多种文字信息、保密防伪性强等优点。
技术实现要素:
本发明针对现有技术存在的不足,提供基于qr-code的安全级烟气在线监测系统和装置,该系统和装置直接在自身实现了高、低级别网络的纯物理隔离安全级别的数据传输,并且不需要在电厂和环保局两侧增加额外的设备,既解决了环保部门监督管理各发电厂环保工作的要求,也解决了发电厂安装cmes系统不符合电力监控系统网络安全制度和规定的要求,提升了电力关键基础设施的网络安全水平,有利于在电力行业的推广应用。
为了达到上述目的,本发明是通过以下技术方案来实现的:
基于qr-code的安全级烟气在线监测系统,所述系统包括数据采集单元1、数据处理和控制单元5、数据封装模块6、物理安全级正向传输模块7、物理安全级反向控制模块13、数据解封模块10、发送模块11、控制接收和分析模块12、控制命令重构模块16和命令白名单17,其中:
所述数据采集单元1包括颗粒物采集模块2、烟气参数采集模块3和气态污染物采集模块4,其中,所述颗粒物采集模块2负责通过颗粒物测量仪采集烟气中颗粒物的种类和浓度信息;所述烟气参数采集模块3负责通过温度测量仪、压力测量仪、流量测量仪、湿度测量仪和氧测量仪分别采集烟气温度、压力、流量、湿度和氧含量信息;所述气态污染物采集模块4负责通过气态污染物采样器和分析仪采集并分析气态污染物的种类和含量信息;所述数据采集单元1负责将各采集模块采集的数据发送给数据处理和控制单元5进行处理,并且接收数据处理和控制单元5发送过来的参数调节命令对各采集模块进行参数调节;
所述数据处理和控制单元5负责对数据采集单元1发送过来的采集数据进行清洗和计算,并提供统计、分析和查询功能,同时,负责接收控制命令重构模块16发送过来的控制命令,并执行相应的操作;
所述数据封装模块6负责将数据处理和控制单元5发送过来的数据进行格式化处理,并采用国密加密算法进行数据加密,然后封装成固定格式的数据包,传递给物理安全级正向传输模块7;
所述物理安全级正向传输模块7负责将数据采用qr-code技术转换为单层灰色二维码图片,并建立完全物理隔离的传输通道,将二维码图片从高安全级的生产控制大区传输给低安全级的管理信息大区,所述物理安全级正向传输模块7包括正向数据构造器8和正向数据扫描器9;其中,所述正向数据构造器8负责创建基于qc-code的单层灰色二维码图片,并将要传输的数据插入到二维码图片中,然后通过显示屏进行展示;所述正向数据扫描器9负责通过摄像头识别正向数据构造器8显示屏上的二维码图片,然后将二维码图片中的数据提取出来,传递给数据解封模块10进行处理;
所述数据解封模块10负责将数据进行解密,并提取出其中已经格式化的烟气监测数据,然后构造成符合环保局数据格式要求的数据后,传递给发送模块11;
所述控制接收和分析模块12负责接收环保局发送过来的控制命令数据流,然后通过数据包分析技术,提取控制命令数据流中的控制命令,传递给物理安全级反向控制模块13进行处理;
所述物理安全级反向控制模块13负责将控制命令采用qr-code技术转换为单层二维码图片,并建立完全物理隔离的传输通道,将控制命令从低安全级的管理信息大区传输给高安全级的生产控制大区,所述物理安全级反向控制模块13包括反向控制构造器14和反向控制扫描器15;其中,所述反向控制构造器14负责创建基于qc-code的单层灰色二维码图片,并将要传输的控制命令插入到二维码图片中,然后通过显示屏进行展示;所述反向控制扫描器15负责通过摄像头识别反向控制构造器14显示屏上的二维码图片,然后将二维码图片中的控制命令提取出来,传递给控制命令重构模块16进行处理;
所述控制命令重构模块16负责对控制命令进行分析,提取出关键参数信息,然后按照命令白名单17的规则,重新构造成高安全级的控制命令,发送给数据处理和控制单元5进行处理,避免遭受注入、溢出和文件上传网络攻击;
所述命令白名单17用于描述烟气在线监测系统允许使用的查询、控制命令的编码规则,为控制命令重构提供依据,只有负责编码规则的命令允许在系统中执行。
所述的数据处理和控制单元5负责接收控制命令重构模块16发送过来的控制命令,并执行相应的操作的具体方法包括:
数据处理和控制单元5判断控制命令的类型是否属于以下类型中的一种,如果不属于,则丢弃命令,不做任何操作,否则执行命令对应的操作:
1)查询命令:执行数据库查询操作,将查询结果送往数据封装模块6;
2)删除命令:执行数据库删除操作,将操作结果送往数据封装模块6;
3)参数调节命令:将参数调节命令送往数据采集单元1的对应采集模块,执行采集模块参数调节,并将调节后的结果送往数据封装模块6。
所述的数据封装模块6负责将数据处理和控制单元5发送过来的数据进行格式化处理,并采用国密加密算法进行数据加密,然后封装成固定格式的数据包,传递给物理安全级正向传输模块7的过程的具体步骤包括:
a、数据格式化:将数据处理和控制单元5发送过来的数据库查询结果、控制命令执行结果采用轻量级的数据交换格式json进行格式化,形成格式化数据data;
b、数据加密:为保证数据传输过程的安全性,使用国密加密算法sm4对格式化数据data进行加密,形成加密数据datas;
c、数据校验:使用循环冗余校验算法crc对加密数据datas进行计算,得到校验码datacrc;
d、数据包封装:将报文头dheader转换为二进制代码v1,将报文结尾dend转换为二进制代码v2,然后按照v1、datas、datacrc、v2的顺序进行数据组合,封装为一个数据包vdata;
e、数据包发送:将封装后的数据包vdata发送给正向数据构造器8。
所述物理安全级正向传输模块7负责将数据采用qr-code技术转换为单层灰色二维码图片,并建立完全物理隔离的传输通道,将二维码图片从高安全级的生产控制大区传输给低安全级的管理信息大区的操作的具体步骤包括:
a、数据分块:按照每个数据块存储1000个字符的大小对数据包进行切块,切分为n个数据块,放入queue队列,不满足1000个字符的最后一块使用操作系统的文件结束符进行填充;
b、二维码生成:从queue队列中逐一取出每个数据块,然后使用qr-code技术生成单层灰色二维码图片,存入rqueue队列中;
c、二维码显示:计算rqueue队列的长度为n,然后对n取平方,如果结果为整数l,则将正向数据构造器8的高清显示屏上显示的二维码行数设定为l,否则l=l+1,然后按照l行、l列的排列方式,将rqueue队列中的二维码全部显示在显示屏上;
d、二维码读取:正向数据扫描器9采用高清摄像头按照逐行、逐列的顺序,从左到右、从上到下地读取正向数据构造器8的显示屏上的每一个二维码,并形成jpg图片,存储到本地的pqueue队列中。
所述数据解封模块10负责将数据进行解密,并提取出其中已经格式化的烟气监测数据,然后构造成符合环保局数据格式要求的数据后,传递给发送模块11的过程的具体步骤包括:
a、数据提取:将本地的pqueue队列中的二维码图片逐一进行识别,提取出其中的数据,然后将所有数据按照队列顺序合并后得到vdata数据包;
b、数据解析:在vdata数据包中定位报文头dheaer、报文结尾dend的位置,取出两者间的datas、datacrc数据;
c、数据校验:使用循环冗余校验算法crc对加密数据datas进行计算,将计算值和校验码datacrc进行比较,如果相等,则数据正确,如果不相等,则数据存在错误,直接进行丢弃;
d、数据解密:使用国密加密算法sm4的解密密钥,对加密数据datas进行解密计算,得到格式化数据data;
e、数据转换:根据各地环保局的数据接入格式要求,对格式化数据data中的json格式数据进行格式转换,转换成符合环保局要求的数据格式。
所述控制接收和分析模块12负责接收环保局发送过来的控制命令数据流,然后通过数据包分析技术,提取控制命令数据流中的控制命令,传递给物理安全级反向控制模块13进行处理的过程的具体步骤包括:
a、流量监测:对网络流量进行监测,当发现其中有request请求流量时,将请求流量提取出来;
b、命令分析:对request请求流量进行分析,提取出其中的目的地址、请求参数和参数值信息,如果目的地址是到该电厂烟气在线监测系统ip地址的,则将提取信息传给反向控制构造器14,否则直接丢弃。
所述物理安全级反向控制模块13负责将控制命令采用qr-code技术转换为单层二维码图片,并建立完全物理隔离的传输通道,将控制命令从低安全级的管理信息大区传输给高安全级的生产控制大区的过程的具体步骤包括:
a、二维码生成:从请求信息直接使用qr-code技术生成单层灰色二维码图片;
b、二维码显示:直接将二维码图片在反向控制构造器14的显示屏上进行显示;
c、二维码读取:反向控制扫描器15采用高清摄像头直接读取反向控制构造器14的显示屏上的二维码,并直接识别出其中的请求信息,然后传递给控制命令重构模块16。
所述控制命令重构模块16负责对控制命令进行分析,提取出关键参数信息,然后按照命令白名单17的规则,重新构造成高安全级的控制命令的过程的具体步骤包括:
a、关键参数提取:将请求信息中的关键信息以字典对的格式提取出来,放入队列中,所述关键信息包括:命令类型、参数名称和参数值;
b、命令合法性判断:将关键信息中的命令类型与命令白名单17描述的命令清单进行比较,如果在清单内,则该命令可以执行,如果不在清单内,则命令属于不合法命令,直接进行丢弃;
c、参数值处理:首先对参数值中的空白字符进行清除,然后将参数值与命令白名单17中描述的每一行命令的参数值的范围进行比较,如果值超出范围,则进行丢弃,如果值在范围内,则对参数值进行标准的转义处理;
d、命令重构:根据命令类型和参数名称,在命令白名单17中寻找匹配的允许执行命令,然后选取出来,并将参数值用转义后的参数值进行替代,从而形成了完全合法有效的允许执行命令。
基于qr-code的安全级烟气在线监测装置,所述装置包括采集单元18、处理单元19和响应单元20,其中:
所述的采集单元18包括所述的数据采集单元1;
所述的处理单元19包括所述的数据处理和控制单元5、数据封装模块6、物理安全级正向传输模块7、数据解封模块10、物理安全级反向控制模块13、控制命令重构模块16以及命令白名单17;
所述的响应模块20包括所述的发送模块11以及控制接收和分析模块12。
和现有技术相比较,本发明的有益效果在于:
1)该系统和装置内部连接的高、低级别网络之间完全物理隔离,也没有使用无线等工控网络中不允许使用的无线技术,采用的qr-code图像交互技术只能单向交互,数据只能单向传输,黑客无法在两个网络间建立持久的连接,比传统的电力单向隔离网闸设备更加安全;
2)系统和装置使用方便,只需要电厂侧或环保局任一侧安装该系统和装置即可,无须两边分别部署,投资成本低,管理责任清晰,使用维护方便;
3)该系统和装置结合电厂实际业务流量特点、日常操作业务特点,支持大容量的数据传输、白名单的命令控制,不影响现有业务的正常运行,有利于推广使用。
附图说明
图1是本发明系统的架构图。
图2是本发明装置的组成示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案做进一步地详细说明。
实施例
图1为本发明基于qr-code的安全级烟气在线监测系统的架构图,所述系统适用在需要将生产控制大区的网络接入环保部门网络,接收环保局监督管理的火电厂使用。
如图1所示,本发明基于qr-code的安全级烟气在线监测系统,该系统包括数据采集单元1、数据处理和控制单元5、数据封装模块6、物理安全级正向传输模块7、物理安全级反向控制模块13、数据解封模块10、发送模块11、控制接收和分析模块12、控制命令重构模块16和命令白名单17,其中:
所述数据采集单元1包括颗粒物采集模块2、烟气参数采集模块3和气态污染物采集模块4,其中,所述颗粒物采集模块2负责通过颗粒物测量仪采集烟气中颗粒物的种类和浓度信息;所述烟气参数采集模块3负责通过温度测量仪、压力测量仪、流量测量仪、湿度测量仪和氧测量仪分别采集烟气温度、压力、流量、湿度和氧含量信息;所述气态污染物采集模块4负责通过气态污染物采样器和分析仪采集并分析气态污染物(co、so2、no2、nh3、h2s等)的种类和含量信息;所述数据采集单元1负责将各采集模块采集的数据发送给数据处理和控制单元5进行处理,并且接收数据处理和控制单元5发送过来的参数调节命令对各采集模块进行参数调节;
所述数据处理和控制单元5负责数据采集单元1对发送过来的采集数据进行清洗和计算,并提供统计、分析和查询功能,同时,负责接收控制命令重构模块16发送过来的控制命令,并执行相应的操作;
所述数据封装模块6负责将数据处理和控制单元5发送过来的数据进行格式化处理,并采用国密加密算法进行数据加密,然后封装成固定格式的数据包,传递给物理安全级正向传输模块7;
所述物理安全级正向传输模块7负责将数据采用qr-code技术转换为单层灰色二维码图片,并建立完全物理隔离的传输通道,将二维码图片从高安全级的生产控制大区传输给低安全级的管理信息大区,所述物理安全级正向传输模块7包括正向数据构造器8和正向数据扫描器9;其中,所述正向数据构造器8负责创建基于qc-code的单层灰色二维码图片,并将要传输的数据插入到二维码图片中,然后通过显示屏进行展示;所述正向数据扫描器9负责通过摄像头识别正向数据构造器8显示屏上的二维码图片,然后将二维码图片中的数据提取出来,传递给数据解封模块10进行处理;
所述数据解封模块10负责将数据进行解密,并提取出其中已经格式化的烟气监测数据,然后构造成符合环保局数据格式要求的数据后,传递给发送模块11;
所述控制接收和分析模块12负责接收环保局发送过来的控制命令数据流,然后通过数据包分析技术,提取控制命令数据流中的控制命令,传递给物理安全级反向控制模块13进行处理;
所述物理安全级反向控制模块13负责将控制命令采用qr-code技术转换为单层二维码图片,并建立完全物理隔离的传输通道,将控制命令从低安全级的管理信息大区传输给高安全级的生产控制大区,所述物理安全级反向控制模块13包括反向控制构造器14和反向控制扫描器15;其中,所述反向控制构造器14负责创建基于qc-code的单层灰色二维码图片,并将要传输的控制命令插入到二维码图片中,然后通过显示屏进行展示;所述反向控制扫描器15负责通过摄像头识别反向控制构造器14显示屏上的二维码图片,然后将二维码图片中的控制命令提取出来,传递给控制命令重构模块16进行处理;
所述控制命令重构模块16负责对控制命令进行分析,提取出关键参数信息,然后按照命令白名单17的规则,重新构造成高安全级的控制命令,发送给数据处理和控制单元5进行处理,避免遭受注入、溢出、文件上传等网络攻击;
所述命令白名单17用于描述烟气在线监测系统允许使用的查询、控制命令的编码规则,为控制命令重构提供依据,只有负责编码规则的命令允许在系统中执行。
作为本发明的优选实施方式,所述的数据处理和控制单元5负责接收控制命令重构模块16发送过来的控制命令,并执行相应的操作的具体方法包括:
数据处理和控制单元5判断控制命令的类型是否属于以下类型中的一种,如果不属于,则丢弃命令,不做任何操作,否则执行命令对应的操作:
1)查询命令:执行数据库查询操作,将查询结果送往数据封装模块6;
2)删除命令:执行数据库删除操作,将操作结果送往数据封装模块6;
3)参数调节命令:将参数调节命令送往数据采集单元1的对应采集模块,执行采集模块参数调节,并将调节后的结果送往数据封装模块6。
作为本发明的优选实施方式,所述的数据封装模块6负责将数据处理和控制单元5发送过来的数据进行格式化处理,并采用国密加密算法进行数据加密,然后封装成固定格式的数据包,传递给物理安全级正向传输模块7的过程的具体步骤包括:
a、数据格式化:将数据处理和控制单元5发送过来的数据库查询结果、控制命令执行结果采用轻量级的数据交换格式json(javascriptobjectnotation,js对象简谱)进行格式化,形成格式化数据data;
b、数据加密:为保证数据传输过程的安全性,使用国密加密算法sm4对格式化数据data进行加密,形成加密数据datas;
c、数据校验:使用循环冗余校验算法crc对加密数据datas进行计算,得到校验码datacrc;
d、数据包封装:将报文头dheader转换为二进制代码v1,将报文结尾dend转换为二进制代码v2,然后按照v1、datas、datacrc、v2的顺序进行数据组合,封装为一个数据包vdata;
e、数据包发送:将封装后的数据包vdata发送给正向数据构造器8。
作为本发明的优选实施方式,所述物理安全级正向传输模块7负责将数据采用qr-code技术转换为单层灰色二维码图片,并建立完全物理隔离的传输通道,将二维码图片从高安全级的生产控制大区传输给低安全级的管理信息大区的操作的具体步骤包括:
a、数据分块:按照每个数据块存储1000个字符的大小对数据包进行切块,切分为n个数据块(不满足1000个字符的最后一块使用操作系统的文件结束符进行填充),放入queue队列;
b、二维码生成:从queue队列中逐一取出每个数据块,然后使用qr-code码技术生成单层灰色二维码图片,存入rqueue队列中;
c、二维码显示:计算rqueue队列的长度为n,然后对n取平方,如果结果为整数l,则将正向数据构造器8的高清显示屏上显示的二维码行数设定为l,否则l=l+1,然后按照l行、l列的排列方式,将rqueue队列中的二维码全部显示在显示屏上;
d、二维码读取:正向数据扫描器9采用高清摄像头按照逐行、逐列的顺序,从左到右、从上到下地读取正向数据构造器8的显示屏上的每一个二维码,并形成jpg图片,存储到本地的pqueue队列中。
作为本发明的优选实施方式,所述数据解封模块10负责将数据进行解密,并提取出其中已经格式化的烟气监测数据,然后构造成符合环保局数据格式要求的数据后,传递给发送模块11的过程的具体步骤包括:
a、数据提取:将本地的pqueue队列中的二维码图片逐一进行识别,提取出其中的数据,然后将所有数据按照队列顺序合并后得到vdata数据包;;
b、数据解析:在vdata数据包中定位报文头dheaer、报文结尾dend的位置,取出两者间的datas、datacrc数据;
c、数据校验:使用循环冗余校验算法crc对加密数据datas进行计算,将计算值和校验码datacrc进行比较,如果相等,则数据正确,如果不相等,则数据存在错误,直接进行丢弃;
d、数据解密:使用国密加密算法sm4的解密密钥,对加密数据datas进行解密计算,得到格式化数据data;
e、数据转换:根据各地环保局的数据接入格式要求,对格式化数据data中的json格式数据进行格式转换,转换成符合环保局要求的数据格式。
作为本发明的优选实施方式,所述控制接收和分析模块12负责接收环保局发送过来的控制命令数据流,然后通过数据包分析技术,提取控制命令数据流中的控制命令,传递给物理安全级反向控制模块13进行处理的过程的具体步骤包括:
a、流量监测:对网络流量进行监测,当发现其中有request请求流量时,将请求流量提取出来;
b、命令分析:对request请求流量进行分析,提取出其中的目的地址、请求参数和参数值信息,如果目的地址是到该电厂烟气在线监测系统ip地址的,则将提取信息传给反向控制构造器14,否则直接丢弃。
作为本发明的优选实施方式,所述物理安全级反向控制模块13负责将控制命令采用qr-code技术转换为单层二维码图片,并建立完全物理隔离的传输通道,将控制命令从低安全级的管理信息大区传输给高安全级的生产控制大区的过程的具体步骤包括:
a、二维码生成:从请求信息直接使用qr-code技术生成单层灰色二维码图片;
b、二维码显示:直接将二维码图片在反向控制构造器14的显示屏上进行显示;
c、二维码读取:反向控制扫描器15采用高清摄像头直接读取反向控制构造器14的显示屏上的二维码,并直接识别出其中的请求信息,然后传递给控制命令重构模块16。
作为本发明的优选实施方式,所述控制命令重构模块16负责对控制命令进行分析,提取出关键参数信息,然后按照命令白名单17的规则,重新构造成高安全级的控制命令的过程的具体步骤包括:
a、关键参数提取:将请求信息中的关键信息以字典对的格式提取出来,放入队列中,所述关键信息包括:命令类型查询/删除/参数调整、参数名称、参数值;
b、命令合法性判断:将关键信息中的命令类型与命令白名单17描述的命令清单进行比较,如果在清单内,则该命令可以执行,如果不在清单内,则命令属于不合法命令,直接进行丢弃;
c、参数值处理:首先对参数值中的空白字符进行清除,然后将参数值与命令白名单17中描述的每一行命令的参数值的范围进行比较,如果值超出范围,则进行丢弃,如果值在范围内,则对参数值进行标准的转义处理;
d、命令重构:根据命令类型和参数名称,在命令白名单17中寻找匹配的允许执行命令,然后选取出来,并将参数值用转义后的参数值进行替代,从而形成了完全合法有效的允许执行命令。
基于以上实施例,本发明实施例提供了基于qr-code的安全级烟气在线监测装置,该装置用于实现实施例中相应的流程或者步骤。参阅图2所示,该装置包括采集单元18、处理单元19和响应单元20,其中:
所述的采集单元18包括所述的数据采集单元1;
所述的处理单元19包括所述的数据处理和控制单元5、数据封装模块6、物理安全级正向传输模块7、数据解封模块10、物理安全级反向控制模块13、控制命令重构模块16和命令白名单17;
所述的响应模块20包括所述的发送模块11以及控制接收和分析模块12。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。