基于联盟区块链的物流业信息平台的制作方法

文档序号:16516046发布日期:2019-01-05 09:38阅读:389来源:国知局
基于联盟区块链的物流业信息平台的制作方法

本发明属于物流信息技术领域,具体涉及一种基于联盟区块链的物流业信息平台。



背景技术:

近年来,随着我国电子商务的迅速发展,物流快递行业的业务量迎来了爆发式的增长。但在这种增长背后,隐藏着诸多问题亟待解决。信息溯源难、事故责任含糊不清、企业间数据不流通成为行业现状,传统物流企业的"中心化"管理,使得个体权利过大化,不同企业之间难以互相信任,壁垒由此产生。物流快递业务由众多参与主体构成,核心企业掌握的信息不够对称与透明,并且存在作假的风险,严重影响供应链的管理效率。物流环节区域多、时间跨度长,因此监管困难,假冒伪劣难以根除。目前市场上存在的第三方防伪平台,由于公信力不足和数据匮乏等原因,无法对产品进行精确认证和管理。

基于上述问题,如果能够建立一个行业级的物流信息平台,消除不必要的重复建设,打破行业信息壁垒,使得大数据的规模从企业级别提升到行业级别,必将促进整个行业更新服务模式,激发行业进入下一轮黄金发展。

但是这样的信息平台要实施起来面临着许多困难:1)物流企业众多,很难信任或支持哪个"龙头"企业创建的行业平台,即去中心化的要求;2)企业之间既希望通过共享数据互通有无,合作共赢,又不希望泄露自己的关键信息,具有很强的抗大数据分析和数据保密性的要求;3)既希望发生事故时能通过平台高效溯源,又希望保护快递参与各方的隐私信息;4)为了提高平台的可信度与权威性,应允许第三方或政府机构的介入监管和审计,平台应具备多方参与特性并保持信息高度透明。



技术实现要素:

为解决现有技术中存在的问题,本发明提供了一种基于联盟区块链的物流业信息平台系统,利用区块链技术的去中心化、数据防篡改、数据溯源三大特性,从底层优化物流行业信息交易与存储方式存在的问题。

本发明公开了基于联盟区块链的物流业信息平台系统,采用分层架构,包括应用交互层和区块链共识层;

所述应用交互层,负责将用户数据和操作封装成符合标准的数字资产,之后以预先定义好的标准交易形式向区块链节点发送各类请求以完成用户操作,并最终将数据存储在区块链上;

所述区块链共识层包括维护区块链的p2p节点网络和由系统中节点共同维护的唯一一条区块链;

所述p2p节点网络中的节点包括背书节点、组织节点和提交节点,任意节点都具备更新区块链的能力;

背书节点:负责验证交易合法性并对其签名,验证通过后负责执行交易;

组织节点:接收由背书节点签名完成的交易,运行共识机制模块,确保一致性后将交易组织成区块后交付给提交节点;

提交节点:提交节点验证组织完成的区块,之后用该区块更新区块链;

所述区块链外层引入对系统内身份和权限进行管理的pki体系。

所述pki体系包括数字证书、证书颁发机构、公钥和私钥、证书吊销列表。

所述共识机制模块基于拜占庭容错的bft-smart协议,该bft-smart协议包括客户端将随机选择临近组织节点作为bft-smart算法中领导人和在任意阶段发生错误后直接丢弃该交易并通报客户端。

有益效果:本发明与现有技术相比,具有以下优点:

本发明的区块链技术底层由p2p网络支撑,所有节点共同维护和验证区块链网络,这种去中心化架构解决了传统系统中中心机构权力过大的问题,非常适合应用于物流快递等需要多方共同参与的业务场景中。

区块链交易信息存储在从后向前有序链接起来的区块中,当区块链达到一定长度,区块内的数据在实际上便是无法篡改的,区块链技术的防篡改特性可以完美地应用于物流数据中,解决事故追责,问题溯源等问题。

