集装箱信息管理系统设计探究

集装箱信息管理系统设计探究

集装箱具有通用性强、标准化程度高、密封性能好、可反复使用等优点,在国际贸易运输中发挥着重要作用。有资料显示:按货值计算,采用集装箱运输的货物占国际贸易货物的比例超过80%[1]。随着集装箱运量的持续增长,与集装箱货物相关的走私和检验检疫风险也不断上升。为了应对集装箱运输中存在的各种风险,世界各国纷纷采取相应措施,例如:“911”事件后,美国海关专门设立国家风险布控中心,运用情报和技术手段分析所有进出境集装箱数据和信息,并从中筛选存在风险的集装箱作为下一步集中检查的目标[2];2006年,新西兰与集装箱进口商、船公司和太平洋岛屿国家植物保护组织等合作开发、应用海运集装箱卫生系统。为了提高海关对进出境集装箱的监管效率,有必要对进出境集装箱实施风险评估,从中筛选目标箱接受进一步检查。集装箱风险评估离不开相应的信息分析,而信息分析建立在信息采集的基础上。以进口空箱检疫为例:由于集装箱运输线路复杂,流动范围较大,到达港口较多,并且装运货物种类繁多,海关仅依靠相关单位提交的进口申报信息难以全面了解集装箱情况,进而无法准确评估集装箱风险。由此可见,传统的信息采集方式已无法满足当前集装箱风险评估需求。作为多中心的分布式共享账本和数据库,区块链结合密码学原理、时序数据和共识机制来保障各节点信息连贯和持续,具有去中心化、不可篡改、集体维护、可以追溯等特点,能够较好地应用于集装箱信息采集,从而为集装箱风险评估提供必要的信息支撑。本文设计基于区块链的集装箱信息管理系统,阐述系统架构、关键技术和业务流程等,以期优化集装箱信息采集的技术手段,提高海关监管过程中目标箱选择的准确性。

1基于区块链的集装箱信息管理系统架构

本系统采用区块链中的联盟链形式和点对点网络连接方式。联盟链主要应用于政府部门和商业机构,其通过节点准入机制确保节点得到授权后才能加入,并且不同节点拥有不同权限。本系统主要由网络层、接入网关、交互层和应用层组成。(1)网络层网络层主要搭建网络环境,实现数据通信、数据处理、区块内容加密和链接、日志和数据存储等功能。(2)接入网关接入网关通过成员注册、身份认证、授权管理、运行监控等功能确保系统运行安全。用户(如船公司、码头公司和货代公司等集装箱运输参与方)通过客户端加入区块链之前,客户端需要先向数字证书授权中心(certificateauthority,CA)节点登记注册,并从CA节点取得合法的数字证书。CA节点功能可以与其他节点功能重合。(3)交互层交互层中的客户端是系统的重要组成部分,用户通过客户端加入区块链。客户端并不是一个节点,而是用户与节点交互的工具。需要注意的是:客户端不存储区块链,仅对区块链进行操作;区块链存储在节点(包括核心节点和一般节点)里。(4)应用层应用层的功能是研究和分析区块链上的数据,从而对集装箱实施风险评估。

2基于区块链的集装箱信息管理系统关键技术

2.1共识机制

共识机制就是使分布式系统达成共识的方法。解决共识问题最简单的方法是:由某台计算机提出一个结果,其他计算机表态是否同意这个结果。由此可见,为了达成共识,首先要在系统内确定一个领导者。就本系统而言:若区块链网络仅涉及一国,则由该国级别最高的海关机构作为领导者;如果区块链网络涉及多国,则由各国海关机构的节点作为领导者,即存在多个领导者或多个中心。为了简化共识机制,只要其中一个领导者提出一个结果(提出结果前已验证合法性),其他的计算中心都同意这个结果。与传统的虚拟货币区块链的共识机制相比,本系统的共识机制能够大幅减少计算量,并提高共识效率。如图2所示,为了保证所有记账节点的记录一致,区块链采取以下记账方式:用户1同时向各记账节点发出记账信息,若首先获得节点A(即A国海关节点)的反馈信息,则对节点A内的账本1实施相关操作;节点A验证相关操作的合法性,并在账本1完成相应操作后,向节点B(即B国海关节点)和节点C(即C国海关节点)等其他记账节点发出同样的记账信息;其他节点验证相关操作的合法性,并完成同样的记录;无论区块信息是否添加成功,节点A均向用户1发出反馈信息。由此可见,区块链中的每个节点既是数据发送方,又是数据接收方。建议所有节点都采用Hadoop分布式数据库存储账本数据,而不应采用传统数据库。

2.2区块数据结构

