基于区块链的完整数据溯源方法、装置及相关设备

文档序号:169088 发布日期:2021-10-29 浏览:15次 >En<

阅读说明:本技术 基于区块链的完整数据溯源方法、装置及相关设备 (Block chain-based complete data tracing method and device and related equipment ) 是由 林宏斌 张沛昌 黄磊 张基宏 钱恭斌 钟世达 于 2021-08-02 设计创作,主要内容包括:本发明实施例公开了基于区块链的完整数据溯源方法、装置及相关设备。该方法包括基于边缘计算的融合式数据检测算法对采集数据的进行完整检测;若所述采集数据的检测结果为完整,则将所述采集数据存储至区块链;若所述采集数据的检测结果为不完整,则对所述采集数据进行溯源,得到所述采集数据的原始数据;根据所述原始数据对所述采集数据进行修复,得到完整数据并将所述完整数据存储到区块链中。该方法中通过边缘网关接入数据检测算法对采集数据进行检测,以保证区块链加密前数据的完整性,并且不完整的数据通过溯源到原始数据进行修复,从而保证了进入区块链的数据始终是完整的。(The embodiment of the invention discloses a complete data tracing method and device based on a block chain and related equipment. The method comprises the steps of carrying out complete detection on collected data by a fusion data detection algorithm based on edge calculation; if the detection result of the acquired data is complete, storing the acquired data to a block chain; if the detection result of the acquired data is incomplete, tracing the acquired data to obtain the original data of the acquired data; and restoring the acquired data according to the original data to obtain complete data and storing the complete data into a block chain. According to the method, the acquired data is detected through an edge gateway access data detection algorithm so as to ensure the integrity of the data before encryption of the block chain, and incomplete data is repaired by tracing to the original data, so that the data entering the block chain is always complete.)

基于区块链的完整数据溯源方法、装置及相关设备

技术领域

本发明涉及区块链技术领域,尤其涉及一种基于区块链的完整数据溯源方法、装置及相关设备。

背景技术

区块链是共识算法、分布式存储、点对点传输、加密算法等计算机技术构成的新型系统,被广泛应用于可信存证、证券交易、电子商务、智能合约、物联网、社交通讯以及文件存储等众多领域;当前的区块链技术是由一串使用密码学方法产生的数据块组成的,每一个区块都包含了上一个区块的哈希值(hash),并且确保按照时间顺序在上一个区块之后产生。

中国专利公开号:CN111475574A公开了一种基于区块链的数据采集装置,包括:数据采集系统、区块链数据存证系统和至少一个区块链网络;所述数据采集系统,用于采集原始数据,并记录采集事件的事实证明信息;所述区块链数据存证系统,用于从采集的原始数据抽取特征数据,将特征数据与事实证明信息组合生成合成数据结构,并对合成数据结构进行数字签名生成签名数据后,将合成数据结构和签名数据发送到区块链网络;所述区块链网络,用于通过区块链交易,对签名数据进行签名验证,在签名验证通过后将合成数据结构进行存储,完成上链存证。本发明对数据产生事件或者过程进行信息存证,使得各事实证明信息能够通过区块链的不可篡改、可溯源等特性进行证据即时留存和保护。利用签名验证后保证了存储在区块链数据的安全性,但是存储的数据在签名前向区块链中转时并不能够保证数据的完整性,如果在签名前数据受损只能在使用时才可以发现,但这时再去寻找原始数据会存在一定的困难,例如:原始数据已经删除、溯源信息丢失等。

发明内容

本发明实施例提供了一种基于区块链的完整数据溯源方法、装置及相关设备,旨在解决现有技术中数据在签名前向区块链中转时不能保证数据完整性的问题。

第一方面,本发明实施例提供了一种基于区块链的完整数据溯源方法,其包括:

基于边缘计算的融合式数据检测算法对采集数据的进行完整检测;

若所述采集数据的检测结果为完整,则将所述采集数据存储至区块链;

若所述采集数据的检测结果为不完整,则对所述采集数据进行溯源,得到所述采集数据的原始数据;

