一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种抗复制攻击的区块链追溯方法及系统

2022-05-26 22:29:07 来源:中国专利 TAG:


1.本发明涉及区块链追溯技术,具体涉及一种抗复制攻击的区块链追溯方法及系统。


背景技术:

2.物品从生产商到消费者的销售过程中通常要历经多个环节,产生大量的流转信息,如何保证物品流转信息的真实性并且能够高效的进行追溯一直是本领域技术人员研究的方向,也是物品从生产商到消费者普遍关心的问题。
3.传统的物品溯源技术面临着五类问题:(1)中心化溯源信息数据库存在的单点失效问题;(2)溯源信息数据库存在着伪造数据或数据被篡改的问题;(3)溯源信息存在着被交易方抵赖的问题;(4)物品的物理标签信息与溯源信息数据库中数字标识不一致的问题;(5)对物理标签复制攻击检测能力弱的问题。
4.近年来,区块链技术被广泛用于物品溯源领域。区块链作为具有去中心化、不可篡改、公开可验证和可追溯等特性的共享数据库技术,极大提升了溯源信息数据库抵御单点失效的能力,并能保证溯源信息的真实性和不可抵赖。
5.但是,在物品的防伪标签物理id和物品数字身份id的同步上,还没有很好的解决方案,特别是当物品的物理标签被复制,进而攻击物品数字溯源信息时,没有有效的检测方法。
6.因此,如何设计一种抗复制攻击的区块链追溯系统,解决物品流转过程面临的物理标签id复制攻击问题,具有非常重要的意义。


技术实现要素:

7.发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种抗复制攻击的区块链追溯方法及系统。
8.技术方案:本发明的一种抗复制攻击的区块链追溯方法,包括以下内容:
9.(1)、对物品进行基于区块链的数字id和防复制的物理标签双重绑定,以及相应标签编码和管理;
10.即物品标签包含二级物理标签:第一物理标签和第二物理标签,第一物理标签和第二物理标签分别用于单个物品和成组物品的追溯和防伪;且第二物理标签具有基于物理不可克隆函数puf防复制功能;
11.(2)、基于二级物理标签和区块链系统,对物品进行公开透明的物品流转跟踪和实时查询,具体如下;
12.(2.1)设置事件监听器,为物品发布合约和物品流转合约设置事件监听器,用于监听交易被确认事件;
13.(2.2)标签确权,生产商按物品组配置第二物理标签,并写入流转码idf和秘密信息s完成对该标签的确权;
14.(2.3)物品发布,生产商通过物品发布合约以物品组为基本单元,将物品发布到区块链上,并初始化相应的物品状态数据和物品组码与物品个码映射表,生成数字资产;
15.(2.4)物品流转,交易双方(例如生产商与经销商、上级经销商与下级经销商、以及经销商与消费者)在区块链下完成物品交易,并通过物品流转合约完成链上数字资产的交易登记和链下第二物理标签的所有权转移;
16.(2.5)更新物品交易双层追溯索引树,根据监听到的物品发布交易或物品流转交易,以物品组码idb为关键字建立和维护物品交易双层追溯索引树;
17.其中,物品交易双层追溯索引树包括外层物品组节点和内层物品节点;所述外层物品组节点包括物品组追溯码tb、物品组交易链头节点和该组物品交易树的根节点等信息;所述物品组交易链头节点是物品组在区块链上发生的所有交易的id构成的链表结构的头节点;所述物品交易树的根节点是该组所有内层物品节点索引树的根节点;所述内层物品节点包括物品追溯码ta、物品交易链头节点等信息;所述物品交易链头节点是该组所有物品在区块链上发生的所有交易的id构成的链表结构的头节点;
18.(2.6)物品跟踪查询,基于物品交易双层追溯索引树,生产商根据物品组码idb或者物品个码hida实时查询物品的所有者或售卖情况;
19.(3)、对于与物品包装一致性重合的二级物理标签进行封装,以及对应物品信息进行追溯。
20.其中,对物品包装一致性重合的二级物理标签进行封装的目的是:如果打开成组物品的包装箱将导致第二物理标签损毁,进而防复制电路无法工作;同时,在打开组物品包装箱之前,无法读取第一物理标签信息。
21.进一步地,进行标签编码和管理(即是对物品二级物理标签的编码方法、读写特性及其数字身份的规定)的具体内容为:
22.第一物理标签中的信息包括:标签标识ida、追溯码ta和物品生产信息哈希值hpi;所述标签标识ida、追溯码ta和生产信息哈希值hpi在初始化后具有只读属性;
23.第二物理标签中的信息包括:标签标识idb、追溯码tb、流转码idf和秘密信息s;所述标签标识idb和追溯码tb在初始化后具有只读属性;所述流转码idf可反复读写;所述秘密信息s为物品当前所有者拥有,具有只写属性;
24.将第一物理标签标识ida的哈希码hash(ida)作为标签在区块链上的数字身份id,记为物品个码hida;
25.将第二物理标签标识idb作为标签在区块链上的数字身份id,记为物品组码idb。
26.进一步地,所述物品发布过程中区块链上的物品状态数据包括生产信息、编码信息和流转信息;
27.所述生产信息包括物品名称、生产厂家、生产日期和生产批号;
28.所述编码信息包括物品组码信息和物品个码信息;物品组码信息包含物品组码idb、追溯码tb、物品组码idb有效性、物品个码hida集合;物品个码信息包含物品个码hida、追溯码ta、追溯码ta查询次数;
29.所述流转信息包括物品组码idb、出入库状态、所有者id、标签防复制特征值、所有者签名;所述标签防复制特征值是由物理不可克隆函数(puf)运算得到的一个激励响应对。
30.将上述标签防复制特征值用于防伪,比如:当经销商a将成组的商品卖给经销商b
时,经销商b可通过将标签防复制特征值中的激励部分发送给第二物理标签,第二物理标签利用puf函数计算出应答,然后将这个应答和标签防复制特征值中的响应部分做对比。如果二者相同,则可以确认第二物理标签是真实的,不是复制的。
31.进一步地,所述物品流转的具体过程包括:
32.(2.4.1)物品出库:物品当前所有者生成随机数r1,与物品组码idb一起作为输入经过加密运算生成新的流转码idf

