主办单位:中国物品编码中心 | 中国自动识别技术协会 | 《中国自动识别技术》杂志社

设为首页 | 加入收藏 | 关于我们

  安全追溯  正文

基于EPCIS标准和区块链技术的追溯系统设计

发布时间:2019年05月14日 来源:中国自动识别网 作者:贾建华 邓惠朋 李军梅

供应链是一个多方参与的复杂结构,通过参与方之间的有效合作,建立低成本、响应性好、敏捷度高的经营机制,具有点多、线长、面广、交互等特点,在为企业协作带来便利的同时,也存在着缺乏信任、监管追溯困难、数据透明和隐私保护难以平衡、自动化程度低等问题。2017年,世界经济论坛白皮书分析指出,新兴的区块链技术将为供应链管理带来变革,Capgemini、Deloitte等权威咨询机构也均对商业区块链技术应用于供应链管理的前景做出了积极的展望。
目前,已有研究表明,区块链技术可以缩短响应时间、降低成员间交易成本、提高信息共享效率,从而达到提高供应链整体利润的作用。从实际应用的角度看,该技术在供应链追溯领域的应用仍停留于情景分析和理论构建阶段,对于技术实现的资料和成功案例甚少。针对以上问题,本文设计了一种用基于GS1 EPCIS(Electronic Product Code Information Services)(ISO 19987)标准进行开发设计的区块链追溯系统,构造一个系统通用、可操作性强的追溯系统原型,并进行了模型验证,为区块链应用于供应链管理提供技术层面的理论支持。
 
技术概述
该系统为三层应用框架,分为表示层、业务逻辑层和数据访问层。表示层是界面交互的接口,业务逻辑层负责处理用户的业务请求,数据访问层负责传输和处理数据。每一层为上一层的服务提供者,为下一层的服务消费者,经过层层封装,保证系统的简洁稳定。按照时间和逻辑顺序,系统的框架如下:
表示层是使用者与系统直接进行交互的接口,有Web网站、监控中心、手机app等形式。
业务逻辑层是整个系统的核心,包含领域实体、业务规则、业务流程等。采用Facade模式提供了统一接口,将所有业务统一封装,减少供外部系统调用,提高系统复用率。领域实体中包含系统的目标对象供应链追溯中的关键元素——追溯对象、追溯步骤、追溯事件、EPCIS 对应区块链以及Hyperledger fabric 三个主要元素(参与方、资产与交易)。
数据访问层是为便于系统的隔离与复用,在业务逻辑发生后进行数据访问业务;访问形式多样,包括证书访问、sql访问、Nosql访问、区块链访问等,相应对应底层数据库为证书服务器、关系型数据库、非关系型数据库、区块链账簿。
GS1 EPCIS标准 
GS1是国际统一的编码标识系统,在供应链管理标准体系方面具有权威性、全球通用性和高度实用性,其中最有代表性的是商品条码标识体系,在全球范围内为标识货物、服务、资产和位置提供了准确的编码,使货物跨越国家、厂商、组织界限,提高了国内外贸易效率。
本文使用的EPCIS标准同时也是ISO 19987标准,为目前国际上最为广泛采用追溯标准,被用于不同应用程序之间实现可视化数据信息的采集和共享的商业数据,实现物理对象和虚拟对象在业务流程中的全程可视化。它将复杂的供应链内部关系抽象为四个事件和四个维度,为供应链各方建立了简单易用可操作性强的标准流程。
商业区块链网络
区块链技术,又名分布式记账技术。区块链可理解为在网络上一个个“存储区块”所组成的一根链条,每个区块中包含一定时间内的网络全部信息交流数据,是一种在整个业务网络上共享的分布式账本。以公有链为代表的区块链1.0注重加密货币相关的应用,作为一种现实场景中的工具表现出能力不足,例如比特币处理速度每秒7笔,每个区块记录交易约58万条,而现在正在使用的网联平台跨机构交易处理峰值超过9.2万笔/秒,相比之下性能优越许多。区块链2.0则使分布式记账技术脱离公有链范畴,构建了围绕业务场景展开的商业区块链网络,成为资产流转的价值表述。商业区块链网络是一个集体共享的对等网络,由一组可识别且可验证的参与者运营。它由指定业务网络中的参与者形成,且参与者只允许查看自己相关的交易,在提高贸易效率的同时有效保护了商业隐私。
本文使用IBM 公司的Hyperledger Fabric 和Hyperledger Composer作为追溯系统的区块链底层技术架构和开发工具,相比于POW和POS,PBFT算法具有吞吐量高,交易确认时间短,节点数量固定的特点。相比于炙手可热的以太坊,这套工具允许开发者仅关注于业务实现和参与方的交互,更适用于区块链在商业场景中的落地,且较为成熟稳定,文本方法具有很强的可操作性和可复制性,见表1, Hyperledger平台优势对比。
 