根据所述原始数据对所述采集数据进行修复,得到完整数据并将所述完整数据存储到区块链中。

第二方面,本发明实施例提供了一种基于区块链的完整数据溯源装置,其包括:

完整检测模块,用于基于边缘计算的融合式数据检测算法对采集数据的进行完整检测;

存储模块,用于若所述采集数据的检测结果为完整,则将所述采集数据存储至区块链;

溯源模块,用于若所述采集数据的检测结果为不完整,则对所述采集数据进行溯源,得到所述采集数据的原始数据;

修复模块,用于根据所述原始数据对所述采集数据进行修复,得到完整数据并将所述完整数据存储到区块链中。

第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于区块链的完整数据溯源方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于区块链的完整数据溯源方法。

本发明实施例提供了一种基于区块链的完整数据溯源方法、装置及相关设备。该方法包括基于边缘计算的融合式数据检测算法对采集数据的进行完整检测;若所述采集数据的检测结果为完整,则将所述采集数据存储至区块链;若所述采集数据的检测结果为不完整,则对所述采集数据进行溯源,得到所述采集数据的原始数据;根据所述原始数据对所述采集数据进行修复,得到完整数据并将所述完整数据存储到区块链中。该方法中通过边缘网关接入数据检测算法对采集数据进行检测,以保证区块链加密前数据的完整性,并且不完整的数据通过溯源到原始数据进行修复,从而保证了进入区块链的数据始终是完整的。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的基于区块链的完整数据溯源方法的流程示意图;

图2为本发明实施例提供的基于区块链的完整数据溯源方法中步骤S110一实施例的子流程示意图;

图3为图2中步骤S114的一子流程示意图;

图4为本发明实施例提供的基于区块链的完整数据溯源方法中步骤S140一实施例的子流程示意图;

图5为本发明实施例提供的基于区块链的完整数据溯源方法的另一流程示意图;

图6为本发明实施例提供的基于区块链的完整数据溯源方法的另一流程示意图;

图7为本发明实施例提供的基于区块链的完整数据溯源装置的示意性框图;

图8为本发明实施例提供的基于区块链的完整数据溯源方法中数据节点的示意图;

图9为本发明实施例提供的基于区块链的完整数据溯源方法中数据节点聚集的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

请参阅图1所示,图1为本发明实施例提供的基于区块链的完整数据溯源方法的流程示意图,该方法包括步骤S110~S140。

步骤S110、基于边缘计算的融合式数据检测算法对采集数据的进行完整检测;

本实施例中,通过传感器获取采集数据,接入边缘计算的数据检测平台,利用数据检测平台预设的融合式数据检测算法对采集数据进行完整检测。

如图2所示,在一实施例中,步骤S110包括:

步骤S111、从所述采集数据中选取数据节点,并对每两个所述数据节点进行一次数据融合,并记录融合过程中每个数据节点的子节点数目,得到一次融合数据;

步骤S112、基于所述数据节点生成私密种子,将私密种子嵌入所述采集数据,并对所述数据节点进行分片聚集,得到聚集节点;

步骤S113、对所述聚集节点进行二次数据融合,得到二次融合数据;

步骤S114、通过私密种子对所述二次融合数据中对应的数据节点进行解密,根据解密结果判断所述采集数据是否完整。

本实施例中,从采集数据中选取数据节点对每两个数据节点进行一次数据融合,并记录融合过程中每个数据节点的子节点数目,得到一次融合数据;基于数据节点生成私密种子,将私密种子嵌入采集数据,并对数据节点的子节点进行分片聚集,得到聚集节点;对聚集节点进行二次数据融合,得到二次融合数据;通过私密种子对二次融合数据中对应的数据节点进行解密,根据解密结果判断采集数据是否完整。

