基于区块链的数据完整性验证方法、终端设备和存储介质技术

技术编号:26376330 阅读:34 留言:0更新日期:2020-11-19 23:45
本公开的实施例公开了基于区块链的数据完整性验证方法、终端设备和存储介质。该方法的一具体实施方式包括:接收目标用户发来的目标数据块编号集合;基于目标数据块编号集合,确定原始数据块标签值集合;将目标数据块编号集合发送至第一终端;接收第一终端返回的目标数据块标签值集合;基于目标数据块标签值集合和原始数据块标签值集合,验证目标数据块完整性。这种方法利用数据块集合对应的唯一标签值集合判断数据块的完整性,无需暴露数据块中的数据信息。此外,利用区块链的智能合约监控并发布完整性变化情况,及时发出数据篡改警告信息,从而实现高效、准确的数据完整性监控,保护基于区块链存储数据的安全。

【技术实现步骤摘要】
基于区块链的数据完整性验证方法、终端设备和存储介质
本公开实施例涉及区块链领域,具体涉及一种基于区块链的数据存储验证方法。
技术介绍
云存储等中心化存储系统为海量数据的存储提供了解决方案,为用户存储和处理数据带来了极大的便利。通过引入区块链,进一步实现了去中心化的分布式存储,提升了分布式存储的性能。在基于区块链存储的系统中,传统方法仍然是基于加密的方法进行存储,从而保证数据存储的安全性和完整性。此外,在去中心化的区块链中引入第三方审计机构,可以经由审计机构判断存储数据是否存在被篡改、遭受恶意攻击等问题。然而,基于区块链的云存储中数据的所有权和管理权分离,导致用户数据隐私泄露、完整性破坏等一系列安全问题。第一,基于区块链的存储服务提供商可能私自删除用户很少使用的数据,或者为了自身声誉,刻意隐瞒意外的数据破坏、篡改。基于区块链的存储中心也可能遭到恶意攻击,导致数据破坏、敏感数据丢失,使得数据完整性遭到破坏。直接通过数据比对或加密数据比对的方式判断数据完整性,存在暴露数据信息的风险。第二,依赖于第三方审计机构的数据完整性验证,本文档来自技高网...

【技术保护点】
1.一种基于区块链的数据完整性验证方法,包括:/n接收目标用户发来的目标数据块编号集合;/n基于所述目标数据块编号集合,确定原始数据块标签值集合;/n将所述目标数据块编号集合发送至第一终端,其中,所述第一终端基于所述目标数据块编号集合生成目标数据块标签值集合;/n接收所述第一终端返回的所述目标数据块标签值集合;/n基于所述目标数据块标签值集合和所述原始数据块标签值集合,验证所述目标数据块完整性。/n

【技术特征摘要】
1.一种基于区块链的数据完整性验证方法,包括:
接收目标用户发来的目标数据块编号集合;
基于所述目标数据块编号集合,确定原始数据块标签值集合;
将所述目标数据块编号集合发送至第一终端,其中,所述第一终端基于所述目标数据块编号集合生成目标数据块标签值集合;
接收所述第一终端返回的所述目标数据块标签值集合;
基于所述目标数据块标签值集合和所述原始数据块标签值集合,验证所述目标数据块完整性。


2.根据权利要求1所述的方法,其中,在所述接收目标用户发来的目标数据块编号集合之前,还包括:
生成公钥和私钥;
将原始数据切分为第一数目个原始数据块,得到原始数据块集合;
对于所述原始数据块集合中的每个原始数据块,利用下式,生成该原始数据块的标签值,以得到所述原始数据块标签值集合:



其中,H()为哈希函数,H:{0,1}*→G1,G1为利用素数p生成的乘法循环群,g1为G1的生成元,u=g1a,u为g1的a次幂,a为任意整数,h()为哈希函数,h:{0,1}*→Zp,Zp是素数p上的域,x表示所述私钥,m表示原始数据块,i为原始数据块计数,mi为第i个原始数据块,表示u的h(mi)次幂,t表示时间戳,ti表示该原始数据块的时间戳,b表示块编号,bi表示该原始数据块的块编号,σ表示原始数据块标签值,σi表示第i个原始数据块标签值。


3.根据权利要求1-2之一所述的方法,其中,所述基于所述目标数据块标签值集合和所述原始数据块标签值集合,验证所述目标数据块完整性,包括:
基于所述原始数据块标签值集合,确定挑战标签值集合;
利用下式,生成证据码:
p=l(B,v)·...

【专利技术属性】
技术研发人员:刘国庆
申请(专利权)人:宁波富万信息科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1