表1
 
在Fabric区块链网络中主要概念有资产、交易、渠道、智能合约等。任何可被拥有或控制来产生价值的事物都是资产。资产可以是有形的(比如工业产品、农产品等)或无形的(比如抵押或租赁)。交易是指资产转移,将资产转移到账本或从账本将资产转移出去。在 Hyperledger Fabric 区块链中,资产表示为一组二进制和/或 JSON 形式的键值对(比如vehicleOwner=Daisy)。渠道是两个或多个特定网络成员之间的通信的私有“子集”,旨在执行私有且机密的交易。如果两个参与者形成一条渠道,那么这些参与者(不是任何其他参与者)必须经过验证和授权,才能在该渠道上进行交易并共享针对该渠道的账本副本。需要执行私有和机密交易的网络成员可与他们的业务竞争者和其他受限成员共存于同一个区块链网络中。
智能合约通过账本管理交易,允许网络参与者自动执行交易的某些方面。例如,智能合约可以规定运输商品的成本,运输成本会依据商品到达时间而变化。双方对条款达成一致并将其写入账本后,会在商品到达时自动执行适当的资金调整。
 
供应链追溯关键设计
供应链追溯系统涉及的业务流程复杂交错,但根据GS1追溯标准,可围绕以下两个关键点开展,制定追溯流程首先对关键事件梳理,然后定义每个事件的关键数据元素,具体流程如图1和2。 
图1  EPCIS的区块链追溯系统基础框架
 
图2  供应链间的追溯数据
 
 
关键追溯事件(CTE)指追溯对象在其生命周期中发生的实际事件,如接收、转化、包装、装运、运输等。
关键数据元素(KDE)描述实际关键追溯事件实例的数据。追溯数据可以通过五个维度(参与方、对象、位置、时间和事件)来描述。
 
系统开发
演示程序主要参考了EPCIS标准搭建区块链追溯系统的基本架构,实现了一个对象事件的处理。因为是基于EPCIS标准的通用设计,如果切换业务场景,系统不需要重新设计,只要新增相关资产就可以满足新业务的需要。对于通用需求之前的业务,也可以按照EPCIS标准增加扩展字段和属性,保证系统的灵活性。
开发框架
本文使用Hyperledger Composer作为Fabric区块链的开发工具。Hyperledger Composer 是The Linux Foundation 主办的一个 Hyperledger 项目,它是一组让构建区块链应用程序变得更容易的工具,由以下几部分组成:
一种名为 CTO 的建模语言(对原始项目名称 Concerto 的致敬);
一个名为 Hyperledger Composer Playground 的用户界面,用于快速配置、部署和测试业务网络;
命令行接口 (CLI) 工具,用于使用 Hyperledger Composer 建模的业务网络与一个正在运行的 Hyperledger Fabric 区块链业务网络实例相集成;
业务网络是一组协同实现特定目标的实体。主要包括资产、参与者、访问控制、交易、事件;
资产是可以在业务协议中的各方间交换的任何有价值的物品。这意味着资产可以是任何物品(如一艘船、一些股票、一栋房子、一箱香蕉等);
参与者是业务网络的成员。在业务网络中,不是所有参与者都能访问所有信息。例如,只有建立了贸易关系的企业才能访问对方的数据。访问控制用于限制谁(在哪些条件下)能访问哪些信息;
交易“涉及”资产时,这种交互可能影响区块链账本的状态。交互在 Hyperledger Composer 中建模为交易。交易是系统的业务逻辑(或智能合约);
事件是一种通知,它由区块链应用程序生成,并以发布/订阅方式由外部实体(比如应用程序)使用。
需求分析
业务概览
追溯系统是记录组织内的各种业务流程生成的追溯数据的信息化系统,如图3。
图3  追溯数据生成—单个公司信息
 
