APP下载

一种基于区块链的高可信大型仪器设备共享方法

2021-09-22张建华

电子技术与软件工程 2021年13期
关键词:背书校验文档

张建华

(广西财经学院实验教学中心 广西壮族自治区南宁市 530007)

1 背景

大型仪器设备精密贵重,对教学、科研等有着重要作用。在事业单位国有资产管理中,明确要求设备的各种租借、转让必须履行严格的审批手续,统一核算和管理。这些情况对大型设备的开放共享提出了更高的挑战。同时,我国经济已迈入一个全新的阶段:建设现代化经济体系,构建新发展格局。而对仪器设备进行合理的配置、加大共享共用力度,充分发挥资产使用效能,是实现我国社会经济高质量发展的重要举措。

2 大型仪器设备管理现状

目前,大部分单位已经拥有成熟的仪器设备管理系统,可以很好地处理入账、划拨等业务。然而这些系统却无法解决设备在不同机构之间的共享问题。不同单位之间进行设备共享首先需要对设备进行统一认证和管理。同时,由于存在设备的监管、评估不到位等问题,使得设备流失、乱用、私用现象时有发生,在一定程度上影响了设备的开放共享力度。

在文献[1][2]中,设备在不同单位之间的共享是通过有偿支付、提前预约等方式实现,并未真正实现设备在不同单位之间的共享。而区块链具有多用户、防篡改等特性,已经在智能交通、医疗、银行证券等行业取得了不错的研究进展[3]。因此,本文将区块链技术应用到大型仪器设备的开放共享建设中,旨在加大设备的使用效能,减少资源消耗。

3 方法架构与设计

3.1 核心架构

本文针对实体设备数字化、认证和共享等关键过程,提出多机构参与的专有区块链网络——E2SBN(Exclusive Entity Sharing Block Network,实体共享区块链专有网络)。E2SBN是由多个机构用户(Organization User,OU)构成的联盟区块链。E2SBN采用高效率的PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错)作为共识算法。E2SBN所有节点完全对等,无特权节点。

E2SBN的基础是分布式账本(Ledger)。账目是所有设备相关的数据记录集合。Ledger存储记账数据,以数据区块形式组织。每个区块由一定数量记账记录组成,这些记录具备时序性。为了高效率进行数据查询,创建了数据库索引(DB Indices)。OU通过PBFT分布式P2P网络组织起来,机构用户是全节点,维护一份完整的Ledger并运行完整的PBFT网络客户端。E2SBN是开放的网络,网络节点允许动态变动。

PBFT网络承载了应用层的智能合约(Smart Contract)。智能合约允许对账本数据执行事务操作,支持丰富的应用开发。智能合约之上是DApp(Decentralized Application,去中心化应用),E2SBN包含设备租借(Lease)、设备捐赠(Donate)、设备查询(Query)等基础DApp。

实体设备进入到区块链,必须进行数字化描述。要对实体设备进行抽象定义,设备信息上链,并且由多个机构进行实地核实方可记账。本文3.4节对设备上链进行阐述。

3.2 共识算法

E2SBN是由指定范围许可的区块链网络组成一种非公开的联盟链,共识不需要通过奖励机制实现。设备共享是复杂的业务性系统,区块产出效率直接决定系统吞吐能力、响应速度,甚至是可用性。许可的区块链网络,参与的机构是有限、可控的,具备一定现实信任机制,因此共识算法不考虑节点完全不可信、不可控的场景。

综合安全性和效率,E2SBN选择PBFT作为共识算法。PBFT是一种分布式系统的一致性算法,允许少数节点(少于1/3总节点数)失效或者欺骗,而可以正常工作,保持一致性。PBFT集群的事务请求具备严格有序性;PBFT的整个通信复杂度是O(N2),对于E2SBN网络是可以接受的效率。

3.3 节点加入

机构加入需要PBFT网络中节点做出投票决定。申请机构向任何在网络中的OU发出申请,并提供证明其身份的文件。接收加入申请的机构用户称为背书节点。背书节点对申请机构提交的信息进行核验,若同意其加入,则在E2SBN网络中发起针对申请的投票,对身份证明文件签名并附到申请表,存储到文档库中。各个OU在节点自动校验相关数据无误后,由人工对申请机构的信息进行最后复核,决定是否同意申请机构加入。所有OU做出决定后,结果汇总到背书节点上,只有100%同意的结果才允许申请机构加入。作出同意决定的OU对申请信息进行背书签名,并反馈给背书节点。背书节点最终生成一份符合申请机构的部署描述文件,最后使用申请机构公钥对上述信息加密后输出到文件。

