CN106230858A - 工业数据加密传输方法 - Google Patents
工业数据加密传输方法 Download PDFInfo
- Publication number
- CN106230858A CN106230858A CN201610801644.XA CN201610801644A CN106230858A CN 106230858 A CN106230858 A CN 106230858A CN 201610801644 A CN201610801644 A CN 201610801644A CN 106230858 A CN106230858 A CN 106230858A
- Authority
- CN
- China
- Prior art keywords
- data
- ciphertext
- message
- clear packets
- relief area
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0485—Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
本发明提供了一种工业数据加密传输方法,包含了数据加密方法和数据解密方法。所述数据加密方法的步骤包括创建明文缓冲区、创建明文分组队列一、创建密文存储区以及定义数据加密函数等步骤;所述数据解密方法的步骤包括创建密文接收缓冲区、创建密文接收分组队列、创建明文分组队列二和定义数据解密函数等步骤。本发明通过SM4加密算法对传输前的数据进行加密,并对接收到的数据进行解密,提高了数据传输的安全性能。
Description
技术领域
本发明涉及一种数据加密传输方法,尤其是一种基于uc/OS_II系统及总线协议的工业数据加密传输方法,属于工业控制领域。
背景技术
RTU(远程终端单元),英文全称Remote Terminal Unit,其主要功能是完成遥测、遥信、遥控的端口采集与命令执行,并将信息或结果组装成报文上送至SCADA系统,是工业以太网、DCS及现场总线控制系统的重要组成部分。
为应对针对工业控制网络和现场总线的攻击,保证数据传输的安全性,需要对传输的工业数据进行加密。然而,目前的RTU都不具有数据加密传输功能。
发明内容
为保证工业数据的传输安全,本发明提出了一种工业数据加密传输方法,其步骤为:
(1)创建通讯协议存储区,将工业现场所用的通讯协议驱动内置于该通讯协议存储区,使用该通讯协议存储区中的通讯协议驱动进行数据传输;
(2)创建一个通讯指令发送存储区,使用数据解密方法对接收到的读写工业现场设备的指令进行解密,并将解密后的指令存入通讯指令发送存储区;
(3)创建一个数据接收缓冲区,用于接收工业现场设备对读写指令的响应数据;
(4)对工业现场设备发送解密后的读写指令,将接收到的工业现场设备的响应数据存入数据接收缓冲区并使用数据加密方法进行加密;
所述数据加密方法的步骤包括:
(A-1)创建一个用于存储网络明文报文数据的明文缓冲区,并记录明文缓冲区的首指针;
(A-2)创建一个明文分组队列一,对明文缓冲区中的明文报文数据进行分组,明文分组队列一中的各明文分组成员与明文缓冲区中各明文分组报文一一对应并记载所对应的明文分组报文的首指针和报文长度;
(A-3)创建密文存储区,所述密文存储区中各密文分组成员用于与明文分组队列一中的各明文分组成员相对应;
(A-4)创建明文读指针指向明文分组队列一的第一个成员,并创建密文写指针指向密文存储区的第一个成员;
(A-5)定义数据加密函数:使用明文读指针读取明文缓冲区中的各明文分组报文,使用国密SM4算法、通过密钥对各明文分组报文分别进行加密,将加密后的数据通过密文写指针存入密文存储区的各密文分组成员中;
(A-6)创建总线数据通讯协议,并将该协议绑定到系统的数据链路层;
所述数据解密方法的步骤包括:
(B-1)创建一个用于存储网络密文报文数据的密文接收缓冲区,并记录密文接收缓冲区的首指针;将收到的密文报文数据进行分组,然后检查密文接收缓冲区是否有空间存储,如果有空间则将密文报文数据存储到密文接收缓冲区中;
(B-2)创建一个密文接收分组队列,密文接收分组队列中的各密文分组成员与密文接收缓冲区中各密文分组报文一一对应并记载所对应的密文分组报文的首指针和报文长度;
(B-3)创建明文分组队列二,所述明文分组队列二中各明文分组成员用于与密文接收分组队列中的各密文分组成员相对应;
(B-4)创建密文读指针指向密文接收分组队列的第一个成员,并创建明文写指针指向明文分组队列二的第一个成员;
(B-5)定义数据解密函数:使用密文读指针读取密文接收缓冲区中各密文分组报文,通过密钥对各密文分组报文分别进行解密,将解密后的数据使用明文写指针存入明文分组队列二的各明文分组成员中。
相对于现有技术,本发明的积极效果在于:(1)本方法将多种工业现场通讯协议内置在通讯协议存储区,实现了对现场多类设备数据寄存器的读写,降低了对设备底层的操作的复杂性;(2)本方法通过SM4加密算法对传输前的数据进行加密,并对接收到的数据进行解密,提高了数据传输的安全性能;(3)本发明使用分组的方式进行加密解密,一方面便于实现并行化加密解密,提高加密解密效率和传输的速度,另一方面通过分组拆装的方式可以提高在传输过程中破解加密数据的难度,进一步提升了数据传输的安全性。
附图说明
图1为本发明中数据加密的流程示意图。
图2为本发明中数据解密的流程示意图。
具体实施方式
下面结合附图详细说明本发明的技术方案:
一种工业数据加密传输方法,应用在基于uc/OS_II系统的RTU。uc/OS_II是一个完整的、可移植、可固化、可剪裁的占先式实时操作系统,适用于工业控制中的实时监控。将uc/OS_II实时操作系统进行移植、嵌入到RTU,并根据实际硬件设备和需求开发底层驱动程序,实现仪表、Modbus、RTU等协议的通信,不仅能够对所连接的被测设备进行控制信息的输入输出控制,还能够实现对其它RTU采集模块和输出模块的控制。
该工业数据加密传输方法的步骤为:
(1)创建通讯协议存储区,将工业现场所用的通讯协议驱动内置于该通讯协议存储区,使用该通讯协议存储区中的通讯协议驱动进行数据传输;
(2)创建一个通讯指令发送存储区,使用数据解密方法对接收到的读写工业现场设备的指令进行解密,并将解密后的指令存入通讯指令发送存储区;
(3)创建一个数据接收缓冲区,用于接收工业现场设备对读写指令的响应数据;
(4)对工业现场设备发送解密后的读写指令,将接收到的工业现场设备的响应数据存入数据接收缓冲区并使用数据加密方法进行加密;
如图1,所述数据加密方法的步骤包括:
(A-1)创建一个用于存储网络明文报文数据即待加密数据的明文缓冲区,并记录明文缓冲区的首指针;
(A-2)创建一个明文分组队列一,对明文缓冲区中的明文报文数据进行分组,明文分组队列一中的各明文分组成员与明文缓冲区中各明文分组报文一一对应并记载所对应的明文分组报文的首指针和报文长度;
(A-3)创建密文存储区,所述密文存储区中各密文分组成员用于与明文分组队列一中的各明文分组成员相对应;
(A-4)创建明文读指针指向明文分组队列一的第一个成员,并创建密文写指针指向密文存储区的第一个成员;
(A-5)定义数据加密函数:使用明文读指针读取明文缓冲区中的各明文分组报文,使用国密SM4算法、通过密钥对各明文分组报文分别进行加密,将加密后的数据通过密文写指针存入密文存储区的各密文分组成员中;密文存储区中的数据即为加密后的数据;
(A-6)创建总线数据通讯协议,并将该协议绑定到系统的数据链路层;
如图2,所述数据解密方法的步骤包括:
(B-1)创建一个用于存储网络密文报文数据即待解密数据的密文接收缓冲区,并记录密文接收缓冲区的首指针;将收到的密文报文数据进行分组,然后检查密文接收缓冲区是否有空间存储,如果有空间则将密文报文数据存储到密文接收缓冲区中;
(B-2)创建一个密文接收分组队列,密文接收分组队列中的各密文分组成员与密文接收缓冲区中各密文分组报文一一对应并记载所对应的密文分组报文的首指针和报文长度;
(B-3)创建明文分组队列二,所述明文分组队列二中各明文分组成员用于与密文接收分组队列中的各密文分组成员相对应;
(B-4)创建密文读指针指向密文接收分组队列的第一个成员,并创建明文写指针指向明文分组队列二的第一个成员;
(B-5)定义数据解密函数:使用密文读指针读取密文接收缓冲区中各密文分组报文,通过密钥对各密文分组报文分别进行解密,将解密后的数据使用明文写指针存入明文分组队列二的各明文分组成员中,明文分组队列二中数据的集合即为解密后的数据。
数据传输时,RTU根据解密后的指令,在自定义协议中调用相应的数据传输函数,进行加密数据传输。
本发明使用分组的方式进行加密解密,一方面便于实现并行化加密解密,提高加密解密效率和传输的速度,另一方面通过分组拆装的方式可以对数据进行混淆,并可对不同组的数据实行不同的加密方式,提高在传输过程中破解加密数据的难度,进一步提升了数据传输的安全性。
本方法还完善并优化了DES及SM4加密算法,提高了加密速率,使之能够适用于工业信息数据的加密传输。同时,开发人员还研究并利用了数字证书的加密原理对传输之前的数据进行密钥绑定,确保对设备的合法访问,且公钥和私钥可根据实际需要灵活设置。
基于本方法的RTU以标准的ModBusRTU协议、ModBusASCⅡ协议和Ethernet协议为基础,集成了各种工业仪表、智能模块、变频器等设备多达27种工业场合常用设备的通讯协议,建立了设备内置通讯协议库,使RTU通过简单的配置即既可作为数据采集终端直接与上位机SCADA系统软件进行数据通讯,又能作为其它数据采集终端与上位机SCADA系统软件进行加密数据通讯的通道,实现了SCADA与终端设备的无缝链接和数据透穿,适应不同的应用需求,解决了RTU通讯协议单一和适用性差的缺点,提高了设备的通用性。
Claims (1)
1.工业数据加密传输方法,其特征在于所述工业数据加密传输方法的步骤为:
(1)创建通讯协议存储区,将工业现场所用的通讯协议驱动内置于该通讯协议存储区,使用该通讯协议存储区中的通讯协议驱动进行数据传输;
(2)创建一个通讯指令发送存储区,使用数据解密方法对接收到的读写工业现场设备的指令进行解密,并将解密后的指令存入通讯指令发送存储区;
(3)创建一个数据接收缓冲区,用于接收工业现场设备对读写指令的响应数据;
(4)对工业现场设备发送解密后的读写指令,将接收到的工业现场设备的响应数据存入数据接收缓冲区并使用数据加密方法进行加密;
所述数据加密方法的步骤包括:
(A-1)创建一个用于存储网络明文报文数据的明文缓冲区,并记录明文缓冲区的首指针;
(A-2)创建一个明文分组队列一,对明文缓冲区中的明文报文数据进行分组,明文分组队列一中的各明文分组成员与明文缓冲区中各明文分组报文一一对应并记载所对应的明文分组报文的首指针和报文长度;
(A-3)创建密文存储区,所述密文存储区中各密文分组成员用于与明文分组队列一中的各明文分组成员相对应;
(A-4)创建明文读指针指向明文分组队列一的第一个成员,并创建密文写指针指向密文存储区的第一个成员;
(A-5)定义数据加密函数:使用明文读指针读取明文缓冲区中的各明文分组报文,使用国密SM4算法、通过密钥对各明文分组报文分别进行加密,将加密后的数据通过密文写指针存入密文存储区的各密文分组成员中;
(A-6)创建总线数据通讯协议,并将该协议绑定到系统的数据链路层;
所述数据解密方法的步骤包括:
(B-1)创建一个用于存储网络密文报文数据的密文接收缓冲区,并记录密文接收缓冲区的首指针;将收到的密文报文数据进行分组,然后检查密文接收缓冲区是否有空间存储,如果有空间则将密文报文数据存储到密文接收缓冲区中;
(B-2)创建一个密文接收分组队列,密文接收分组队列中的各密文分组成员与密文接收缓冲区中各密文分组报文一一对应并记载所对应的密文分组报文的首指针和报文长度;
(B-3)创建明文分组队列二,所述明文分组队列二中各明文分组成员用于与密文接收分组队列中的各密文分组成员相对应;
(B-4)创建密文读指针指向密文接收分组队列的第一个成员,并创建明文写指针指向明文分组队列二的第一个成员;
(B-5)定义数据解密函数:使用密文读指针读取密文接收缓冲区中各密文分组报文,通过密钥对各密文分组报文分别进行解密,将解密后的数据使用明文写指针存入明文分组队列二的各明文分组成员中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610801644.XA CN106230858A (zh) | 2016-09-05 | 2016-09-05 | 工业数据加密传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610801644.XA CN106230858A (zh) | 2016-09-05 | 2016-09-05 | 工业数据加密传输方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106230858A true CN106230858A (zh) | 2016-12-14 |
Family
ID=58075296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610801644.XA Pending CN106230858A (zh) | 2016-09-05 | 2016-09-05 | 工业数据加密传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106230858A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107786404A (zh) * | 2017-09-20 | 2018-03-09 | 北京东土科技股份有限公司 | 工业互联网现场层宽带总线架构的安全性实现方法及装置 |
CN116436595A (zh) * | 2023-02-06 | 2023-07-14 | 祎智量芯(江苏)电子科技有限公司 | 一种基于modbus通信协议的通信方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101610602A (zh) * | 2009-04-16 | 2009-12-23 | 成都众山科技有限公司 | 一种gprs网络远程测控终端 |
CN103716157A (zh) * | 2013-12-13 | 2014-04-09 | 厦门市美亚柏科信息股份有限公司 | 分组多密钥加密方法及装置 |
CN103812641A (zh) * | 2012-11-07 | 2014-05-21 | 中国科学院微电子研究所 | 一种实现sm4分组对称密码算法的系统 |
DE102015008012A1 (de) * | 2014-07-22 | 2016-01-28 | Intel Corporation | SM4-Beschleunigungsprozessoren, Verfahren, Systeme und Anweisungen |
-
2016
- 2016-09-05 CN CN201610801644.XA patent/CN106230858A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101610602A (zh) * | 2009-04-16 | 2009-12-23 | 成都众山科技有限公司 | 一种gprs网络远程测控终端 |
CN103812641A (zh) * | 2012-11-07 | 2014-05-21 | 中国科学院微电子研究所 | 一种实现sm4分组对称密码算法的系统 |
CN103716157A (zh) * | 2013-12-13 | 2014-04-09 | 厦门市美亚柏科信息股份有限公司 | 分组多密钥加密方法及装置 |
DE102015008012A1 (de) * | 2014-07-22 | 2016-01-28 | Intel Corporation | SM4-Beschleunigungsprozessoren, Verfahren, Systeme und Anweisungen |
Non-Patent Citations (3)
Title |
---|
凡杰: ""多现场总线数据采集与监控软件开发"", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
宋磊: ""电力系统实时数据通信加密方案"", 《电力系统自动化》 * |
陈栩云: ""S7-200PLC在供水管网检测系统的开发和应用"", 《计算机应用工程技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107786404A (zh) * | 2017-09-20 | 2018-03-09 | 北京东土科技股份有限公司 | 工业互联网现场层宽带总线架构的安全性实现方法及装置 |
CN116436595A (zh) * | 2023-02-06 | 2023-07-14 | 祎智量芯(江苏)电子科技有限公司 | 一种基于modbus通信协议的通信方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102412967B (zh) | 数据传输系统和方法 | |
CN105827665A (zh) | 一种sdn网络控制器与交换机之间的流表消息敏感数据加密方法 | |
CN102081713B (zh) | 一种用于防止数据泄密的办公系统 | |
CN106209356A (zh) | 用于物联网远程控制的保密控制方法及系统 | |
CN104394148A (zh) | IPv6下IPSec协议外出处理硬件实现系统 | |
CN113542428B (zh) | 车辆数据上传方法、装置、车辆、系统及存储介质 | |
CN103986582A (zh) | 一种基于动态加密技术的数据加密传输方法、装置及系统 | |
CN107426193A (zh) | 一种https应用中针对硬件加速的新型I/O通路设计 | |
CN102739393B (zh) | 基于apb总线的硬件加密uart装置 | |
CN106230858A (zh) | 工业数据加密传输方法 | |
CN102332077A (zh) | 手持设备数据加解密方法及其手持设备外设 | |
CN101431408B (zh) | 可实现通信终端与无线局域网连接的加密装置 | |
CN108021817A (zh) | 一种加解密存储器访问接口实现系统及方法 | |
CN109726566B (zh) | 基于安全内存加密技术的加密系统和加密方法 | |
CN111083104A (zh) | 一种实现主机同时接入内外网络的方法和系统 | |
CN101325486B (zh) | 域许可密钥的转移方法及设备 | |
CN100364305C (zh) | 工业控制网络的信息安全方法及安全功能块 | |
CN205812031U (zh) | 用于物联网远程控制的保密控制装置 | |
CN115694922A (zh) | 在国产cpu和os下的文件传输加密方法及设备 | |
EP4020875A1 (en) | Method, first server, second server, and system for transmitting securely a key | |
CN202696900U (zh) | 一种基于蓝牙组网的持卡人环境用终端系统 | |
CN211046952U (zh) | 一种基于NB-IoT的物联网安全通信装置 | |
CN102930229A (zh) | 用于提高数据安全性的办公系统 | |
CN207573392U (zh) | 用于用电信息采集的北斗安全数传终端 | |
CN111147487A (zh) | 一种安全的海上数据传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161214 |
|
RJ01 | Rejection of invention patent application after publication |