在任何组织中执行追溯相关过程时,都会生成追溯数据。追溯数据包含五个重要维度的信息:参与方、追溯对象、位置、时间和事件。
参与方:供应链各个追溯节点上的责任主体。
追溯对象:供应链中需要被追踪的某个批次或者单个货物。
位置:产生追溯数据的物理或者逻辑位置。
时间:发生追溯事件的时间。
事件:追溯事件的详情。
对于整个供应链来说,各组织都将管理自己的追溯数据。为实现端到端的供应链追溯,需要访问和组合来自多个组织的数据,如图4。
图4  追溯数据生成一个供应链
 
Composer开发
系统分析
区块链的实施关键在于智能合约的定义,通常需要完全了解业务后才能编写代码,但是业务复杂各异,如果需要为每个追溯场景编制代码,一是工作量大,二是后期难以维护。需要一种简洁的设计方法,以便能够满足追溯业务通用需求和个性需求。通过对前述追溯业务的基本分析,可以参考EPCIS标准的抽象设计理念来开发区块链追溯系统。
映射图,如图5。
图5  系统映射
 
参与方设计:使用全球位置码(GLN)作为参与方的唯一标识,此标识不仅在区块链中唯一,也在全球任何一个商业应用中保持唯一,如图6。
   
图6  参与方设计关系
 
资产设计:主要包括货物、事件、库存三类资产。货物按照EPCIS标准分为EPC和EPCClass两类。EPC用于标识单品,如SGTIN(GTIN+序列号)、SSCC(托盘标识)、GDTI等;EPCClass用于表示某个批次的一批产品,如LGTIN(GTIN+批号)。为了记录两类货物的流通情况,设计了库存类资产,包括epcTracking和epcClassTracking。事件也作为资产用来表示每次存储到区块链中的内容,按照EPCIS标准可分为ObjectEvent、
AggregationEvent、TransactionEvent、Transformation-
Event,分别表示对象事件、聚合事件、业务事件和转换事件,如图7。
图7  资产设计关系
 
交易设计:Transaction 是一个交易记录。通过参照EPCIS标准,所有事件的捕获都抽象成一个CaptureEvent交易,然后按照提交的不同资产扩展为CaptureObjectEvent、CaptureAggregationEvent、CaptureTransformationEvent、CaptureTransactionEvent。如图8。
图8  交易设计关系
代码示例
业务场景:生产商A发送货物至经销商B,实现某批次产品共计500顿货物在区块链上的转移,如图9。
 图9  开发流程
 
定义参与方
生产商A的ID为GLN编码6901234000009,经销商B的ID为GLN编码6901234000016。
{  "$class": "org.gs1cn.Party",
  "GLN": "6901234000009", //采用GLN编码作为参与方的唯一标识
  "email": "Irure officia.",
  "address": {
"$class": "org.gs1cn.Address",
"country": "Et excepteur sint."}}
定义资产
注册货物:假定该批货物为香蕉,GTIN为4012345123456,批次号为998877,资产的唯一标识为urn:epc:class:lgtin:4012345.012345.998877。
{"$class": "org.gs1cn.epcClass",
"epcClass": 
"urn:epc:class:lgtin:
      4012345.012345.998877",
        "Name": "香蕉"}
注册货物库存:生产商A向区块链中注册了GTIN为4012345123456批次号为998877的香蕉5000公斤。ID为6901234000009_urn:epc:class:lgtin:
4012345.012345.998877
{  "$class": "org.gs1cn.epcClassTracking",
"id": 
"6901234000009_urn:epc:class:lgtin:   
4012345.012345.998877",
  "quantityElement": {
      "$class": "org.gs1cn.quantityElement",
      "epcClass": 
"resource:org.gs1cn.epcClass#urn:epc:class:lgtin:4012345.012345.998877",
"quantity": 5000,
"uom": "KG"  },
"Owner": "resource:org.gs1cn.Party#6901234000009"}
注册业务对象事件:生产商在某时某地向销售商运输1000公斤香蕉。
{
"$class": "org.gs1cn.ObjectEvent",
         "source": "resource:org.gs1cn.Party# 
6901234000009",
         "destination": 
"resource:org.gs1cn.Party#6901234000016",
         "quantityList": [
         {
         "$class": "org.gs1cn.quantityElement",
         "epcClass": 
"resource:org.gs1cn.epcClass#urn:epc:class:lgtin:4012345.012345.998877",
         "quantity": 235.08,
         "uom": "Eu excepteur incididunt ullamco."    
         }
      ],
                "eventID": "7485",
                "eventTime": "2019-01-07T01:13:37.359Z",
                "recordTime": "2019-01-07T01:13:37.359Z",
                "eventTimeZoneOffset": 62967,
                "bizStep": "accepting",
                "disposition": "in_progress",
      "readPoint":  "urn:epc:id:sgln:
                                     6901234.56789.0",
      "bizLocation": "urn:epc:id:sgln:
                                       6901234.56789.0"  
}
执行交易
向区块链网络提交事务,执行成功后生产商A的该批次库存减少1000公斤,同时在区块链中为销售商B增加一个新的库存资产记录,属于销售商B的1000公斤香蕉。
{  "$class": "org.gs1cn.CaptureAggregationEvent",
    "epcis": "resource:org.gs1cn.ObjectEvent#2161"}