和秘密信息s

;物品当前所有者将第二物理标签的流转码和秘密信息更新为idf

和s

;物品当前所有者使用物品新所有者的公钥对《r1,idf

,s

》进行加密后,发送给物品流转合约完成物品出库;
33.(2.4.2)物品入库:物品新所有者从物品状态信息中获取《r1,idf

,s

》密文,使用私钥解密;物品新所有者使用《r1,idf

,s

》获得第二物理标签信息的读写权;物品新所有者生成随机数r2,与物品组码idb一起作为输入经过加密运算生成新的流转码idf

和秘密信息s

;物品新所有者将第二物理标签的流转码和秘密信息更新为idf

和s

;物品新所有者通过物理不可克隆函数(puf)计算新的激励响应对作为标签防复制特征值,连同身份id和签名信息发送给物品流转合约申请物品入库,完成物品数字资产和标签所有权转移。
34.进一步地,所述物品跟踪查询的具体过程为:
35.(2.6.1)输入查询参数,生产商输入物品组追溯码tb或者物品追溯码ta;
36.(2.6.2)验证追溯码有效性,通过查询物品组码与物品个码映射表来检查追溯码是否存在;若判断查询参数是物品追溯码ta,则由映射表返回相应的物品组追溯码tb;
37.(2.6.3)定位物品组追溯码tb节点,以映射表返回的物品组追溯码tb为关键字,来快速定位其在物品交易双层追溯索引树中的节点node
tb

38.(2.6.4)查找最近交易,若参数是物品组追溯码tb,则根据定位到的节点node
tb
中物品组追溯码tb的交易id集合,来查询所有交易id在区块链上区块的高度,取高度值最大的交易id作为最近交易trid
last

39.若参数是物品追溯码ta,则在定位到的节点node
tb
的物品交易树中根据物品追溯码ta的交易id集合,来查询所有交易id在区块链上区块的高度,取高度值最大的交易id作为最近交易trid
last