如表1所示,本系统中,每个集装箱都有属于自己的唯一的区块链,区块数据结构由区块头、数据和元数据组成,主要字段含义如下:(1)ID字段指集装箱编号,其由4个英文字母、6个阿拉伯数字和1个校验码组成,优点是具有唯一性且便于检索;(2)PreviousHash字段指父区块哈希值,其功能是在添加信息产生新区块之前,确认前一区块没有被篡改,然后链接本区块,形成新的区块链;(3)DataHash字段指本区块哈希值,其由SHA-256算法对本区块数据进行计算生成;(4)BlockNum字段指区块编号,即该区块在区块链中的顺序号;(5)BlockType字段指区块类型,即该区块包含的信息类别,如船舶信息、港口信息、货物信息等,其与区块信息添加权限密切相关;(6)TinID字段指区块信息添加者的身份,如船公司、码头公司、货代公司等,其同样具有唯一性;(7)Signatures字段指区块信息添加者的签名信息,其功能是验证区块信息添加者的身份;(8)元数据是数据的说明信息,包含公司名称和地址等信息,其无须计算哈希值并且可以修改。

2.3区块链管理

本系统涉及的主要操作是向集装箱区块链中添加区块信息。需要注意的是:传统的比特币网络只有一个创世区块;而本系统中的每个集装箱都有一个创世区块,进而生成属于该集装箱的区块链。

2.3.1生成集装箱创世区块

集装箱创世区块由该集装箱所有者通过客户端于该集装箱生产完成并交付使用时生成,其生成规则如下:父区块哈希值由SHA-256算法对集装箱元数据进行计算生成,本区块哈希值则由SHA-256算法对集装箱编号进行计算生成。此时元数据信息添加次数为0,所对应的哈希值为本区块哈希值。

2.3.2在集装箱创世区块中添加区块信息并形成区块链

在添加区块信息之前,需要确认信息的有效性和合法性:第一,对前一区块的数据进行计算生成的哈希值与前一区块的哈希值一致;第二,对前一区块的数据进行计算生成的哈希值与前一区块的元数据中最后一次信息添加的哈希值一致;第三,区块信息添加者的数字签名合法。只有满足上述条件,才能将区块成功加入区块链。区块添加流程如下:(1)区块头包含区块链ID、上一区块哈希值和本区块哈希值,其中,区块链ID与上一区块的区块链ID一致,本区块哈希值由SHA-256算法对本区块数据进行计算得出;(2)数据包含区块编号、区块类型、区块信息添加时间戳、区块信息添加者的身份、区块信息内容、区块信息添加者的签名;(3)元数据中的区块信息添加次数增加数据1和本区块哈希值,基础信息保持不变。上述区块添加流程完成后,继续添加其他区块,最终形成该集装箱区块链的信息档案。

2.4数字证书管理

数字证书相当于身份证明:用户在参与电子商务活动的过程中,可以通过数字证书证明自己的身份,并识别对方的身份。CA在数字证书应用中发挥着关键作用。本系统中,CA由每个国家的海关机构担任。数字证书的申请流程如下:用户提供认证信息,并通过客户端向其所属的CA发出申请;相关的CA审核用户申请,并在审核通过后向用户颁发数字证书。用户获得合法的数字证书后,即可参与相关的区块链活动。

3基于区块链的集装箱信息管理系统业务流程

假设集装箱所有者、船公司、货代公司等均已获得合法的数字证书以及添加区块信息的权限,基于区块链的集装箱信息管理系统业务流程(见图3)如下:(1)集装箱所有者(租箱公司或船公司)获得集装箱后,按照相应规则生成集装箱创世区块;(2)若集装箱属于租箱公司,则由船公司或货代公司与租箱公司签订租箱合同,生成相应区块,并将租箱合同信息写入集装箱区块链中;(3)货主与货代公司签订货代合同,由货代公司作为货主的人向启运港所在的A国海关办理出口报关手续,并将出口报关信息写入集装箱区块链中;(4)货物运抵目的港后,货代公司向目的港所在的B国海关办理进口报关手续,并将进口报关信息写入集装箱区块链中;(5)集装箱卸货完毕后,船公司向B国海关办理空箱出口报关手续,并将空箱出口报关信息写入集装箱区块链中;(6)空箱运抵C国港口后,船公司向C国海关办理空箱进口报关手续,并将空箱进口报关信息写入集装箱区块链中。

4结束语

本系统在区块链的应用上并未采用传统意义上的去中心化设计。准确地说,本系统为多中心化系统,即由多国海关机构构成多个中心。加密货币只是基于区块链技术开发的产品,不能与区块链技术等同或混淆。现有的区块链技术架构无法满足多样性需求,而技术方案的优劣取决于该方案是否能有效解决问题。只有打破传统的技术框架,结合实际应用需求,技术才能更好地服务社会和市场。本系统仅适用于集装箱信息采集和防止集装箱信息被篡改,但不能保证集装箱信息的真实性和有效性。例如:货代公司为了实施走私活动,可能会谎报货物信息。为了确保集装箱信息真实有效,需要运用信用评级和基于大数据的智能分析等技术手段。

参考文献:

[1]易宗强,周淑辉,顾光昊.集装箱检疫概述[J].植物检疫,2018,32(6):1-5.

[2]解涛,李丽.集装箱海关监管问题研究――美国海运集装箱监管经验的启示[J].海关与经贸研究,2017,38(6):25-33.

作者:梁建