The invention discloses a self-destructive commodity traceability information storage method based on Merkel tree, which includes Merkel leaf node generation process, non-leaf node generation process, non-leaf node aggregation process and node maintenance process. By creating the Merkel tree node with time stamp, iterating from bottom to top to calculate the hash value of the node and constructing the binary Merkel tree, the integrity control and self-destruction function of the traceability information of goods are realized, the illegal tampering of the traceability information of goods by malicious entities is prevented, and the integrity check of the stored traceability information of goods products based on distributed technology is facilitated. According to the timestamp, the outdated Merkel tree nodes are destroyed regularly, the storage space occupied is released, and the cost of data storage and maintenance of commodity traceability information is reduced. Through the storage structure based on Merkel tree, the standardization and unification of data structure of commodity traceability information are realized, and the preventive control, checking control and restorative control ability of commodity traceability information are improved.
【技术实现步骤摘要】
一种基于Merkel树的可自毁商品追溯信息存储方法
本专利技术属于信息
中的信息获取与处理技术,特别涉及了一种可自毁商品追溯信息存储方法。
技术介绍
Merkel树在区块链技术中常被用于存储记录型数据,由于Merkel树的特性,使得其任意叶子节点或子树被删除之后,不会影响其余所有节点的节点哈希。因此,Merkel树最初的设计目的是能够灵活地移除任意过期记录数据。在商品流通过程中,一般需要存储大量条块化的商品及其追溯信息,如商品编码、交易记录等。此类数据在长期持久化保存的过程中将会产生较高的开销,提高了追溯成本,降低了追溯效率。而商品实体一般具有保质期的属性,在保质期到期之后,商品实体的生命周期结束,其追溯信息在法律规定的保存周期结束后也应当进行销毁,从而回收其占据的存储空间,节约成本。目前的区块链存储方案中,仅能够对于过期记录手动进行删除,无法自动处理,由此引发的数据膨胀问题在不久的将来可能会对整个系统的可用性、性能等产生深远影响。如何通过数据自毁技术和区块链技术在二叉Merkel树结构的基础上,实现商品追溯信息的完整性控制、按时自毁等功能,预防恶意实体对于商品产品追溯信息的非法篡改,对所存储的商品产品追溯信息进行基于分布式技术的完整性校验,并降低商品追溯信息数据存储及维护成本,是当下具有研究价值和应用价值的问题。
技术实现思路
为了解决上述
技术介绍
提出的技术问题,本专利技术提供了一种基于Merkel树的可自毁商品追溯信息存储方法。为了实现上述技术目的,本专利技术的技术方案为:一种基于Merkel树的可自毁商品追溯信息存储方法,包括以下步骤:(1)Mer ...
【技术保护点】
1.一种基于Merkel树的可自毁商品追溯信息存储方法,其特征在于,包括以下步骤:(1)Merkel树叶子节点生成过程,具体步骤如下:根据输入的可自毁商品追溯信息,生成相应的Merkel树叶子节点LN,LN至少包括以下属性:节点编号NS;父节点编号PNS,其默认值为0;节点数据ND,其默认值为序列化的可自毁商品追溯信息;节点哈希NH,其默认值为节点数据ND的散列值;自毁时间戳TOD,其默认值为商品保质期的到期时间;将所有输入的可自毁商品追溯信息存入Merkel树叶子节点LN后,检查LN的数量是否为奇数,若是,则额外生成一个新的叶子节点LN,将其节点数据ND值设为空;若否,则不作处理,本过程结束;(2)非叶子节点生成过程,具体步骤如下:对任意2个叶子节点LN,计算其节点哈希NH进行联合哈希后得到的散列值,生成这2个叶子节点LN的父节点NN,并更新着2个叶子节点LN中父节点编号PNS的值为父节点NN中节点编号NS的值,直到所有的叶子节点LN都存在与其对应的父节点NN;所述父节点NN至少包括以下属性:节点编号NS;父节点编号PNS,其默认值为0;节点哈希NH,其默认值为NN对应的2个叶子节点 ...
【技术特征摘要】
1.一种基于Merkel树的可自毁商品追溯信息存储方法,其特征在于,包括以下步骤:(1)Merkel树叶子节点生成过程,具体步骤如下:根据输入的可自毁商品追溯信息,生成相应的Merkel树叶子节点LN,LN至少包括以下属性:节点编号NS;父节点编号PNS,其默认值为0;节点数据ND,其默认值为序列化的可自毁商品追溯信息;节点哈希NH,其默认值为节点数据ND的散列值;自毁时间戳TOD,其默认值为商品保质期的到期时间;将所有输入的可自毁商品追溯信息存入Merkel树叶子节点LN后,检查LN的数量是否为奇数,若是,则额外生成一个新的叶子节点LN,将其节点数据ND值设为空;若否,则不作处理,本过程结束;(2)非叶子节点生成过程,具体步骤如下:对任意2个叶子节点LN,计算其节点哈希NH进行联合哈希后得到的散列值,生成这2个叶子节点LN的父节点NN,并更新着2个叶子节点LN中父节点编号PNS的值为父节点NN中节点编号NS的值,直到所有的叶子节点LN都存在与其对应的父节点NN;所述父节点NN至少包括以下属性:节点编号NS;父节点编号PNS,其默认值为0;节点哈希NH,其默认值为NN对应的2个叶子节点LN中节点哈希NH进行联合哈希后得到的散列值;自毁时间戳TOD,其默认值为NN对应的2个叶子节点LN中较大的自毁时间戳TOD值;重复上述过程,直到当所有叶子节点LN都生成了与其对应的父节点NN后,当前所有节点构成了若干棵独立的二叉Merkel树,本过程结束;(3)非叶子节点汇聚过程,具体步骤如下:设任意2颗独立的二叉Merkel树的根节点为RN,根据2个根节点RN中的节点哈希NH进行联合哈希后得到的散列值,生成2个根节点RN的父节点NN,并更新2个根节点RN中PNS的值为父节点NN中NS的值;上述过程完成后,当前所有节点汇聚成了若干棵新的Merkel树;检查新Merkel...
【专利技术属性】
技术研发人员:傅晓,陈勇,叶枫,王志坚,
申请(专利权)人:河海大学,张家港骞翮互联网科技有限公司,南京龙渊微电子科技有限公司,南京龙渊众创空间股份有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。