南方电网物资有限公司 夏肇元 程文美 刘菲 李荣
利用区块链技术进行供应链管理及信息共享是近年来的研究热点。由于各供应链或供应链中各企业所采用的区块链大都是联盟链或私有链,无法进行互操作及信息共享,形成了一座座信息孤岛。针对区块链跨链情况下的供应链信息共享问题,本文设计了侧链与联盟链双层跨链模型,并设计了公证人机制来实现侧链与联盟区块链之间的共识,提出了隐私信息保护策略和信息共享激励机制,并通过仿真实验验证了本文方法的有效性。
供应链是指围绕核心企业,从配套零件开始,制成中间产品以及最终产品,最后由销售网络把产品送到消费者手中,将供应商、制造商、分销商直到最终用户连成一个整体的功能网链结构。随着全球经济一体化的不断发展,各国及各经济组织间的合作越来越普遍,供应链中涉及的供应商、制造商、分销商等企业数量众多、分布范围也很广。如何对供应链进行全过程高效管理是各企业面临的一大问题。早期,各企业通常利用供应链管理系统进行供应链管理。但是,传统的供应链管理系统是集中式结构,系统的管理员可修改数据,从而导致信任问题。此外,集中式系统还容易出现单点故障,受到内部攻击等。
2008年,Satoshi Nakamoto提出了区块链的概念,立即受到了多个领域学者的关注。区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新账本数据、利用密码学方式保证数据传输和访问安全、利用智能合约来编程和操作数据的一种全新的分布式基础,具有分布式共享、非篡改、数据可追溯的特点。
区块链跨链技术是实现各区块链之间互联互通和信息共享的重要技术途径。然而,目前已有的跨链方案主要是为金融领域设计的。针对供应链中区块链跨链信息共享问题,本文设计了双层跨链模型,设计了公证人机制来实现侧链与联盟区块链之间的共识,提出了隐私信息保护策略和信息共享激励机制,并通过仿真实验验证了本文方法的有效性。
邵奇峰等人[1]从交易流程、区块链网络、共识机制、区块链数据、智能合约、隐私保护几方面阐述了企业级区块链的原理与技术,并总结了企业级区块链的未来发展趋势。朱兴雄等人[2]提出基于区块链技术由供应链各方搭建联盟链,开展供应链金融、精准营销等业务,可提高金融领域的服务效率。张志威等人[3]总结了区块链数据管理技术,包括从区块链数据存储、区块链事务处理、区块链查询处理、区块链可扩展性等方面。Wen等人[4]提出了一种基于区块链的供应链结构,提供了供应链中不同实体之间的协作解决方案以及一种面向供应链的细粒度数据共享方案,保证了供应链数据的可靠性和供应链的隐私保护。葛琳等人[5]提出了一种基于区块链的物联网信息共享安全机制,采用了数据区块链和交易区块链相结合的双链模式:在数据区块链中实现数据的分布式存储和防篡改,在交易区块链中实现资源和数据交易,提升了交易效率,并实现了隐私保护。Jiang等人[6]提出了物联网数据管理的跨链集成解决方案,构建了一个跨链交互的分散访问模型,设计了一种用于在侧链和联盟区块链之间保护物联网数据隐私的数据访问控制协议。综上所述,已有工作主要集中在单一区块链的数据管理与数据共享,以及物联网领域的跨链数据管理,关于在区块链跨链情况下的供应链信息共享问题,目前还缺乏有效的方法。
本节首先介绍本文所采用的跨链体系结构,然后分别介绍为了实现跨链数据共享所采用的关键技术,包括共识机制、隐私信息保护和信息共享激励机制。
本文采用双层跨链模型来集成多个供应链区块链,如图1所示。该模型的底层是联盟区块链,可作为控制站运行(本文采用Hyperledge Fabric作为联盟区块链);模型的上层是各个侧链,每个侧链都是一个供应链区块链。联盟区块链通过公证人节点与各侧链相连。当供应链较多时,或者随着时间的增加,供应链所产生的数据量也不断增加。在区块链上存储数据是非常昂贵的,为了高效存储这些数据,本文采用IPFS作为数据存储的分布式存储系统。联盟区块链和侧链都通过公证人节点连接到IPFS。
图1 双层跨链模型Fig.1 Two-layer cross-chain model
共识机制是实现区块链跨链的关键问题。本文设计了一种公证人机制,来实现侧链与联盟区块链之间的共识。
在图1中,联盟区块链和侧链间通过公证人节点连接,这些公证人节点形成了一个网络,可以充当不同区块链系统的网关。跨链网关负责读取链上的信息并对跨链事务进行路由。公证人网络通过投票机制确认每个跨链交易,当网络中超过2/3的公证人签名时确认该交易。图2所示显示了通过公证人网络的两个区块链系统之间的数据流。只有公证人节点验证的交易才会通过网关传输到目标区块链。
图2 基于公证人节点网关的共识机制Fig.2 Consensus mechanism based on the notary's node gateway
具体来说,在图2中,当发生跨链交易或数据交互时,主要进行如下三个步骤:(1)源区块链将跨链交易提交到网关中的公证人节点;(2)公证人节点验证并对交易签名;(3)网关在收集2/3以上公证节点的签名后路由和转发该交易事务。
供应链涉及多个环节或企业,每个环节都会产生很多信息,其中某些信息可能会涉及商业隐私或商业秘密,所以每个企业愿意共享的信息是有限制的。本文将供应链中可进行共享的信息分为如下5类:库存、成本、需求、质量、其他信息。其中库存信息包括库存能力和当前库存量,成本信息包括原材料成本、人工成本、交易成本等,需求信息包括当前订单需求、预期订单需求、已销售数据等,质量信息包括生产规格、产品参数等,其他信息包括除上述信息之外的其他产品相关属性信息。针对上述5类隐私信息,用户可以生成5个对应密钥,并通过MD5进行加密后保存到区块链上。
隐私信息所有者可对允许访问该隐私信息的用户进行授权。在进行用户授权时,首先选择该用户允许访问的隐私信息类别,然后设定2.4节所描述的激励积分数量(可根据系统协议自动设定,也可双方协商设定),最后用信息需求用户的公钥把该用户所需信息类别对应的密钥发送给该用户。
供应链涉及企业较多,各企业处于供应链的上下游不同位置,或者各供应链之间有单向的供给依赖关系,这就使得不同企业对于信息共享的意愿不同。为了鼓励供应链各企业积极参与信息共享,本文设计了信息共享激励机制。在隐私信息被其他区块链或同一区块链内的其他企业访问后,提供隐私信息的一方将收到约定数量的积分作为补偿,以提高其信息共享的主动性。
本节对上节提出的跨链体系结构及相应的策略机制进行实验验证。本文基于Hyperledger Fabric构建了联盟区块链,并在VultrVPS上部署了4个节点作为公证人节点,并组成公证人节点网关。每个节点的配置为:英特尔I7-11700K处理器,8核,主频3.6GHz;内存为DDR4 3200MHz 32GB。在每个测试中,本文通过Hyperledger Fabric提供的API生成并发送5000个事务(均为共享数据查询事务)。本文测试了不同发送率下系统的延迟和吞吐率(单位为TPS,即每秒事务数),具体如表1所示:
表1 模拟实验系统延迟及吞吐率Tab.1 Delay and throughput rate of simulation experiment system
可见,在该模拟环境下,本文设计的跨链体系结构及相应的策略机制可以有效处理区块链跨链情况下的供应链信息共享。特别是当发送率不高时,本文方法尤为有效。
由于区块链技术具有分布式共享、非篡改、数据可追溯的特点,现已成为供应链管理重要技术手段。但是,各供应链或供应链中不同企业所采用的区块链大都是联盟链或私有链,都是独立、封闭的网络,各个区块链之间难以互联互通。为了解决现有供应链区块链的信息孤岛问题,本文设计了包含侧链与联盟链的双层跨链模型,同时设计了公证人机制来实现侧链与联盟区块链之间的共识;此外,为了保护用户隐私并提高用户信息共享的积极性,提出了隐私信息保护策略和信息共享激励机制;最后通过仿真实验验证了本文方法的有效性。
引用
[1] 邵奇峰,张召,朱燕超,等.企业级区块链技术综述[J].软件学报,2019,30(9):2571-2592.
[2] 朱兴雄,何清素,郭善琪.区块链技术在供应链金融中的应用[J].中国流通经济,2018,32(3):111-119.
[3] 张志威,王国仁,徐建良,等.区块链的数据管理技术综述[J].软件学报,2020,31(9):2903-2925.
[4] Quansi W,Ying G,Zhiling C,et al.A Blockchain based Data Sharing Scheme in The Supply Chain by IIoT[C].IEEE International Conference on Industrial Cyber Physical Systems,2019.
[5] 葛琳,季新生,江涛,等.基于区块链技术的物联网信息共享安全机制[J].计算机应用,2019,39(2):458-463.
[6] Yiming J,Chenxu W,Yawei W,et al.A Cross-Chain Solution to Integrating Multiple Blockchains for IoT Data Management[J].Sensors,2019,19(9):2042.