例如图8所示,采用融合式数据检测算法,首先选取采集数据的数据节点进行一次融合操作,融合过程中记录每个数据节点子节点的数目chd,其中:数据节点1、数据节点2和数据节点3为数据节点0的子节点,因此数据节点0的chd=3,;数据节点4和数据节点5为数据节点1的子节点,因此数据节点1的chd=2;数据节点6、数据节点7和数据节点8为数据节点2的子节点,因此数据节点2的chd=3;数据节点9和数据节点10为数据节点3的子节点,因此数据节点3的chd=2;而数据节点4、数据节点5、数据节点6、数据节点7、数据节点8、数据节点9和数据节点10没有子节点,因此它们的chd=0,然后各个数据节点生成私密种子,私密种子进行随机改变,而后向采集数据中嵌入私密种子,接着进行分片聚集,具体参阅图9所示,数据节点4、数据节点5、数据节点6、数据节点7、数据节点8、数据节点9和数据节点10与自身以及附近的数据节点进行聚集,若数据节点4、数据节点5、数据节点6、数据节点7、数据节点8、数据节点9和数据节点10分别为d4、d5、d6、d7、d8、d9和d10,首先d1-d10与自身进行聚集得到d11-d1010,同时d4与数据节点1聚集得到d41,d5与数据节点2聚集得到d52,d6与数据节点8聚集得到d68,d7与数据节点9聚集得到d79,d8与数据节点2聚集得到d82,d9与数据节点10聚集得到d910,d10与数据节点3聚集得到d103,聚集后再次进行数据融合,然后检测端接收来自所有数据节点传输的融合数据,利用私密种子对融合数据进行解密,根据解密结果判断采集数据是否完整。

如图3所示,在一实施例中,步骤S114包括:

步骤S1141、若所述私密种子能对所述融合数据中对应的数据节点进行解密,则判定所述采集数据完整;

步骤S1142、若所述私密种子不能对所述融合数据中对应的数据节点进行解密,则判定所述采集数据不完整。

本实施例中,根据私密种子的解密结果判断采集数据是否完整。若私密种子能对融合数据中对应的数据节点进行解密,则表示融合数据没有受损,判定采集数据完整;若私密种子不能对融合数据中对应的数据节点进行解密,则表示融合数据受损,判定采集数据不完整。

步骤S120、若所述采集数据的检测结果为完整,则将所述采集数据存储至区块链;

本实施例中,若采集数据的检测结果为完整,则将采集数据存储至区块链。区块链对采集数据进行加密,形成最终数据,后期使用时通过区块链对最终数据进行提取

步骤S130、若所述采集数据的检测结果为不完整,则对所述采集数据进行溯源,得到所述采集数据的原始数据;

步骤S140、根据所述原始数据对所述采集数据进行修复,得到完整数据并将所述完整数据存储到区块链中。

本实施例中,若采集数据的检测结果为不完整,则对采集数据进行溯源,通过溯源得到该采集数据的原始数据;接着根据原始数据对采集数据进行修复,得到完整数据,最后将完整数据存储到区块链中。

如图4所示,在一实施例中,步骤S140包括:

步骤S141、提取所述采集数据中的不完整数据,并获取所述不完整数据对应的目标节点序列;

步骤S142、获取所述原始数据的原始节点序列,将所述原始节点序列和目标节点序列进行对比,根据所述原始节点序列确定所述目标节点序列缺失的缺失数据节点;

步骤S143、将所述缺失数据节点补偿到所述目标节点序列中。

本实施例中,对不完整数据进行修复,具体包括:提取采集数据中的不完整数据,并获取不完整数据对应的目标节点序列;根据原始数据获取原始数据的原始节点序列,将原始节点序列和目标节点序列进行对比,根据原始节点序列确定目标节点序列中缺失的缺失数据节点;最后将缺失数据节点补偿到目标节点序列中完成不完整数据的修复。

例如,提取不完整数据对应的目标节点序列为{1,2,5,6,7},而原始数据对应的原始节点序列为{1,2,3,4,5,6,7,},目标节点序列和原始节点序列对比可知不完整数据中缺失的缺失数据节点为{3,4},则将缺失数据节点{3,4}补偿到目标节点序列{1,2,5,6,7}中完成修复。

如图5所示,在一实施例中,步骤S140之后还包括:

步骤S151、对所述原始数据进行标记;

