The present invention discloses the method and device, distributed storage block chain based on distributed storage method based on block chain, which comprises the following steps: the need to store the data generated by the Lord Hashige hash algorithm; sending data to the storage node address storage; data is divided into a plurality of binary for each binary block; block by hash algorithm to generate sub Hashige; binary block is sent to the backup node address and a binary backup; the corresponding sub block hash value, the backup node address and hash value and storage node address generation block; block by corresponding to the binary block sorting relationship are connected to form a chain block, and will send to all nodes chain block storage and backup. In the invention, the stored data is stored and backed up so as to improve the security of the data. Later, the consistency of storage can be guaranteed by hash values.
【技术实现步骤摘要】
基于区块链的分布式存储方法及设备
本专利技术涉及数据存储领域,具体而言,涉及基于区块链的分布式存储方法及设备。
技术介绍
目前主要的数据存储是将数据存储于本地硬盘或网络服务器中,而本地硬盘需要用户购置硬盘硬件,而且硬盘容易损毁或丢失,从而容易造成数据的丢失。将数据存储在网络服务器上,不仅需要昂贵的额外设备,如主机总线适配器、磁盘阵列,还需要额外的场地及能量消耗,当灾难发生时还容易造成数据的丢失。
技术实现思路
有鉴于此,本专利技术提供的基于区块链的分布式存储方法及设备,其目的在于提高用户数据存储的安全性,并且可以保证存储的数据的一致性。基于区块链的分布式存储方法,其包括以下步骤:将需要存储的数据通过哈希算法生成主哈希值;将所述数据发送至储存节点地址进行存储;将所述数据分为多个二进制块;对每一所述二进制块通过哈希算法生成子哈希值;将所述二进制块发送至备份节点地址进行备份;将与一所述二进制块对应的所述子哈希值、所述备份节点地址、所述主哈希值及所述储存节点地址生成一区块;所述区块间按与其对应的所述二进制块间的排序关系进行连接形成区块链,并将所述区块链发送至所有节点进行存储及备份。进一步地,所述储存节点地址为多个。进一步地,所述主哈希值为64位哈希值。进一步地,所述子哈希值为64位哈希值。进一步地,还包括以下步骤:获取存储的数据;所述获取存储的数据具体包括:获取所述区块链;获取存储于所述区块链中的任意一所述区块,并进一步获取记录于所述区块中的所述储存节点地址;通过所述储存节点地址获取储存于该储存节点地址的数据;对通过所述储存节点地址获取的所述数据进行哈希计算,并将得到 ...
【技术保护点】
基于区块链的分布式存储方法,其特征在于,包括以下步骤:将需要存储的数据通过哈希算法生成主哈希值;将所述数据发送至储存节点地址进行存储;将所述数据分为多个二进制块;对每一所述二进制块通过哈希算法生成子哈希值;将所述二进制块发送至备份节点地址进行备份;将与一所述二进制块对应的所述子哈希值、所述备份节点地址、所述主哈希值及所述储存节点地址生成一区块;所述区块间按与其对应的所述二进制块间的排序关系进行连接形成区块链,并将所述区块链发送至所有节点进行存储及备份。
【技术特征摘要】
1.基于区块链的分布式存储方法,其特征在于,包括以下步骤:将需要存储的数据通过哈希算法生成主哈希值;将所述数据发送至储存节点地址进行存储;将所述数据分为多个二进制块;对每一所述二进制块通过哈希算法生成子哈希值;将所述二进制块发送至备份节点地址进行备份;将与一所述二进制块对应的所述子哈希值、所述备份节点地址、所述主哈希值及所述储存节点地址生成一区块;所述区块间按与其对应的所述二进制块间的排序关系进行连接形成区块链,并将所述区块链发送至所有节点进行存储及备份。2.根据权利要求1所述的基于区块链的分布式存储方法,其特征在于,所述储存节点地址为多个。3.根据权利要求1所述的基于区块链的分布式存储方法,其特征在于,所述主哈希值为64位哈希值。4.根据权利要求1所述的基于区块链的分布式存储方法,其特征在于,所述子哈希值为64位哈希值。5.根据权利要求1所述的基于区块链的分布式存储方法,其特征在于,还包括以下步骤:获取存储的数据;所述获取存储的数据具体包括:获取所述区块链;获取存储于所述区块链中的任意一所述区块,并进一步获取记录于所述区块中的所述储存节点地址;通过所述储存节点地址获取储存于该储存节点地址的数据;对通过所述储存节点地址获取的所述数据进行哈希计算,并将得到的哈希值与记录于所述区块中的主哈希值进行验证;若验证结果为哈希值一致,则获取所述储存节点地址储存的所述数据;若验证结果为哈希值不一致,则该储存节点地址失效,并重新获取排列于所述区块链中的第一个区块;通过所述区块获取储存于所述区块中的备份节点地址,并通过所述备份节点地址接收与该区块对应的二进制块;对所述二进制块进行哈希计算,得到其对应的子哈希值,并将所述子哈希值与记录于所述区块中的所述子哈希值进行验证;若验证结果为子哈希值一致,则对得到的所述二进制块进行哈希算法计算,得到哈希值;判断所述哈希值与所述主哈希值是否一致;若判断结果为不一致,则继续获取后一位的区块,并通过获取的区块中备份节点获取二进制块;当通过后一位的区块所得到的二进制块进行子哈希值的验证通过时,对当前获得的所有二进制块进行哈希计算,直到当前获得的所有二进制块进行哈希计算得到的哈希值等于所述主哈希值;基于当前获得的所有二进制块得到存储的数据。6.基于区块链的分布式存储设备,其特...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。