[发明专利]一种区块链网络的文件存储方法及装置在审
申请号: | 201810902977.0 | 申请日: | 2018-08-09 |
公开(公告)号: | CN109347893A | 公开(公告)日: | 2019-02-15 |
发明(设计)人: | 朱达欣;王宇;蔡鸿志 | 申请(专利权)人: | 玄章技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F16/13;G06F16/172;G06F16/182 |
代理公司: | 北京德恒律治知识产权代理有限公司 11409 | 代理人: | 章社杲;卢军峰 |
地址: | 维尔京群岛托托拉岛路德镇普尔*** | 国省代码: | 维尔京群岛;VG |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 文件块 存储节点 文件存储 哈希运算 区块 文件块存储 存储关系 分配存储 输入文件 固定的 索引 作弊 网络 调度 查询 | ||
本发明公开了一种区块链网络的文件存储方法及装置,该文件存储方法包括:S1,将输入文件划分为多个文件块;S2,建立多个存储节点的索引值与多个存储节点的识别id之间的对应关系;S3,对多个文件块中的一个文件块进行哈希运算,并根据哈希运算的结果和对应关系得到第一识别id;S4,将一个文件块存储至第一识别id对应的第一存储节点上。本发明的上述技术方案提供了一种使用hash值来分配存储节点的方法,因为每个文件块的hash值是固定的、并且是不可更改的,所以对于提交上来的文件,能够简单的查询到对应的存储关系,从而避免了调度上的作弊。
技术领域
本发明涉及区块链技术领域,具体来说,涉及一种区块链网络的文件存储方法及装置。
背景技术
现有区块链系统的存储方法有两种。一种是中心化存储的方法,这种方法会占用很多的IDC(Internet Data Center,互联网数据中心)资源存储,但是因为不是所有文件都是经常被访问,而热门的被访问文件的数量占比其实不高,所以存在很多高性能、高质量的存储空间存储了低效益的文件。另一种存储方法是分布式的P2P存储方法,这种方法价格低廉,但是分享速度慢,并且大部分主机是个人节点,因此流量吞吐性能不好。
目前已有的文件存储方法,在文件分配上,是按机器性能和存储空间去分配,由中心系统按一定的公式去分配,存在着不公平性。对于区块链系统,需要一种文件存储方法,能够公平处理每个业务,并且不受其他手段影响又能简单验证是否公平合理。
发明内容
针对相关技术中的上述问题,本发明提出一种区块链网络的文件存储方法及装置。
本发明的技术方案是这样实现的:
根据本发明的一个方面,提供了一种区块链网络的文件存储方法,包括:
S1,将输入文件划分为多个文件块;
S2,建立多个存储节点的索引值与多个存储节点的识别id之间的对应关系;
S3,对多个文件块中的一个文件块进行哈希运算,并根据哈希运算的结果和所述对应关系得到第一识别id;
S4,将所述一个文件块存储至所述第一识别id对应的第一存储节点上。
根据本发明的实施例,对所述一个文件块进行安全散列算法1(SHA-1)运算。
根据本发明的实施例,步骤S3包括:将所述安全散列算法1运算的多个结果相加得到Mi;取K=Mi mod MaxPP,其中,MaxPP表示所述多个存储节点的数量;将K作为索引值,在所述对应关系中得到所述第一识别id。
根据本发明的实施例,在步骤S2之前还包括:按照各个存储节点加入区块链网络的时间为各个存储节点设置索引值。
根据本发明的实施例,在步骤S4之后还包括:根据哈希运算的结果和所述对应关系得到第二识别id;将所述一个文件块的备份数据存储至所述第二识别id对应的第二存储节点上。
根据本发明的实施例,其中,取Kj=(K+j)mod MaxPP,其中j为大于等于1小于等于MaxPP的整数;将Kj作为索引值,在所述对应关系中得到所述第二识别id;将j份备份数据存储至j个第二存储节点上,所述j个第二存储节点的识别id分别是以K1至Kj作为索引值得到的识别id。
根据本发明的实施例,在步骤S4之后还包括:S5,当多个存储节点中存储的文件的最后访问时间超过预定值时,将所述存储的文件的所有文件块调度至网络主机节点存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于玄章技术有限公司,未经玄章技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810902977.0/2.html,转载请声明来源钻瓜专利网。