40.(2.6.5)确定物品状态和所有者,从区块链上读取交易id为trid
last
的交易内容,解析消息的发送者id和请求类型,确定物品状态和所有者
41.进一步地,对与物品包装一致性重合的物品信息进行追溯的步骤为:
42.(3.1)发起追溯请求,消费者通过客户端应用程序读取第一物理标签信息{ida,ta,hpi},并将{ida,ta,hpi}发送给物品查询合约发起追溯请求;
43.(3.2)验证追溯码的一致性,物品查询合约搜索物品组码idb与物品个码hida的映射表,检查物品追溯码ta是否存在;若存在,则计算第一物理标签标识ida的hash值,检查所得hash值是否与映射表中的物品个码hida一致,同时读取物品所在分组的追溯码tb;
44.(3.3)验证物品信息,从物品状态数据中读取该追溯码ta对应的物品生产信息,将计算其hash值,然后检查该hash值是否与生产信息哈希值hpi一致;
45.(3.4)更新物品查询次数,物品查询合约更新物品查询次数;比较查询次数是否超过查询次数阈值;联动更新二级物理标签的链上状态;
46.(3.5)定位物品组追溯码tb节点,以物品组追溯码tb为关键字,定位其在物品交易
双层追溯索引树中的节点node
tb

47.(3.6)检索物品组交易记录,读取定位到的节点node
tb
中物品追溯码tb的交易id集合根据该交易id集合从区块链上读取交易内容集合m表示关于物品组tb的交易数量;
48.(3.7)检索物品交易记录,从节点node
tb
中的物品交易树中搜索物品追溯码ta的交易id集合根据交易id集合从区块链上读取交易内容集合n表示关于物品ta的交易数量;
49.(3.8)有效性和可链接性分析,将交易内容集合和合并;按照交易时间先后顺序进行排序生成交易集合{tr1,tr2,

,tr
m n
};物品查询合约验证交易记录的有效性和可链接性;
50.(3.9)生成物品追溯报告,基于交易集合{tr1,tr2,

,tr
m n
},物品查询合约按照时间顺序构建物品流转信息清单;结合生产信息和查询次数生成物品追溯报告,并反馈给客户端应用程序。
51.进一步地,所述联动更新二级物理标签的链上状态是指:物品查询合约根据第一物理标签ida查询物品所在的分组,获得对应的物品组码idb;检查物品组码idb的有效性,如果物品组码idb有效,则将其状态更新为无效;
52.进一步地,所述物品查询合约验证交易记录有效性和可链接性的具体过程包括:
53.首先,物品查询合约针对交易记录集和中的每一笔交易,验证交易签名的正确性;
54.然后,针对交易记录集中的每一笔中间交易且1《i《m,如果该笔交易是出库交易,则检查前一笔交易是否为入库交易,并检查物品所有者的id是否一致;如果该笔交易是入库交易,则检查前一笔交易是否为出库交易,并验证是否可采用当前物品所有者的公钥解密得到前一笔交易的标签防复制特征值。
55.进一步地,结合生产信息和查询次数生成的物品追溯报告包括:物品的生产信息、物品当前的查询次数是否超过物品查询次数阈值、以及物品流转信息完整记录及可链接性验证结果;
56.其中,物品的生产信息包括物品名称、生产商、生产日期、生产批号。
57.本发明还公开一种用于实现上述抗复制攻击的区块链追溯方法的系统,涉及以下内容:
58.(a)、物品追溯智能合约,用于处理物品状态信息的上链存储和查询请求;
59.物品追溯智能合约包括用户注册合约模块、物品发布合约模块、物品流转合约模块和物品查询合约模块;所述用户注册合约,用于接收物品生产商、经销商和消费者上传的身份信息,经过验证后为用户生成用于链上交易的公私密钥对和链上身份标识;所述物品发布合约,用于生产商将已经建立二级编码的成组物品信息发布到区块链;所述物品流转合约,用于生产商与经销商之间和经销商与经销商之间进行物品交易时将流转信息上传至区块链;所述物品查询合约,用于响应用户的查询追溯请求,显示物品的生产信息和流转信息,检测物理标签的复制攻击行为;
60.(b)、物理标签读写装置,用于读取和改写二级物理标签的内部信息,并与物品追溯智能合约通信来响应物品流转请求并完成物品状态信息的更新;所述物理标签读写装置中设有存储器,该存储器中存储有计算机程序,执行计算机程序实现读取和更新物理标签中信息、以及与物品追溯智能合约模块进行通信;物理标签读写装置中预先存储其拥有者的链上身份标识和私钥,私钥采用对称加密算法进行加密;所述物理标签读写装置的拥有者包括物品生产商或经销商;
61.(c)、客户端;所述客户端安装有防伪追溯应用程序,运行该防伪追溯应用程序时实现用户的查询追溯请求、显示物品的生产信息和流转信息、检测物理标签的复制攻击行为;生产商、经销商和消费者均可通过客户端来访问区块链平台。
62.有益效果:与现有技术相比,本发明具有以下优点:
63.(1)能够抵抗物理标签大批量复制攻击
64.本发明引入物品二级物理标签机制,经销商在物品流转过程中只能读取分组包装箱上的第二物理标签,无法读取物品第一物理标签;同时,第二物理标签引入防复制技术,防复制结合区块链能够抵御第二物理标签的复制攻击行为,进而保证经销商无法批量读取和复制第一物理标签信息。
65.(2)准确定位复制攻击发生的阶段
66.本发明在物品生产过程中将物品的第一物理标识和成组物品的包装箱第二物理标识进行了绑定和加密存储,在物品的流转过程中,将物品的出入库记录与交易双方的身份标识进行绑定,并上传至区块链平台。如果物品在销售过程中发生了复制攻击,可以通过追溯包装箱第二物理标识的最后一次交易记录,从而快速定位物品复制攻击发生在哪一级经销商。
67.(3)标签封装的总体成本适中
68.本发明采用的物品二级物理标签中,针对单个物品的第一物理标签只需要成本较低的普通防伪标签,针对包装箱的第二物理标签具有防复制功能成本稍高。相对于抗复制攻击所带来的收益,标签封装的总体成本比较适中。
附图说明
69.图1为本发明一实施例中二级物理标签编码及读写特性图;
70.图2为本发明一实施例中物品状态信息结构示意图;
71.图3为本发明一实施例中物品交易双层追溯索引树的结构图;
72.图4为本发明一实施例中物品交易双层追溯索引树存储流程示意图;
73.图5为本发明一实施例中物品交易追溯查询流程示意图;
74.图6为本发明一实施例中瓶装酒二级物理标签封装示意图;
75.图7为本发明一实施例中瓶装酒追溯流程图。
具体实施方式
76.下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
77.本发明采用区块链标记物品流通过程中的每一个过程,物品id采用基于防复制结
构(即成组物品的外包装上的第二物理标签),在数据备份以及基于物品与id硬件封装的设计下,可用来发现物理世界里对数字id进行复制的攻击行为。本发明还提出基于区块链的数字id和防复制的物理标签绑定的标签编码和管理方法,基于该标签id采用区块链系统设计一种公开透明的物品流转跟踪和实时查询方法,还设计有与物品包装一致性重合的二级物理标签封装与物品信息追溯方法。
78.实施例1:
79.本实施例的一种抗复制攻击的区块链追溯方法,包括以下内容:
80.(1)、对物品进行基于区块链的数字id和防复制的物理标签双重绑定,以及相应标签编码和管理;
81.即物品标签包含二级物理标签:第一物理标签和第二物理标签,第一物理标签和第二物理标签分别用于单个物品和成组物品的追溯和防伪;且第二物理标签具有基于物理不可克隆函数(puf)的防复制功能,例如通过在第二物理标签的芯片中配置对应的防复制电路;
82.(2)、基于二级物理标签和区块链系统,对商品进行公开透明的物品流转跟踪和实时查询,具体如下;
83.(2.1)设置事件监听器,为物品发布合约和物品流转合约设置事件监听器,用于监听交易被确认事件;
84.(2.2)标签确权,生产商按物品组配置第二物理标签,并写入流转码idf和秘密信息s完成对该标签的确权;
85.(2.3)物品发布,生产商通过物品发布合约以物品组为基本单元,将物品发布到区块链上,并初始化相应的物品状态数据和物品组码与物品个码映射表,生成数字资产;
86.(2.4)物品流转,交易双方在区块链下完成物品交易,并通过物品流转合约完成链上数字资产的交易登记和链下第二物理标签的所有权转移;
87.(2.5)更新物品交易双层追溯索引树,根据监听到的物品发布交易或物品流转交易,以物品组码idb为关键字建立和维护物品交易双层追溯索引树;
88.其中物品交易双层追溯索引树的节点信息包括:物品组追溯码tb、物品组交易id集合、物品交易树;物品交易树的节点信息包括物品追溯码ta、物品交易id集合;
89.(2.6)物品跟踪查询,基于物品交易双层追溯索引树,生产商根据物品组码idb或者物品个码hida实时查询物品的所有者或售卖情况;
90.(3)、对于与物品外包装一致性重合的二级物理标签进行封装,以及对应物品信息进行追溯。
91.实施例2:
92.本实施例的抗复制攻击的区块链追溯的系统,涉及以下内容:
93.(a)、物品追溯智能合约,用于处理物品状态信息的上链存储和查询请求;
94.物品追溯智能合约包括用户注册合约模块、物品发布合约模块、物品流转合约模块和物品查询合约模块;
95.(b)、物理标签读写装置,用于读取和改写二级物理标签的内部信息,并与物品追溯智能合约通信来响应物品流转请求并完成物品状态信息的更新;
96.(c)、客户端,用于处理用户的查询追溯请求,显示物品的生产信息和流转信息,检
测物理标签的复制攻击行为。
97.实施例3:
98.本实施例以某品牌瓶装酒的销售为例,具体描述本发明技术方案在瓶装酒的销售过程中的应用,通过本实施例能够看出本发明技术方案有效抵御瓶装酒在多环节流通过程中面临的造假和售假行为。
99.本实施例的抗复制攻击的区块链追溯系统,包括基于区块链应用架构设计的物品追溯智能合约、物理标签读写装置、客户端应用程序。
100.在本实施例中采用hyperledger fabric 2.0构建的区块链平台作为追溯系统的基础架构。瓶装酒生产商p和n级经销商d={d1,

,di,
…dn
}共同加入由生产商p创建的瓶装酒销售联盟,在区块链上表现为通道channel
wine
。这里di表示第i级经销商的集合;dn,也就是第n级经销商,为瓶装酒销售的零售商集合。
101.在本实施例中采用go语言实现了物品追溯智能合约模块,共包括四个智能合约:用户注册智能合约urc,用于接收瓶装酒生产商、经销商、消费者上传的身份信息,经过验证后为用户生成用于链上交易的公私密钥对《u
pk
,u
sk
》和链上身份标识u
id
;物品发布智能合约pac,用于瓶装酒生产商将已经建立二级编码的成组物品信息发布到区块链;物品流转智能合约ptc,用于瓶装酒生产商与经销商之间和经销商与经销商之间进行物品交易时将流转信息上传至区块链;物品查询智能合约pqc,用于响应用户验证产品真伪的查询请求和追溯请求,向用户展示瓶装酒的生产信息和流转信息。
102.客户端用于处理用户的查询追溯请求,显示物品的生产信息和流转信息,检测物理标签的复制攻击行为;在本实施例中为支持nfc功能的智能手机编写了防伪追溯客户端app,通过rest接口访问hyperledger fabric 2.0区块链平台。
103.具体追溯方法包括以下三部分:
104.(1)对物品进行基于区块链的数字id和防复制的物理标签双重绑定,以及相应标签编码和管理;
105.(2)、基于二级物理标签和区块链系统,对商品进行公开透明的物品流转跟踪和实时查询;
106.(3)、对于与物品包装一致性重合的二级物理标签进行封装,以及对应物品信息进行追溯。
107.第一关键部分如图6所示,本实施例采用nfc标签作为第一物理标签,在封装时嵌入瓶装酒的瓶盖中。采用防复制功能的rfid标签作为第二物理标签,该标签内容集成了物理不可克隆函数(puf)运算电路,第二级物理标签嵌入瓶装酒包装箱的封口处。瓶装酒的二级物理标签,分别用于单瓶酒和整箱酒的防伪和追溯;物理标签读写装置用于读取和改写二级物理标签的内部信息,并与物品追溯智能合约模块通信完成物品状态信息的更新;物理标签读写装置预先存储了瓶装酒生产商或经销商的链上身份标识和私钥,私钥采用对称加密算法aes进行了加密;产商p和n级经销商{d1,

,di,
…dn
}都拥有自己的物理标签读写装置;这些读写装置既能与瓶装酒销售联盟区块链系统进行通信,也能和企业自己的生产销售系统通信。
108.瓶装酒在出厂销售之前,先要完成标签初始化和装箱;标签在封装时采用了开箱即毁和限制性读取的机制,即打开成组瓶装酒的包装箱时将导致第二物理标签损毁,防复
制电路无法工作;在打开组瓶装酒包装箱之前,无法读取第一物理标签信息。
109.如图1和图2所示,瓶装酒物理标签的编码和管理方法如下:
110.第一物理标签中的信息包括:标签标识ida、追溯码ta和物品生产信息哈希值hpi;其中标签标识ida由标签制造商编制,出厂时已经锁定;追溯码ta和物品生产信息哈希值hpi的存储单元只支持一次性写入,不可以反复修改,由瓶装酒生产企业编制,在装箱前写入。
111.第二物理标签中的信息包括:标签标识idb、追溯码tb、流转码idf和秘密信息s;标签标识idb由标签制造商编制,出厂时已经锁定;追溯码tb的存储单元只支持一次性写入,在装箱后写入;流转码idf可反复读写,每个经销商都可以改写idf;秘密信息s为物品当前所有者拥有,用于确认物品所有者对标签的读写权;秘密信息s单元的内容经销商只可以写入,不可以读取,第二物理标签使用秘密信息s确认所有者的身份。
112.第一物理标签标识ida的哈希码hash(ida)作为标签在区块链上的数字身份id,简称为物品个码hida;这样,保证了物品在到达消费者手中之前,第一物理标签标识ida不会被泄露。
113.第二物理标签标识idb同时作为标签在区块链上的数字身份id,简称为物品组码idb。
114.瓶装酒生产商完成标签初始化之后,以整箱酒为一个单元,通过物品发布智能合约pac进行上链发布,完成产品的登记。
115.瓶装酒上链的数据代表了其数字身份的链上状态,用于维护物品在区块链上的数字身份和在物理世界中的二级物理标签之间的映射关系。
116.瓶装酒的链上状态由一种数据结构存储,在本实施例中,该数据结构按照数据字典的一般描述规则定义如下:
117.winestate=productinfo codeinfo transinfo
118.productinfo=proname procompany prodate probatchno
[0119][0120]
groupcode=groupid grouptracecode groupstate productinfohashprocode=productinfohash protracecode querycount
[0121]
transinfo=groupid inventorystate ownerid pufpair ownersig
[0122]
此处,winestate、productinfo、codeinfo和transinfo分别表示瓶装酒状态、生产信息、编码信息和流转信息;proname、procompany、prodate和probatchno分别表示产品名称、生产厂家、生产日期、生产批号;groupcode和procode分别表示瓶装酒包装箱编码信息和瓶装酒编码信息;groupid、grouptracecode、groupstate和productinfohash分别表示瓶装酒包装箱id、包装箱追溯码、包装箱状态和产品信息哈希码;protracecode和querycount分别表示瓶装酒id和查询次数;inventorystate、ownerid、pufpair和ownersig分别表示该箱瓶装酒出入库状态、所有者id、防复制激励响应对和所有者签名。
[0123]
第二关键部分包括以下步骤:
[0124]
(2.1)设置事件监听器,基于fabric hyperledger的事件监听机制,为物品发布合约和物品流转合约设置事件监听器,用于监听交易被确认事件;
[0125]
(2.2)标签确权,瓶装酒生产商为每个包装箱配置第二物理标签,并写入流转码
idf和秘密信息s完成对该标签的确权;
[0126]
(2.3)物品发布,瓶装酒生产商通过物品发布合约以箱为基本单元将物品发布到区块链上,并初始化相应的瓶装酒状态数据winestate和包装箱标签编码与瓶装酒标签编码映射表,生成数字资产;
[0127]
(2.4)物品流转,瓶装酒当前所有者(生产商或经销商)作为卖方seller,新的所有者(下一次经销商)作为买方buyer,双方在链下完成瓶装酒交易,并通过物品流转合约完成链上数字资产的交易登记和链下第二物理标签的所有权转移;
[0128]
(2.4.1)物品出库:seller使用标签读写装置生成随机数r1,与第二物理标签标识idb一起作为输入经过加密运算生成新的流转码idf

