王丽娟,刘佳,王姝,郭志斌,周园春
中国科学院计算机网络信息中心,北京100190
随着物联网和智能制造的不断发展,工业互联网作为全球产业发展的大趋势,已经成为各国家、地区以及行业和企业提升自身竞争力的关键[1]。工信部在2020年3月20日发布《关于推动工业互联网加快发展的通知》,将“加快新型基础设施建设”作为工业互联网发展的首条任务。因此,作为“新基建”中的重要一员,工业互联网将进入高速发展期。为实现工业互联网各领域、各行业以及各环节的互联互通,需要对涉及的人、物、物理及虚拟对象等进行统一标识分配,利用标识对各对象进行自动识别[2-3],同时,基于标识解析体系创建行业应用,从而实现更具价值的新型工业互联网生态。
目前,我国工业互联标识解析体系正在全面建设和实施中,基于该标识解析体系的公共服务和行业应用已经成为发展工业互联网应用的重要抓手。其中,工业互联网标识公共服务应用(以下简称标识公共服务应用)解决了目前各工业系统数据编码不统一,各工业系统、产业、企业或行业等数据共享困难,产业上下游企业协作困难等问题,具备服务共享、应用共享、数据共享等能力,为工业互联网跨行业和行业内的公共服务提供了统一的解决方案,降低了各工业企业开发工业互联网应用的门槛。但是,随着工业互联网规模的不断扩大,各工业企业对数据共享安全、数据追溯要求也随之提升[4],因此亟需一种新的技术方案来解决目前标识公共服务应用建设过程中遇到的如上问题。
区块链技术是一种去中心化的分布式数据库(账本)技术,同时也是融合了 P2P 技术、共识机制、密码学等的综合应用的新型模式,上链的数据信息具有“不可伪造、不可篡改、可全程追溯、公开透明、安全可靠”等特征[5-6]。基于这些特征,区块链为众多对数据安全有要求的应用场景提供了解决方案[7]。本文针对目前标识公共服务应用建设过程中遇到的数据安全需求,提出了一种基于区块链技术的解决方案,解决标识公共服务应用中数据共享安全和数据追溯等问题。对应用中涉及的各类对象、数据模型、数据及数据间的关系进行标识,通过区块链对各类数据进行存储和可信共享,从而实现对标识公共服务应用相关数据的追溯,打通各工业生产系统、企业以及产业链上下游之间的信息壁垒,提升数据共享安全性,为各方安全协作提供技术保证[8-9]。简言之,本文欲通过构建一个区块链网络来打造可信的工业互联网,在分布式的区块链网络上不可篡改地处理标识公共服务应用涉及的主数据模型、知识图谱模型、关键主数据。这不仅可以保护信息不受非法修改的影响,还可以防止由于集中服务器的物理损坏而造成的意外损失,从而为跨行业和行业内的公共服务应用提供更加安全可信的标识服务。
工业互联标识公共服务应用来源于“2019年工业互联网创新发展工程—标识解析公共服务支撑平台项目”,基于国家工业互联网标识解析体系建设。该公共服务应用可以对接国际顶级节点、国家节点、各行业和区域二级节点、企业应用节点等,支持服务共享、数据管理、智能计算和应用支撑等能力。同时,依托这些基本能力提供了标识支撑、主数据模型、知识图谱等数据共享服务,并在此之上提供多个基于标识服务的行业典型应用场景,补齐跨行业、跨领域、跨企业边界、跨异构系统、跨地域的应用短板。
标识公共服务应用包括基础资源层、共享服务层、应用层以及企业接入层四部分。
基础资源层提供底层的网络、计算、存储资源;共享服务层基于容器环境创建,提供标识支撑、主数据模型、知识图谱等数据服务能力;应用层提供基于标识服务的行业典型公共应用,企业接入层负责接入企业数据。
标识公共服务应用为跨行业及行业内典型应用提供了通用的多种共享服务能力。
1.3.1 标识支撑服务
标识支撑服务是标识公共服务应用共享服务的核心组成部分,为上层公共应用涉及的所有对象如企业设备资源、企业主数据、数据关系等提供标识注册、标识解析、标识管理等服务。同时,所有标识接入国家工业互联网标识解析体系,为行业公共服务应用提供数据标识服务。
1.3.2 主数据模型服务
图1 标识公共服务应用架构Fig.1 Archit ecture of public service applications of identif cations
数据是企业的核心,企业主数据是对企业核心关键业务数据的描述,包括员工、企业客户、产品、物料、设备、供应商等的基础数据,这些数据也是行业应用涉及的关键数据。但目前行业或企业数据来源众多,数据结构不一致,没有统一标准。主数据模型服务通过联合行业内多家相关企业机构对同行业企业主数据的分析,建立行业主数据标准,从而抽取出通用的行业主数据模型,为行业公共服务应用提供数据支持。
1.3.3 知识图谱服务
所有数据都不是孤立存在的,通过主数据建模的方式创建主数据模型的关系,从而抽取行业知识图谱模型。待各模型的数据完成标识注册后,可以完成行业主数据关系数据的创建。建立完成的主数据关系通过图谱的方式展示,可以清晰的看到各对象间的关系。同时,这些关系数据也可以同主数据一起,为行业公共服务应用提供数据支持的同时,也可以为外部标识应用提供服务。
引入区块链技术之前,原有的标识公共服务应用架构分为基础资源层、共享服务层、应用层以及企业接入层四部分,引入区块链技术之后,区块链成为标识公共服务应用的服务支撑层,为整个标识公共服务应用提供去中心化的基础设施。在依据工业互联网各行业规范及标准,遵守企业间协定的前提下,通过区块链的共识机制、智能合约、共享账本、隐私保护等为企业间的数据共享提供支撑服务。每条行业链上都可以有该行业的相关监管机构加入,企业与监管机构的这种连接方式把对企业的正常生产影响降到最低。同时,每一次将共享数据保存于区块链上都会有一个时间戳记录,让每一次数据保存的时间点有据可查。
图2 基于区块链的标识公共服务应用架构Fig.2 Architecture of public service applications of identif cation based on blockchain
图3 区块链节点部署方式Fig.3 Deployment of blockchain node
区块链节点的部署,可以部署在云端,也可以部署在企业私有云或企业本地,为公共服务应用支撑提供多种数据存储方式。
根据参与方访问权限的不同,区块链可以分为公有链、联盟链和私有链[4]。公有链任何实体都可参与;私有链只对单独实体开放,一般为公司内部使用;联盟链是在一群有身份认证的参与者之间建链,对特定组织团体开放。标识公共服务应用涉及多方参与,需要根据应用场景的业务使多方参与的企业或用户完成业务数据的安全可信共享,从而进一步完成数据追溯。同时,联盟链方便进行权限控制,能够提供更好的隐私保护[10]。根据这一需求特点,本研究选择联盟链技术作为底层基础设施。
Hyperledger Fabric 被建设为一个模块化的、支持可插拔组件的基础联盟链框架,适合在复杂的企业内和企业间搭建联盟链[11-12]。本研究底层采用Fabric 联盟链作为其网络基础设施来创建标识公共服务应用联盟链,形成整个标识公共服务应用的服务支撑层。
图4 标识公共服务应用共享链和行业链Fig.4 Sharing chain and industry chain of public service applications of identif cation
标识公共服务应用联盟链包括多条行业链和一条共享链。由于不同行业应用的差异较大,而每个行业都有不同于其他行业的数据及数据共享需求,因此,针对每个行业创建自己行业的行业链。同时,不同行业对标识公共服务应用也会存在共性需求,按照领域可以分为如供应链、防伪溯源、产品全生命周期管理、生产协同等,针对不同行业的共性需求,建立共享链,参与者在将数据上传到行业链的同时,可以选择将一部分上传数据上传到共享链。
不管是跨行业还是行业内的标识公共服务应用,应用涉及的主要数据都主要为行业主数据模型、知识图谱模型、关键主数据三类,此三类数据为标识公共服务应用提供核心数据支持。为保证数据的共享安全和追溯,需要将各应用场景的这三类关键数据上链。
(1)主数据模型
主数据模型为主数据提供了行业规范,是主数据管理和服务的基础。所有制定和使用主数据模型的相关参与方需统一遵循主数据模型规范,根据各方的需求管理和维护,并约定在各自的异构系统中参照执行,从而保证数据互通的准确、完整、可理解。因此,主数据模型有不被篡改,安全可信共享的需求,需要进行上链。由于主数据模型属于文件模型,数据量较小,可以将模型的原始数据直接上链。
(2)知识图谱模型
标识公共服务应用的行业知识图谱模型通过数据的抽取和建模构建[13],也可以基于行业主数据模型创建,为行业主数据关系提供依据,对企业来讲,和主数据模型一样,有不被篡改、安全可信共享的需求,需要进行上链。同样,由于知识图谱模型也属于文件模型,数据量较小,可以将原始数据直接上链。
(3)关键主数据
由于主数据较多,为遵守相关监管机构的规定,更为确保数据安全,可以用区块链去中心化的方式来保护和管理主数据。同时,因为区块链上的数据不仅是不可变的,而且对所有认证的参与者都是透明和可见的,这样可以确保更流畅的数据审计和检查。但由于主数据的数据量较大、文件较多,虽然主数据有安全管理的需求,但不适合直接将原始数据上链。由于所有主数据都基于标识公共服务应用的标识支撑服务进行标识注册,在数据的有效期内提供唯一的标识服务。因此,可以将原始数据保存在企业本地,选择将数据标识、数据名称、数据摘要、数据所有者、数据文件校验签名值如MD5 值或SHA256 值等元数据信息上链。
数据可通过客户端、移动端、接口等多种方式进行上链。
区块链技术的核心在于信任机制,基于信任机制进行数据共享[14]。上链数据的类型主要为以上三类,但根据不同应用需求,数据上链的方式又可以分为以下两种。
(1)企业只允许部分数据上链或数据只对部分参与者开放,根据数据的共享权限设置,在一定范围内实现数据可信共享。同时,所有数据都可以被加密,用密码学和智能合约保证数据的不可篡改性和不可伪造。
(2)企业允许数据对联盟链所有参与者公开共享,实现在整个联盟链范围内的数据可信共享。
智能合约也叫智能合同,通过事件驱动,用计算机语言描述合同条款、交易的条件、交易的业务逻辑等[4]。智能合约的一种情景或业务对应一组规则和逻辑, 是部署在区块链上可信共享的代码[15]。智能合约根据预设条件自动执行,实现数据“有逻辑的上链”。在区块中包含有该区块的时间戳,通过时间戳和智能合约机制[15]进行交易的生成和验证。智能合约的管理应包括智能合约部署、更新浏览等。由于不同行业应用差异较大,每个行业的行业链可包含一个或多个智能合约,跨行业的共享链也可包含一个或多个智能合约,具体合约的内容根据不同应用的业务进行编写。
基于以上的底层共享服务,标识公共服务应用可以对接企业各自的工业应用,简化企业应用开发及多个企业的协同流程。
图5 数据上链流程Fig.5 Process of data to the blockchain
标识公共服务应用不同行业或不同应用场景的数据上链和使用流程是相似的,只需根据不同应用的需求,编写不同的智能合约,提供符合需求的主数据模型、知识图谱模型、关键主数据上链,为各应用场景提供更加安全可信的标识公共服务。因此,本章节的典型应用场景,不是详细的应用使用场景的介绍,而是侧重于描述典型应用场景下为该应用的哪些数据提供可信共享通道与追溯。
如下以非煤矿山行业应用场景的主数据模型及主数据上链为例进行应用探索,详细介绍需要上链的具体数据。
3.1.1 需求及问题
非煤矿山行业产品的全生命周期包括地勘、测量化验、采矿(采准、采矿、运输)、选矿、冶炼多个环节,简称“地、测、采、选、冶”。目前各个生产环节的数据是独立的,缺乏生产跟踪数据,而且信息化程度较低,数据大部分为纸质的静态数据或电子表格。
通过标识公共服务的标识支撑服务,可以为产品生产过程提供标识注册和关联,实现对象标识与该标识相关的多个标识之间的映射,向各个环节提供标识服务,以通过各个生产环节的标识获取全生命周期信息,使复杂、多样的生产工业和过程变得简单化、高效化,并覆盖产品生产的全生命周期。同时,标识公共服务应用集成非煤矿山行业的主数据模型,为生产数据全生命周期溯源、生产协同等具体应用场景提供底层数据共享支撑。
但如引言中提到的,虽然标识公共服务应用解决了非煤矿山行业应用场景数据的统一标识服务与数据互通,但是依然无法做到真实溯源和可信共享。而各环节均有大量重要生产数据,这些数据的真实性也是矿山生产安全的重要保证。因此,通过提供更加安全可信的标识公共服务,可以实现非煤矿山行业各环节生产数据的全生命周期管理,做到数据真实不可更改,来源有据可查。
3.1.2 数据上链
非煤矿山行业应用场景中,我们基于标识公共服务应用建立行业主数据模型,对应主数据模型的实际生产数据标识进行上链,通过区块链技术为矿山生产数据全生命周期管理提供不可篡改和可信共享保证。同时,矿山企业的上下游企业,如设计企业、设备生产企业、监管机构、其他服务商等也加入到非煤矿山行业链,通过区块链技术完成数据可信共享和协作。
图6 非煤矿山行业应用场景Fig.6 Application scenarios of non-coal mining industry
在非煤矿山行业应用场景中,上链机构包括但不限于矿山企业、设计企业、设备生产企业、监管机构、其他服务商,均在非煤矿山行业链进行认证。上链的数据主要为非煤矿山行业主数据模型,基于主数据模型的矿山生产数据。由于主数据模型是行业应用的核心数据,为保证数据的可信共享和全流程追溯,通过非煤矿山行业链提供底层数据共享服务。同时,为保证矿山产品的全生命周期管理,关键生产数据也需要上链。
(1)行业主数据模型
通过标识公共服务应用,联合矿山企业、设计企业、设备生产企业、监管机构、其他服务商等制定行业主数据模型标准,建立行业主数据模型。非煤矿山行业主数据模型,包含但不限于如下数据。
具体到“地、测、采、选、冶”各阶段的主数据模型,由于传感器类型和各设备类型的属性类似,统一合并为“设备”主数据模型,其他类型差异较大暂不合并。同时,由于只是模型文件不属于大文件,直接采用原始数据上链方式。每个主数据模型包括序号、元素名称、元素英文名称、可选性(可选或必须)、唯一性(唯一、可重复)、格式(文本、数字等)、注释多个属性。由于各环节主数据模型较多(如图7)且每个主数据模型的属性较多,以下针对各环节给出了主数据模型示例,示例只列出部分关键属性。地勘阶段的主数据模型示例见表1。
表1 钻机(部分数据)Table 1 Drilling rig (partial data)
图7 非煤矿山行业主数据模型Fig.7 Master data model for non-coal mining industry
测量化验阶段的主数据模型示例见表2。
表2 经纬仪Table 2 Theodolite
采矿、选矿、冶矿阶段的主数据模型示例见表3。
表3 设备(部分数据)Table 3 Equipment (partial data)
(2)矿山生产数据
在生产过程中,将矿山生产的关键生产数据上链,涉及企业包括设计企业、矿山企业、设备生产企业。由于生产包括“地、测、采、选、冶”多个环节,每个环节都包含大量生产数据,通过数据标识方式上链。矿山生产数据示例见表4,其中部分敏感信息用“*”代替。
表4 设备(部分数据)Table 4 Equipment (partial data)
进行认证授权后,矿山企业可以授权查询非煤矿山行业链上设计企业和设备生产企业的数据,监管机构和其他服务商可以授权查询非煤矿山行业链上的矿山生产数据。通过向外部服务商有条件地开放企业生产数据,提高服务效率和质量。所有数据真实不可篡改,为实现非煤矿山生产数据的全生命周期管理提供了安全保证。
如下以氧化铝行业应用场景的知识图谱模型上链为例进行应用探索,详细介绍需要上链的具体数据。
3.2.1 需求及问题
氧化铝是铝的稳定氧化物,化学式为Al2O3。在矿业、制陶业和材料科学上又被称为矾土。氧化铝的上游企业是铝土矿企业,下游企业是电解铝企业。上游企业铝土矿企业为氧化铝行业提供原材料,氧化铝行业为下游电解铝行业提供生产原材料-氧化铝粉。氧化铝行业设备及备件管控难、数据价值实现难。并且,氧化铝生产工艺复杂,数据模型包括材料域、管理域、工艺流程操作域等多个环节,流程繁琐复杂且数据与数据之间关联较多。根据这些复杂的数据在标识公共服务应用中形成了氧化铝行业的知识图谱模型。同时,氧化铝行业的知识图谱模型也可为其上下游企业提供行业数据参考。因此,为提供更加安全可信的标识公共服务,将氧化铝行业的知识图谱模型进行上链。
3.2.2 数据上链
该场景下(如图8),上链机构包括但不限于氧化铝企业、铝土矿企业、电解铝企业、监管机构、其他服务商,均在氧化铝行业链进行认证。
图8 氧化铝行业应用场景Fig.8 Application scenarios of alumina industry
氧化铝行业知识图谱模型基于数据模型建立,以材料域、管理域、工艺流程操作域、产品域、设备域、动力域展开,各知识域存在着相互关联关系,具体的数据模型如图9所示。
图9 氧化铝行业知识图谱模型图Fig.9 Alumina industry knowledge graph model diagram
进行认证授权后,氧化铝企业联合铝土矿企业、电解铝企业、监管机构和其他服务商都可以授权查询氧化铝行业链上氧化铝行业的知识图谱模型。通过向外部服务商有条件地开放企业生产数据,提高服务效率和质量。所有数据真实不可篡改,实现了氧化铝行业知识图谱模型的可信共享。
依据本文所述的应用探索,通过将工业互联网标识公共服务应用涉及行业的主数据模型、知识图谱模型、基于主数据模型和知识图谱模型的关键主数据上链,为跨行业和行业内的公共服务应用提供安全可信的数据共享及数据追溯,提升了数据共享的安全和协作效率,为优化公共服务应用提供了可靠的数据服务支撑。
在下一步工作中,我们将尝试为更多行业应用场景提供区块链服务,如食品加工、水泥制品、电力、物流、石油加工、计算机设备制造等行业的应用场景,通过区块链的数据不可篡改、可信共享和可追溯等特点,为各应用场景提供更加安全可信的标识公共服务,从而为工业互联网标识公共服务应用提供更加完善的解决方案。
利益冲突声明
所有作者声明不存在利益冲突关系。