区块链中大量使用数字签名,并且使用merkle树作为快速归纳和校验完整性的数据结构,使得数据的溯源、验证、查询流程摆脱传统的人工审计,提高效率的同时大大降低了成本,配合智能合约,这一特性将在物流业等高吞吐量的复杂交易场景中发挥巨大作用。

除了区块链技术具有的原生性去中心化、去信任、信息不可篡改、易溯源等特点,本发明还具有以下优点:

1)运行于区块链上的智能合约可在满足条件时自动促成交易,省去了中间环节和大量人工审核成本;

2)采用联盟链而非无限制的公有链体制,可在保证去中心化运作的基础上最大限度保护用户隐私和企业机密;

3)在区块链网络外层引入身份控制,增强网络内部信任度,简化验证操作,提升系统效率;

4)选取了基于拜占庭容错的共识算法bft-smart,在保证性能满足需求的前提下,将系统安全性提升至33%拜占庭容错水平。

附图说明

图1是系统整体架构;

图2是bft-smart算法通信模式;

图3是输入交易速率对交易延迟及输出吞吐量的影响;

图4是模拟节点平均网络流量使用情况;

图5是模拟节点平均cpu占用情况;

图6是模拟节点平均内存占用情况;

图7是交易数据大小对共识算法执行时间的影响。

具体实施方式

下面结合附图和实施例进一步阐述本发明。

针对现物流行业现状以及区块链技术的特点,本发明的基于联盟区块链的物流业信息平台,主要针对以下关键问题进行研究和探讨:1)系统内的访问控制及身份管理问题;2)系统内用户和交易数据的安全与隐私保护问题;3)区块链网络中使用的共识算法问题。

本发明采用模块化设计,使得各个模块易于扩展和改进,采用区块链技术改进原有信息交易模式,使得交易信息链中存储,链中交易,多方共同参与、维护,从本质上优化了传统交易场景中的物流流、资金流、票据流等各个方面。

本发明针对物流行业等企业间数据共享场景,不同于加密货币的全开放、完全去中心化模式,行业级信息平台需要在参与企业上传真实信息的同时进行隐私保护。因此本系统采用联盟链架构,在区块链外层引入pki体系,以此达到强化系统身份管理与访问控制的目的。外层严格的身份控制提升了系统内的信任度,和加密货币这类完全去中心化系统相比,可简化系统内部的验证与安全机制,达到提高效率、降低成本的目的。同时,引入了基于拜占庭容错的bft-smart协议作为共识算法,在保证系统性能满足实际需求的前提下,将现有联盟链系统普遍采用的冲突容错类共识算法提升至可容忍33%拜占庭错误的水平。本系统设计抛弃了传统区块链完全去中心化的特性,但对于行业级信息平台来说,并不会在需求层面收到影响。相反,本发明设计基于联盟链的多中心化架构,有利于充分发挥区块链技术在数据不可篡改、易溯源,多方验证维护等其他特性上的优势,提升系统的性能与效率。

如图所示,本系统采用分层架构,整个系统分为两层:应用交互层和区块链共识层,应用交互层负责将用户数据和操作封装成符合标准的数字资产,之后以预先定义好的标准交易形式向区块链节点发送各类请求以完成用户操作,并最终将数据存储在区块链上。区块链共识层包括维护区块链的p2p节点网络和由系统中节点共同维护的唯一一条区块链。主要参与者负责运行作为节点的实体服务器,验证来自上层的交易并将交易组成区块,运行共识算法并最终更新各节点区块链副本中的数据。

系统运行中的所有数据及操作请求均被封装为标准的区块链交易形式,如用户对区块链提出查询请求,则需要由应用交互层生成一个标准的请求交易,提交至相应节点。

本系统采用模块化设计,将p2p网络中的节点分为三种角色:

背书节点:负责验证交易合法性并对其签名,验证通过后负责执行交易。

组织节点:接收由背书节点签名完成的交易,运行共识算法,确保一致性后将交易组织成区块后交付给提交节点。

