本发明涉及一种区块链安全策略方法,特别是涉及一种基于区块链的ics安全策略方法。
背景技术:
传统的工业控制网络的安全防护多采用防火墙、身份验证等技术。但是新的安全问题也日益显现。研究工业控制网络中的数据安全、网络安全问题和新的防护技术手段,对工业安全及各个方面的发展有着重要的意义。区块链的思想和技术的出现,作为建立信任的技术,它不仅在联盟链的多中心架构和多机构合作的场景下,良好的满足了地区、行业、企业间跨域认证的需要,还为工业控制网络中数据的安全性和可靠性提供了新的技术手段。
区块链在本质上是一个分布式的公共账本,而分布式系统是通常是具有地理位置不同的传感器和执行器的复杂工厂控制系统。传统的分布式控制系统(distributedcontrolsystem,简称dcs)是从集中式电源发展而来的,具有脆弱的中央控制站,用于监控整个系统,并面临着潜在的风险,例如严格的安全和隐私问题,威胁会导致入侵者的劫持。如果一个单元不执行它不会影响整个系统,与所有东西都连接到一个公共节点的集中式系统相比,一个单元的故障将导致整个系统瘫痪。它仍然面临着一些潜在的安全和隐私威胁,如拦截、中断、修改、制造、加密、身份验证和审计。区块链的完全分布式特性和安全保障,使其在分布式控制系统中具有应用潜力。它的分权是安全检查的关键因素。许多许可类区块链系统的共识机制来源于传统的分布式共识算法,如paxos,raft等。
技术实现要素:
本发明的目的在于提供一种基于区块链的ics安全策略方法,本发明从区块链技术框架和工业控制网络的结合的角度下,设计了共识控制模型,实现了信息的共享性和工控网络的去中心化性,保护了用户的隐私;另一方面设计了区块链跟踪框架,将区块链技术集成到存储基础架构中,用于防篡改文件验证和历史记录跟踪。
本发明的目的是通过以下技术方案实现的:
一种基于区块链的ics安全策略方法,所述方法包括建立共识控制模型和区块链跟踪框架;共识控制模型在工业资源平台服务器上搭建区块链平台,设置准入机制,配置不同的组织关系,并为各个组织配置相应的通道,完成底层基础网络的搭建;在搭建好的工控区块链网络的环境下将模型分为三层:
第一层将底层区块链中的数据分成片打包上传到服务器中;
第二层中共识机制负责安全地更新分布式网络中的数据状态;
第三层去中心化时间戳服务技术,为每次共识机制更新的数据状态提供可公开验证的时间戳;
最后,在控制层采用选择机制,诸如监控中心,区块链上的每个组织都会有记账节点来进行分布式记账,并维护全网的一个公共的账本;同时,对于工业资产数据的读写操作均会被记录到区块链中,实现全方位的安全可信管控;
区块链跟踪框架是一个支持数据存储和分类存档的框架,用于支持工业控制系统中存储基础结构中的数据保留、存档、文件验证和历史记录跟踪;因此,它监视ics用户注释的文件、指示和何时可以注释数据的可编程规则;跟策略—类似,是自动存储工控系统分层中已知的数据,再将数据从性能移动到容量存储的策略;最后,所选择的哈希序列的文件元数据通过智能合约写入底层区块链;btf自动在区块链上生成和部署这些智能合约,提供审核功能和对存储在区块链上的元数据的安全访问,包括存在证明、文件验证和历史记录跟踪。
所述的一种基于区块链的ics安全策略方法,所述区块链跟踪框架包括用户、用户检查程序、文件系统api、区块链网关、事务管理器、文件跟踪合同、检查。
所述的一种基于区块链的ics安全策略方法,所述用户将一些重要的数据文件放在工业控制系统的存储层中,由bft来对用户所操作的程序进行哈希序列编码索引。
所述的一种基于区块链的ics安全策略方法,所述用户检查程序为a用户和b用户在工控区块链的网络中进行数据交互,或者很多用户在网络中共享资源时,通过btf系统,可以查看当前信息传输状态和对数据更改的用户及更改时间、或是ip地址。
所述的一种基于区块链的ics安全策略方法,所述文件系统api是文件系统应用程序可编程接口,它提供了向btf添加文件创建、更改和删除信息的方法;此外,它还可以用于从工业控制系统的存储中向现有的btf中添加信息。
所述的一种基于区块链的ics安全策略方法,所述区块链网关为每个节点执行它们的指令提供了一个运行时环境;它将智能契约转换成一组由节点/计算机执行的指令;对于在区块链网络中进行的每一次数据传输,都有相关的用户支付给核实交易并将交易添加到区块链网络的矿工,这些费用应该由发起交易的发送方支付。
所述的一种基于区块链的ics安全策略方法,所述事务管理器自动在区块链网络上生成和部署智能合约;因此,它为每一个需要跟踪的选定文件部署一个特定的智能合约。
所述的一种基于区块链的ics安全策略方法,所述文件跟踪合同,为跟踪变更合同模板,btf在模板中为每个新的注释文件自动部署一个实例;智能合约实例负责跟踪一个文件的所有更改。
所述的一种基于区块链的ics安全策略方法,所述检查是为文件验证、存在证明和文件历史跟踪提供了功能;这些函数嵌入到智能合约中,并在运行btf的节点上本地执行。
所述的一种基于区块链的ics安全策略方法,所述ics安全设计包括工控网络区块链,工控网络中的各级服务器、交换机、plc、甚至底层设备作为参与节点接入区块链网络;还包括时间戳的创建,在工控区块链网络中,每一个新区块生成时,都会被打上时间戳;以及包括btf工作流程。
本发明的优点与效果是:
本发明从区块链技术框架和工业控制网络的结合的角度下,一方面设计了共识控制模型。该模型将工控网络中的各级服务器、交换机、plc、甚至底层设备作为参与节点接入区块链网络,然后在工控网络的现场设备层,分析其数据来源,对采集后的数据进行数据审计,将其存在区块链中。实现了信息的共享性和工控网络的去中心化性,保护了用户的隐私。另一方面设计了区块链跟踪框架(blockchaintrackingframework)。将区块链技术集成到存储基础架构中。它跟踪带注释的文件,并使用智能合约将这些文件的选定元数据存储在区块链上。此外,btf的智能合约还提供了检查功能,用于防篡改文件验证和历史记录跟踪。这样,btf支持长期存储并确保数据完整性,专注于档案数据,可以证明很长时间以前存储的文件未经授权不会被更改,假如被更改了,可以跟踪文件由谁更改以及更改的时间。
附图说明
图1为本发明共识控制模型图;
图2为本发明区块链跟踪框架图;
图3为本发明工控网络区块链步骤图;
图4为本发明时间戳;
图5为本发明监测工作流程。
具体实施方式
下面结合附图所示实施例对本发明进行详细说明。
区块链是一个去中心化的时间戳服务器技术,可以自动创建分散的、为每个提交的文件提供防篡改和可公开验证的时间戳,将此技术加上共识机制与工控网络的监控/控制层结合,搭建一个如图1模型,此模型称为共识控制模型(consensuscontrolmodel)。首先,在工业资源平台服务器上搭建区块链平台,设置准入机制,配置不同的组织关系,并为各个组织配置相应的通道,完成底层基础网络的搭建。在搭建好的工控区块链网络的环境下将模型分为三层:
第一层将底层区块链中的数据分成片打包上传到服务器中;
第二层中共识机制负责安全地更新分布式网络中的数据状态;
第三层去中心化时间戳服务技术,为每次共识机制更新的数据状态提供可公开验证的时间戳;
最后,在控制层采用一定选择机制,诸如监控中心,对这些带有哈希序列的数据节点进行打包形成区块,同时利用大数据分析平台对工业资产进行评估,对
评估良好的工业资源配给一定数量的通证奖励,在后续的交易中通证可以作为手续费附加在智能合约中被优先打包成区块,由此对工业生态的健康成长和运行进行一定程度的引导。区块链上的每个组织都会有记账节点来进行分布式记账,并维护全网的一个公共的账本;同时,对于工业资产数据的读写操作均会被记录到区块链中,以实现全方位的安全可信管控,以便随时监控来自底层数据是否安全,确保信息层的管理员拿到的数据是最安全的。
在工控网络中的部分数据之前是由管理员或者企业总部管理和保存,用户无法便利获得自己的记录和历史数据。通过此模型的相关技术进行用户隐私数据保存,用户自己可以真正地掌握,而不是企业或管理员操控。这不仅有助于保护用户隐私,也增强了用户使用数据的自主性,实现了信息的共享性和工控网络的去中心化性。
区块链跟踪框架
区块链跟踪框架(blockchaintrackingframework,btf)是一个支持数据存储和分类存档的框架,用于支持工业控制系统中存储基础结构中的数据保留、存档、文件验证和历史记录跟踪。因此,它能监视ics用户注释的文件、指示和何时可以注释数据的可编程规则。跟策略—类似,是自动存储工控系统分层中已知的数据,再将数据从性能移动到容量存储的策略。最后,所选择的哈希序列的文件元数据通过智能合约写入底层区块链。图2给出了区块链跟踪系统框架图,并展示了它是如何与现有系统集成的,下文将更详细描述其组成。btf自动在区块链上生成和部署这些智能合约,提供审核功能和对存储在区块链上的元数据的安全访问。该功能包括存在证明、文件验证和历史记录跟踪。
用户:用户将一些重要的数据文件放在工业控制系统的存储层中,由bft来对用户所操作的程序进行哈希序列编码索引。它必须可靠地存储很长一段时间,使得用户能够对其进行添加、更改、删除,这些带着哈希编码的数据被跟踪并且通过文件系统可编程接口被写到btf上,这些文件中除了哈希序列,还有元数据、修改时间、日志文件等。所有的数据都通过区块链上特定的智能合约存储,但是只有被授权的用户被允许在系统里按照特定的格式提出他们的要求。其他没有权限的用户在工控网络的数据交换中看到的都是二进制的编码。
用户检查程序:a用户和b用户在工控区块链的网络中进行数据交互,或者很多用户在网络中共享资源时,通过btf系统,可以查看当前信息传输状态和对数据更改的用户及更改时间、甚至是ip地址,这是因为区块链的防篡改特性和
用户之间传输的元数据都存储在区块链中。
文件系统api。文件系统api指的是文件系统应用程序可编程接口,它提供了向btf添加文件创建、更改和删除信息的方法。此外,它还可以用于从工业控制系统的存储中向现有的btf中添加信息。例如,将智能合约地址作为元数据添加到其相应的文件中,从而使两者之间的关联更容易。用户也可以使用文件系统api,将收集的数据转发给btf。
区块链网关。区块链网关为每个节点执行它们的指令提供了一个运行时环境。它将智能契约转换成一组由节点/计算机执行的指令。对于在区块链网络中进行的每一次数据传输,都有相关的用户支付给核实交易并将交易添加到区块链网络的矿工,这些费用应该由发起交易的发送方支付。以帮助用户从普通网络用户过渡到加密数据的原生用户,最终使分布式网络成为互联网的重要组成部分。但是,它与挖掘网络分离,因此不充当执行工作证明算法的挖掘器。这样做的原因是为了节省btf主要任务的计算资源。首先,将ics中的一部分数据创建和执行的交易发送到区块链网络,在工控区块链网络中进行执行。其次,一些智能合约功能直接在网关上执行,因为它们不会修改区块链的全局状态。这些功能对区块链的本地副本进行操作并返回快速结果
事务管理器。事务管理器自动在区块链网络上生成和部署智能合约。因此,它为每一个需要跟踪的选定文件部署一个特定的智能合约。此外,它还将文件系统api提供的数据(如文件更改)转换为智能合约可执行的格式。在另一个方向上,它将事务接收转换为支持文件系统api的文件格式。此外,如果需要,它还可以缓冲事务。这是因为交易在区块链上可用之前需要时间。我们不再等待交易可用和验证,而是收集状态并定期检查交易是否成功写入区块链。如果交易被区块链拒绝,则再次提交交易。以下影响相同文件的事务将在fifo队列中排队,并在祖先成功写入区块链后提交。
文件跟踪合同。设计一个跟踪变更合同模板,btf在模板中为每个新的注释文件自动部署一个实例。智能合约实例负责跟踪一个文件的所有更改。第三小节将详细介绍合同的设置及其属性和功能。由于存档大量文件的可扩展性要求,将所有元数据存储在一个包含所有数据的全局智能合约中是不可行的。这是因为为该合同编制索引需要很多时间,而且合同的大小也有限制。新文件存档并部署相关智能合约后,其智能合约地址将存储到文件元数据中,以方便在区块链上查找相应的文件。还可以将其存储在专用智能合约、文件或数据库中。
检查。检查是为文件验证、存在证明和文件历史跟踪提供了功能。这些函数嵌入到智能合约中,并在运行btf的节点上本地执行。所有检查功能都在区块链的最新副本上执行,不会更改合同状态,因此无需在区块链上编写交易即可执行。
设计方法
工控网络区块链(industrialcontrolnetworkblockchain)
为了提高工业控制网络的安全性,在工控网络中的各级服务器、交换机、plc、甚至底层设备都可以作为参与节点接入区块链网络。区块链网络本质上是一组非信任节点与其他没有信任节点的共享数据库交互,每个设备节点包含整个数据库事务信息,称为一个块和一个分类帐,ics中的所有设备节点形成区块链和分布式分类帐。为了帮助工控网络和区块链达成共识,各自区块链网络需要建立每个设备节点事务和工控网络连接,并且它们应遵循的某些规则。这些规则被编程到每个区块链的客户端节点上,然后使用它们来决定传入的事务是否有效,从而决定它是否应该被中继到网络中。
在工控网络的现场设备层,分析其数据来源,对采集后的数据进行数据审计,将其存在区块链中,流程如图3所示,分为三个部分。
现场总线控制网络利用诸如prifibus(过程现场总线)、ff-bus(基金会现场总线)等现场总线技术将传感器、继电器等现场设备与一些plc控制器或者rtu等现场控制设备相连。
在各类系统设备接口上添加适配层,实时采集系统设备接口数据到区块链中,实现监控工业控制网络与区块链各类交易数据的实时状态。
采集的数据经过数据审计,通过区块链中的哈希算法形成加密信息摘要,也就是带有哈希序列的一条条数据,最后被编写在merkle树中存储。区块链所具有的时间戳技术可以使得数据信息具有不可篡改、不可伪造和可追溯的重要特征。
时间戳的创建
本文将在工控区块链网络中,每一个新区块生成时,都会被打上时间戳,最终依照区块生成时间的先后顺序相连成区块链,每个独立节点又通过p2p网络建立联系,这样就为信息数据的记录形成了一个去中心化的分布式时间戳服务系统。如图4,在工控网络中,大约每10分钟产生一个新的区块,并盖上时间戳,广播发送给全网各个节点,这样每个节点手里都有一份这个区块的所有信息,包括时间戳,这就形成了一个分布式时间戳。
区块链的防篡改特性注定要用于数字数据及其版权的跟踪和版本控制。因此,将时间戳技术和工控区块链网络结合会导致可信的网络的形成。时间戳技术在工控网络中能解决的安全问题:
1)记录在工控区块链网络上的资产信息是无法篡改的,而且是永久地保留。如果想篡改数据成功,那就得改动下一个区块,以此类推,必须同时改动该区块后面的所有区块。因为将一个区块放入区块链中需要消耗非常多的资源,更改一条记录的困难程度按时间的指数倍增加,越老的记录越难更改,区块链运行时间越久,篡改难度越高。
2)当时间戳有序的在区块链中排列时,在工控网络中存储的数据区块,无论是前一个区块,还是后一个区块,能做到有处可循的保存、删除等。
3)运营成本低,可以免费提供服务。
因此,时间戳在区块链当中扮演公证人的角色,再加上时间戳这个技术本身的意义便是为了证明先后,这导致区块链技术在产权保护方面有很大优势,提供更加公正、可信、全面的保护。
btf工作流程
ics的用户实体和基于智能契约的bft之间交互的序列图。数据主题订阅工业控制器,为该控制器创建自定义合同以规范其数据的使用,并将数据传输给控制器。对于每个新建立的合同,主体使用新的区块链地址来防止与每个控制器建立的合同的可链接性,要求主体维护所有使用的地址和与每个控制器或处理器建立的相应随机数的列表。创建合同后,主体将数据传输给控制器。区块链跟踪系统监控ics网络文件的工作流程。工作流程如图5所示
数据主题(用户)为长期跟踪文件添加哈希序列形成一个哈希文件;
根据btf的文件跟踪模板自动生成该文件的专用智能合同;
btf中所用的数据设为暂定,因为部分数据可能不是我们所需要的;
部署文件控制跟踪控件到区块链上,将合同的地址返回到存储系统中的哈希文件里,以便智能合同和哈希文件之间的建立;
新创建的契约存储传输到控制器的数据列表,包括数据实例化和实例值,由于合同部署在一个公共区块链中,任何人都可以访问合同状态变量和交易,这意味着公共访问所有主体的信息,因此信息系统信息不是以明文形式存储的数据。
btf收到合同控制器传来的数据,确认交易已成功写入区块链的元数据,之后一旦在工控系统中进行交易的数据都会写入区块链,如果有人更改数据,通过btf来检查、确认其地址就能找到更改者和更改的时间。
第一步至第四步仅执行一次。每次文件更改时,重复执行第五步和第六步。为了减少在区块链上进行交易之前的等待时间,后续交易在交易管理器中排队。
1.一种基于区块链的ics安全策略方法,其特征在于,所述方法包括建立共识控制模型和区块链跟踪框架;共识控制模型在工业资源平台服务器上搭建区块链平台,设置准入机制,配置不同的组织关系,并为各个组织配置相应的通道,完成底层基础网络的搭建;在搭建好的工控区块链网络的环境下将模型分为三层:
第一层将底层区块链中的数据分成片打包上传到服务器中;
第二层中共识机制负责安全地更新分布式网络中的数据状态;
第三层去中心化时间戳服务技术,为每次共识机制更新的数据状态提供可公开验证的时间戳;
最后,在控制层采用选择机制,诸如监控中心,区块链上的每个组织都会有记账节点来进行分布式记账,并维护全网的一个公共的账本;同时,对于工业资产数据的读写操作均会被记录到区块链中,实现全方位的安全可信管控;
区块链跟踪框架是一个支持数据存储和分类存档的框架,用于支持工业控制系统中存储基础结构中的数据保留、存档、文件验证和历史记录跟踪;因此,它监视ics用户注释的文件、指示和何时可以注释数据的可编程规则;跟策略—类似,是自动存储工控系统分层中已知的数据,再将数据从性能移动到容量存储的策略;最后,所选择的哈希序列的文件元数据通过智能合约写入底层区块链;btf自动在区块链上生成和部署这些智能合约,提供审核功能和对存储在区块链上的元数据的安全访问,包括存在证明、文件验证和历史记录跟踪。
2.根据权利要求1所述的一种基于区块链的ics安全策略方法,其特征在于,所述区块链跟踪框架包括用户、用户检查程序、文件系统api、区块链网关、事务管理器、文件跟踪合同、检查。
3.根据权利要求2所述的一种基于区块链的ics安全策略方法,其特征在于,所述用户将一些重要的数据文件放在工业控制系统的存储层中,由bft来对用户所操作的程序进行哈希序列编码索引。
4.根据权利要求2所述的一种基于区块链的ics安全策略方法,其特征在于,所述用户检查程序为a用户和b用户在工控区块链的网络中进行数据交互,或者很多用户在网络中共享资源时,通过btf系统,可以查看当前信息传输状态和对数据更改的用户及更改时间、或是ip地址。
5.根据权利要求2所述的一种基于区块链的ics安全策略方法,其特征在于,所述文件系统api是文件系统应用程序可编程接口,它提供了向btf添加文件创建、更改和删除信息的方法;此外,它还可以用于从工业控制系统的存储中向现有的btf中添加信息。
6.根据权利要求2所述的一种基于区块链的ics安全策略方法,其特征在于,所述区块链网关为每个节点执行它们的指令提供了一个运行时环境;它将智能契约转换成一组由节点/计算机执行的指令;对于在区块链网络中进行的每一次数据传输,都有相关的用户支付给核实交易并将交易添加到区块链网络的矿工,这些费用应该由发起交易的发送方支付。
7.根据权利要求2所述的一种基于区块链的ics安全策略方法,其特征在于,所述事务管理器自动在区块链网络上生成和部署智能合约;因此,它为每一个需要跟踪的选定文件部署一个特定的智能合约。
8.根据权利要求2所述的一种基于区块链的ics安全策略方法,其特征在于,所述文件跟踪合同,为跟踪变更合同模板,btf在模板中为每个新的注释文件自动部署一个实例;智能合约实例负责跟踪一个文件的所有更改。
9.根据权利要求2所述的一种基于区块链的ics安全策略方法,其特征在于,所述检查是为文件验证、存在证明和文件历史跟踪提供了功能;这些函数嵌入到智能合约中,并在运行btf的节点上本地执行。
10.根据权利要求1所述的一种基于区块链的ics安全策略方法,其特征在于,所述ics安全设计包括工控网络区块链,工控网络中的各级服务器、交换机、plc、甚至底层设备作为参与节点接入区块链网络;还包括时间戳的创建,在工控区块链网络中,每一个新区块生成时,都会被打上时间戳;以及包括btf工作流程。
技术总结