[发明专利]基于区块链的数据完整性验证方法、设备和存储介质有效
申请号: | 201910329009.X | 申请日: | 2019-04-23 |
公开(公告)号: | CN110163007B | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 张应辉;徐永庆;吴阿新;张甜甜;邹健;郭瑞;郑东 | 申请(专利权)人: | 西安邮电大学 |
主分类号: | G06F21/64 | 分类号: | G06F21/64;G06F21/62;G06F21/60 |
代理公司: | 深圳国海智峰知识产权代理事务所(普通合伙) 44489 | 代理人: | 王庆海;刘军锋 |
地址: | 710121 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 数据 完整性 验证 方法 设备 存储 介质 | ||
本申请提供一种基于区块链的数据完整性验证方法。该方法包括:用户终端对数字资产文件进行加密和时间戳,分割为数据块,将分割的数据块作为Merkle树的叶子节点生成认证路径,并将根节点的哈希值保存到服务器端的区块链单元,并将带有时间戳的数字资产文件发送到服务器端保存,将待验证的叶子节点和标签发送到服务器端,服务器端将根据标签和叶子节点检索的该叶子节点的认证路径,在用户终端根据本地保存的叶子节点和服务器返回的认证路径生成数字签名,根据数据签名与区块链单元存储的数据段值对数字资产文件的完整性进行验证。本申请的方法,将用户终端的Merkle树的根节点的哈希值保存到区块链,实现了对用户私钥的无信任保护。
技术领域
本发明涉及数据处理,更为具体而言,涉及一种基于区块链的数据完整性验证方法、设备和存储介质。
背景技术
伴随着信息通信和处理技术的高速发展,进入了云计算时代。网络会计、办公自动化、电子支付系统平台等使数字资产的应用愈加广泛。数字资产是具有开创性的、依托磁性介质而存在的一连串“0”和“1”的代码。它们虽是数字化商品,却体现出资产的性质,因此称为数字资产。数字资产的出现,颠覆了传统资产的观念,使得企业结构和个人能够方便快捷地通过网络享受到数字化时代的服务,极大地减少了资产所占用的空间,节约了大量人力物力。数字资产在带给人们便捷的同时也带来了一些安全问题。原来局限在自己统辖范围内的财产现在暴露在互联网上,并且这些资源和数据放到了第三方云存储提供商所在的共享公共网络上,不再被本地用户拥有。用户通过网络支配自己的财产,有可能在存储和通信过程中遭到未授权的第三方篡改。怎样让用户确信他们的数据完整的存放在云端以及保证拒绝第三方访问是数字资产保护必须要解决的一个问题。
发明内容
本申请提供了一种基于区块链的数据完整性验证方法、设备和存储介质,基于编号寻径的Merkle树数据完整性检测算法来求解节点的数据完整性证明信息,能够提高认证路径求解的效率,降低求解的运算量;目前用户缺乏行之有效的存储私钥的方法,将用户的数字签名存储到云端区块链上,实现了对用户私钥的无信任保护。
本申请实施方式的第一方面,提供一种基于区块链的数据完整性验证方法,包括:用户终端对数字资产文件进行加密,将当前时间保存到加密后的数字资产文件的预定位置,然后将修改后的数字资产文件进行对称加密,得到密文,将所述数字资产文件的预定位置的时间信息和所述数字资产文件的文件名称作为所述数字资产文件的标签保存;将所述密文分割为九个加密文件块,将所述九个加密文件块根据预定算法生成Merkle树的叶子节点,生成叶子节点的认证路径,将Merkle树的根节点root的哈希值发送到服务器端作为数据段值保存到所述服务器端的区块链单元;将修改后的数字资产文件发送到所述服务器端,以便所述服务器端读取所述修改后的数字资产文件的所述预定位置中的时间信息,以从所述预定位置中获取的时间信息和所述修改后的数字资产文件的文件名称作为标签存储到所述服务器端的数据库;将本地保存的所述Merkle树的叶子节点中的第一叶子节点信息和所述数字资产文件的标签发送到所述服务器端,以便所述服务器端根据所述标签检索所述数据库得到对应的数字资产文件,将检索得到的数字资产文件根据所述预定算法生成Merkle树的叶子节点,并根据所述第一叶子节点信息在所述服务器端生成的Merkle树的叶子节点中确定对应的叶子节点的认证路径;接收所述服务器端返回的对应的叶子节点的认证路径,根据所述对应的叶子节点的认证路径与从所述区块链单元检索的数据段值确定所述数字资产文件的完整性。
在一些实施方式中,所述将所述九个加密文件块根据预定算法生成Merkle树的叶子节点,生成叶子节点的认证路径包括:
a,记录Merkle树叶子节点的总数目和要求解认证路径的叶子节点的编号;
b,初始化叶子节点编号k,令k等于要求解认证路径的叶子节点的编号;初始化记录Merkle树中每一层的开始的编号startIndex,令startIndex=0;初始化节点总数count,令其等于Merkle树中所有叶子节点的数目;初始化存储叶子节点认证路径的数组certifyPath,令为空;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安邮电大学,未经西安邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910329009.X/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置