步骤S152、根据预置的标记保留时长保留所述标记,直至达到所述标记保留时长,则解除所述标记;或;检测是否存在标记解除指令,若存在则解除所述标记。

本实施例中,为了保证后期修复采集数据的稳定性,不完整的采集数据修复后,将溯源的原始数据进行标记,标记后的原始数据只有在解除标记后才可以删除,有效解决原始数据删除后修复采集数据时出现相同不完整数据无法溯源到原始数据的请况。解除的方式包括:可以是根据设定的标记保留时长进行解除,如一天的温度数据的采集时间为一天,一天结束温度数据失去有效性,标记自动接触;还可以是用户手动接触,检测是否存在标记解除指令,需要就将标记解除。

如图6所示,在一实施例中,步骤S130之后,还包括:

步骤S1301、对所述采集数据的融合过程进行记忆,得到不完整数据的历史融合过程;

步骤S1302、当检测到不完整的当前采集数据对应的当前融合过程与所述历史融合过程相同时,则直接提取所述历史融合过程对应的缺失数据节点对不完整的当前采集数据进行修复。

本实施例中,为了提高再次修复的效率,对前一次修复进行记忆,得到不完整数据的历史融合过程;在融合式数据检测算法检测出其他不完整的采集数据后,当检测到其他不完整的采集数据对应的当前融合过程与历史融合过程中相同的融合过程时,则直接提取历史融合过程对应的缺失数据节点对其他不完整的采集数据进行修复。

例如,若检测到采集数据A不完整,对采集数据A的融合过程进行记忆,若下次检测出现存在采集数据B的融合过程与采集数据A的融合过程一样,则提取采集数据A的缺失数据节点,然后补偿至采集数据B中,快速修复采集数据B。

该方法中通过边缘网关接入数据检测算法对采集数据进行检测,以保证区块链加密前数据的完整性,并且不完整的数据通过溯源到原始数据进行修复,从而保证了进入区块链的数据始终是完整的。

本发明实施例还提供一种基于区块链的完整数据溯源装置,该基于区块链的完整数据溯源装置用于执行前述基于区块链的完整数据溯源方法的任一实施例。具体地,请参阅图7,图7是本发明实施例提供的基于区块链的完整数据溯源装置的示意性框图。该基于区块链的完整数据溯源装置100可以配置于服务器中。

如图6所示,基于区块链的完整数据溯源装置100包括完整检测模块110、存储模块120、溯源模块130、修复模块140。

完整检测模块110,用于基于边缘计算的融合式数据检测算法对采集数据的进行完整检测;

存储模块120,用于若所述采集数据的检测结果为完整,则将所述采集数据存储至区块链;

溯源模块130,用于若所述采集数据的检测结果为不完整,则对所述采集数据进行溯源,得到所述采集数据的原始数据;

修复模块140,用于根据所述原始数据对所述采集数据进行修复,得到完整数据并将所述完整数据存储到区块链中。

在一实施例中,完整检测模块110包括:

一次融合单元,用于从所述采集数据中选取数据节点,并对每两个所述数据节点进行一次数据融合,并记录融合过程中每个数据节点的子节点数目,得到一次融合数据;

聚集单元,用于基于所述数据节点生成私密种子,将私密种子嵌入所述采集数据,并对所述数据节点进行分片聚集,得到聚集节点;

二次融合单元,用于对所述聚集节点进行二次数据融合,得到二次融合数据;

解密单元,用于通过私密种子对所述二次融合数据中对应的数据节点进行解密,根据解密结果判断所述采集数据是否完整。

在一实施例中,修复模块140包括:

提取单元,用于提取所述采集数据中的不完整数据,并获取所述不完整数据对应的目标节点序列;

获取单元,用于获取所述原始数据的原始节点序列,将所述原始节点序列和目标节点序列进行对比,根据所述原始节点序列确定所述目标节点序列缺失的缺失数据节点;

补偿单元,用于将所述缺失数据节点补偿到所述目标节点序列中。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述的基于区块链的完整数据溯源方法。

在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如上所述的基于基于区块链的完整数据溯源方法。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于云计算的区块链数据处理系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类