提交节点:提交节点验证组织完成的区块,之后用该区块更新区块链。

根据不同节点硬件配置的不同,一个物理节点实际可以承担多种角色。但任意节点都应具备更新区块链即提交节点的能力。

本系统一次标准的交易流程如下:

1)交易背书。客户端发起一笔交易,向与本次交易相关的任一背书节点发送请求,背书节点收到请求后,模拟执行与这笔交易相关的智能合约,背书节点读取当前区块链的状态,并将此状态与模拟执行出的交易结果一并签名后返回给客户端程序。

2)组织为区块。客户端程序将原始交易数据和由背书节点签名完成的交易数据打包,广播给所有组织节点。组织节点集群持续接收来自各个客户端的交易数据,在集群间实时执行基于bft-smart的改进共识算法,在接收到一定数量的交易或达到一定时间后,将已通过共识算法的交易组织成为一个区块。

3)确认与提交。当一个区块完成后,组织节点向所有的提交节点广播此区块。提交节点对区块进行时效性与合法性验证,通过后使用区块中的交易数据更新本地的区块链副本。具体做法是:验证原始交易信息的合法性与格式,之后读取此交易提交时由背书节点所记录的区块链状态,将其和当前区块链状态进行对比,若相同,则确认这笔交易有效,所有交易得到验证之后将该区块加至自己节点所包村的区块链尾部,并使用由背书节点于之前模拟执行得到的数据更新当前区块链状态。

最后,所有提交节点单独通知客户端,本次交易是否提交成功。一次完整交易流程结束。所有节点对该区块所包含的交易达成共识,并保证了同步。

本系统在数据存储和系统访问控制两个层面保证了交易数据和用户信息的安全。其中在数据存储层面采用区块链结构。系统内产生的所有数据均被封装在各类标准交易中,由组织节点定期打包为区块后,最终被放入该交易网络所拥有的唯一区块链内,成为区块链不可更改的一部分。

在系统访问控制层面,由于采用联盟链架构,本系统内参与者之间具有一定的信任度,减小了恶意节点存在的概率,但同时也减弱了区块链的去中心化程度。且同一行业内各企业间难免存在竞争关系,不同的交易场景下,可能存在不同的隐私保护需求。因此,本系统引入x.509证书规范以及pki体系对系统内身份和权限进行管理。本系统采用简化的pki体系,包括数字证书、证书颁发机构、公钥和私钥、证书吊销列表四个组成部分。任何加入网络的参与者首先需要从证书颁发机构获得数字证书,以作为在网络中活动的唯一合法身份。引入pki体系以密码学原理保证了系统内的隐私安全,实现真正的区块链“去信任”。为了防止单点故障以及中心化趋势,区块链网络可使用多个第三方或自定义的证书颁发机构。

本发明采用bft-smart算法应用于本发明的物流业信息平台中。bft-smart在拜占庭共识算法的基础上实现了一个模块化的smr协议。本发明对bft-smart算法进行了简化,主要修改如下:1.抛弃了原版算法中的领导人选举操作,客户端将随机选择临近组织节点作为bft-smart算法中领导人。2.在共识算法的任意阶段发生错误后,直接丢弃该交易并通报客户端,而不执行原版bft-smart算法中的错误处理阶段。修改后的bft-smart算法通信模式如图2所示。在三个阶段中采用的认可门限均为[(n+f+1)/2],其中n=3f+1为区块链网络节点总数。

