CopyRight 2009-2020 © All Rights Reserved.版权所有: 中国海关未经授权禁止复制或建立镜像
基于“区块链+政务”的外贸物流监管系统设计和实现
作者:李俊超1 严晨峰1 虞永健1
李俊超1 严晨峰1 虞永健1
摘 要 当前,政府不同部门间、政府和企业间、政府和公众间的信息共享还不够充分,体现在多部门审批流转的业务不够简便。究其原因,在于各部门建成信息化系统后,往往对共享数据存在一定程度的抵触情绪,从而容易形成“信息孤岛”。为此,在“互联网+政务”的基础上,应提倡推广“区块链+政务”,若某单位同意上“链”,那么从加入起就需要信息共享,从源头上避免后期共享的阻力。针对外贸物流监管领域信息流通不畅的问题,本文分析了现有监管体系的特点与不足,结合区块链技术优势,提出构建基于“区块链+政务”的外贸物流监管系统,并对该系统进行架构设计和具体实现,满足了政府部门对外贸物流全方位监管的要求。
关键词 区块链;政务;信息共享;物流监管
Design and Implementation of Foreign Trade Logistics Supervision System Based on "Blockchain Plus Government Services"
LI Jun-Chao1 YAN Chen-Feng1 YU Yong-Jian1
Abstract At present, information sharing is not sufficient among different government agencies, enterprises and citizens. It is still inconvenient when it comes to multi-departmental administrative approval items. The reason is that when different agencies built their own information systems, they tend to be reluctant to share their own data, which leads to "information islands". To cope with it, on the basis of "Internet plus government services", "blockchain plus government services" should be promoted. Once a certain unit agrees to join into the chain, it needs to sharing from the beginning which avoids the reluctance of sharing later on. In light of poor information sharing in the field of foreign trade logistics supervision, this paper analyzes the characteristics and shortcomings of the existing supervision systems, mindful of the advantages of blockchain technology, and proposes to construct a foreign trade logistics supervision system based on "blockchain plus government services", whose main framework, column design and ways to realize has been brought forth, with the aim to meet the government requirements for the comprehensive supervision of foreign trade logistics chain.
Keywords blockchain; government services; information sharing; logistics supervision
第一作者:李俊超(1984—),男,汉族,山东淄博人,博士,主要从事信息化工作,E-mail:thunderljc@qq.com
1.宁波海关 宁波 315000
1. Ningbo Customs, Ningbo 315000
近年来,随着政府职能逐步向服务型转变,以及“互联网+政务”的大力推进,政务信息化发展进入一个新阶段。然而,在网速快、政府信息化程度高的情况下,仍存在信息不够畅通的问题。例如:政府不同部门间、政府和企业间、政府和公众间的信息共享程度还不够充分,主要体现在多部门审批流转的业务不够简便。其原因在于,以往都是各部门自行进行信息化建设,由于建设程度不均衡,往往一提到数据共享,部分数据拥有者对共享自身数据存在一定程度的抵触情绪,共享的阻力较大,从而形成了一个个“信息孤岛”。为解决这个问题,在“互联网+政务”的基础上,应提倡大力推广“区块链+政务”,若某单位同意上“链”,那么从加入起“链”上的数据信息就已经开始共享,从而在源头上避免后期共享的阻力。
在外贸物流监管领域,也存在着信息流通不畅的问题,位于不同流通环节的单位之间没有实现信息共享和互通,信息流在整个物流链上是割裂的,导致监管单位难以对数据的真实性进行审查核实。本文引入区块链应用技术,提出了构建基于“区块链+政务”的外贸物流监管系统,不仅可以提高区块链的运行性能,还可以强化政府对外贸物流的监管能力。
1 区块链技术简介
区块链是随着比特币等数字加密货币的日益普及而逐渐兴起的一种全新的去中心化基础架构与分布式计算范式[1-3],起源于由中本聪发表的《比特币:一种点对点电子现金系统》[4]。区块链是多种计算机技术融合产生的一种新应用模式,主要包含分布式数据存储、点对点传输、共识机制、加密算法等技术,具有不可伪造、全程留痕、可以追溯、公开透明、集体维护等特征。区块链的应用范围不再局限于数字货币,已经遍及社会各个领域[5-8],成为一种互联网环境下解决数据信任问题和提升合作效率的价值工具。
2 外贸物流监管现状和存在问题
如图1所示,现有外贸物流监管模式大部分基于单向信息传输,难以验证数据的真实性。在物流发起阶段,中小企业一般通过代理报关行或船代公司,大企业往往通过自建渠道,向船运公司、运输车队、空港等物流企业发出纸质或者电子货物运输申请,该申请以提货单为唯一依据。物流企业接到运输申请后,在本企业ERP系统中,根据货物性质和目的地对运输工具进行排班。如果是国际运输,还需向当地监管部门申报货物和运输工具情况,审批完成后才允许启运。货物抵达目的地后,物流企业需向目的地监管部门提供物流信息并提交申请,通过审批后,收货方凭提运单到指定地点收取货物。目前,国内只有部分监管部门之间的信息是互通的,国内与国外监管部门基本没有互通,全凭物流公司的申报数据进行审核。
图1 现有外贸物流监管模式
Fig.1 Current foreign trade logistics supervision mode
现有外贸物流监管体系的主要问题是完整的物流链被不同的系统所割裂,发货方、代理公司、物流企业、收货方、监管部门等单位拥有的众多系统中,只有极小部分实现了数据交换,大部分系统都无法互通。在整个物流链中,每个环节的信息基本来自前一环节方在后一环节方系统里输入的数据。在此情况下,一是每个环节都要重新输入重复数据,不仅费时费力,还更易出错;二是对数据真实性难以审查;三是出问题后难以追溯和取证。
3 系统设计和实现
针对现有外贸物流监管体系存在的问题,结合区块链的技术优势,本文提出一种基于“区块链+政务”的外贸物流监管系统,主要有如下改进:(1) 区块链技术的去中心化和分布式存储特性,方便物流链的各环节方以统一标准接入,而无须推翻自身原有系统;(2) 区块链技术的共识机制可以保证数据的完整性,有效防止伪造、篡改数据;(3) 区块链技术的防篡改性和可追溯性可以实现举证和追责,迅速找到违法违规证据;(4) 基于证书认证的账号体系结合链码功能保证数据信息的私密性;(5) 通过二叉树算法改进区块链存储机制,提升区块链存储性能。
3.1 分层结构
按区块链的使用范围和开放程度来划分,通常分为公有链、联盟链和私有链[9]。根据政务服务的特点,“区块链+政务”既不能不受限制地完全放开准入限制,也不应只在单位内部使用,因此,本系统选择Hyperledger Fabric作为区块链基础平台[10-11],以联盟链的形式进行部署,只有获得授权的真实身份节点才能加入到链上。“区块链+政务”由政府管理,各参与组织运维自身节点,无须像公有链那样通过“挖矿”进行经济激励。
图2 区块链分层结构
Fig.2 Blockchain hierarchical structure
如图2所示,本系统区块链分为五层结构。
(1)数据层。本系统使用单向链式结构作为分布式账本Ledger保存所有交易信息,用CouchDB作为状态数据库保存数据当前状态,用SHA256转换和验证交易,用Merkel树[12]归纳和存储Hash值,用Timestamp记录交易发生时间。
(2)网络层。本系统在P2P网络下使用Gossip协议进行信息传播和使用gRPC进行远程过程调用,通过呈树状分布的CA进行身份验证,通过Orderer集群进行交易排序和生成新区块,通过Peer节点提交、验证交易和存储区块链。
(3)共识层。通过准入机制,本系统对链中节点有一定的信任基础,无须花费大量电力“挖矿”,使用支持非拜占庭错误的Raft共识算法[13]较快地完成区块的产生,保障分布式系统中的数据一致性。
(4)合约层。本系统采用Node.js编写智能合约,合约通过Docker容器方式部署在加入通道的节点上,并通过API方式提供内外服务接口。
(5) 应用层。本系统使用Web、APP、微信公众号等形式提供服务。
3.2 系统架构
本系统架构如图3所示,采用Docker容器对CA、Orderer、Peer、CouchDB、Application、Client等节点进行部署,有利于系统的跨平台迁移和节约硬件资源。需要上链的单位申请统一的身份证书后成为链里的组织,根据业务的不同分别创建不同的Channel,不同的组织经过授权后加入自己业务相关的Channel中,不同的Channel采用不同的智能合约、不同的账本、数据互不共享。通过Channel的隔离作用,“区块链+政务”可以在不同节点间开展不同业务。CA节点呈树状结构分布,根节点控制整个区块链平台的身份认证,子节点控制自己所在组织内的身份认证。Orderer群集使用Raft共识算法对系统内的交易进行排序并打包成新区块。组织代表加入链的单位,内部可以包含多个Peer节点,用于存储区块链账本、多个CouchDB用于存储当前状态,每个组织中需要一个Peer作为锚节点和外部组织进行通信。组织或组织内节点都具有扩展性,应用可以部署在某个组织内部,只服务于该组织内部成员,也可以同时向多个组织的成员或公众提供服务。
图3 “政务+区块链”系统架构
Fig.3 Framework of "Internet plus government services " System
3.3 应用设计
如图4所示,本系统在物流发起环节,货主企业或代理公司需要将货物信息以提单为唯一键上传到链上,物流公司接到货主企业的发货通知后,通过接口从链上获取相关货物信息。物流公司在ERP系统进行排班,将生成的物流信息上传到链上,并在货物运输过程中,把物流动态信息实时更新上链。监管场所接到实际货物后,将抵达信息或理货信息上链。进口或者出口地的监管部门在接收货主单位或代理公司的报关申报后,通过接口获取链上的货物、物流、理货等信息进行相关逻辑校验、自动审核和人工监管,从而生成布控查验、转运退运、施封验封、放行结关等信息,达到全流程信息实时更新、操作记录可追溯、信息真伪可验证、数据防篡改的效果。
图4 “区块链+政务”外贸物流监管业务
Fig.4 Foreign trade logistics supervision of " Internet plus government services "
通过如上改进,在便利企业促进贸易方面,货主、货代、物流等企业无须在多个系统中进行重复性信息输入,可以直接通过系统对接的方式将数据传到链上,降低了工作量、减少了出错可能性,同时更便捷地获取货物动态信息,降低不同环节间的延迟率,缩短整体物流时间,提升物流服务水平;在加强监管防范风险方面,海关、海事、港务等监管部门可以准确获取实时物流信息,解决环节信息缺失问题,确保链上操作记录真实可信、数据信息可验证、可追溯和不可篡改,能够对货物、交通工具、地理位置等各类信息进行多方比对和全流程分析,从而迅速发现违法违规问题,并有效举证追责。
在总流程基础上,继续以港口物流监管部分为例,进一步细化管理单位之间的交互部分。现有港口监管体系中,业务逻辑和技术流程均以串行方式逐步进行,采用报文形式在港口单位之间进行数据交换。海关放行系统会从多来源渠道接收放行数据,并形成统一格式的放行信息,再通过报文形式发送到港务局。港务局收到放行信息后,与其自身系统数据进行对碰,校验通过后,方才允许物流企业提箱,并根据指令分别进行装船、施验封或卡口放行等操作。但是这种方式下常发生消息队列积压或传输丢失的情况,当由于某种原因导致队列堵塞时,队列入口处的海关放行系统会依旧不断生成放行报文往队列中写入,而队列出口处的港务系统却无法及时从队列中取出报文,从而导致队列中的数据越积越多。即使发现问题所在,并解决了系统故障,要完全消化队列中积累的数据,也需要大量时间,可能会导致货物赶不上船期而滞留港口。同样,放行消息传输丢失也会导致货物无法及时放行。
如图5所示,在改为“区块链+政务”模式后,各地海关、港务局和地方电子口岸通过授权加入区块链中作为节点,原有的串行结构转变成网状结构,通过区块链提供的接口,在保证各自原有操作不受影响的同时,把相关业务数据保存到区块链上。其中,海关把施封、验封、进出卡、进出门、转场、转关、舱单等信息上链,港务局把理货、货物动态、预约进港等信息上链,地方电子口岸把安全智能锁通信、锁体、停留点、施封、验封、货物动态等信息上链。海关通过对链上信息的比对、校验和审核,实现海港、陆港无缝衔接一体化监管,对物流全流程进行实时监控,确保数据完整性和一致性。同时,放行堵塞问题得到改善,依赖于区块链的健壮性、可靠性,在原有报文队列出现问题时,仍然可以保障放行业务的正常进行。
3.4 算法改进
现有Fabric将Key-Value型数据直接上链,所有交易过程都记录在链上,最终的状态记录在作为状态数据库的CouchDB中。由于物流监管过程中产生的数据量庞大且形式多样,存在大量非结构化数据,包括视频、图片、文档等,如果仍采用KV类型进行保存,那么系统会将非结构化数据的完整字节流记录到链上,导致区块链体积增长过快,不利于区块储存和共享。因此,本文采用二叉树算法对记录容量做压缩,算法说明如下。
(1) 针对一次上传过程,客户端上传的内容包含多种数据,既有普通的数值记录,也有图片、视频等大型文件,客户端需要对该交易做签名。
(2) 服务器将通过验签的数据进行分类处理,把本次上传行为中的所有数据全部转化为叶子节点:
a.若为结构化数据,则在保存到关系型数据库后,把该数据聚合客户ID、时间戳等信息,用SHA256函数提取摘要,作为二叉树的叶子节点;
b.若为非结构化数据,则加密后存放到分布式文件服务器上,将存放路径保存到关系型数据库中,然后把客户ID、时间戳、存放路径等信息和原始文件聚合起来,用SHA256函数提取摘要作为二叉树的叶子节点。
图5 “区块链+政务”港口物流监管
Fig.5 Port logistics supervision of " Internet plus government services "
(3) 将步骤(2)生成的叶子节点两两聚合,用SHA256函数计算获得的值作为父节点,然后再两两聚合,层层往上汇聚,直到形成一个根节点。如果在每层聚合时,节点数量为奇数,则需要在该层的最右侧填充一占位节点用于计算,占位节点通常为常量、有规则的变量或能够与随机产生的哈希值区分开的变量。
(4) 将根节点的值作为需要上传的数据,与客户ID、时间戳等信息融合,加密后作为一条完整交易上链。
(5) 当查询发生时,按授权条件可以通过关系型数据库查询获取数据状态,在需要追溯和验证时,可以将获取的数据通过区块链验证数据的完整性。
图6 吞吐量测试结果
Fig. 6 Throughput test results
图7 延迟测试结果
Fig.7 Delay test results
本算法通过O(N2)次哈希计算,将包含大量非结构化数据的监管结果浓缩成有限字节上链,大大减小了链的体积。
3.5 测试分析
本系统的测试环境为5台CentOS 7.2系统的虚拟机,配置为2CPU+2GB内存,Docker方式安装部署5个Orderer节点和4个Peer节点,采用Raft共识机制,出块时间为2 s,区块字节数512 KB。分别对提交和查询进行性能测试,吞吐量测试结果如图6所示,延迟测试结果如图7所示。性能测试结果符合业务需求,最终运行效果受CPU、内存、网络带宽、出块时间、共识机制等因素影响,可根据具体业务需求修改相关配置。
4 结语
通过“区块链+政务”外贸物流监管系统的建设,本文实现了多方数据间的交互共享,有效保证了物流监管全流程的可追溯、可验证,确保了数据的完整性、真实性,解决了报文堵塞等问题。目前,区块链技术的发展和应用已经有了很大进步,但还存在一些问题,如交易吞吐量小、数据存储膨胀快、网络代价高等。随着区块链应用越来越成熟,本系统也将进一步进行改进。
【该文经CNKI学术不端文献检测系统检测,总文字复制比为0.5%。】
参考文献
[1] 袁勇, 王飞跃. 区块链技术发展现状与展望[J]. 自动化学报, 2016, 42(04): 481-494.
[2] 邵奇峰, 金澈清, 张召, 等. 区块链技术: 架构及进展[J]. 计算机学报, 2018,41(05): 969-988.
[3]张亮, 刘百祥, 张如意, 等. 区块链技术综述[J]. 计算机工程, 2019, 45(05): 1-12.
[4] Nakamoto S. Bitcoin: a peer-to-peer electronic cash system[EB/OL]. available: https://bitcoin.org/bitcoin.pdf, 2009.
[5]朱建明, 张沁楠, 高胜. 区块链关键技术及其应用研究进展[J]. 太原理工大学学报, 2020(03): 321-330.
[6]孟小峰, 刘立新. 区块链与数据治理[J]. 中国科学基金, 2020, 34(01): 12-17.
[7]曾诗钦, 霍如, 黄韬 ,等. 区块链技术研究综述: 原理、进展与应用[J]. 通信学报, 2020(01): 134-151.
[8]邵奇峰, 张召, 朱燕超, 等. 企业级区块链技术综述[J]. 软件学报, 2019(09): 2571-2592.
[9]蔡晓晴, 邓尧, 张亮, 等. 区块链原理及其核心技术[J]. 计算机学报, 2019: 1-51.
[10] 杨保华, 陈昌. 区块链原理、设计与应用[M]. 机械工业出版社, 2016: 112-126.
[11]冯翔, 刘涛, 吴寿鹤, 等. 区块链开发实战Hyperledger Fabric关键技术与案例分析[M]. 机械工业出版社, 2018: 35-43.
[12] Ralph C. Merkle. Protocols for public key cryptosystems[C]. 1980 IEEE Symposium on Security and Privacy. Oakland, CA, USA: IEEE, 1980: 122-133.
[13] D. Ongaro, J. Ousterhout. In Search of an Understandable Consensus Algorithm[C]. 2014 USENIX conference on USENIX Annual Technical Conference. Berkeley, CA, USA: USENIX Association, 2014: 305-320.
(文章类别:CPST-A)