基于区块链技术的文件读取和存储的方法、终端设备和存储介质技术

技术编号:22471168 阅读:35 留言:0更新日期:2019-11-06 12:57
本公开涉及一种基于区块链技术的文件读取和存储的方法、终端设备及存储介质。该文件读取方法包括:与第一用户相关的客户端向存储节点网络发送针对待读取文件的文件读取请求消息,其中,待读取文件以多个文件碎片的形式在链下分布式地存储在存储节点网络中;存储节点网络对第一用户的签名与存储节点网络中的第一用户的公钥是否匹配进行共识验证;在验证通过的情况下,存储节点网络向与第一用户相关的客户端发送待读取文件的多个文件碎片;以及与第一用户相关的客户端从接收到的多个文件碎片中还原出待读取文件。从而,提供了一种在存储节点网络中的节点之间的高度安全、数据容量可扩展性高的分享数据文件的方案。

Methods, terminal devices and storage media of file reading and storage based on blockchain Technology

【技术实现步骤摘要】
基于区块链技术的文件读取和存储的方法、终端设备和存储介质
本公开内容总体上涉及数据文件访问的
,包括对数据文件的写入和读取,具体而言,涉及一种基于区块链技术的文件读取和存储的方法、终端设备及计算机可读存储介质。
技术介绍
在当今的信息化社会中,无论是机构还是个人,在计算机网络上任何操作都会产生数据,而这些数据中就包括许多重要又敏感的隐私性数据。隐私性数据例如,个人身份证信息、银行卡号、社会保障卡号、患者的医疗数据(比如CT照片等医学影像数据)、个人在不同网站上的用户名和密码、以及诸如此类的数据。这些数据或者信息通常以文件形式存储在计算机网络中的磁盘或其他外部存储介质上。对于隐私数据存储和管理而言,如何保证存储的安全性和访问的便捷性是隐私数据文件的存储和管理的基本需求。特别对于机构而言,由于不断地有隐私数据文件产生,而且这些文件对存储空间的需求通常较大,因而在存储的安全性和访问的便捷性方面持续存在着改善的需求。另外,在传统的服务器/客户端(C/S)架构或者浏览器/客户端架构中,虽然某些数据被视为是特定用户独享的,例如该用户的账号和密码,但是这些数据的拥有者、承载着这些数据的存储介本文档来自技高网...

【技术保护点】
1.一种基于区块链技术的读取文件的方法,包括:与第一用户相关的客户端向存储节点网络发送针对待读取文件的文件读取请求消息,该文件读取请求消息包括:待读取文件的文件标识符、第一用户的标识符、以及第一用户的签名,其中,所述待读取文件以多个文件碎片的形式在链下分布式地存储在存储节点网络中;所述存储节点网络对所述第一用户的签名与所述存储节点网络中的所述第一用户的公钥是否匹配进行共识验证;在验证通过的情况下,所述存储节点网络向所述与第一用户相关的客户端发送所述待读取文件的所述多个文件碎片;以及所述与第一用户相关的客户端从接收到的多个文件碎片中还原出所述待读取文件。