执行成功后,系统按照合约自动减少生产商的库存,并增加销售商的库存。
完整的源代码已经上传到https://github.com/jiajh/epcis-blockchain
 
系统设计分析
以上已搭建了基于EPCIS标准的区块链供应链溯源系统,展示了供应链中完整的发货、收货、确认、自动记账过程。相比于现有追溯系统,本系统在数据共享、信息透明度、可信度、查询速度等方面具有明显优势,见表2,该系统与传统追溯系统对比。 
表2
该系统追溯引入了世界通行的供应链追溯标准,打通数据系统,实用性强,可操作性高。首先,EPCIS是一套国际通用的接口标准,旨在提升供应链可视化与透明度,与区块链应用的目的一致,可结合性高。EPCIS有相应的采集和查询数据标准,并具有配套的CBV,定义了词汇与接口,准确描述各个事件的对象、时间、位置、发生原因,同时满足存货管理消费者查询,政府监管等多种需求。且本系统结构灵活,即使现有系统方案不同,也能够保证各参与方的可视化数据交互流畅统一,减少了数据共享的技术障碍,降低了交互成本。此特点也与分布式账本技术打破了数据孤岛,提供了简便易行的数据共享方式的目的相契合。
该系统将通过提高交易效率、信息回溯效率和提高信息可信度的途径重塑供应链信用关系。现有的信息化追溯系统一般是建造集中式数据平台,各参与方将数据上传至平台后,由管理员统一进行管理。2014年某著名白酒生产公司就曾发生内部员工盗取篡改防伪数据库信息的事件,用以伪造相应的RFID芯片,导致市场上出现了能够通过溯源系统验证的假酒。区块链系统是多中心的系统,各参与方同步记账,且信息经共识机制确认后即不可篡改、不可抵赖,为交易事件进行存证,也在用于消费终端查询时提供高度可信的信息。再例如汽车制造行业,一个核心企业的上下游会聚集上千家供应商,而由于缺乏有效的约束和规范机制,核心企业对供应链把控能力较弱。系统允许特定交易场景中只有授权参与方参与记账,为每个场景搭建了清晰简化的交易环境,同时理清了货物在多层级链条中的流向关系。特别是智能合约的引入,交易方通过共同的算法进行确权并自动执行,这种建立于算法之上的信用关系可以大幅降低沟通成本,防范履约风险,提高交易效率。
基于区块链的追溯系统,所有的业务操作一旦提交就不能修改和删除,从而保证数据的不可篡改性。EPCIS标准是ISO标准,是业内使用最广泛的工业数据标准,通过参考EPCIS标准设计区块链追溯系统,加快了业务模型的开发速度,降低了业务模块的耦合度,增加了业务系统的兼容性,满足了业务需求的多样性,方便与其他应用系统的数据共享和交换。因此,建议系统设计人员在开发区块链追溯系统时参考和使用EPCIS标准来保证系统的敏捷性和灵活性。
贾建华 邓惠朋 李军梅/文
(作者单位:中国物品编码中心)
《中国自动识别技术》2019年第2期总第77期
 
