【技术实现步骤摘要】
基于Merkle山脉的多链追溯方法、装置和存储介质
[0001]本申请实施例涉及数据处理
,具体而言,涉及一种基于Merkle山脉的多链追溯方法、装置和存储介质。
技术介绍
[0002]随着区块链技术的发展,基于云平台的信息化协同模式已成为价值链的重要管理手段之一,云平台突破了核心企业与下游企业信息交换的时间和空间上的限制,打破信息孤岛,提高了信息交换的效率,为企业提高更有效的管理策略。区块链技术的应用越来越广泛,例如汽车制造业。
[0003]但是,当前的发展趋势逐渐转向服务型制造业,一个产品的完整制造链路将会涉及零件供应商、加工处理商、整车制造商和终端服务商等环节,涉及多方交易,因此对于一个产品的零件的流通过程难以追溯,例如对一个不合格产品的零件召回或返工时,由于追溯难度较大而导致召回或返工时工作量较大。
技术实现思路
[0004]本申请实施例提供一种基于Merkle山脉的多链追溯方法、装置和存储介质,旨在减少追溯过程的难度。
[0005]第一方面,本申请实施例提供一种基于Merkle山脉的多链追溯方法,所述方法包括:
[0006]采用Merkle山脉构建汽车零部件供应链、价值传递链以及产品服务链中的每个区块,所述每个区块的区块头包括区块版本号;
[0007]根据所述汽车零部件供应链、所述价值传递链以及所述产品服务链各自存储的多个产品的交易数据,为每条链中的每个区块构建索引树,其中,所述产品包括零件、零部件以及整车,所述每个区块对应的索引树与所述Merkle山脉 ...
【技术保护点】
【技术特征摘要】
1.一种基于Merkle山脉的多链追溯方法,其特征在于,所述方法包括:采用Merkle山脉构建汽车零部件供应链、价值传递链以及产品服务链中的每个区块,所述每个区块的区块头包括区块版本号;根据所述汽车零部件供应链、所述价值传递链以及所述产品服务链各自存储的多个产品的交易数据,为每条链中的每个区块构建索引树,其中,所述产品包括零件、零部件以及整车,所述每个区块对应的索引树与所述Merkle山脉同步更新,所述索引树中包含有将交易数据存储于该区块内的多个产品各自对应的编码值;获取待追溯的产品的目标编码值和/或目标区块版本号,基于所述每个区块对应的索引树,在所述汽车零部件供应链、所述价值传递链以及所述产品服务链上对所述待追溯的产品进行数据追溯,所述数据追溯包括正向追溯、反向追溯、过程追溯和召回追溯。2.根据权利要求1所述的方法,其特征在于,采用Merkle山脉构建汽车零部件供应链、价值传递链以及产品服务链中的每个区块,包括:在所述汽车零部件供应链、所述价值传递链以及所述产品服务链中的每个区块的区块头中增加Merkle山脉根哈希字段,所述区块头包括区块版本号、时间戳、难度值、随机数、前一区块哈希值和Merkle根哈希;在所述汽车零部件供应链、所述价值传递链以及所述产品服务链中的每个区块的区块体中新增Merkle山脉。3.根据权利要求1所述的方法,其特征在于,根据所述汽车零部件供应链、所述价值传递链以及所述产品服务链各自存储的多个产品的交易数据,为每条链中的每个区块构建索引树,包括:获取任一条链中任意一个区块内存储的多个产品的交易数据;按照生产批次,对该区块内的所述多个产品的交易数据进行排序,同一生产批次的多个产品的交易数据相邻;对所述多个产品中的每个产品的交易数据进行哈希计算,得到所述多个产品的交易数据各自对应的多个叶子节点;对所述多个叶子节点中相邻的两个叶子节点进行哈希计算,生成多个非叶子节点,并为所述多个非叶子节点中的每个非叶子节点添加标记,所述标记用于表征生成非叶子节点的两个叶子节点对应的产品是否为同一生产批次;对所述多个非叶子节点中相邻的两个非叶子节点进行哈希计算,直到得到根节点,并为所述根节点添加所述标记;通过中序遍历为所述多个叶子节点、所述多个非叶子节点以及所述根节点添加各自的编码值,其中,所述多个叶子节点各自的编码值为各自对应的产品的编号;在所述多个非叶子节点以及所述根节点中加入各自的子树所包含的编码值的范围区间;将最终的合并结果作为所述索引树的树根,并将所述根节点包含的编码值的范围区间保存在该区块的区块头中。4.根据权利要求3所述的方法,其特征在于,按照生产批次,对该区块内的所述多个产品的交易数据进行排序之后,所述方法还包括:判断所述同一生产批次的多个产品的交易数据的数量;
在所述数量为奇数时,添加一个空数据。5.根据权利要求3所述的方法,其特征在于,所述正向追溯的过程包括:根据所述目标区块版本号,查询所述目标区块版本号对应的区块所在的链中位于该区块...
【专利技术属性】
技术研发人员:郭兵,沈艳,赵明洁,苏红,蒙飞龙,李宝建,李忠玮,
申请(专利权)人:四川大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。