CN110968554A - 一种基于文件链分块的区块链存储方法、存储系统及存储介质 - Google Patents
一种基于文件链分块的区块链存储方法、存储系统及存储介质 Download PDFInfo
- Publication number
- CN110968554A CN110968554A CN201811156231.6A CN201811156231A CN110968554A CN 110968554 A CN110968554 A CN 110968554A CN 201811156231 A CN201811156231 A CN 201811156231A CN 110968554 A CN110968554 A CN 110968554A
- Authority
- CN
- China
- Prior art keywords
- file
- storage
- block
- chain
- hash
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000006870 function Effects 0.000 claims abstract description 6
- 230000000903 blocking effect Effects 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 4
- 238000000638 solvent extraction Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000004936 stimulating effect Effects 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于文件链分块的区块链存储方法、存储系统及存储介质。本发明主要工作流程为:通过系统文件上传至系统;文件进行分块,文件分块后,通过哈希加密,得到文件块的哈希值;通过分块的哈希指纹与存储节点进行异或操作,寻址分散到对应的存储节点;根据文件的信息,生成文件描述内容,建立文件的索引文件;索引文件插入到文件链条中,本发明创新性提出了文件链的存储方式,文件以链式存储的方式分散在多存储节点中,达到了分布式容灾、不可篡改、版本追踪等功能,是新一代的优质存储方式。
Description
技术领域
本发明涉及一种基于文件链分块的区块链存储方法、存储系统及存储介质,属于区块链技术领域。
背景技术
当今区块链的发展主要基于两个方面的背景,一是当今区块链的广泛前景;二是区块链在存储领域中新型发展。
区块链技术也称为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据库记录,通过网络使用每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在网络中的各个角落。
目前,区块链被应用于金融财务行业,在提供不可篡改和建立信任机制中发挥重要作用。随着技术的发展,一些区块链应用被开发出来,极大的刺激的区块链行业的发展。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于文件链分块的区块链存储方法、存储系统及存储介质,用于解决现有技术中现有的区块链技术,例如以太坊,每个节点都存储了全量的交易信息,导致每个节点体积过于庞大;在整个链上,同样的数据几乎被每个节点冗余,使得整个链对于磁盘要求越来越高;现有的区块链中,每个节点有着全量的数据,导致在生成共识的时候,必须采用工作量证明的方式达成一致;在存储领域,暂无对文件进行的追溯机制等问题。本发明提供一种基于文件链分块的区块链存储方法,所述基于文件链分块的区块链存储方法包括以下步骤:
上传文件;
将文件切分为多个文件块;并对每一个文件块进行哈希加密,得到其对应的哈希指纹;
将文件块分散到对应存储节点;
建立文件块的索引文件;
将索引文件插入到文件链中。
所述文件是按照文件大小切分为多个文件块。
所述文件大小为1024个字节。
所述的将文件块分散到对应存储节点的步骤包括:对于每一个文件块,计算文件块与多个存储节点间的距离,选择距离最小的存储节点进行存储。
所述的建立文件的索引文件的方法为:根据切分后的文件块以及其对应的存储节点,生成文件描述内容,建立文件块的索引文件。
一种基于文件链分块的区块链存储系统,所述基于文件链分块的区块链存储系统包括:
接口层,用于操作整个存储系统;
核心逻辑层,用于对文件进行分块、哈希加密以及建立索引文件作用;
存储节点层,用于对文件块进行存储。
所述的核心逻辑层包括:
哈希分块模块:对数据进行切分,每1024个字节为1块,并对这一块进行哈希运算,得到当前块的哈希指纹;
分发模块:对文件块进行分发,首先对当前文件块进行寻址,计算当前节点与存储节点距离,选择距离最小的一些节点进行存储;
文件链模块:接收文件块内容,生成对应的文件描述内容,建立文件块的索引文件。
所述的索引文件包括4个部分:前一个文件的哈希值(previous)、当前文件的哈希值(Hash)、文件描述内容(MetaData)、数据哈希(DataHash)。
一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述基于文件链分块的区块链存储方法的步骤。
一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述程序时实现如上所述基于文件链分块的区块链存储方法的步骤。
如上所述,本发明的一种基于文件链分块的区块链存储方法、存储系统及存储介质,具有以下有益效果:
本发明与现有的区块链等技术相比,例如以太坊,本发明能有效的节约单节点的负载,解决了区块链中每个节点备份全量数据的问题,同时对数据文件进行切分,加密存储在多个节点中,有效的保护了数据的安全,并且,在存储领域,创新性提出了文件链的存储方式,文件以链式存储的方式分散在多存储节点中,达到了分布式容灾、不可篡改、版本追踪等功能,是新一代的优质存储方式。
附图说明
图1显示为本发明实施例中一种基于文件链分块的区块链存储方法的流程示意图。
图2显示为本发明实施例中一种基于文件链分块的区块链存储系统的功能模块示意图。
图3显示为本发明实施例中一种基于文件链分块的区块链存储方法的文件分块原理示意图。
图4显示为本发明实施例中一种基于文件链分块的区块链存储方法中索引文件的原理结构示意图。
图5显示为本发明实施例中一种基于文件链分块的区块链存储方法中文件块分散加密存储示意图。
图6显示为本发明实施例中一种基于文件链分块的区块链存储方法中文件寻址存储示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
请参阅图1,本发明提供一种基于文件链分块的区块链存储方法的流程示意图。
如图1所示,本发明中一种基于文件链分块的区块链存储方法包括以下步骤:
上传文件;
将文件切分为多个文件块;并对每一个文件块进行哈希加密,得到其对应的哈希指纹;
将文件块分散到对应存储节点;
建立文件块的索引文件;
将索引文件插入到文件链中。
所述文件是按照文件大小切分为多个文件块。
所述文件大小为1024个字节。
所述的将文件块分散到对应存储节点的步骤包括:对于每一个文件块,计算文件块与多个存储节点间的距离,选择距离最小的存储节点进行存储。
所述的建立文件的索引文件的方法为:根据切分后的文件块以及其对应的存储节点,生成文件描述内容,建立文件块的索引文件。
请参阅图2,本发明提供一种基于文件链分块的区块链存储系统的功能模块示意图。
如图2所示,本发明中一种基于文件链分块的区块链存储系统包括:
接口层,用于操作整个存储系统;
核心逻辑层,用于对文件进行分块、哈希加密以及建立索引文件作用;
存储节点层,用于对文件块进行存储。
所述的核心逻辑层包括:
哈希分块模块:对数据进行切分,每1024个字节为1块,并对这一块进行哈希运算,得到当前块的哈希指纹;
分发模块:对文件块进行分发,首先对当前文件块进行寻址,计算当前节点与存储节点距离,选择距离最小的一些节点进行存储;
文件链模块:接收文件块内容,根据文件信息生成对应的文件描述内容,建立文件块的索引文件。
所述的索引文件包括4个部分:前一个文件的哈希值(previous)、当前文件的哈希值(Hash)、文件描述内容(MetaData)、数据哈希(DataHash)。
请参阅图3,本发明提供一种基于文件链分块的区块链存储方法的文件分块原理示意图。
如图3所示,通过哈希分块模块,对文件按照文件大小进行切分。优选地,每1024个字节为1块。并对切分后的文件块进行哈希运算,得到当前文件块的哈希指纹。优选采用如下方式进行哈希指纹的计算:
blockHash=sha256(block content);
其中,block content表示数据内容。
请参阅图4,本发明提供一种基于文件链分块的区块链存储方法中索引文件的原理结构示意图。
如图4所示,通过文件链模块,接收到文件内容,生成对应的文件描述内容,建立文件的索引文件,索引文件包括4个部分:前一个文件的哈希值(previous)、当前文件的哈希值(Hash)、文件描述内容(MetaData)、数据哈希(DataHash)。
在本发明的一较佳实施例中,前一个文件的哈希值(previous)、当前文件的哈希值(Hash)、文件描述内容(MetaData)和数据哈希(DataHash)可通过如下公式进行计算:
DataHash=sha256(blockhash+blockhash);
MetaDataHash=sha256(md5(content)+md5(size)+md5(timestamp));
Hash=sha256(previous+metaDataHash+DataHash);
其中,content为数据内容;size为数据大小;timestamp为上传时间。
通过文件链模块,将当前文件块的索引文件加入到文件链中,成为当前文件链中的最新版本,形成最新的、可追溯的、不可篡改的文件链。
请参阅图5,本发明提供一种基于文件链分块的区块链存储方法中文件块分散加密存储示意图。
如图5所示,通过分发模块,对文件块块进行分发,首先对当前文件块进行寻址,计算当前节点与存储节点距离,选择距离最小的节点进行存储。在本发明的一较佳实施例中,距离最小节点是通过下述公式计算的:
其中,StoreNodeHash表示存储节点的哈希值。
请参阅图6,本发明提供一种基于文件链分块的区块链存储方法中文件寻址存储示意图。
如图6所示,通过分块的哈希指纹与存储节点进行异或操作,将文件快寻址分散到对应的存储节点。
综上所述,本发明与现有的区块链等技术相比,例如以太坊,本发明能有效的节约单节点的负载,解决了区块链中每个节点备份全量数据的问题,同时对数据文件进行切分,加密存储在多个节点中,有效的保护了数据的安全,并且,在存储领域,创新性提出了文件链的存储方式,文件以链式存储的方式分散在多存储节点中,达到了分布式容灾、不可篡改、版本追踪等功能,是新一代的优质存储方式。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种基于文件链分块的区块链存储方法,其特征在于,所述基于文件链分块的区块链存储方法包括以下步骤:
上传文件;
将文件切分为多个文件块;并对每一个文件块进行哈希加密,得到其对应的哈希指纹;
将文件块分散到对应存储节点;
建立文件块的索引文件;
将索引文件插入到文件链中。
2.根据权利要求1所述的基于文件链分块的区块链存储方法,其特征在于:所述文件是按照文件大小切分为多个文件块。
3.根据权利要求1所述的基于文件链的区块链存储方法,其特征在于:所述文件大小为1024个字节。
4.根据权利要求1所述的基于文件链分块的区块链存储方法,其特征在于:所述的将文件块分散到对应存储节点的步骤包括:对于每一个文件块,计算文件块与多个存储节点间的距离,选择距离最小的存储节点进行存储。
5.根据权利要求1所述的基于文件链分块的区块链存储方法,其特征在于:所述的建立文件的索引文件的方法为:根据切分后的文件块以及其对应的存储节点,生成文件描述内容,建立文件块的索引文件。
6.一种基于文件链分块的区块链存储系统,其特征在于,所述的基于文件链分块的区块链存储系统包括:
接口层,用于操作整个存储系统;
核心逻辑层,用于对文件进行分块、哈希加密以及建立索引文件作用;
存储节点层,用于对文件块进行存储。
7.根据权利要求5所述的基于文件链分块的区块链存储系统,其特征在于:所述的核心逻辑层包括:
哈希分块模块:对数据进行切分,每1024个字节为1文件块,并对这一文件块进行哈希运算,得到当前文件块的哈希指纹;
分发模块:对文件块进行分发,首先对当前文件块进行寻址,计算当前节点与存储节点距离,选择距离最小的节点进行存储;
文件链模块:接收文件块内容,根据文件的信息生成对应的文件描述内容,建立文件块的索引文件。
8.根据权利要求5所述的基于文件链分块的区块链存储系统,其特征在于:所述的索引文件包括4个部分:前一个文件的哈希值、当前文件的哈希值、文件描述内容、数据哈希。
9.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5所述方法的步骤。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述程序时实现权利要求1-5所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811156231.6A CN110968554A (zh) | 2018-09-30 | 2018-09-30 | 一种基于文件链分块的区块链存储方法、存储系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811156231.6A CN110968554A (zh) | 2018-09-30 | 2018-09-30 | 一种基于文件链分块的区块链存储方法、存储系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110968554A true CN110968554A (zh) | 2020-04-07 |
Family
ID=70028749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811156231.6A Pending CN110968554A (zh) | 2018-09-30 | 2018-09-30 | 一种基于文件链分块的区块链存储方法、存储系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110968554A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699081A (zh) * | 2020-10-23 | 2021-04-23 | 中国工商银行股份有限公司 | 基于区块链的文件自证方法及装置 |
CN112769932A (zh) * | 2021-01-04 | 2021-05-07 | 北京环境特性研究所 | 基于区块链与数据分离的分布式云存储系统 |
CN113378200A (zh) * | 2021-06-28 | 2021-09-10 | 江苏翔晟信息技术股份有限公司 | 基于分离式存储的电子合同文件的分组加密系统及方法 |
US11128440B2 (en) * | 2019-10-29 | 2021-09-21 | Samsung Sds Co., Ltd. | Blockchain based file management system and method thereof |
CN113821820A (zh) * | 2021-11-22 | 2021-12-21 | 北京优锘科技有限公司 | 资源以切分方式进行加解密的方法、装置、介质和设备 |
US11288663B1 (en) | 2021-06-25 | 2022-03-29 | Arri E. Manuel | Blockring service, system, and method thereof |
CN114726884A (zh) * | 2022-06-06 | 2022-07-08 | 深圳市佑荣信息科技有限公司 | 一种金融级文件安全存储方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107249046A (zh) * | 2017-08-15 | 2017-10-13 | 李俊庄 | 一种基于区块链的分布式云存储系统构建方法 |
US20180025181A1 (en) * | 2016-07-21 | 2018-01-25 | Acronis International Gmbh | System and method for verifying data integrity using a blockchain network |
CN108062202A (zh) * | 2017-12-15 | 2018-05-22 | 中链科技有限公司 | 一种文件分块存储方法及系统 |
-
2018
- 2018-09-30 CN CN201811156231.6A patent/CN110968554A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180025181A1 (en) * | 2016-07-21 | 2018-01-25 | Acronis International Gmbh | System and method for verifying data integrity using a blockchain network |
CN107249046A (zh) * | 2017-08-15 | 2017-10-13 | 李俊庄 | 一种基于区块链的分布式云存储系统构建方法 |
CN108062202A (zh) * | 2017-12-15 | 2018-05-22 | 中链科技有限公司 | 一种文件分块存储方法及系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11128440B2 (en) * | 2019-10-29 | 2021-09-21 | Samsung Sds Co., Ltd. | Blockchain based file management system and method thereof |
CN112699081A (zh) * | 2020-10-23 | 2021-04-23 | 中国工商银行股份有限公司 | 基于区块链的文件自证方法及装置 |
CN112699081B (zh) * | 2020-10-23 | 2024-01-26 | 中国工商银行股份有限公司 | 基于区块链的文件自证方法及装置 |
CN112769932A (zh) * | 2021-01-04 | 2021-05-07 | 北京环境特性研究所 | 基于区块链与数据分离的分布式云存储系统 |
CN112769932B (zh) * | 2021-01-04 | 2023-01-20 | 北京环境特性研究所 | 基于区块链与数据分离的分布式云存储系统 |
US11288663B1 (en) | 2021-06-25 | 2022-03-29 | Arri E. Manuel | Blockring service, system, and method thereof |
CN113378200A (zh) * | 2021-06-28 | 2021-09-10 | 江苏翔晟信息技术股份有限公司 | 基于分离式存储的电子合同文件的分组加密系统及方法 |
CN113378200B (zh) * | 2021-06-28 | 2022-02-22 | 江苏翔晟信息技术股份有限公司 | 基于分离式存储的电子合同文件的分组加密系统及方法 |
CN113821820A (zh) * | 2021-11-22 | 2021-12-21 | 北京优锘科技有限公司 | 资源以切分方式进行加解密的方法、装置、介质和设备 |
CN114726884A (zh) * | 2022-06-06 | 2022-07-08 | 深圳市佑荣信息科技有限公司 | 一种金融级文件安全存储方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110968554A (zh) | 一种基于文件链分块的区块链存储方法、存储系统及存储介质 | |
KR102240557B1 (ko) | 데이터 저장 방법, 장치 및 시스템 | |
US20150370872A1 (en) | Embeddable cloud analytics | |
US11171774B2 (en) | System for synchronizing a cryptographic key state through a blockchain | |
CN103970585A (zh) | 创建虚拟机的方法及装置 | |
US11093387B1 (en) | Garbage collection based on transmission object models | |
CN104881466B (zh) | 数据分片的处理以及垃圾文件的删除方法和装置 | |
CN113168652B (zh) | 区块链交易处理系统和方法 | |
US8825653B1 (en) | Characterizing and modeling virtual synthetic backup workloads | |
US11360856B2 (en) | Manifest index for block-level snapshots | |
US11029851B2 (en) | Sub-block modifications for block-level snapshots | |
CN103593477A (zh) | 一种哈希数据库的配置方法和装置 | |
US11016671B2 (en) | Snapshot block storage path structure wherein identification of blocks that are identical between two snapshots are determined without performing block by block comparison between the two snapshots | |
CN109144406A (zh) | 分布式存储系统中元数据存储方法、系统及存储介质 | |
CN111966631A (zh) | 一种可快速分发的镜像文件生成方法、系统、设备和介质 | |
Merceedi et al. | A comprehensive survey for hadoop distributed file system | |
US10162876B1 (en) | Embeddable cloud analytics | |
CN107798063B (zh) | 快照处理方法和快照处理装置 | |
US10262000B1 (en) | Global distributed file append using log-structured file system | |
CN107463638A (zh) | 离线虚拟机间文件共享方法和设备 | |
CN116842012A (zh) | 一种Redis集群的分片存储方法、装置、设备及存储介质 | |
CN102831240B (zh) | 扩展元数据文件的存储方法和存储结构 | |
US11556659B1 (en) | Partially encrypted snapshots | |
Cheng et al. | A practical cross-datacenter fault-tolerance algorithm in the cloud storage system | |
Huang et al. | Resource provisioning with QoS in cloud storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200407 |
|
RJ01 | Rejection of invention patent application after publication |