和秘密信息s

;seller将第二物理标签的流转码和秘密信息更新为idf

和s

;seller使用物品buyer的公钥对《r1,idf

,s

》进行加密后,发送给物品流转合约完成瓶装酒出库;
[0129]
(2.4.2)物品入库:buyer从物品状态信息中获取《r1,idf

,s

》密文,使用私钥解密;buyer使用《r1,idf

,s

》获得第二物理标签信息的读写权;buyer生成随机数r2,与物品组码idb一起作为输入经过加密运算生成新的流转码idf

和秘密信息s

;buyer将第二物理标签的流转码和秘密信息更新为idf

和s

;buyer通过物理不可克隆函数(puf)计算新的激励响应对作为标签防复制特征值,连同身份id和签名信息发送给物品流转合约申请物品入库,完成瓶装酒数字资产和第二物理标签所有权转移。
[0130]
(2.5)更新物品交易双层追溯索引树(如图3所示),根据监听到的物品发布交易或物品流转交易,以物品组码idb为关键字建立和维护物品交易双层追溯索引树;该树的节点信息包括物品组追溯码tb、物品组交易id集合、物品交易树;物品交易树的节点信息包括:物品追溯码ta、物品交易id集合。
[0131]
(2.6)物品跟踪查询,基于物品交易双层追溯索引树,瓶装酒生产商根据瓶装酒组码idb或者瓶装酒个码hida实时查询物品的所有者或售卖情况。
[0132]
具体过程如图4和图5所示:
[0133]
(2.6.1)输入查询参数,使用客户端的应用程序,瓶装酒生产商输入包装箱追溯码tb或者瓶装酒追溯码ta;
[0134]
(2.6.2)验证追溯码有效性,查询包装箱追溯码与瓶装酒追溯码映射表,检查追溯码是否存在;若参数是瓶装酒追溯码ta,则由映射表返回相应的包装箱追溯码tb;
[0135]
(2.6.3)定位物品组追溯码tb节点,以包装箱追溯码tb为关键字,快速定位其在物品交易双层追溯索引树中的节点node
tb