参考文献:
[1]中国物品编码中心.物流标准化[M].北京:中国标准出版社,2007.
[2]张夏恒.基于区块链的供应链管理模式优化[J].中国流通经济,2018(8). 
[3]叶小榕.基于区块链基于区块链_智能合约和物联网的供应链原型系统[J].科技导报,2017,35(23).
[4] World Economoic Forum. Realizing the Potential of Blockchain:A Multistakeholder Approach to the Stewardship of Blockchain and Cryptocurrencies[R](2017) https://www.weforum.org/ whitepapers/realizing-the-potential-of-blockchain/
[5]Capgemini.Does the blockchain hold the key to a new age of supply chain transparency and trust?[R](2018) https://www.capgemini.com/research/ does-blockchain-hold-the-key-to-a-new-age-in-supply-chain-transparency-and-trust/
[6]Deloitte. Continuous interconnected supply chain: Using blockchain & Internet-of-Things in supply chain traceability.[R](2017).
[7]闫妍,张锦,基于区块链技术的供应链主体风险规避研究[J/OL].工业工程与管理. https://doi.org/10.19495/j.cnki.1007-5429.2018.06.005
[8]衡友跃.设计模式在业务逻辑层中的应用[J].电子设计工程,2009(7).
[9]张辉.Factory和Facade优化模式体系的研究及应用[J].计算机应用研究,2008(12).
[10]李天午.基于模式的业务逻辑框架研究[D].哈尔滨:哈尔滨工程大学,2011.
[11] 宓迪.“双十一”网联平台交易处理峰值超9.2万笔/秒[N] 新京报.2018-11-12.  
[12] 张增骏.深度探索区块链:Hyperledger技术与应用[M].北京:机械工业出版社,2018.
[13]宋焘谊.区块链共识算法的比较研究[J].计算机应用与原件,2018(8).
[14]GS1.Global traceability standard[S],2017. https://www.gs1.org/sites/default/files/docs/traceability/GS1_Global_ Traceability_Standard_i2.pdf
[15]IBM.区块链技术基础:术语和用例https://www.ibm.com/developerworks/cn/ cloud/library/cl-blockchain-basics-glossary-bluemix-trs/index.html
[16]Raheel Zubairy. IBM developer. Create a global finance blockchain application with IBM Blockchain Platform Extension for VS Code[OL].(2018-12-19)[2019-1-2]. https://developer.ibm.com/blockchain/2017/06/30/get-going-quickly-blockchain-using-hyperledger-composer/.  
[17] EPC Information Services (EPCIS)Standard (2016-9)[2019-1-2]. https://www.gs1.org/sites/default/files/docs/epc/EPCIS-Standard-1.2-r-2016-09-29.pdf
[15] Core Business Vocabulary Standard (2017-10)[2019-1-2]. https:// www.gs1.org/sites/default/files/docs/epc/CBV-Standard-1-2-2-r-2017-10-12.pdf
[16]GS1.EPCIS and CBV implementation guideline[S],2017 https:// www.gs1.org/docs/epc/EPCIS_Guideline.pdf
[17]宋蒋萱.聚焦315:茅台年花2亿打假 数百万防伪数据曾被盗[OL].(2018-3-15)[2019-1-2] http://cnews.chinadaily.com. cn/2018- 03/15/content_35855874_2.htm 

延伸阅读:

声明:

    凡本网注明“来源:中国自动识别网、《中国自动识别技术》、《条码与信息系统》”的所有作品,版权均属于中国自动识别网、《中国自动识别技术》、《条码与信息系统》, 未经本网授权不得转载、摘编或利用其他方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:中国自动识别网、《中国自动识别技术》或《条码与信息系统》”。违反上述声明者,本网将追究其相关法律责任。
    凡本网注明“来源:XXX(非中国自动识别网、《中国自动识别技术》、《条码与信息系统》)”的作品,均转载自其他媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。文章内容仅供参考。 如因作品内容、版权和其他问题需要同本网联系的,请将内容传真至010-84295675,以便本网尽快处理。

高端访谈 更多>>
商品二维码 全球商品通用...
王毅 研究员、中国物品编码中心技术部副主任兼二维码研究室主任,国际自动识别与数据采集技术分委会(ISO/IEC JTC 1/...
物品身份及其编码的本质
张成海 中国物品编码中心主任、中国ECR委员会联合主席、国际物品编码组织(GS1)管理委员会委员及顾问委员会委员、全...
推进我国二维码标准化应...
王毅,中国物品编码中心二维码研究室主任,技术部副主任,研究员,国际自动识别与数据采集技术分委会(ISO/IEC JTC1/S...
AVEVA剑维软件: 信息和智...
数据是数字化转型的关键因素,是企业的重要资产。
杂志专区 更多>>

《2024第1期》

《2024第1期》