本发明对bft-smart共识算法的改进思路主要基于两点:1)抛弃了原版bft-smart算法中的领导人选举阶段。由于本文系统采用联盟链架构而非传统区块链的完全开放模式,系统内参与者之间具有一定的信任度。且区块链网络最外层设计了基于pki的严格身份管理,发生恶意事件后易于追责,因此本发明采用随机选取组织节点的方法,使某一集群内的节点大概率地重复使用同一组织节点提供的服务,若置于公有链中,则可能会引入单点错误,且增大恶意节点攻击成功的几率。但在本发明的联盟链架构中,此类攻击几乎可以忽略不计,反之可以大大缩短每次公式算法的执行时间。另外,基于本系统与bft-smart算法的模块化设计,后续应用中仍可以根据实际需要恢复原版算法的领导人选举功能。2)抛弃了原版算法中的错误处理阶段。本发明所有节点在执行共识算法时,直接使用原子广播模式,任一消息发生错误后不对其进行处理,而是直接报告客户端重新发起交易。在本发明的联盟链架构下,交易出错率较低,且底层网络相对可控,此设计有利于简化流程,加快共识算法的执行。本发明对公式算法的改进效果可在图7中得到初步体现,实验环境下,本系统公式算法平均达成共识的时间远低于pow、pos等现有主流公式算法。

为了验证本系统设计的可行性、并对系统性能做出评估,本文基于区块链开源框架,搭建了底层区块链网络,使用docker容器模拟系统中各类节点以进行相应操作。使用fabricsdk编写应用交互层客户端,执行交易请求。共识机制模块基于bft-smart开源库实现了针对本系统进行改进的bft共识机制。

实验配置为:docker17.09.0-ce,hyperledgerfabricv1.1,在macos13.3上搭建了应用交互层客户端,以及包含4个背书节点和4个组织节点的底层区块链网络。在ubuntu16.04搭建了共识机制模块。实验机器为macbookpro17,cpu:intelcorei53.1ghz,内存:16gb。

为了验证本系统能够满足物流交易场景的实际需求,使用了用户注册和交易信息查询两种标准交易对系统进行了测试,每种交易分别运行3000-5000次,通过对相应进程及docker容器进行监测记录,获取了系统吞吐量、交易延迟、节点资源消耗(内存、cpu、网络io占用)几项关键数据。并对本文改进的共识机制进行了单独测试,得出了其平均共识执行时间。

图三显示了在每秒50、100、150交易(transactionpersecond,tps)作为输入的条件下,对系统交易延迟以及输出吞吐量的影响。可以看出,在50tps作为输入的条件下,系统中只需不到1s便可执行一笔交易并进行确认,且输出交易速率未受影响。随着输入交易速率的提升,交易确认延迟明显上升,且输出交易速率稳定在90tps左右。

图4、5、6显示了在50tps输入,执行1000笔交易的条件下,各主要进程及容器的资源占用情况。1000笔交易后,网络流量消耗最高的组织节点约消耗20m流量,本系统各主要模块平均cpu占用均不高于20%,本系统各主要模块平均内存占用在100-150m左右,图中ep、op分别代表背书节点与组织节点。

由此可见,本系统由于采用了联盟链架构和模块化设计,各主要模块的资源消耗较低,能适应物流交易业务场景的需求,并应用于手持终端等移动设备。实验在单台机器上使用docker技术模拟了多个节点,由于使用单一进程进行通信,系统吞吐量最终被限制在90tps上下。在实际应用场景中,使用更高性能的物理机器充当节点并采取多进程并发处理机制,系统吞吐量有望达到数百甚至上千笔交易每秒。未来将在这一方向上进行更多研究与验证。

同时,对共识机制模块进行了单独测试,将共识模块配置为每区块仅存储一笔交易,收到交易后立即执行后续的区块组织和提交操作,不进行等待。以此来分析bft-smart的执行效率。图5显示,在分别使用1-64kb大小的交易进行测试的情况下,基于bft-smart的共识算法的执行时间。结果显示,单笔交易数据大小在8kb以下时,执行时间较为稳定,超过这一数值,算法执行时间将呈指数级上升。

仿真实验结果表明,本文所提出的物流行业信息平台不仅吸收了区块链技术去中心化、去信任、可溯源、防篡改等优点,且系统具有可扩展性强,资源占用量低,数据吞吐量较高的优点,可以适应物流交易场景的需求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1