1.一种数据持有性验证方法,其特征在于,包括:
发送数据验证通知至存储待检验的数据分块的存储节点;所述数据验证通知包括所述待检验的数据分块的数据标识;
接收所述存储节点根据所述数据标识发送的证明数据;所述证明数据包括所述存储节点中与所述数据标识对应的存储数据,以及根据所述存储数据计算根默克尔哈希的计算路径;
根据所述存储数据和所述计算路径,计算根默克尔哈希,并将计算结果与预设的默克尔树中的根默克尔哈希进行比较;
若根据所述存储数据和所述计算路径计算得到的根默克尔哈希,与所述预设的默克尔树中的根默克尔哈希一致,则判定所述存储节点中的所述存储数据为所述分块数据。
2.如权利要求1所述的数据持有性验证方法,其特征在于,所述发送数据验证通知至存储待检验的数据分块的存储节点之前,还包括:对数据所有者终端的原始数据进行分块,得到至少两个数据分块,并将每个所述数据分块发送至网络中对应的存储节点进行存储;
对每个所述数据分块进行哈希运算,得到根默克尔哈希;
根据每个所述数据分块及其根默克尔哈希构建默克尔树,并存储所述默克尔树。
3.如权利要求1所述的数据持有性验证方法,其特征在于,所述根据所述存储数据和所述计算路径,计算根默克尔哈希,并将计算结果与预设的默克尔树中的根默克尔哈希进行比较之后,还包括:若根据所述存储数据和所述计算路径计算得到的根默克尔哈希,与预设的默克尔树中的根默克尔哈希不同,则判定所述存储节点中的所述存储数据与所述分块数据不一致,并生成验证失败记录;
发送所述验证失败记录和所述存储数据对应的分块数据至所述存储节点,并用所述分块数据替换所述存储节点中验证失败的存储数据。
4.如权利要求2所述的数据持有性验证方法,其特征在于,所述根据每个所述数据分块及其根默克尔哈希构建默克尔树,并存储所述默克尔树,包括:接收所述存储节点发送的存储数据变化请求;所述存储数据变化请求中包括待改动的存储数据和改动之后的存储数据;
根据所述存储数据变化请求,对所述待改动的存储数据和改动之后的存储数据进行验证;
若验证通过,则根据所述改动之后的存储数据重新计算根默克尔哈希;
根据所述改动之后的存储数据以及重新计算得到根默克尔哈希更新所述默克尔树。
5.如权利要求1-4任一项所述的数据持有性验证方法,其特征在于,所述发送数据验证通知至存储待检验的数据分块的存储节点之前,还包括:确定至少一个数据验证终端;所述数据验证终端用于代替数据所有者终端对存储节点中的存储数据进行验证;
发送待验证的存储数据的数据标识至所述数据验证终端,并委托所述数据验证终端对所述数据标识对应的存储数据进行验证。
6.一种终端设备,其特征在于,包括存储器以及处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如下步骤:发送数据验证通知至存储待检验的数据分块的存储节点;所述数据验证通知包括所述待检验的数据分块的数据标识;
接收所述存储节点根据所述数据标识发送的证明数据;所述证明数据包括所述存储节点中与所述数据标识对应的存储数据,以及根据所述存储数据计算根默克尔哈希的计算路径;
根据所述存储数据和所述计算路径,计算根默克尔哈希,并将计算结果与预设的默克尔树中的根默克尔哈希进行比较;
若根据所述存储数据和所述计算路径计算得到的根默克尔哈希,与所述默克尔树中的根默克尔哈希一致,则判定所述存储节点中的所述存储数据为所述分块数据。
7.如权利要求6所述的终端设备,其特征在于,所述发送数据验证通知至存储待检验的数据分块的存储节点之前,还包括:对数据所有者终端的原始数据进行分块,得到至少两个数据分块,并将每个所述数据分块发送至网络中对应的存储节点进行存储;
对每个所述数据分块进行哈希运算,得到根默克尔哈希;
根据每个所述数据分块及其根默克尔哈希构建默克尔树,并存储所述默克尔树。
8.如权利要求6所述的终端设备,其特征在于,所述根据所述存储数据和所述计算路径,计算根默克尔哈希,并将计算结果与预设的默克尔树中的根默克尔哈希进行比较之后,还包括:若根据所述存储数据和所述计算路径计算得到的根默克尔哈希,与预设的默克尔树中的根默克尔哈希不同,则判定所述存储节点中的所述存储数据与所述分块数据不一致,并生成验证失败记录;
发送所述验证失败记录和所述存储数据对应的分块数据至所述存储节点,并用所述分块数据替换所述存储节点中验证失败的存储数据。
9.一种终端设备,其特征在于,包括:
发送单元,用于发送数据验证通知至存储待检验的数据分块的存储节点;所述数据验证通知包括所述待检验的数据分块的数据标识;
接收单元,用于接收所述存储节点根据所述数据标识发送的证明数据;所述证明数据包括所述存储节点中与所述数据标识对应的存储数据,以及根据所述存储数据计算根默克尔哈希的计算路径;
计算单元,用于根据所述存储数据和所述计算路径,计算根默克尔哈希,并将计算结果与预设的默克尔树中的根默克尔哈希进行比较;
判定单元,用于若根据所述存储数据和所述计算路径计算得到的根默克尔哈希,与所述默克尔树中的根默克尔哈希一致,则判定所述存储节点中的所述存储数据为所述分块数据。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。