[0136]
(2.6.4)查找最近交易,若参数是包装箱追溯码tb,根据定位节点node
tb
中包装箱追溯码tb的交易id集合,查询所有交易id在区块链上区块的高度,取高度值最大的交易id作为最近交易trid
last
;若参数是瓶装酒追溯码ta,则在节点node
tb
的物品交易树中根据包装箱追溯码ta的交易id集合,查询所有交易id在区块链上区块的高度,取高度值最大的交易id作为最近交易trid
last

[0137]
(2.6.5)确定物品状态和所有者,从区块链上读取交易id为trid
last
的交易内容,解析消息的发送者id和请求类型,确定瓶装酒状态和所有者。
[0138]
第三关键部分:(3)与物品包装一致性重合的二级物理标签封装方法与物品信息追溯算法。
[0139]
在本实施例中,打开瓶装酒包装箱将导致第二物理标签损毁,防复制电路无法工作;在打开瓶装酒包装箱之前,无法读取第一物理标签信息。
[0140]
如图7所示,在本实施例中,与物品包装一致性重合的物品信息追溯包括以下步骤:
[0141]
(3.1)发起追溯请求,消费者从酒瓶nfc标签中读取标签信息{ida,ta,hpi},发送给物品查询合约发起追溯请求;
[0142]
(3.2)验证追溯码的一致性,物品查询合约搜索包装箱追溯码与瓶装酒追溯码映射表,检查追溯码ta是否存在;若不存在,则该追溯码ta无效,瓶装酒为伪造产品;若存在,则计算ida的hash值,检查是否与映射表中的hida一致;如果一致,则同时读取瓶装酒所在分组的追溯码tb;如果不一致,则瓶装酒为伪造产品;
[0143]
(3.3)验证物品信息,从物品状态数据中读取该追溯码ta对应的瓶装酒生产信息,将计算其hash值,检查是否与hpi一致;如果不一致,则瓶装酒为伪造产品;
[0144]
(3.4)更新物品查询次数,物品查询合约更新物品查询次数;比较查询次数是否超过查询次数阈值;如果超过查询次数阈值,则瓶装酒为伪造产品;如果没有超过查询次数阈值,则联动更新二级物理标签的链上状态,即包装箱内任何瓶装酒被追溯查询,该包装箱第二物理标签的状态groupstate置为无效;
[0145]
(3.5)定位物品组追溯码tb节点,以包装箱追溯码tb为关键字,定位其在物品交易双层追溯索引树中的节点node
tb

