CN118282744A - 数据传输方法、系统、设备及存储介质 - Google Patents
数据传输方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN118282744A CN118282744A CN202410397600.XA CN202410397600A CN118282744A CN 118282744 A CN118282744 A CN 118282744A CN 202410397600 A CN202410397600 A CN 202410397600A CN 118282744 A CN118282744 A CN 118282744A
- Authority
- CN
- China
- Prior art keywords
- data
- processing
- control end
- algorithm
- encrypted data
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 83
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 112
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 108
- 238000012795 verification Methods 0.000 claims abstract description 27
- 238000013496 data integrity verification Methods 0.000 claims abstract description 20
- 238000007726 management method Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 35
- 238000004590 computer program Methods 0.000 claims description 19
- 238000009826 distribution Methods 0.000 claims description 3
- 230000000737 periodic effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 11
- 238000004519 manufacturing process Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 238000000354 decomposition reaction Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000009776 industrial production Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Abstract
本申请适用于数据传输技术领域,提供了一种数据传输方法、系统、设备及存储介质,该方法包括:现场设备端、现场控制端、监督控制端和操作管理端,所述方法主要包括:所述监督控制端对所述第一加密数据进行数据完整性验证处理和/或身份来源验证处理,当所述第一加密数据通过所述数据完整性验证处理和/或身份来源验证处理时,所述监督控制端利用与所述预设加密算法对应的解密算法对所述第一加密数据进行解密处理,生成第一解密数据。该方案通过监督控制端对第一加密数据进行验证处理确保数据完整性和身份来源的可信性,增强了数据传输的安全性,保护数据在传输过程中不被窃取。
Description
技术领域
本申请涉及数据传输技术领域,尤其涉及一种数据传输方法、系统、设备及存储介质。
背景技术
工业控制系统作为工业生产的核心,自身网络环境复杂,传统工业通讯协议在设计之初并未考虑安全性,设备间通信存在明文传输、身份无法确认等诸多安全隐患。
在相关方案中,主要是通过利用证书颁发机构服务器进行数字证书签发的方式来保护发送方和接收方的数据传输过程,但是,由于整个系统依赖于证书颁发机构服务器进行数字证书的签发和验证,一旦证书颁发机构服务器发生故障或遭受攻击,整个系统的数字证书管理功能可能会受到影响,导致系统运行异常。
发明内容
本申请实施例提供了一种数据传输方法、系统、设备及存储介质,可以解决如何安全、稳定地进行工业数据传输的技术问题。
第一方面,本申请实施例提供了一种数据传输方法,包括:
现场设备端采集实时现场数据,并将实时现场数据发送给现场控制端。
现场控制端利用预设加密算法对实时现场数据进行加密处理,生成第一加密数据,将第一加密数据发送到监督控制端。
监督控制端对第一加密数据进行数据完整性验证处理和/或身份来源验证处理,当第一加密数据通过数据完整性验证处理和/或身份来源验证处理时,监督控制端利用与预设加密算法对应的解密算法对第一加密数据进行解密处理,生成第一解密数据。
监督控制端将第一解密数据利用预设加密算法进行加密处理之后生成第二加密数据,将第二加密数据发送到操作管理端。
操作管理端利用与预设加密算法对应的解密算法对第二加密数据进行解密处理,得到目标数据。
第二方面,本申请实施例提供了一种数据传输系统,该系统具有实现第一方面或其任意可能的实现方式中的方法的功能。具体地,该系统包括实现第一方面或其任意可能的实现方式中的方法的单元。
在其中的一个实施例中,该系统包括:现场设备端、现场控制端、监督控制端和操作管理端。
现场设备端采集实时现场数据,并将实时现场数据发送给现场控制端。
现场控制端利用预设加密算法对实时现场数据进行加密处理,生成第一加密数据,并将第一加密数据发送到监督控制端。
监督控制端利用与预设加密算法对应的解密算法对第一加密数据进行解密处理,生成第一解密数据。
监督控制端将第一解密数据利用预设加密算法进行加密处理之后生成第二加密数据,将第二加密数据发送到操作管理端。
操作管理端利用与预设加密算法对应的解密算法对第二加密数据进行解密处理,得到目标数据。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,该处理器执行计算机程序时,使得计算机设备实现上述第一方面任意一种实现方式的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被计算机设备执行时,使得计算机设备实现上述第一方面任意一种实现方式的方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在计算机设备上运行时,使得计算机设备执行上述第一方面任意一种实现方式的方法。
本申请实施例与现有技术相比存在的有益效果是:通过现场设备端采集实时现场数据并发送至现场控制端可以及时反映现场情况,有利于及时处理和决策;通过现场控制端对实时数据进行加密处理并发送至监督控制端保护了数据的安全性,防止数据泄露或被篡改;通过监督控制端对第一加密数据进行验证处理确保数据完整性和身份来源的可信性,增强了数据传输的安全性;监督控制端将解密数据加密后发送至操作管理端,再次加密处理增强了数据的安全性,保护数据在传输过程中不被窃取;通过操作管理端对第二加密数据进行解密处理得到目标数据,操作管理端能够安全地获取并处理数据,确保数据的安全性和可靠性。
附图说明
图1是本申请实施例提供的一种工业控制系统数据传输的场景示意图;
图2是本申请实施例提供的一种数据传输方法的流程示意图;
图3是本申请实施例提供的一种任务分解及并行计算的场景示意图;
图4是本申请实施例提供的一种数据加解密的流程示意图;
图5是本申请实施例提供的一种数据加解密的流程示意图;
图6是本申请实施例提供的另一种数据加解密的流程示意图;
图7是本申请实施例提供的一种工业控制系统的数据传输架构设计图;
图8是本申请实施例提供的一种工业控制系统的数据传输架构图;
图9是本申请实施例提供的计算机设备的结构示意图。
具体实施方式
在生产实践中,工业控制系统需要实时监控和控制生产过程,以确保生产设备的正常运行和产品质量的稳定性。工业控制系统需要采集大量的数据并进行分析,以优化生产过程和提高生产效率。
然而,在目前的工业控制系统中,大量的数据传输面临很多安全隐患,例如,某些数据传输可能涉及敏感信息,存在被窃取或篡改的风险,需要采取安全措施来保护数据的机密性和完整性。
同时,工业控制系统对数据传输的稳定性要求较高,任何数据传输中断或延迟都可能对生产过程造成影响,需要确保数据传输的稳定性和可靠性。
此外,大量数据传输需要进行有效的数据处理和存储,以便后续分析和利用,需要考虑数据处理的效率和存储的成本。
针对上述问题,本申请提出了一种数据传输方法,能够工业控制系统中的数据传输的安全性和稳定性,提升数据传输的效率。
为了进一步说明本申请的技术方案,下面通过具体实施例来说明。
下面结合图1来具体解释本申请实施例提供的一种工业控制系统数据传输的应用场景。
图1是本申请实施例提供的一种工业控制系统数据传输的场景示意图。
如图1所示,图1中分为现场设备端、现场控制端、监督管理端以及操作管理端四层系统架构,也可以理解,该工业控制系统是分为现场设备层、现场控制层、监督管理层以及操作管理层四层系统架构,具体的名称可以根据实际情况来设置,此处不作限定。
其中,现场设备端可以包括各种现场仪表、传感器和执行器等,主要负责现场数据的实时采集、传输等任务,现场设备端在采集到实时现场数据后可以将这些数据发送给现场控制端来进行分析处理,同时,现场设备端还可以执行来自上一层的控制设备(如控制器等设备)下发的相关控制指令。
现场控制端可以包括控制站、控制器等相关的控制设备,现场控制端主要是负责对现场设备端的控制和对现场设备端上传的数据进行分析、处理。
监督控制端是整个工业控制系统中主要的数据交互端,也即核心的数据交互端。监督控制端可以包括操作站、工程师站、数据服务器等多种监督控制设备,主要负责所有控制器数据的收集和实时处理,以及向控制器下发特定的操作指令,用以调节工业生产参数,同时,也可以处理一些报警异常。
操作管理端可以包括管理计算机等各种管理设备,主要负责接收监督控制端传来的各种关键数据,进行进一步地分析处理,以实现生产调度优化。
可以理解,监督控制层以下的数据通信,主要发生在局域网内的,在这一网络内数据的实时性是至关重要的。
对于监督控制层的数据传输主要有三种途径:
(1)监督控制层内部的数据传输,主要包括工程师站和操作站之间的通信,数据服务器和操作站之间的通信。
(2)监督控制层与现场控制层之间的数据传输,主要包括工程师站向控制器发送组态,操作站向控制器发送指令信息,还有控制器向操作员站、工程师站和数据服务中心发送现场的实时数据信息。
(3)控制站和现场设备之间的数据传输,主要包括现场传感器和仪表向控制器发送实时数据,控制器根据实时数据和控制指令向执行器发送新的执行指令。
图2是本申请实施例提供的一种数据传输方法的流程示意图。
如图2所示,上述方法包括以下步骤S201~S205。
S201、现场设备端采集实时现场数据,并将实时现场数据发送给现场控制端。
可以理解,此处的现场设备既可以是一个也可以是多个,对于具体的现场设备的数量此处不作限定,可以根据实际情况来具体选择。
S202、现场控制端利用预设加密算法对实时现场数据进行加密处理,生成第一加密数据,将第一加密数据发送到监督控制端。
可以理解,此处的现场控制设备既可以是一个也可以是多个,对于具体的现场控制设备的数量此处不作限定,可以根据实际情况来具体选择。
预设加密算法可以是对称加密算法。对称加密算法使用相同的密钥来加密和解密数据。这意味着发送方和接收方必须共享同一个密钥。
对称加密算法通常比非对称加密算法更快,适合对大量数据进行加密和解密。相对于非对称加密算法,对称加密算法的实现较为简单。因为只需要管理一个密钥,所以相对来说密钥管理相对容易。
现场控制端对接收到的实时现场数据利用对称加密算法处理之后,生成了第一加密数据,然后可以将该第一加密数据发送给监督控制端。
S203、监督控制端对第一加密数据进行数据完整性验证处理和/或身份来源验证处理,当第一加密数据通过数据完整性验证处理和/或身份来源验证处理时,监督控制端利用与预设加密算法对应的解密算法对第一加密数据进行解密处理,生成第一解密数据。
数据完整性验证处理是指对数据进行验证,确保数据在传输或存储过程中没有被篡改或损坏。
身份来源验证处理是指验证数据的发送方或接收方的身份,确保数据来源的可信性和真实性。
监督控制端收到第一加密数据,进行数据完整性验证处理和/或身份来源验证处理,确保数据完整性和验证数据发送方的身份。如果数据通过验证,监督控制端使用对称加密算法来对数据进行解密处理,生成第一解密数据。
通过加密和验证处理,可以确保数据的安全性和完整性;通过验证数据发送方的身份,可以防止数据被伪造;数据完整性验证处理可以有效防止数据在传输过程中被篡改或损坏。
S204、监督控制端将第一解密数据利用预设加密算法进行加密处理之后生成第二加密数据,将第二加密数据发送到操作管理端。
监督控制端通过分析处理之后的数据,可以再次利用加密算法进行加密之后,从而传输给操作管理端,进行更进一步地分析汇总处理。
S205、操作管理端利用与预设加密算法对应的解密算法对第二加密数据进行解密处理,得到目标数据。
操作管理端对监督控制端传输的数据进行解密之后就可以得到对应的数据(即第二加密数据),从而可以对第二加密数据进行后续的分析处理。
上文中提到的数据传输方法,通过现场设备端采集实时现场数据并发送至现场控制端可以及时反映现场情况,有利于及时处理和决策;通过现场控制端对实时数据进行加密处理并发送至监督控制端保护了数据的安全性,防止数据泄露或被篡改;通过监督控制端对第一加密数据进行验证处理确保数据完整性和身份来源的可信性,增强了数据传输的安全性;监督控制端将解密数据加密后发送至操作管理端,再次加密处理增强了数据的安全性,保护数据在传输过程中不被窃取;通过操作管理端对第二加密数据进行解密处理得到目标数据,操作管理端能够安全地获取并处理数据,确保数据的安全性和可靠性。
通过多层加密处理和验证处理,确保数据的安全性和完整性,对数据发送方和接收方进行身份验证,防止数据被伪造,通过加密和解密处理,保证数据在传输过程中不被篡改或泄露,将数据处理和传输分层,提高了系统的可扩展性和灵活性,通过不同节点之间的数据传输和处理,确保数据在系统内流畅传递,提高了系统的效率。
在一种实现方式中,监督控制端根据预设调度策略将加密处理任务和解密处理任务分配到对应的中央处理器和/或图形处理器来进行并行计算处理。
预设调度策略指的是在系统设计阶段预先确定的任务分配和调度策略,用于将加密处理任务和解密处理任务分配到对应的中央处理器和/或图形处理器来进行并行计算处理,包括任务分配、优先级设置、资源分配等方面的调度策略。例如,可以根据任务的复杂度、优先级和资源需求等因素来确定任务的调度策略。
举例来说,假设当某一个任务的复杂程度较高或者优先级较高时,可以优先处理该任务;当某一个任务的复杂程度较低或者优先级较低时可以将该任务的处理顺序调后。具体的任务调度方式可以根据实际情况来具体设置,此处不做限定。
监督控制端根据预设调度策略将加密处理任务和解密处理任务分配到对应的中央处理器和/或图形处理,确保任务能够在不同处理器上并行计算处理。中央处理器和图形处理器同时进行加密处理和解密处理任务,根据预设调度策略分配的任务进行并行计算,可以提高系统的处理速度和效率。
此外,监督控制端需要实时监控任务的执行情况,根据实际情况进行任务调度和协调,确保各个处理器之间的任务协同工作,避免资源冲突和任务阻塞,以及根据实际情况对预设调度策略进行调整和优化,以提高系统的性能和效率。
监督控制端可以根据预设调度策略将加密处理任务和解密处理任务有效地分配到对应的处理器上进行并行计算处理,从而提高系统的处理效率和性能。
在一种实现方式中,预设调度策略包括:获取加密处理任务和/或解密处理任务的粒度;根据粒度对加密处理任务和/或解密处理任务进行分解,生成可并行处理任务块;根据优化调度算法对可并行处理任务块进行分配处理,实现加密处理任务和/或解密处理任务的并行计算。
粒度可以理解为是指任务的分解程度或任务的大小。在任务分解过程中,需要确定任务的粒度,即将大任务分解成更小的子任务,以便能够更好地进行并行处理。
可并行处理的任务块可以理解为是指将任务按照一定的粒度分解后得到的可以并行处理的子任务单元。这些任务块可以在不同的处理器上同时进行处理,从而实现任务的并行计算。
针对加密处理任务和解密处理任务,确定适当的任务粒度,即将任务分解成适合并行处理的子任务单元。根据确定的任务粒度,将加密处理任务和解密处理任务进行分解,生成可并行处理的任务块。这些任务块可以独立进行处理,减少任务之间的依赖关系。
优化调度算法是指在任务调度过程中,通过一系列的算法和策略来合理地分配任务给系统中的处理器,以最大程度地提高系统的性能和效率。
例如,确定任务的调度策略,包括先来先服务(First Come First Serve)、最短作业优先(Shortest Job First)、最高响应比优先(Highest Response Ratio Next)等。选择适合场景的调度策略可以提高系统的处理效率。
再例如,通过负载均衡算法来平衡系统中各个处理器的负载,避免某些处理器过载而导致系统性能下降。负载均衡可以使系统资源得到充分利用,提高系统的整体性能。
再例如,根据任务的重要性和紧急程度,确定任务的优先级。通过优先级调度算法,可以确保重要任务得到及时处理,提高系统的响应速度。
再例如,考虑任务之间的依赖关系,确定任务的执行顺序。通过考虑任务之间的依赖关系,可以避免任务之间的冲突和死锁,提高系统的稳定性。
使用优化调度算法对生成的可并行处理任务块进行分配处理。优化调度算法可以根据任务的特性和系统资源情况,合理地分配任务块到不同的处理器上,以实现任务的并行计算。
具体的优化调度算法可以根据实际情况来具体选择,此处不作限定。
将分配给不同处理器的任务块同时进行处理,实现加密处理任务和解密处理任务的并行计算。各个处理器可以独立地处理任务块,提高系统的处理效率和性能。
通过任务的粒度分解和并行处理,可以充分利用系统资源,提高任务的处理效率和速度。将任务分解成可并行处理的任务块可以降低任务之间的依赖关系,减少任务执行的等待时间。根据任务的特性和系统资源情况,可以灵活地调整任务的分解和分配方式,以适应不同的场景和需求。
下面结合图3来具体介绍如何进行任务分解以及进行各任务的并行计算。
图3是本申请实施例提供的一种任务分解及并行计算的场景示意图。
如图3所示,图3中的密文数据包是M0~Mn(n为正整数),通过粒度可以将密文数据包M0~Mn划分为可并行的任务块K0~Ki(i为正整数),通过设置好的优化调度算法将任务块K0~Ki分配到CPU或者GPU中执行,例如可以将K0~K2分配到CPU中执行,将K3~Ki分配到GPU中执行等等,具体的执行方式可以根据实际情况来具体选择,此处只是示例而非限定。通过并行计算,可以提高系统对大规模时序性数据的处理速度。
在一种实现方式中,获取现场设备端对应的设备标志信息,设备标志信息用于表示现场设备端的身份来源;现场控制端利用消息摘要算法对第一加密数据和设备标志信息进行数字签名处理,生成第一消息摘要,第一消息摘要用于进行数据完整性验证处理和/或身份来源验证处理。
设备标志信息是指用于表示现场设备端身份来源的信息,通常是设备的唯一标识符或特定标识码。设备标志信息可以包括设备的型号、序列号、MAC地址、IMEI号等用于唯一标识设备的信息。
消息摘要是指对一段数据进行加密算法处理后得到的固定长度的字符串,用于验证数据的完整性和真实性。消息摘要通常用于验证数据在传输过程中是否被篡改,通过对接收到的数据重新计算消息摘要并与原始消息摘要进行比对,可以确定数据是否被修改过。常见的消息摘要算法包括MD5、SHA-1、SHA-256等。
消息摘要算法是一种将任意长度的数据转换为固定长度摘要(哈希值)的算法。它主要用于确保数据的完整性,一旦数据发生改变,其摘要值也会发生变化,从而可以用来验证数据的完整性和真实性。
常见的消息摘要算法包括:MD5算法(Message Digest Algorithm 5,MD5)SHA-1算法(Secure Hash Algorithm 1,SHA-1)等等,这些算法在计算摘要值时采用不同的计算方法和输出长度。
利用消息摘要算法,通过比对原始数据的摘要值和接收到的数据的摘要值,可以验证数据在传输过程中是否被篡改。
数字签名处理即进行数字签名,在数字签名过程中,消息摘要算法用于生成消息的摘要,然后再用私钥对摘要进行加密,以确保消息的真实性和不可抵赖性。
举例来说,假设一个系统中,现场设备端是指安装在采集装置上的智能控制器,现场控制端是指连接到云端的控制中心。在这个系统中,设备标志信息可以是该控制器的序列号。当现场控制端利用消息摘要算法对第一加密数据和控制器序列号进行数字签名处理时,生成的第一消息摘要可以用于验证数据的完整性和控制器的身份来源。
通过设备标志信息,系统可以确保数据来源可信,并对设备进行身份验证,防止数据被篡改或伪造。
在一种实现方式中,监督控制端对第一加密数据进行数据完整性验证处理和/或身份来源验证处理,包括:现场控制端转发第一消息摘要到监督控制端;监督控制端对接收到的第一消息摘要和转发的第一消息摘要进行比对,当接收到的第一消息摘要和转发的第一消息摘要一致时,认定第一加密数据的数据完整性验证和/或身份来源验证通过。
监督控制端接收到现场控制端转发的第一消息摘要后,与自己计算生成的第一消息摘要进行比对。如果两者一致,则认定第一加密数据的数据完整性验证和/或身份来源验证通过。
通过比对消息摘要,可以验证数据在传输过程中是否被篡改。如果两个消息摘要一致,可以确保数据完整性。
通过比对设备标志信息,可以验证数据的身份来源是否合法可信,确保数据来自预期的设备。
在一种实现方式中,现场控制端包括控制中心和控制器,在控制中心和控制器中部署相同的密钥生成算法;控制中心根据密钥生成算法生成初始密钥;控制中心对初始密钥进行非对称加密处理,生成第一非对称加密数据之后转发给控制器;控制器对非对称加密数据解密处理,获得初始密钥;控制器对初始密钥进行非对称加密处理,生成第二非对称加密数据并转发给控制中心。
控制中心通常是指系统的核心控制设备,负责监控和管理整个系统的运行,以及指导控制器执行相应的操作。也可以理解为,控制中心是生成和管理密钥的一方。
控制器是执行具体控制操作的设备,根据控制中心发送的指令来控制工业过程或设备。也可以理解为,控制器是接收和处理密钥数据的一方。
通过非对称加密方式进行初始密钥交换,提高了数据传输的安全性,防止密钥被窃取或篡改。双方使用相同的密钥生成算法,确保生成的密钥一致性,减少了因密钥不匹配导致的通信问题。控制中心和控制器之间的密钥交换过程快速高效,保证了系统的实时性和响应性。
在一种实现方式中,控制中心利用共享算法对初始密钥进行周期性更新处理,生成更新密钥,更新密钥的有效期为一次数据传输对应的时间节点;在一次数据传输对应的时间节点内,控制中心和控制器利用更新密钥进行数据传输。
共享算法是指在密钥交换过程中使用的算法,用于生成对称密钥或其他密钥材料,以便进行加密和解密操作。这些算法通常是双方事先约定并共享的,用于生成对称密钥或其他加密所需的参数。
定期更新初始化密钥,由控制中心生成新的密钥,后续的数据传输和初始参数传输都使用共享算法生成当前时间节点的对称加密密钥进行加密。
这种方案通过使用非对称密钥对进行首次初始化密钥交换,然后通过共享算法生成后续的对称密钥,实现了安全的密钥管理和数据传输过程。共享算法在这里起到了关键的作用,确保双方能够生成相同的密钥材料,从而保证数据传输的安全性和可靠性。
下面结合图4来具体介绍控制中心和控制器之间实现加解密的数据传输过程。
图4是本申请实施例提供的一种数据加解密的流程示意图。
如图4所示,首先需要提前在工业控制系统的控制中心设备和控制器中部署相同的密钥生成算法。
由于首次传输时控制器设备中没有对称密钥,所以首次传输使用非对称加密密钥,所以首次传输使用非对称加密密钥对控制中心随机生成的初始密钥对进行加密。
然后向控制器发送数字证书,经过校验后控制器获得相应的公钥。接下来将密文和相应的数字签名传输到控制器,接收方通过非对称加密算法解密获得相应初始密钥,然后将接收到的内容加密传回,确认接收数据无误。
初始化密钥通过该参数和共享算法生成后续的对称密钥,每个密钥仅在一个时间节点内有效。
该初始化密钥每隔一段时间更新一次,同样由控制中心产生,后续的数据传输和初始参数传输都是用共享算法产生的当前时间节点的对称加密密钥加密。
对称加密算法适用于对大量数据的加密,可以使用消息摘要算法和对称加密算法对输入内容和设备的标识信息进行简易数字签名,然后接收方通过对应的算法完成对数据的完整性和来源的身份进行校验和认证,确保数据传输的安全性。
下面结合图5来介绍数据传输过程中数据加解密的具体过程。
图5是本申请实施例提供的一种数据加解密的流程示意图。
如图5所示,数据加密分为3个部分:
(1)原文对称加密。为了保证明文传输数据的机密性,使用SM4预设加密算法和明文加密密钥Key1对明文数据A进行加密,获得密文M1。设SM4加密函数表示为E,整个加密过程可以表示为:
M1=E(A,Key1)。 (1)
(2)密文和设备信息摘要。工业控制系统数据传输的消息摘要对象是SM4加密后的密文M1和对应设备的标识信息S进行消息摘要,获得消息摘要N1。设SM3加密函数表示为X,整个摘要过程可以表示为:
N1=X(M1+S)。 (2)
(3)摘要加密。为了保证摘要在传输过程中的安全性,使用摘要加密密钥Key2对N1进行对称加密,最终获得密文M2。加密过程可以表示为:
M2=E(M1,Key2)。 (3)
将M1和M2组合后发送到接收方,接受方对数据包进行解密,接受方的解密方案如下图6所示。
图6是本申请实施例提供的另一种数据加解密的流程示意图。
如图6所示,该数据解密可以分为以下三个部分:
(1)摘要解密。接收方首先通过Key2解密M2获得消息摘要N1。设SM4解密函数表示为D,整个解密过程可以表示为:
N1=D(M2,Key1)。 (4)
(2)摘要比对。再从数据库中选择对应的设备标识信息S和M1一起进行消息摘要,通过:
N2=X(M1+S)。 (5)
获得N2,将N1和N2进行对比,可以判断数据的完整性和消息来源身份的合法性。如果不等,则说明数据异常,数据包不再进行进一步处理。如果摘要相等,则进行下一步。
(3)密文解密。则使用密钥Key1对M1进行对称解密获得明文数据A。整个解密过程可以表示为:
A=D(M1,Key1)。 (6)
下面结合图7和图8来整体性地介绍本申请实施例提供的一种工业控制系统的架构设计。
图7是本申请实施例提供的一种工业控制系统的数据传输架构设计图。
如图7所示,图7中包括操作管理层、监督控制层、现场控制层以及现场设备层。
操作管理层主要从下层的控制中心提取关键的生产数据信息,实现生产调度优化。所以该层对数据的实时性不高,但是使用的仍是工业以太网,所以可以使用信息技术网络的数据加解密和校验方案。该层的国密加解密模块主要完成对数据的加解密,还有数字签名和验签功能,同时负责求解协同计算任务调度策略。
监督控制层是整个工业控制系统中主要的数据交互层,主要负责所有控制器数据的收集和实时处理,向控制器下发特定的操作指令,用以调节工业生产参数,也需要及时处理一些报警异常。随着工业生产规模的扩大,特别是加入密码学技术之后,数据处理的延迟大大增加,所以处理引入密码学技术,该层还需要融合并行计算技术,加快对数据加解密的处理速度。
监督控制层主要包括以下几个模块:
国密运算模块:主要负责处理来自现场控制层数据的解密和消息摘要,并通过消息摘要验证数据完整性和来源可靠性。还需要完成下发控制器指令的数据加密和消息摘要功能。
并行计算模块:主要负责实现加密任务的调度和分配,通过指定的调度策略将加解密任务分配到CPU和GPU中并行实现。
监督控制层的共享算法模块:主要用于生成和扩展初始化密钥。
现场控制层主要包括工业现场的控制器,主要负责现场数据的采集,根据指定的算法逻辑,完成对数据的处理。
现场控制层主要包括以下几个模块:
控制站国密运算模块:主要用于将现场采集的数据进行加密和消息摘要。对控制中心下发指令的解密和消息摘要校验。
现场控制层的共享算法模块:用于扩展来自控制器的初始化密钥。
可以理解,此架构设计将数据传输的加解密功能主要是部署在现场控制层和监督控制层。
现场设备层主要负责采集现场数据,将数据发送给控制器和接收控制器指令,执行规定的操作。
图8是本申请实施例提供的一种工业控制系统的数据传输架构图。
在传统方案中,为了解决工业控制系统中设备计算资源有限,但是加密算法耗时较长的问题,许多方法对现有的加密算法进行改良,设计了轻量级的加密算法,而轻量化加密算法的方案,破坏了算法本身的安全性,可能降低算法实际应用的安全性。
本申请为了解决上述问题,在数据传输加密过程中,控制中心和控制器之间需要定期协商对称密钥,通过安全的通道将更新密钥,保证即使数据相同,传输密文也会发生改变,保证了数据传输的安全性。
为了保障数据的完整性,又介于CRC校验数据完整性的局限性,本文采用抗穷举能力更强的消息摘要算法,利用消息摘要算法仅通过相同原文重新运算,才能获得相同的结果来完成校验,结果的不可逆性的这一特征,可以更可靠的对数据完整性进行验证。
为了对数据来源进行身份认证且保证数据的可用性,本文在对传输数据进行消息摘要时,加入设备的相关信息,以此来完成身份认证。使用对称加密算法对消息摘要的结果进行加密,这样攻击者无法单纯的从传输的数据中获得符合规定的消息摘要。
结合上述内容,可以得出图8中示出的面向工业控制系统的轻量化数据传输加密功能架构,该架构包括数据传输加解密、数据完整性校验、身份认证和密钥更新等4个功能。
如图8所示,工业控制系统数据传输的机密性是通过数据加密方案和密钥更新方案来保证;数据的完整性通过数据校验来实现;可用性需要通过身份认证来保证数据来源和数据本身的可用性;同时,为了保障数据的实时性,需要在数据加解密、数据完整性校验、身份认证和密钥更新中都实现轻量化设计,并提供算法的实现效率。
上文主要结合附图对本申请实施例的方法进行了介绍。应理解,虽然如上所述的各实施例所涉及的流程图中的各个步骤依次显示,但是这些步骤并不是必然按照图中所示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。下面结合附图对本申请实施例的一种的装置进行介绍。为了简洁,在下文介绍装置时,会进行适当省略,相关内容可以参照上文的方法中的相关描述,不再重复介绍。
本申请实施例还提出了一种数据传输系统,包括:现场设备端、现场控制端、监督控制端和操作管理端。
现场设备端采集实时现场数据,并将实时现场数据发送给现场控制端。
现场控制端利用预设加密算法对实时现场数据进行加密处理,生成第一加密数据,并将第一加密数据发送到监督控制端。
监督控制端利用与预设加密算法对应的解密算法对第一加密数据进行解密处理,生成第一解密数据。
监督控制端将第一解密数据利用预设加密算法进行加密处理之后生成第二加密数据,将第二加密数据发送到操作管理端。
操作管理端利用与预设加密算法对应的解密算法对第二加密数据进行解密处理,得到目标数据。
图9是本申请实施例提供的计算机设备的结构示意图。如图9所示,该实施例的计算机设备3000包括:至少一个处理器3100(图9仅示出一个)处理器、存储器3200以及存储在存储器3200中并可在至少一个处理器3100上运行的计算机程序3210,处理器3100执行计算机程序3210时,使得所述计算机设备实现上述实施例中的步骤。
处理器3100可以是中央处理单元(Central Processing Unit,CPU),该处理器3100还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器3200在一些实施例中可以是计算机设备3000的内部存储单元,例如计算机设备3000的硬盘或内存。存储器3200在另一些实施例中也可以是计算机设备3000的外部存储设备,例如计算机设备3000上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器3200还可以既包括计算机设备3000的内部存储单元也包括外部存储设备。存储器3200用于存储操作系统、应用程序、引导装载程序(Boot Loader)数据以及其他程序等,例如计算机程序的程序代码等。存储器3200还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被计算机设备执行时,使得计算机设备实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在计算机设备上运行时,使得计算机设备能够实现上述各个方法。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,使得计算机设备可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。在描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
另外,在本申请说明书和所附权利要求书的描述中,术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置、计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置、计算机设备实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种数据传输方法,其特征在于,包括:现场设备端、现场控制端、监督控制端和操作管理端,所述方法包括:
所述现场设备端采集实时现场数据,并将所述实时现场数据发送给所述现场控制端;
所述现场控制端利用预设加密算法对所述实时现场数据进行加密处理,生成第一加密数据,将所述第一加密数据发送到所述监督控制端;
所述监督控制端对所述第一加密数据进行数据完整性验证处理和/或身份来源验证处理,当所述第一加密数据通过所述数据完整性验证处理和/或身份来源验证处理时,所述监督控制端利用与所述预设加密算法对应的解密算法对所述第一加密数据进行解密处理,生成第一解密数据;
所述监督控制端将所述第一解密数据利用预设加密算法进行加密处理之后生成第二加密数据,将所述第二加密数据发送到所述操作管理端;
所述操作管理端利用与所述预设加密算法对应的解密算法对所述第二加密数据进行解密处理,得到目标数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述监督控制端根据预设调度策略将加密处理任务和解密处理任务分配到对应的中央处理器和/或图形处理器进行并行计算处理。
3.根据权利要求2所述的方法,其特征在于,所述预设调度策略包括:
获取所述加密处理任务和/或所述解密处理任务的粒度;
根据所述粒度对所述加密处理任务和/或所述解密处理任务进行分解,生成可并行处理任务块;
根据优化调度算法对所述可并行处理任务块进行分配处理,实现所述加密处理任务和/或所述解密处理任务的并行计算。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述现场设备端对应的设备标志信息,所述设备标志信息用于表示所述现场设备端的身份来源;
所述现场控制端利用消息摘要算法对所述第一加密数据和所述设备标志信息进行数字签名处理,生成第一消息摘要,所述第一消息摘要用于进行数据完整性验证处理和/或身份来源验证处理。
5.根据权利要求4所述的方法,其特征在于,所述监督控制端对所述第一加密数据进行数据完整性验证处理和/或身份来源验证处理,包括:
所述现场控制端转发所述第一消息摘要到所述监督控制端;
所述监督控制端对接收到的所述第一消息摘要和所述转发的第一消息摘要进行比对,当所述接收到的所述第一消息摘要和所述转发的第一消息摘要一致时,认定所述第一加密数据的数据完整性验证和/或所述身份来源验证通过。
6.根据权利要求1所述的方法,其特征在于,所述现场控制端包括控制中心和控制器,所述方法还包括:
在所述控制中心和所述控制器中部署相同的密钥生成算法;
所述控制中心根据所述密钥生成算法生成初始密钥;
所述控制中心对所述初始密钥进行非对称加密处理,生成第一非对称加密数据之后转发给所述控制器;
所述控制器对所述非对称加密数据解密处理,获得所述初始密钥;
所述控制器对所述初始密钥进行非对称加密处理,生成第二非对称加密数据并转发给所述控制中心。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述控制中心利用共享算法对所述初始密钥进行周期性更新处理,生成更新密钥,所述更新密钥的有效期为一次数据传输对应的时间节点;
在所述一次数据传输对应的时间节点内,所述控制中心和所述控制器利用所述更新密钥进行数据传输。
8.一种数据传输系统,其特征在于,包括:现场设备端、现场控制端、监督控制端和操作管理端;
所述现场设备端采集实时现场数据,并将所述实时现场数据发送给所述现场控制端;
所述现场控制端利用预设加密算法对所述实时现场数据进行加密处理,生成第一加密数据,并将所述第一加密数据发送到所述监督控制端;
所述监督控制端利用与所述预设加密算法对应的解密算法对所述第一加密数据进行解密处理,生成第一解密数据;
所述监督控制端将所述第一解密数据利用预设加密算法进行加密处理之后生成第二加密数据,将所述第二加密数据发送到所述操作管理端;
所述操作管理端利用与所述预设加密算法对应的解密算法对所述第二加密数据进行解密处理,得到目标数据。
9.一种计算机设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,使得所述计算机设备实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被计算机设备执行时实现如权利要求1至7中任一项所述的方法。
Publications (1)
Publication Number | Publication Date |
---|---|
CN118282744A true CN118282744A (zh) | 2024-07-02 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mektoubi et al. | New approach for securing communication over MQTT protocol A comparaison between RSA and Elliptic Curve | |
CN110890962B (zh) | 认证密钥协商方法、装置、存储介质及设备 | |
EP4258593A1 (en) | Ota update method and apparatus | |
CN110690959B (zh) | 一种基于云平台的无人机安全可认证信息通信处理方法 | |
US8452963B2 (en) | Generating protected access credentials | |
CN102710605A (zh) | 一种云制造环境下的信息安全管控方法 | |
CN112350826A (zh) | 一种工业控制系统数字证书签发管理方法和加密通信方法 | |
GB2357407A (en) | Cryptographic key replacement using key lifetimes | |
Isirova et al. | Decentralized public key infrastructure development principles | |
US11838409B2 (en) | Method and apparatus for transferring data in a publish-subscribe system | |
JP2022521525A (ja) | データを検証するための暗号方法 | |
Kukkala et al. | SEDAN: Security-aware design of time-critical automotive networks | |
JP6972145B2 (ja) | プログラマブル・ハードウェア・セキュリティ・モジュール及びプログラマブル・ハードウェア・セキュリティ・モジュールに用いられる方法 | |
CN110690960A (zh) | 一种中继节点的路由服务方法与装置 | |
WO2021170049A1 (zh) | 一种访问行为的记录方法、装置 | |
CN113591103B (zh) | 一种电力物联网智能终端间的身份认证方法和系统 | |
CN112948868A (zh) | 一种基于区块链的电力数据存储方法及电力数据共享方法 | |
CN111490874B (zh) | 一种配网安全防护方法、系统、装置及存储介质 | |
US11297063B2 (en) | Method for user administration of a field device | |
CN118282744A (zh) | 数据传输方法、系统、设备及存储介质 | |
CN113691376B (zh) | 一种密钥管理方法及装置 | |
CN113676330B (zh) | 一种基于二级密钥的数字证书申请系统及方法 | |
CN112468493A (zh) | 基于现场总线的数据传输方法、身份识别方法及系统 | |
EP3200388B1 (en) | User permission check system | |
CN112367124A (zh) | 一种量子中继节点虚拟化方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication |