基于区块链的工业互联网系统设计
来源:用户上传
作者:袁梦思 贾子彦
摘要:为了解决工业数字化、自动化进程中的生产信息安全问题,保障生产质量,提高系统自动化运转的能力,提出了区块链与工业互联网深度融合的概念。通过区块链的去中心化、可信协作、不可篡改等固有优势,利用Hyperledger Fabric平台搭建一个工业互联网系统,采用Raft算法以及智能合约实现节点共识以及流程设定,打造一个可信的第三方交流平台,让企业联盟之间实现信息互通互联。
关键词:区块链;工业互联网;智能合约;链码
中图分类号:TP311.1 文献标识码:A
文章编号:1009-3044(2022)09-0083-03
1 引言
随着全球范围内新一轮科技革命和产业变革的蓬勃兴起,以人工智能、大数据技术和物联网等新一代信息技术为标志的新产业革命正在改变传统制造业的运营模式和知识技术创新方式[1-3]。作为新一代信息技术与制造业深度融合的平台,工业互联网成为未来制造业发展的新引擎。
所谓工业互联网,就是通过开放的网络平台,将原料供应商、生产线、仓库、产品和客户紧密地联系起来,共享工业生产流程中的部分信息资源,以减少人力资源的应用,提升产品生产效率,降低生产成本。然而,现阶段在同一条制造产业链上的企I的生产管理系统并不能实现互联互通,产业链上下游数据不能共享。区块链拥有可追溯和不可篡改等特点,具有可信协作以及隐私保护等技术优势,能够较好地实现上下游厂商之间数据的互联互通,有效的保证工业互联网的数据安全。因此,本文设计了一个基于区块链的工业互联网系统,通过Hyperledger Fabric平台进行系统搭建、共识算法设计以及智能合约的制定,实现产业链的数据共享,解决工业互联网引发系统安全、数据安全、隐私泄露、架构僵化、资源调度等多方面的问题[4]。
2 区块链技术简介
区块链是一种数据以区块为单位产生和存储,并按照时间顺序首尾相连形成链式结构,具有不可篡改、匿名性、去中心化、可追溯和无需信任基础等特点[5-7]。其自带的哈希算法和非对称加密算法[8]也有效地保证了工业数据的真实性和安全性。各节点之间通过共识算法保证账本的一致性,通过智能合约执行计算机协议,实现流水化操作。
按照开放程度,区块链可以划分公有链、私有链和联盟链。其中,公有链的开放程度最高,任何人都可以加入公有链参与节点共识,成为公证人、参与者、使用者[9-10]。私有链不对外开放,仅供企业内部的人员使用,加入私有链的节点需要进行注册和身份认证[11]。只有特定的联盟成员才能加入联盟链,共享利益和资源[12-13]。本文是为了上中下游产业链之间实现数据流通,属于企业间的资源共享,故采用联盟链来进行系统设计。
3 系统框架设计
3.1 框架设计
本系统主要涉及原材料供应商、生产厂家以及零售商三个方面的用户。每个参与方在区块链中都以一个组织的形式存在,可以根据实际情况设置若干节点,每个组织至少设置一个节点。同时,本系统引入了政府监测组织,可以实现高危(重点)行业的生产信息监测,比如对化工行业的原材料把控等。
如图1所示,本文所涉及的组织之间通过不同的通道进行信息传达与交流。政府监测组织始终参与区块链的共识,活跃于每一条通道中。原材料供应商将商品种类、生产日期以及库存储备数量等信息上传到区块链中,政府监测组织与生产厂家可以在通道1中查询相关信息,生产厂家根据其需要的材料种类以及数量等进行产品选购。在采购协议达成一致之后,商家库存储备量以及生产厂家的原料储备量都会发生相应的改变,交易信息上传至区块链。与此类似,生产厂家将成品的相关信息上传到区块链中,政府监测组织与零售商在通道2中查询有关信息,零售商也能够根据生产厂家成品的类型以及数量进行产品选购,交易信息上传至区块链。通道3是政府监测组织与零售商的一个单独交流通道,可以查询零售商商品信息的实时变化。
3.2 软件架构
根据上文所述系统框架,软件架构可以分为基础层、数据层和应用层三个部分,如图2所示。
基础层是Hyperledger Fabric的框架,主要是由一些底层代码组成,编写了区块链的基本机构;数据层主要包括了分布式账本数据的存储,节点权限的管理以及共识算法和智能合约的部署;应用层则是对链码功能的调用,包括账本初始化、账本读取、账本更新、交易信息录入等。各方参与者通过不同的API接口接入区块链,向应用层发起请求,应用层将请求转发至数据层,查询节点权限,根据智能合约设定的流程读取并更新账本,完成区块链的交互工作。
4 基于区块链的工业互联网监测系统设计
本文采用Hyperledger Fabric平台来实现系统搭建,以STM32单片机系统的生产为例进行工业互联网监测系统设计。
4.1 工业互联网系统设计
以STM32单片机系统的生产为例,对工业互联网系统进行设计。由于STM32属于普通商品,不需要政府部门进行监测,因此在该例证中不引入政府监测组织。区块链的参与方分别为原材料供应商(Org1)、单片机系统生产商(Org2)以及产品零售商(Org3)。每一个组织下设3个节点来模拟账本的录入、更新以及查询等。
在本系统中,Org1、Org2、Org3之间通过2个不同的通道进行信息交互。通道1中部署链码chaincode1,主要负责Org1、Org2之间的信息交互;通道2中部署链码chaincode2,负责Org2、Org3之间的业务交流。
通道1中的信息涉及原材料采购的问题。STM32单片机的生产主要涉及30种原材料,包括6款普通电阻、1款线绕电阻、2款钽电容、3款陶瓷电容、3款二极管、2款LED灯、1款电感、2款晶振、1款电池、1款液晶屏以及8款芯片。因此,在通道1中部署的链码chaincode1需要将以上30个参数融入账本设计中。具体而言,chaincode1需要实现以下几种功能:
nlc202205171922
转载注明来源:https://www.xzbu.com/8/view-15431573.htm