申请机构拿到部署描述文件后,使用自身私钥对文件进行解密,得到所有的签名背书和机构信息。然后部署PBFT网络客户端,使用签名背书文件作为凭证加入到网络中;其他节点收到新节点加入请求后,对其背书文件进行校验。当所有节点确认背书文件合法后,允许新节点正式加入网络,并同步账本数据到本地。

Proc 1: NODE-JOIN IN: 申请文件: af; 身份证明列表: p;OUT: 受理结果: f0; 部署描述文件:df;BEGIN T ← (解析申请文件af); sp[]← (使用T.pub作为公钥对p依次进行签名校验); FOR (i, s) IN sp DO IF (s != T.sign[i]) THEN f0 ← 0; QUIT;ENDIF ENDFOR FOR (i, doc) IN p DO T.docs[i].uuid ← (计算doc的文件指纹) T.docs[i].sign ← (使用T.pub对T.docs[i].uuid内容签名) ENDFOR c ← BROADCAST T; FOR ASYNC DO IF NOT (校验T.docs[].uuid) AND (校验T.docs[].sign) THEN WRITE 0 → c;ENDIF rs ← (用户人工审核T基本信息)WRITE (rs, 背书签名) → c; END v[]← WAIT c; IF (v[].rs === 1) THEN df ← (构建部署描述文件,带上所有节点签名信息v[].sign);f0 ← 1; ENDIF END

3.4 实体数字化与认证

实体设备不能直接写入区块链,必须经过信息抽象和信息校验。抽象实体设备需要在以下方面进行:设备所有者、类型、编码、当前持有者、借出时间、到期时间,关联的文档列表(如照片、合格证书等证明文档抽象信息的资料)。考虑到可能的业务扩展,可以根据需求适当增加抽象信息。

PROC 2: ASSET-VERIFY IN: 设备信息: a 附件列表:flist OUT: 校验标识: f0; 设备ID:aid;BEGIN s0 ← (使用OU签名对文档信息签名) c ← BROADCAST a, s0; FOR ASYNC DO IF NOT (校验s0通过) THEN WRITE 0 → c;ENDIF rs ← (用户人工审核a, flist)WRITE (rs, 背书签名) → c; END r[]← FOR c ; IF (NUM(r[].rs = 1) > Tasset ) THEN EXEC init-asset WITH(a, r.endorsement[]) f0 ← 1; ELSE f0 ← 0;

ENDIF END

如过程2所示,发起设备校验的OU需要对设备信息进行签名,将设备信息和签名广播到其他OU,请求审核。每个节点收到设备初始化校验请求后,对其进行合法性校验,即校验请求的签名。通过人工审核方式,对设备信息、设备附件进行校验,若校验通过则反馈结果并提供背书签名。发起节点收到的同意数量达到阈值Tasset后,即可宣布设备校验通过。最后调用初始化设备的智能合约(init-asset),将设备信息存储到区块链上。

3.5 文档审计

在节点加入、设备上链等流程中,存在需要附件存证的需求。因此如何保证存证文件(文档Document)的真实性是重要问题。本文采用了链外存储方式存放文档。在智能合约执行时,获取文档的指纹,使用文档拥有者的公钥对文件指纹进行加密,保存到设备信息中。

PROC 3: DOC-SIGN-VERIFY IN: 文档GUID: docid OUT: 校验标识: f0; 影响设备:rlist;BEGIN d ← (通过docId到文档库查询文档); sf ← (读取d的文件并进行文件签名计算); sd ← (使用d的签名者公钥对sf进行签名校验); IF (sd = d.sign) THEN FOR blk IN (包含d的区块) DO VerifyDoc(d, true); LogDocVer(d, 时间戳); UpdateDoc (d);ENDFOR f0 ← 1; ELSE PushToBlackList(d) f0 ← 0; ENDIF END

如过程3所示,根据文档ID从文档库中查询文档信息,若文档已标记删除则不予处理。读取文档内容使用指纹算法输出文档指纹,再使用作者的公钥对签名进行校验。校验通过的文档,在区块链上记录本次校验过程,并更新文档库的校验次数。而校验失败的文档,则会加入到黑名单中。

4 总结

通过专有区块链联盟网络,构建一种高可信的共享方法。利用区块链网络的对等、安全加密、协同共识等特性,实现开放、高度自治、可扩展的资源共享联盟。通过对核心架构分析、实体设备数字化以及网络节点扩展等关键过程的深入研究,得出E2SBN是一种可应用的专有区块链网络架构。

猜你喜欢

背书校验文档
浅谈Matlab与Word文档的应用接口
背书是写作的基本功
有人一声不吭向你扔了个文档
背书
炉温均匀性校验在铸锻企业的应用
基于RI码计算的Word复制文档鉴别
背书
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
大型电动机高阻抗差动保护稳定校验研究
基于加窗插值FFT的PMU校验方法