【技术特征摘要】
1.一种基于区块链技术的读取文件的方法,包括:与第一用户相关的客户端向存储节点网络发送针对待读取文件的文件读取请求消息,该文件读取请求消息包括:待读取文件的文件标识符、第一用户的标识符、以及第一用户的签名,其中,所述待读取文件以多个文件碎片的形式在链下分布式地存储在存储节点网络中;所述存储节点网络对所述第一用户的签名与所述存储节点网络中的所述第一用户的公钥是否匹配进行共识验证;在验证通过的情况下,所述存储节点网络向所述与第一用户相关的客户端发送所述待读取文件的所述多个文件碎片;以及所述与第一用户相关的客户端从接收到的多个文件碎片中还原出所述待读取文件。2.根据权利要求1所述的方法,其中,文件碎片标识符是利用第一用户的公钥进行加密的,加密后的文件碎片标识符存储在区块链上,所述方法进一步包括:与第一用户相关的客户端从存储节点网络上提取出解密后的文件碎片标识符,并向存储节点网络发送解密后的文件碎片标识符;所述存储节点网络向所述与第一用户相关的客户端发送所述待读取文件的所述多个文件碎片的步骤进一步包括:所述存储节点网络根据接收到的文件碎片标识符向所述与第一用户相关的客户端发送所述待读取文件的所述多个文件碎片。3.根据权利要求1所述的方法,其中,所述存储节点网络中的所述待读取文件是利用对称密钥进行加密的,所述对称密钥是利用第一用户的公钥进行加密的,加密后的所述对称密钥存储在区块链上;其中,所述方法进一步包括:所述与第一用户相关的客户端从所述存储节点网络中提取出所述对称密钥,所述与第一用户相关的客户端从接收到的多个文件碎片中还原出所述待读取文件的步骤进一步包括:所述与第一用户相关的客户端利用所述对称密钥对还原出的所述待读取文件进行解密。4.根据权利要求1-3中任一项所述的方法,其中,所述第一用户的标识符是所述第一用户的公钥;或者,所述第一用户的标识符包括所述第一用户的编号和所述第一用户的公钥。5.根据权利要求1-3中任一项所述的方法,进一步包括:对于每一次共识验证,将相关元数据存储在区块链上,和/或将与每个文件碎片相关的元数据存储在区块链上。6.根据权利要求1-3中任一项所述的方法,其中,与每个文件碎片相关的元数据存储在区块链上,所述方法进一步包括:所述与第一用户相关的客户端从所述存储节点网络获取与每个文件碎片相关的元数据,以判断所述文件碎片是否遭受篡改。7.一种基于区块链技术的存储文件的方法,包括:与第二用户相关的客户端将待存储文件划分成多个文件碎片;所述与第二用户相关的客户端向存储节点网络发送针对所述待存储文件的写入操作消息,所述写入操作消息包括:文件碎片、与文件碎片标识符和第一用户的标识符或第二用户相关的标识符相关的信息、以及第二用户的签名,其中,所述第一用户是所述待存储文件的拥有者;所述存储节点网络对所述第二用户的签名与所述存储节点网络中的所述第一用户的公钥是否匹配进行共识验证;以及在验证通过的情况下,将所述多个文件碎片在链下分布式地存储在存储节点网络中。8.根据权利要求7所述的方法,其中所述写入操作消息还包括针对所述待存储文件的写入操作权限令牌,在将所述多个文件碎片在链下分布式地存储在存储节点网络中的步骤之前,所述方法进一步包括:所述区块链节点网络根据收到的所述写入操作权限令牌对第二用户对所述待存储文件的写入权限进行共识验证。9.根据权利要求8所述的方法,其中,所述写入操作权限令牌是从所述第一用户获得的,包括以下各项中的一项或多项:所述待存储文件的文件标识符、第二用户的标识符、以及第一用户的签名;所述待存储文件的文件标识符、第二用户的标识符、第二用户的签名、以及第一用户的签名;所述第二用户的标识符以及所述第一用户的签名;所述第二用户的标识符、所述第二用户的签名、以及所述第一用户的签名;所述待存储文件的文件标识符、所述第二用户的标识符、以及所述第一用户的签名;以及第二用户的标识符以及第一用户的签名。10.根据权利要求7-9中任一项所述的方法,其中,所述在验证通过的情况下、将所述多个文件碎片在链下分布式地存储在存储节点网络中进一步包括:利用所述第一用户的公钥对每个文件碎片标识符进行加密,将加密后的文件碎片标识符存储在第一区块链上。11.根据权利要求7-9中任一项所述的方法,进一步包括:与第二用户相关的客户端生成对称密钥,其中,划分成多个文件碎片的所述待存储文件是利用所述对称密钥加密后的文件,以及利用所述第一用户的公钥对每个文件碎片标识...

【专利技术属性】
技术研发人员:刘芳璐王思喆王怡宁王健
申请(专利权)人:北京健网未来科技有限公司王怡宁王健
类型:发明
国别省市:北京,11

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

1