[0146]
(3.6)检索物品组交易记录,读取节点node
tb
中包装箱追溯码tb的交易id集合根据交易id集合从区块链上读取交易内容集合
[0147]
(3.7)检索物品交易记录,从节点node
tb
中的物品交易树中搜索瓶装酒追溯码ta的交易id集合根据交易id集合从区块链上读取交易内容集合
[0148]
(3.8)有效性和可链接性分析,将交易内容集合和合并;按照交易时间先后顺序进行排序生成交易集合{tr1,tr2,

,tr
m n
};物品查询合约验证交易记录的有效性和可链接性;
[0149]
验证交易记录的有效性和可链接性的过程包括:物品查询合约针对交易记录集和中的每一笔交易,验证交易签名的正确性;针对交易记录集中的每一笔中间交易如果该笔交易是出库交易,则检查前一笔交易是否为入库交易,并检查物品所有者的id是否一致;如果该笔交易是入库交易,则检查前一笔交易是否为出库交易,并验证是否可以采用当前物品所有者的公钥解密得到前一笔交易的标签防复制特征值。
[0150]
(3.9)生成物品追溯报告,基于交易集合{tr1,tr2,

,tr
m n
},物品查询合约按照时间顺序构建物品流转信息清单;结合瓶装酒生产信息和查询次数生成瓶装酒追溯报告,并反馈给客户端应用程序。
[0151]
在本实施例中,瓶装酒追溯报告包信三部分信息:(i)瓶装酒的生产信息,包括名
称、生产厂家、生产日期、生产批号等信息;(ii)瓶装酒当前的查询次数是否超过物品查询次数阈值,若超过则显示伪造产品;(iii)物品流转信息完整记录及可链接性验证结果,若验证不通过,则显示第一次验证失败的交易信息。
[0152]
在本实施例方案中,如果客户端应用程序查询到该瓶装酒为假或伪造产品,则通过溯源查出该瓶装酒所在包装箱的最后一次流转记录,解析其所有者的身份id,从而向联盟链网络发起对该id所对应实体的惩罚并记录公示。
[0153]
如图3所示,本实施例的其中,物品交易双层追溯索引树包括外层物品组节点和内层物品节点;所述外层物品组节点包括物品组追溯码tb、物品组交易链头节点和该组物品交易树的根节点;所述物品组交易链头节点是物品组在区块链上发生的所有交易的id构成的链表结构的头节点;所述物品交易树的根节点是该组所有内层物品节点索引树的根节点;所述内层物品节点包括物品追溯码ta、物品交易链头节点;所述物品交易链头节点是该组所有物品在区块链上发生的所有交易的id构成的链表结构的头节点。
[0154]
由于判断复制的依据是链上的交易记录和物品的状态信息,物品状态信息中记录了用户的查询次数,查询次数超过阈值则认为发生了复制,并可以通过交易记录追查复制发生的起始点;因此通过物品交易双层追溯索引树可加快定位的速度,追溯索引树是交易记录的索引,查询起来非常方便。
[0155]
由上述实施例可以看出,通过本发明的技术方案为交易双方提供公开可信的方法和平台,可验证物理标签是否被复制,从而更加有效的阻止标签的复制造假行为;追溯过程的交互协议采用加密方法进而保证物理标签确权信息的安全传递,以及标签读写装置和物理标签之间的双向认证。同时,基于二级物理标签的物品封装编码机制,以及物品交易双层追溯索引树和与之相对应的物品追溯算法,使得具有防复制功能的第二物理标签能够保护第一物理标签的信息,防止第一物理标签的信息在物品流转过程中被批量读取,进而阻止物品被批量造假,并且物理标签的总体成本较低。其次,物品交易双层追溯索引树能够实时记录二级物理标签的数字身份在区块链中每一次流转过程的交易id,提高了物品信息溯源和复制攻击行为检测过程的实时性。
[0156]
实施例4:
[0157]
本实施例基于hyperledger fabric联盟链实验网络,评估了物品追溯的时间开销,该hyperledger fabric实验网络是在速度为100mbps局域网内由4台计算服务器和1台存储阵列组建的私有云平台上构建的。
[0158]
其中,每台计算服务器均配置有两颗e5-2650v4处理器(每颗12核心24线程)和128g的内存,存储阵列配置有54tb企业级sata硬盘。通过虚拟化技术,配置了40台虚拟服务器充当fabric节点。
[0159]
以该品牌瓶装白酒供应链作为仿真实验场景,分别测试了在经过4级经销商和6级经销商两种配置下单个物品追溯查询的处理时间,每种配置下重复实验10次,取平均值,该品牌瓶装白酒每组的典型瓶数设为6。
[0160]
表1物品追溯时间开销表
[0161][0162][0163]
综上所述,本发明的抗复制攻击的区块链追溯方法及系统,能够解决现有技术中的物理标签面临的复制攻击问题和区块链数据存储机制带来的检索效率低的问题,提升了物品在交易流转过程中的防伪能力、增强了溯源信息的可信度和追溯查询的实时性。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献