CN117349880A - 一种基于区块链的分布式数据存储与记录方法 - Google Patents
一种基于区块链的分布式数据存储与记录方法 Download PDFInfo
- Publication number
- CN117349880A CN117349880A CN202311173435.1A CN202311173435A CN117349880A CN 117349880 A CN117349880 A CN 117349880A CN 202311173435 A CN202311173435 A CN 202311173435A CN 117349880 A CN117349880 A CN 117349880A
- Authority
- CN
- China
- Prior art keywords
- block
- data
- new
- hash value
- blockchain
- 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 37
- 238000013500 data storage Methods 0.000 title claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 9
- 230000011218 segmentation Effects 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 4
- 238000005192 partition Methods 0.000 claims description 3
- 230000008521 reorganization Effects 0.000 claims description 3
- 230000004308 accommodation Effects 0.000 claims 1
- 238000007726 management method Methods 0.000 abstract description 2
- 230000007246 mechanism Effects 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000002688 persistence Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/137—Hash-based
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于区块链的分布式数据存储与记录方法。该方法通过建立具备时间戳和数据容量控制机制的区块链网络,实现对大量数据的实时、安全和持久的存储与管理。具体步骤包括:创建初始区块,并生成区块链;基于预设的区块数据容量阈值将待记录的数据按容量进行分割;当待记录的数据分块满足预设阈值时,将其写入新区块,并链接到区块链;加入时间戳,确保记录数据的时效性和顺序性;通过数据哈希值计算新区块的哈希值与前一区块的哈希值链接,维护区块链的完整性。本发明利用区块链的不可篡改和去中心化特性,保证了数据的完整性和安全性,而且可以有效应对大数据环境下数据记录与存储的挑战。
Description
技术领域
本发明属于数据存储领域,更具体的说涉及一种基于区块链的分布式数据存储与记录方法。
背景技术
区块链技术起始于比特币,作为一种去中心化分布式账本数据库技术,它通过时间戳、哈希算法等确保了交易数据的安全可信。区块链数据的不可篡改性以及透明性使得它在很多领域都有潜在的应用价值。然而,现有的区块链技术主要是针对小型的交易数据设计的,并无法很好地处理大数据。
现有技术的缺点:
数据容量限制:现有的大多数区块链技术,如比特币,以太坊等,每个区块的数据容量都有严格的限制。例如,比特币的区块大小上限为1MB。这样的设计在处理小型的、离散的交易数据时无疑是合适的,然而在需要处理大数据时却显得力不从心。
数据完整性和持久性:大量的数据如果被分割存储,就需要有一种机制保证数据的完整性和持久性。现有的区块链技术在这方面并未给出足够好的解决方案。
大数据处理:现有的区块链技术主要是面向交易处理,并未对大数据的存储、处理和检索提供直接的支持和解决方案。
发明内容
本发明基于区块链的分布式数据存储与记录方法突破了现有区块链技术的局限。不仅对大数据进行了有效地处理,提出了预设的区块数据容量阈值,使得每个区块能够容纳更大的数据量;而且提出了将大数据文件进行分块,然后将分块的数据依次写入区块链中,保证了数据的完整性和持久性;同时,利用时间戳和哈希函数进一步确保了数据的安全性。使得其能在大数据环境中更好地发挥区块链技术的优势。
为了实现上述目的,本发明是采用以下技术方案实现的:所述的方法采用以下步骤:
步骤1、创建初始区块,并生成区块链;
步骤2、基于预设的区块数据容量阈值,将待记录的数据按容量进行分割;
步骤3、当待记录的数据分块满足预设阈值时,将其写入新区块,并链接到区块链;
步骤4、加入时间戳,确保记录数据的时效性和顺序性;
步骤5、通过数据哈希值计算新区块的哈希值与前一区块的哈希值链接,以维护区块链的完整性。
进一步地,所述的步骤1具体步骤如下:
S101定义区块结构:定义一个区块;
一个区块链包括以下结构:
区块索引:定义了当前区块的位置;
时间戳:记录创建区块的时间;
其它数据部分:存储任何想要加入区块链中的信息;
前一个区块的哈希值:除了创世区块外,每个区块都会存储前一个区块的哈希值,创建了区块链之间的关系;
S102创建创世区块:创建第一个区块;
S103生成区块链:在创建好创世区块后,需要将它加入到区块链中;将创世区块,保存到区块链中;
S104添加新的区块到区块链:新的区块需包括所有必需的数据,包括前一个区块的哈希值;
S105验证新的区块:每当一个新的区块被创建,就需要验证它;主要验证新区块的哈希值和区块链中最后一个区块的哈希值是否匹配;不匹配代表数据被篡改,这个新的区块将被拒绝并从区块链中移除。
进一步地,所述的步骤2具体步骤如下:
S201预设数据阈值:预设数据阈值是区块可以容纳的数据上限,这通常会受到具体的区块链协议和实际需求的影响;
S202接收待记录的数据:在接收到待记录的数据之后,需检查数据的大小;
S203分割数据:如果待记录的数据超过预设的区块数据容量阈值,则将其进行分割;
S204创建新的区块:将分割后的数据或者分割后的数据块写入新的区块。
进一步地,所述的步骤S203数据分割思路如下:
(1)处理超大文件分割:当处理的数据文件过大且超过预设的区块数据容量阈值时,利用文件分割器,按块切割数据,每块数据的大小不超过区块的容量;
(2)数据分块添加:每一个被分块的数据被视为一笔独立的交易或者记录,添加到一个新的区块中;如果一个区块中可以容纳多个分块数据,按照特定的顺序,如数据生成时的顺序,将它们添加到一个新的区块;
(3)保证数据完整性:为保证分割文件的完整性,在添加每一个分块数据到区块时,会生成一个分块数据的哈希值以及当前区块的哈希值,并将这些哈希值一同存储在区块中;这样,在后续对数据进行合并或者验证时,可以通过哈希值的对比来保证数据的完整性;
(4)生成新的区块:当预设的容量已满,或者没有新的交易或数据可以添加时,生成新的区块,将这个区块添加到区块链中,并广播到网络中的其他节点;
(5)数据重组:当需要用到原始的完整数据时,可以按照区块链中区块的顺序和每个区块中分块数据的顺序,将所有分块数据重组到一起;同样,利用之前存储的哈希值可以验证数据的完整性。
进一步地,所述的步骤3包括以下步骤:
S301生成新的区块:待记录的数据分块已经满足预设阈值,根据预先定义的区块结构创建一个新的区块,这个新区块将包含数据分块,时间戳以及前一个区块的哈希值等信息;
S302写入数据:一旦新的区块生成,就可以将数据分块写入到新的区块中;
S303更新区块哈希:对新区块的内容进行哈希计算,生成新的哈希值;新的哈希值会成为下一个区块中“前一个区块的哈希值”的引用;
S304链接到区块链:经过验证后,将新的区块添加到区块链的最后;
S305广播更新:最后,将新的区块广播到整个网络;其他节点听到广播后,会对新区块进行验证,如果验证通过,就将其添加到各自的区块链中
进一步地,所述的步骤4当一个新区块被创建后,系统会自动生成当前的时间戳,并将其存储在新区块的时间戳字段中;时间戳是一个很重要的元素,它记录了区块被创建的准确时间,确保了数据的时效性。
进一步地,所述的步骤5为了计算新区块的哈希值,
将新区块的所有信息,包括时间戳,数据,以及前一个区块的哈希值等,作为哈希函数的输入;通过哈希计算,生成新区块的哈希值;
新产生的哈希值则会存储在下一个新区块中,作为“前一个区块的哈希值”的字段。
进一步地,所述的哈希值计算以及区块哈希链接验证过程中,通过数字签名技术,以防止数据被篡改。
进一步地,数据存储的过程中,根据数据的哈希值在区块链上进行数据搜索,以便于高效的数据索引与检索。
进一步地,所述的待记录的数据可以包括但不限于文本、图片、音频、视频、程序代码、计算机文件等各类数据。
本发明有益效果:
数据容量阈值设定:大部分公知区块链技术,如比特币,其区块大小有硬限制(目前为1MB)。本发明提供的预设阈值概念可以对不同的用途或需求做出定制,为大数据存储提供更灵活的选择,这是现有的主要区别之一。
分割大数据:现有的区块链设计更多的是关注交易处理,而非大数据的存储和处理。本发明提出了一种将大数据文件分割并依次存储进区块链的方法,特别适合在需要处理和存储大量数据的场景下。
时间戳的使用:虽然现有的大部分区块链技术均使用时间戳,但是本发明更侧重于通过时间戳来保证数据的时效性和顺序性,并通过区块连的结构保证数据在整个链中的持续性和完整性。
哈希值计算:本发明通过数据哈希值计算新区块的哈希值与前一区块的哈希值链接,以维护区块链的完整性,提高了数据的安全性。
附图说明
图1为本发明方法流程图;
图2为创建初始区块,生成区块链流程图;
图3为记录的数据按容量进行分割流程图;
图4为数据写入存储流程图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的典型实施例。但是,本发明可以以许多不同的形式来实现,并不限于本发明所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
除非另有定义,本发明所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本发明中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
如图1所示,所述的方法采用以下步骤:
步骤1、创建初始区块,并生成区块链;
如图2所述,所述的步骤1具体步骤如下:
S101、定义区块结构:在创建任何类型的区块链,首先需要定义一个区块。一个区块链通常包括以下结构:
区块索引:它在区块链中定义了当前区块的位置位置。
时间戳:记录创建区块的时间。
其它数据部分:这部分可以存储任何想要加入区块链中的信息。
前一个区块的哈希值:除了创世区块外,每个区块都会存储前一个区块的哈希值,创建了区块链之间的关系。
S102、创建创世区块:创建第一个区块,也就是创世区块(Genesis Block)。创世区块的哈希值既没有指向前一个区块,也不是由前一个区块产生。
S103生成区块链:在创建好创世区块后,需要将它加入到区块链中。这一步,将创世区块,也可以说是已验证交易的列表,保存到区块链中。在简单的层面来看,一个区块链其实就是所有区块的列表。
S104添加新的区块到区块链:新的区块需包括所有必需的数据,包括前一个区块的哈希值。这样就能确保它是前一个区块链的延续,在此基础上添加新的信息。完成此步骤后,新的区块就成功地添加到了区块链中。
S105验证新的区块:每当一个新的区块被创建,就需要验证它。主要验证新区块的哈希值和区块链中最后一个区块的哈希值是否匹配。不匹配代表数据被篡改,这个新的区块将被拒绝并从区块链中移除。
如图3所述,步骤2、基于预设的区块数据容量阈值,将待记录的数据按容量进行分割;
所述的步骤2具体步骤如下:
S201预设数据阈值:预设数据阈值是区块可以容纳的数据上限,这通常会受到具体的区块链协议和实际需求的影响。比如,比特币系统的区块大小上限为1MB。
S202接收待记录的数据:在接收到待记录的数据之后,需检查数据的大小;
S203分割数据:如果待记录的数据超过预设的区块数据容量阈值,则将其进行分割。数据分割的方式依赖于具体的数据类型和应用场景。在一般情况下,可以将大文件分割成多个小文件,或者将数据集分割为多个小的数据块。
所述的步骤S203数据分割思路如下:
(1)处理超大文件分割:当处理的数据文件过大且超过预设的区块数据容量阈值时,可以利用文件分割器,也就是某些专门用于把大文件分割成小文件的软件或者脚本,按块切割数据,每块数据的大小不超过区块的容量。
(2)数据分块添加:每一个被分块的数据可以被视为一笔独立的交易或者记录,添加到一个新的区块中。如果一个区块中可以容纳多个分块数据,可以按照特定的顺序(如数据生成时的顺序)将它们添加到一个新的区块。
(3)保证数据完整性:为保证分割文件的完整性,在添加每一个分块数据到区块时,会生成一个分块数据的哈希值以及当前区块的哈希值,并将这些哈希值一同存储在区块中。这样,在后续对数据进行合并或者验证时,可以通过哈希值的对比来保证数据的完整性。
(4)生成新的区块:当预设的容量已满,或者没有新的交易或数据可以添加时,生成新的区块,将这个区块添加到区块链中,并广播到网络中的其他节点。
(5)数据重组:当需要用到原始的完整数据时,可以按照区块链中区块的顺序和每个区块中分块数据的顺序,将所有分块数据重组到一起。同样,利用之前存储的哈希值可以验证数据的完整性。
S204创建新的区块:将分割后的数据或者分割后的数据块写入新的区块。注意每个区块的数据大小需满足预设的区块数据容量阈值。 如图4所示,步骤3、当待记录的数据分块满足预设阈值时,将其写入新区块,并链接到区块链;
S301生成新的区块:待记录的数据分块已经满足预设阈值,这时可以根据预先定义的区块结构创建一个新的区块。这个新区块将包含数据分块,时间戳以及前一个区块的哈希值等信息。
S302写入数据:一旦新的区块生成,就可以将数据分块写入到新的区块中。需要注意的是,在数据写入的过程中,可能需要对数据进行一些特定的处理,如数据加密,以保证数据的安全性。
S303更新区块哈希:对新区块的内容进行哈希计算,生成新的哈希值。这个新的哈希值会成为下一个区块中“前一个区块的哈希值”的引用。
S304链接到区块链:经过验证后,将新的区块添加到区块链的最后。通常通过更新区块链的指针结构,使其指向新添加的这个区块,完成区块链的更新。
S305广播更新:最后,将新的区块广播到整个网络。其他节点听到广播后,会对新区块进行验证,如果验证通过,就将其添加到各自的区块链中。
步骤4、加入时间戳,确保记录数据的时效性和顺序性;当一个新区块被创建后,系统会自动生成当前的时间戳,并将其存储在新区块的时间戳字段中;时间戳是一个很重要的元素,它记录了区块被创建的准确时间,确保了数据的时效性。
步骤5、通过数据哈希值计算新区块的哈希值与前一区块的哈希值链接,以维护区块链的完整性。
所述的步骤5为了计算新区块的哈希值,
为了计算新区块的哈希值,通常会将新区块的所有信息(包括时间戳,数据,以及前一个区块的哈希值等)作为哈希函数的输入。通过哈希计算,可以生成新区块的哈希值。这个哈希值对每个区块来说是唯一的,任何数据的微小改动都会导致完全不同的哈希值。
这个新产生的哈希值则会存储在下一个新区块中,作为“前一个区块的哈希值”的字段。这样,就形成了一个区块链,每一个区块都链接到它的前一个区块,保证了区块链的完整性和不可更改性。
任何试图修改已有区块中信息的行为,都会导致该区块及其之后的所有区块的哈希值发生改变,因此可以通过检查哈希值是否连贯来验证区块链的完整性和数据是否被篡改。
哈希计算采用的哈希算法为SHA-256算法。数据哈希值计算以及区块哈希链接验证过程中,通过数字签名技术,以防止数据被篡改。
数据存储的过程中,可以根据数据的哈希值在区块链上进行数据搜索,以便于高效的数据索引与检索。所述的待记录的数据可以包括但不限于文本、图片、音频、视频、程序代码、计算机文件等各类数据。
实施例:假如我们有100T数据需要存储,首先,设定我们的区块数据容量阈值为1T。
1)数据接收:我们从用户那里接收了100T的数据需要记录和存储。
2)数据处理:根据预设的区块数据容量阈值1T,我们需要将这100T的数据分割成100个1T的数据块。
3)创建初始区块链:我们首先创建一个初始区块,成为创世区块,这个区块记录了初始信息,并生成一个新的区块链。
4)写入数据与新增区块:当每一个1T的数据分块准备好后,我们将其写入一个新的区块,然后将这个新的区块链接到之前的区块链之后,形成一个新的区块链。此过程对100个数据块重复执行,直至所有数据块写入完毕。
5)时间戳与哈希值:在每次生成一个新的区块时,我们都会记录一个时间戳,记录数据写入的时间,保证数据的时效性。同时,对新的区块进行哈希值计算,生成一个新的哈希值,将其和前一区块的哈希值关联起来,以保证区块链的完整性。
6)区块链生成完毕,我们就得到了一个记录了100T数据,由100个区块组成的区块链。此时,原始的100T数据被分布式地记录和储存在了区块链上。
7)数据索引与检索:当需要索引和检索某个数据时,我们可以根据数据的哈希值进行高效的搜索,找到该数据存储在哪个区块上,进而获取该数据。
整个过程就是基于区块链的分布式数据记录与存储的详细步骤,有效的解决了大规模数据的存储和管理问题。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ReadOnlyMemory,ROM)或随机存储记忆体(RandomABBessMemory,RAM)等。
应当理解,以上借助优选实施例对本发明的技术方案进行的详细说明是示意性的而非限制性的。本领域的普通技术人员在阅读本发明说明书的基础上可以对各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的方法采用以下步骤:
步骤1、创建初始区块,并生成区块链;
步骤2、基于预设的区块数据容量阈值,将待记录的数据按容量进行分割;
步骤3、当待记录的数据分块满足预设阈值时,将其写入新区块,并链接到区块链;
步骤4、加入时间戳,确保记录数据的时效性和顺序性;
步骤5、通过数据哈希值计算新区块的哈希值与前一区块的哈希值链接,以维护区块链的完整性。
2.根据权利要求1所述的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的步骤1具体步骤如下:
S101、定义区块结构:定义一个区块;
一个区块链包括以下结构:
区块索引:定义了当前区块的位置;
时间戳:记录创建区块的时间;
其它数据部分:存储任何想要加入区块链中的信息;
前一个区块的哈希值:除了创世区块外,每个区块都会存储前一个区块的哈希值,创建了区块链之间的关系;
S102、创建创世区块:创建第一个区块;
S103生成区块链:在创建好创世区块后,需要将它加入到区块链中;将创世区块,保存到区块链中;
S104添加新的区块到区块链:新的区块需包括所有必需的数据,包括前一个区块的哈希值;
S105验证新的区块:每当一个新的区块被创建,就需要验证它;主要验证新区块的哈希值和区块链中最后一个区块的哈希值是否匹配;不匹配代表数据被篡改,这个新的区块将被拒绝并从区块链中移除。
3.根据权利要求1所述的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的步骤2具体步骤如下:
S201预设数据阈值:预设数据阈值是区块容纳的数据上限,这通常会受到具体的区块链协议和实际需求的影响;
S202接收待记录的数据:在接收到待记录的数据之后,需检查数据的大小;
S203分割数据:如果待记录的数据超过预设的区块数据容量阈值,则将其进行分割;
S204创建新的区块:将分割后的数据或者分割后的数据块写入新的区块。
4.根据权利要求3所述的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的步骤S203数据分割思路如下:
(1)处理超大文件分割:当处理的数据文件过大且超过预设的区块数据容量阈值时,利用文件分割器,按块切割数据,每块数据的大小不超过区块的容量;
(2)数据分块添加:每一个被分块的数据被视为一笔独立的交易或者记录,添加到一个新的区块中;如果一个区块中容纳多个分块数据,按照特定的顺序,如数据生成时的顺序,将它们添加到一个新的区块;
(3)保证数据完整性:为保证分割文件的完整性,在添加每一个分块数据到区块时,会生成一个分块数据的哈希值以及当前区块的哈希值,并将这些哈希值一同存储在区块中;这样,在后续对数据进行合并或者验证时,通过哈希值的对比来保证数据的完整性;
(4)生成新的区块:当预设的容量已满,或者没有新的交易或数据添加时,生成新的区块,将这个区块添加到区块链中,并广播到网络中的其他节点;
(5)数据重组:当需要用到原始的完整数据时,按照区块链中区块的顺序和每个区块中分块数据的顺序,将所有分块数据重组到一起;同样,利用之前存储的哈希值验证数据的完整性。
5.根据权利要求1所示的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的步骤3包括以下步骤:
S301生成新的区块:待记录的数据分块已经满足预设阈值,根据预先定义的区块结构创建一个新的区块,这个新区块将包含数据分块,时间戳以及前一个区块的哈希值信息;
S302写入数据:一旦新的区块生成,就将数据分块写入到新的区块中;
S303更新区块哈希值:对新区块的内容进行哈希计算,生成新的哈希值;新的哈希值会成为下一个区块中“前一个区块的哈希值”的引用;
S304链接到区块链:经过验证后,将新的区块添加到区块链的最后;S305广播更新:最后,将新的区块广播到整个网络;其他节点听到广播后,会对新区块进行验证,如果验证通过,就将其添加到各自的区块链中。
6.根据权利要求1所述的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的步骤4当一个新区块被创建后,系统会自动生成当前的时间戳,并将其存储在新区块的时间戳字段中;时间戳是一个很重要的元素,它记录了区块被创建的准确时间,确保了数据的时效性。
7.根据权利要求1所述的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的步骤5为了计算新区块的哈希值,
将新区块的所有信息,包括时间戳,数据,以及前一个区块的哈希值,作为哈希函数的输入;通过哈希计算,生成新区块的哈希值;
新产生的哈希值则会存储在下一个新区块中,作为“前一个区块的哈希值”的字段。
8.根据权利要求7的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的哈希值计算以及区块哈希链接验证过程中,通过数字签名技术,以防止数据被篡改。
9.根据权利要求1所述的一种基于区块链的分布式数据存储与记录方法,其特征在于:数据存储的过程中,根据数据的哈希值在区块链上进行数据搜索,以便于高效的数据索引与检索。
10.根据权利要求1所述的一种基于区块链的分布式数据存储与记录方法,其特征在于:所述的待记录的数据包括但不限于文本、图片、音频、视频、程序代码、计算机文件各类数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311173435.1A CN117349880A (zh) | 2023-09-12 | 2023-09-12 | 一种基于区块链的分布式数据存储与记录方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311173435.1A CN117349880A (zh) | 2023-09-12 | 2023-09-12 | 一种基于区块链的分布式数据存储与记录方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117349880A true CN117349880A (zh) | 2024-01-05 |
Family
ID=89356528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311173435.1A Pending CN117349880A (zh) | 2023-09-12 | 2023-09-12 | 一种基于区块链的分布式数据存储与记录方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117349880A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117879786A (zh) * | 2024-03-12 | 2024-04-12 | 深圳市海域达赫科技有限公司 | 数据分布式存储与访问方法、系统、设备及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109255856A (zh) * | 2018-08-20 | 2019-01-22 | 深圳市长龙铁路电子工程有限公司 | 一种基于区块链技术的机车信号设备数据记录方法 |
CN110708380A (zh) * | 2019-10-09 | 2020-01-17 | 广州峻林互联科技有限公司 | 一种区块链数据库的大数据处理系统及方法 |
CN116049318A (zh) * | 2023-02-21 | 2023-05-02 | 上海壹佰米网络科技有限公司 | 一种数据存储方法及通信装置 |
CN116069856A (zh) * | 2022-12-15 | 2023-05-05 | 浪潮云信息技术股份公司 | 一种基于区块链的数据完整性验证方法及系统 |
-
2023
- 2023-09-12 CN CN202311173435.1A patent/CN117349880A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109255856A (zh) * | 2018-08-20 | 2019-01-22 | 深圳市长龙铁路电子工程有限公司 | 一种基于区块链技术的机车信号设备数据记录方法 |
CN110708380A (zh) * | 2019-10-09 | 2020-01-17 | 广州峻林互联科技有限公司 | 一种区块链数据库的大数据处理系统及方法 |
CN116069856A (zh) * | 2022-12-15 | 2023-05-05 | 浪潮云信息技术股份公司 | 一种基于区块链的数据完整性验证方法及系统 |
CN116049318A (zh) * | 2023-02-21 | 2023-05-02 | 上海壹佰米网络科技有限公司 | 一种数据存储方法及通信装置 |
Non-Patent Citations (1)
Title |
---|
魏艳;毛燕琴;沈苏彬;: "一种基于区块链的数据完整性验证解决方案", 计算机技术与发展, no. 01, 31 December 2020 (2020-12-31) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117879786A (zh) * | 2024-03-12 | 2024-04-12 | 深圳市海域达赫科技有限公司 | 数据分布式存储与访问方法、系统、设备及可读存储介质 |
CN117879786B (zh) * | 2024-03-12 | 2024-05-14 | 深圳市海域达赫科技有限公司 | 数据分布式存储与访问方法、系统、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11314701B2 (en) | Resharding method and system for a distributed storage system | |
CN110334152B (zh) | 一种数据同步方法、装置及服务器 | |
US7447839B2 (en) | System for a distributed column chunk data store | |
CN103136243B (zh) | 基于云存储的文件系统去重方法及装置 | |
CN101286165B (zh) | 多路并行现用文件系统 | |
US7457935B2 (en) | Method for a distributed column chunk data store | |
US20070143564A1 (en) | System and method for updating data in a distributed column chunk data store | |
CN109194646B (zh) | 一种基于区块链的安全认证数据存取方法 | |
US20090287743A1 (en) | System and method for removing a storage server in a distributed column chunk data store | |
WO2020167887A1 (en) | Hybrid blockchains and streamchains using non-crypto hashes for securing audio-, video-, image-, and speech-based transactions and contracts | |
CN112286939B (zh) | 块链式账本中全局状态的哈希的生成方法、装置及设备 | |
CN102495894A (zh) | 重复数据查找方法、装置及系统 | |
CN117349880A (zh) | 一种基于区块链的分布式数据存储与记录方法 | |
CN113468199B (zh) | 索引更新方法及系统 | |
US20170123689A1 (en) | Pipelined Reference Set Construction and Use in Memory Management | |
CN111339042A (zh) | 数据的操作处理方法、系统及调度服务器 | |
CN111966654A (zh) | 一种基于Trie字典树的混合过滤器 | |
CN111522791A (zh) | 一种分布式文件重复数据删除系统及方法 | |
CN112433986A (zh) | 数据的存储方法、电子设备以及计算机可读存储介质 | |
CN115858488A (zh) | 基于数据治理的平行迁移方法、装置及可读介质 | |
CN115988001A (zh) | 区块链系统的共识投票处理方法、装置、设备以及介质 | |
CN112241396B (zh) | 基于Spark的对Delta进行小文件合并的方法及系统 | |
CN104572891A (zh) | 一种用于网络信息分离存储的文件更新方法 | |
CN109067849A (zh) | 基于区块的数据同步方法 | |
CN117539925A (zh) | 一种数据处理方法、装置、介质和设备 |
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 |