CN108470039A - 区块链中的数据处理方法和装置 - Google Patents
区块链中的数据处理方法和装置 Download PDFInfo
- Publication number
- CN108470039A CN108470039A CN201810134727.7A CN201810134727A CN108470039A CN 108470039 A CN108470039 A CN 108470039A CN 201810134727 A CN201810134727 A CN 201810134727A CN 108470039 A CN108470039 A CN 108470039A
- Authority
- CN
- China
- Prior art keywords
- block
- data
- block chain
- recording
- chain
- 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
- 238000003672 processing method Methods 0.000 title abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 34
- 230000004044 response Effects 0.000 claims abstract description 6
- 238000012986 modification Methods 0.000 claims description 31
- 230000004048 modification Effects 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 13
- 230000015572 biosynthetic process Effects 0.000 abstract description 3
- 230000000877 morphologic effect Effects 0.000 description 33
- 230000002441 reversible effect Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 10
- 238000012795 verification Methods 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000002427 irreversible effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种区块链中的数据处理方法和装置,其中,方法包括:响应于对当前区块链的形态进行存储的操作,生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以所述逻辑数据作为区块体数据生成记录区块;将所述记录区块链接到所述区块链中;将所述记录区块中的数据向区块链网络进行广播。本发明实施例的方案能够方便用户清楚分辨出区块链形成的各个阶段,同时降低数据存储成本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种区块链中的数据处理方法和装置。
背景技术
随着互联网的不断发展,区块链技术应运而生,它是一种互联网数据库技术,具有去中心化、公开透明的特点。具体地,区块链技术的本质是去中心化且寓于分布式结构的数据存储、传输和证明的方法,用数据区块取代目前互联网对中心服务器的依赖,使得所有数据的变更或者交易项目都被记录在一个云系统之上。由于没有中央控制点的分布式对等网络,并且使用分布式集体运作的方法,可以说,区块链是网络上的“公开大账本”。它存在许多节点,每个节点都可以观察到整个账本,并且共同参与维护,其收益则是获得记账的权利,并且可以复制一份完整的数据库,单个节点无法修改数据库,从而保证了账本数据的安全可靠。
当下,采用区块链技术进行数据的组织和管理已经被广泛的应用到了各种商业领域。
但是,现有的区块链只是单纯沿着区块链的延展方向,依次生成新的区块,链条的生成方式单一,对于非单链条的区块链结构,并不能体现出截至到某一历史时刻下,区块链的整体形态,使得用户不能清楚分辨出区块链形成的各个阶段。即使存在通过快照的方式对截至到某一历史时刻下区块链的整体形态进行保存的方案,但由于快照的过程是对目标对象的完全复制,随着区块链的不断延展,每次快照的数据量不断增加,存储成本也随之增大。
发明内容
本发明提供了一种区块链中的数据处理方法和装置,能够方便用户清楚分辨出区块链形成的各个阶段,同时降低数据存储成本。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种区块链中的数据处理方法,包括:
响应于对当前区块链的形态进行存储的操作,生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以所述逻辑数据作为区块体数据生成记录区块;
将所述记录区块链接到所述区块链中;
将所述记录区块中的数据向区块链网络进行广播。
第二方面,提供了一种区块链中的数据处理装置,包括:
区块生成模块,用于响应于对当前区块链的形态进行存储的操作,生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以所述逻辑数据作为区块体数据生成记录区块;
区块链接模块,用于将所述记录区块链接到所述区块链中;
数据广播模块,用于将所述记录区块中的数据向区块链网络进行广播。
本发明提供的区块链中的数据处理方法和装置,在需要对截至到某一历史时刻下区块链的整体形态进行保存时,通过对当前区块链中各区块之间的链接关系进行统计,生成可用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以该逻辑数据作为区块体数据生成记录区块;然后将该记录区块添加到区块链中,从而可以实现通过记录区块中的数据还原各历史时刻的区块链的形态结构,方便用户清楚了解区块链在各个阶段的生成情况,同时降低数据存储成本。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为现有技术的区块链的结构示意图;
图2为本发明实施例的反向链接结构示意图;
图3为本发明实施例的区块链中的数据处理方法流程图一;
图4为本发明实施例的区块链结构示意图一;
图5为本发明实施例的还原区块链的方法流程图;
图6为本发明实施例的区块链中的数据处理方法流程图二;
图7为本发明实施例的区块链结构示意图二;
图8为本发明实施例的区块链勘误表结构图;
图9为本发明实施例的区块链中的数据处理方法流程图三;
图10为本发明实施例的区块链结构示意图三;
图11为本发明实施例的区块链中的数据处理装置的结构示意图一;
图12为本发明实施例的区块链中的数据处理装置的结构示意图二。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
区块链最初是伴随着着比特币的产生而提出的,因此,在描述区块链涉及的数据中,采用了交易数据和账本这样的表达,随着区块链技术的发展,其能够记录的信息和数据已经不限于传统意义上的交易数据,而是可以用来记录任何信息和数据。因此,在本发明实施例中,存储在各区块的区块体中的数据均可以被称为交易数据,该交易数据是指一条信息、数据或者指令等,而账本是指由多个交易数据构成的集合体。
区块链是指由多个区块构成的经过区块链技术加密后的数据存储结构,区块链网络是指,有多个实现区块链技术的节点构成的网络。区块链网络中的节点,可以是互联网中具有处理区块链数据功能的服务器或者终端设备。区块链中的各个节点执行着对交易数据进行记账(将交易数据写入区块体)、将新区块链接到已有区块链上、对区块链进行存储和验证等功能。
本发明实施例的基本原理在于:在区块链延展的过程中,当需要对区块链的某个特定历史时刻下的区块链的形态结构进行保存时,先基于该时刻下区块链的形态结构生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以该逻辑数据作为区块体数据生成记录区块,然后将记录区块链接到区块链中,最后将记录区块中的数据向区块链网络进行广播。如此,当需要获取某一历史时刻的区块链的形态结构时,就可以根据记录区块中的逻辑数据从当前区块链中还原出该历史时刻的区块链的形态结构。
需要说明的是,本发明实施例中,区块之间的链接是一种逻辑意义上的链接,这种链接关系是通过区块链中的验证机制来体现的。如图1所示,在传统的区块链中,后一区块的区块头中记录着基于前一个区块生成的校验值,例如该校验值可以是前一个区块中的数据经不可逆算法,如哈希算法得到的哈希值(hash),并基于这样的机制不断向前延展,从而形成链接方向始终向前的区块链。本实施例中,对区块链的形态结构不做具体限定,即针对任何链接结构的区块链均可以通过本方案中的区块链中的数据处理方法对任一时刻的区块链的形态结构进行存储,并且不会带来较大的存储成本。
特别是,如图2所示,当区块链中存在类似例如由区块4指向区块3的反向链接时,上述区块链中的数据处理方法中需要将当前区块链中的区块数据还原为修改之前的区块数据即可。如图2中所示,区块3的区块头中包含区块4的校验值hash2,由于反向链接的建立,导致区块3的内容被修改,当使用区块4中的记录的校验值对区块3进行验证时,由于区块3的区块头中出现了Hash2,基于修改后的区块3计算获得的校验值不等于区块4的区块头中记录的校验值,从而出现验证错误。
通过这种验证机制,就可以识别出反向链接的存在。在实际应用中,可以在每个区块的区块头中预留出用于填写反向校验值的数据区域,从而在后续验证过程中,当发现该区域中存在数据时,就能够获知该区块存在反向链接,然后再基于该数据对该区块之后的各个区块进行验证,找到基于哪个区块计算获得的该校验值,就可以获知完整的反向链接关系。
对于识别反向链接而言,还可以通过区块链勘误表的方式来实现。区块链勘误表可以认为是对区块链的不可篡改机制的一个补充,该区块链勘误表可以由管理区块链网络的监管节点来维护,其目的在于,用来执行一些对区块链的必要的修改,这些修改是在监管节点的监控下完成的,从而保证区块链数据的准确性。
对区块链中的各个区块的修改,可以记录在与区块链对应的区块链勘误表中,在该区块链勘误表中记录着修改所在的具体位置(区块编号和区块中数据的行号以及列号等),以及修改前后的信息或者数据。在验证的过程中,如果出现验证不通过的情形,可以查询该勘误表,确定该验证不通过的区块是否存在修改,如果存在,则可以用修改之前的数据或者信息再进行验证,如果通过,则可以确认该修改经过允许的,不是被恶意篡改。并且,在该区块链勘误表中,还可以进一步记录,该修改是否为反向链接的修改,以及具体是基于哪个区块生成的校验值等信息,从而便于识别出反向链接的逻辑关系。
针对区块之间存在反向链接的区块链,在根据当前区块链还原出某特定历史时刻的区块链形态结构时,需要将修改后的数据还原为修改前的数据,如果被修改的数据是在已有区块的区块头中添加描述区块之间反向链接关系的校验值,那么只需在还原区块链时不添加该校验值到相应的区块的区块头中即可;如果被修改的数据为区块体数据,那么在还原区块链时需要将当前区块链中被修改的区块的区块体数据还原为修改之前的区块体数据。
下面通过多个实施例来进一步说明本申请的技术方案。
实施例一
基于上述根据当前区块链的形态结构以及记录区块中的逻辑数据还原特定历史时刻下区块链的形态结构的方案思想,如图3所示,其为本发明实施例示出的区块链中的数据处理方法流程图一,该方法的执行主体可以为区块链中的处理节点。如图3所示,该区块链中的数据处理方法包括:
S310,响应于对当前区块链的形态进行存储的操作,生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以逻辑数据作为区块体数据生成记录区块;
在区块链延展生成新区块的过程中,当需要对截至当前时刻形成的区块链的形态进行存储时,可以基于已形成的区块链中各区块之间的链接关系生成用于描述当前区块链中各区块之间的链接关系的逻辑数据。该逻辑数据的作用在于:不需要对区块链中各区块的数据进行复制,仅通过逻辑数据中记载的各区块的链接关系,就可以参考当前区块链的形态结构,或者是参考在之后的时间段内存在新增区块后的区块链的形态结构,就可以还原出之前历史时刻对应的区块链的形态结构。根据还原出的之前历史时刻对应的区块链的形态结构,以及当前区块链中各区块中的数据,就可以确定出截至该历史时刻生成的所有区块数据。
S320,将记录区块链接到区块链中;
在生成记录区块之后,可以根据需要将记录区块链接在区块链中的任一区块之后。具体地,将选中的任一区块中的全部数据经不可逆算法进行计算得到校验值,并将校验值存储至记录区块的区块头中完成链接。其中,该不可逆算法可以为哈希算法,得到的校验值为哈希值。
在具体应用场景中,为了方便区分记录区块和区块链中正常延展的区块,可以在每次存储区块链的形态结构时,仅在记录区块中存储正常延展的区块链结构,并且为了在区块链结构上方便区分两种类型的区块,可以将记录区块单独链接在一起。例如,将针对区块链生成的首个记录区块链接在区块链的创世区块之后,然后将首个记录区块以后生成的记录区块,按照记录区块的生成时间依次链接在前一记录区块之后,形成单链条的链接结构。
当然,为了体现区块链的完整性,在每次存储当前区块链的形态结构时,也可以将记录区块和正常延展的区块一并作为存储对象。
另外,为了方便区分记录区块和正常延展的区块这两种区块类型,便于查找记录区块的数据,可以采用不同的区块编号对这两种区块进行标识,如图4所示,其中正常延展的区块可采用Block1、Block2,……,Blockn(n为正整数)这种编号方式;记录区块可采用Blockm1、Blockm2,……,Blockmn(n为正整数)这种编号方式。
S330,将记录区块中的数据向区块链网络进行广播。
在节点生成记录区块后,需要将记录区块向区块链网络进行广播,以通过多个节点的共识机制对最终的区块链执行验证和确认。
如此,当后续用户需要还原当前时刻下区块链的形态结构时,可以在找到指定历史时刻产生的记录区块后,提取该记录区块中的逻辑数据,然后根据逻辑数据中描述的截至该历史时刻生成的区块链中各区块之间的链接关系,从当前区块链中还原出该历史时刻生成的区块链的形态结构。如此,在不需要对区块链中的全部区块的数据进行复制的情况下,就可以还原指定历史时刻下区块链的形态结构,并且大大降低了存储成本。
本发明实施例的区块链中的数据处理方法,在需要对截至到某一历史时刻下区块链的整体形态进行保存时,通过对当前区块链中各区块之间的链接关系进行统计,生成可用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以该逻辑数据作为区块体数据生成记录区块;然后将该记录区块添加到区块链中,从而可以实现通过记录区块中的数据还原各历史时刻的区块链的形态结构,方便用户清楚了解区块链在各个阶段的生成情况,同时降低数据存储成本。
实施例二
本实施例示出的内容主要对记录区块中的区块体数据的数据内容进行了补充说明。
首先,在实施例一中,为了方便以后用户根据本次生成的记录区块中逻辑数据从当前区块链中还原出当前时刻的区块链的形态结构,在上述记录区块中存储的逻辑数据可包括当前区块链中包含的各区块的区块编号,以及各区块之间的链接指向信息。
在后续用户根据当前生成的记录区块中的逻辑数据从以后形成的区块链中还原当前时刻的区块链的形态结构时可执行如图5所示的方法步骤:
S510,根据记录区块中存储的区块编号从当前区块链中提取相应的不包含校验值的区块。
首先,从当前区块链中提取记录区块中存储的区块编号对应的区块,然后将这些区块的区块头中存储的校验值全部删除,只保留不包含校验值的剩余区块部分。
S520,根据记录区块中存储的各区块之间的链接指向信息,从当前区块链中获取与记录区块中存储的各区块编号对应的区块中存储的校验值,并添加到相应的无校验值的区块的区块头中,以还原出该历史时刻的区块链的形态结构。
在确定待还原的不包含校验值的区块后,需要将这些区块通过在区块头中添加校验值来形成区块之间的链接指向关系。具体地,根据记录区块中存储的各区块之间的链接指向信息,从当前形成的区块链中提取出与这些不包含校验值的区块对应的区块的区块头中记录的校验值,并将其添加到相应的无校验值的区块的区块头中。
简言之,上述过程就是先从当前区块链中提取出去除校验值的区块,然后根据记录区块中记录的链接指向信息,再从当前区块链中提取出这些区块中符合链接指向信息的校验值,并添加的相应的无校验值的区块的区块头中,最终完成区块链结构的还原。在该过程中,有些区块的校验值可能存在多个,比如在后续的时间段内新形成的区块与截至当前时刻形成的区块又建立了新的链接指向关系,那么在还原当前时刻的区块链的形态结构时,就需要去除掉该新增的链接指向关系,即仅将截至当前时刻产生的校验值添加到对应的无校验值的区块的区块头中。
其次,在图3所示方法的基础上,如图6所示,在形成记录区块的过程中,还可以执行步骤S610和/或步骤S620。这两个步骤之间以及与步骤S310之间不存在严格的先后顺序,都可以作为响应于对当前区块链的形态进行存储的操作而同步被执行。
S610,对当前区块链中各区块中的区块体数据进行统计得到的统计数据,并将统计数据作为区块体数据添加到记录区块中。
在记录区块中不仅可以记录用于描述截至当前时刻区块链中各区块之间的链接关系对应的逻辑数据,还可以记录基于当前形成的区块链中区块的区块体数据所产生的统计数据,如交易数据总量、交易数据增长速度等。获取统计数据的时机可以是在接收到存储当前区块链的形态结构的请求之后,作为响应操作被执行。
这样,在后续用户还原当前时刻对应的区块链的形态结构时,还可以通过记录区块读取到截至当前时刻的区块链的统计数据。
S620,对上一次存储区块链到本次存储区块链所对应的时间段内,对区块链中存在数据修改的区块进行统计,并将统计得到的修改数据作为区块体数据添加到记录区块中。
在区块链延展过程中,可能会根据需要对已有区块中的数据进行修改,例如在增加反向链接时,需要在已有区块的区块头中增加新区块的校验值;又例如直接对已有区块中区块的区块体数据进行修改(包括增加、删除以及替换数据)。
如图7所示,在形成区块链的过程中,包含对已有区块Block2中的数据进行修改的情况。在形成记录区块时,就需要对Block2中的数据修改情况进行统计,包括修改之前的原数据、修改之后的新数据,然后将得到修改数据,添加上上述记录区块中。该修改数据可以是修改的原数据和新数据本身,也可以是针对某个数据进行修改的标识信息。当然针对后者的记录内容,还需要通过设置在区块链以外的区块链勘误表(如图8所示)对修改的原数据和新数据进行记录,以方便数据还原。
需要说的是,记录区块中记录的修改数据仅限于从上一次存储区块链(对应上一次生成记录区块)到本次存储区块链(对应本次生成记录区块)所对应的时间段内,对区块链中发生的数据修改的区块进行统计而得到的修改数据。
相应地,在后续用户需要还原截至本时刻形成的区块链的形态结构时,除了执行前述内容中的提及的还原过程外,还需要将从后续形成的区块链中获取的区块体数据还原为修改之前也就是当前时刻对应的区块体数据,以最终还原出当前时刻的区块链的形态结构。
本发明实施例的区块链中的数据处理方法,在实施例一所示方法的基础上,对记录区块中的数据进行了补充说明,即通过增加统计数据可以方便用户在后续根据记录区块还原当前形成的区块链的形态结构时,一并读取到截至当前时刻的区块链的统计数据;另外,通过在记录区块中增加针对区块数据修改后进行统计得到的修改数据,以方便用户准确还原区块链在不同时刻的形态结构。
实施例三
如图9所示,其为本发明实施例示出的区块链中的数据处理方法流程图三,该方法可视为图3所示方法的细化,主要对将记录区块链接到区块链中的过程进行进一步说明。如图9所示,在图3所示步骤的基础上,步骤320可具体包括如下步骤内容:
S910,以区块链的创世区块作为父区块,以记录区块作为子区块,将记录区块链接到区块链中;
或者,
S920,以区块链中截至当前时刻最后一个生成的区块作为父区块,以记录区块作为子区块,将记录区块链接到区块链中;
或者,
S930,以区块链的创世区块作为父区块,以区块链中截至当前时刻最后一个生成的区块作为父区块,以记录区块作为子区块,将记录区块链接到区块链中。
例如图10所示,为将记录区块Blockm1以当前区块链的创世区块Block1作为父区块,同时以区块链中截至当前时刻最后一个生成的区块Block4作为父区块,以记录区块Blockm1作为子区块,将记录区块Blockm1链接到区块链中而生产的区块链形态结构。
本发明实施例的区块链中的数据处理方法,在实施例一所示方法的基础上,对将记录区块链接到区块链中的具体位置进行了限定,从而可以方便用户更加快速的找到各历史时刻生产的记录区块。
实施例四
如图11所示,其为本发明实施例示出的区块链中的数据处理装置的结构示意图一,该装置可以为设置在网络中的服务器,用于执行实施例一所示的方法步骤。如图11所示,该区块链中的数据处理装置包括:
区块生成模块111,用于响应于对当前区块链的形态进行存储的操作,生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以逻辑数据作为区块体数据生成记录区块;
区块链接模块112,用于将记录区块链接到区块链中;
数据广播模块113,用于将记录区块中的数据向区块链网络进行广播。
进一步地,上述逻辑数据可包括:当前区块链中包含的各区块的区块编号,以及各区块之间的链接指向信息。
进一步地,如图12所示,上述装置还可包括:
数据统计模块121,用于对当前区块链中各区块中的区块体数据进行统计得到的统计数据,并将统计数据作为区块体数据添加到记录区块中。
进一步地,如图12所示,上述装置还可包括:
修改统计模块122,用于对上一次存储区块链到本次存储区块链所对应的时间段内,对区块链中存在数据修改的区块进行统计,并将统计得到的修改数据作为区块体数据添加到记录区块中。
图12所示的装置结构可用于执行实施例二所示的方法步骤。
进一步地,上述区块链接模块112具体用于,
以区块链的创世区块作为父区块,以记录区块作为子区块,将记录区块链接到区块链中;
或者,
以区块链中截至当前时刻最后一个生成的区块作为父区块,以记录区块作为子区块,将记录区块链接到区块链中;
或者,
以区块链的创世区块作为父区块,以区块链中截至当前时刻最后一个生成的区块作为父区块,以记录区块作为子区块,将记录区块链接到区块链中。
区块链接模块112功能具体化后的上述装置结构可用于执行实施例三所示的方法步骤。
本发明实施例的区块链中的数据处理装置,在需要对截至到某一历史时刻下区块链的整体形态进行保存时,通过对当前区块链中各区块之间的链接关系进行统计,生成可用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以该逻辑数据作为区块体数据生成记录区块;然后将该记录区块添加到区块链中,从而可以实现通过记录区块中的数据还原各历史时刻的区块链的形态结构,方便用户清楚了解区块链在各个阶段的生成情况,同时降低数据存储成本。
进一步地,通过增加统计数据可以方便用户在后续根据记录区块还原当前形成的区块链的形态结构时,一并读取到截至当前时刻的区块链的统计数据;另外,通过在记录区块中增加针对区块数据修改后进行统计得到的修改数据,以方便用户准确还原区块链在不同时刻的形态结构。
进一步地,对将记录区块链接到区块链中的具体位置进行了限定,从而可以方便用户更加快速的找到各历史时刻生产的记录区块。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种区块链中的数据处理方法,其特征在于,包括:
响应于对当前区块链的形态进行存储的操作,生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以所述逻辑数据作为区块体数据生成记录区块;
将所述记录区块链接到所述区块链中;
将所述记录区块中的数据向区块链网络进行广播。
2.根据权利要求1所述的方法,其特征在于,所述逻辑数据包括:所述当前区块链中包含的各区块的区块编号,以及各区块之间的链接指向信息。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对当前区块链中各区块中的区块体数据进行统计得到的统计数据,并将所述统计数据作为区块体数据添加到所述记录区块中。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对上一次存储区块链到本次存储区块链所对应的时间段内,对区块链中存在数据修改的区块进行统计,并将统计得到的修改数据作为区块体数据添加到所述记录区块中。
5.根据权利要求1-4任一种所述的方法,其特征在于,所述将所述记录区块链接到所述区块链中,包括:
以所述区块链的创世区块作为父区块,以所述记录区块作为子区块,将所述记录区块链接到所述区块链中;
或者,
以所述区块链中截至当前时刻最后一个生成的区块作为父区块,以所述记录区块作为子区块,将所述记录区块链接到所述区块链中;
或者,
以所述区块链的创世区块作为父区块,以所述区块链中截至当前时刻最后一个生成的区块作为父区块,以所述记录区块作为子区块,将所述记录区块链接到所述区块链中。
6.一种区块链中的数据处理装置,其特征在于,包括:
区块生成模块,用于响应于对当前区块链的形态进行存储的操作,生成用于描述当前区块链中各区块之间的链接关系的逻辑数据,并以所述逻辑数据作为区块体数据生成记录区块;
区块链接模块,用于将所述记录区块链接到所述区块链中;
数据广播模块,用于将所述记录区块中的数据向区块链网络进行广播。
7.根据权利要求6所述的装置,其特征在于,所述逻辑数据包括:所述当前区块链中包含的各区块的区块编号,以及各区块之间的链接指向信息。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
数据统计模块,用于对当前区块链中各区块中的区块体数据进行统计得到的统计数据,并将所述统计数据作为区块体数据添加到所述记录区块中。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
修改统计模块,用于对上一次存储区块链到本次存储区块链所对应的时间段内,对区块链中存在数据修改的区块进行统计,并将统计得到的修改数据作为区块体数据添加到所述记录区块中。
10.根据权利要求6-9任一种所述的装置,其特征在于,所述区块链接模块具体用于,
以所述区块链的创世区块作为父区块,以所述记录区块作为子区块,将所述记录区块链接到所述区块链中;
或者,
以所述区块链中截至当前时刻最后一个生成的区块作为父区块,以所述记录区块作为子区块,将所述记录区块链接到所述区块链中;
或者,
以所述区块链的创世区块作为父区块,以所述区块链中截至当前时刻最后一个生成的区块作为父区块,以所述记录区块作为子区块,将所述记录区块链接到所述区块链中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810134727.7A CN108470039A (zh) | 2018-02-09 | 2018-02-09 | 区块链中的数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810134727.7A CN108470039A (zh) | 2018-02-09 | 2018-02-09 | 区块链中的数据处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108470039A true CN108470039A (zh) | 2018-08-31 |
Family
ID=63266396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810134727.7A Pending CN108470039A (zh) | 2018-02-09 | 2018-02-09 | 区块链中的数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108470039A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109213900A (zh) * | 2018-09-18 | 2019-01-15 | 百度在线网络技术(北京)有限公司 | 一种区块链的数据修改方法、装置、设备和介质 |
CN109325784A (zh) * | 2018-09-27 | 2019-02-12 | 深圳市九耀健康科技有限公司 | 基于区块链的数据验证平台及其数据验证方法、存储设备 |
CN110138566A (zh) * | 2019-05-14 | 2019-08-16 | 数字钱包(北京)科技有限公司 | 验证方法、装置、电子设备及计算机可读存储介质 |
CN110543526A (zh) * | 2019-10-31 | 2019-12-06 | 成都四方伟业软件股份有限公司 | 一种基于区块链的优化储存方法及系统 |
CN113839989A (zh) * | 2021-08-28 | 2021-12-24 | 西安交通大学 | 一种多节点数据处理方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933133A (zh) * | 2015-06-12 | 2015-09-23 | 中国科学院计算技术研究所 | 分布式文件系统中的元数据快照存储和访问方法 |
CN106815330A (zh) * | 2016-12-29 | 2017-06-09 | 北京瑞卓喜投科技发展有限公司 | 沿空间维度拓展的区块链的生成方法及系统 |
CN106844523A (zh) * | 2016-12-29 | 2017-06-13 | 北京瑞卓喜投科技发展有限公司 | 顺序型多维拓展的区块链的生成方法及系统 |
CN106897353A (zh) * | 2016-12-29 | 2017-06-27 | 北京瑞卓喜投科技发展有限公司 | 中心型多维拓展的区块链的生成方法及系统 |
CN106909605A (zh) * | 2016-12-29 | 2017-06-30 | 北京瑞卓喜投科技发展有限公司 | 沿横向拓展的区块链的生成方法及系统 |
CN107066495A (zh) * | 2016-12-29 | 2017-08-18 | 北京瑞卓喜投科技发展有限公司 | 沿纵向拓展的区块链的生成方法及系统 |
-
2018
- 2018-02-09 CN CN201810134727.7A patent/CN108470039A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933133A (zh) * | 2015-06-12 | 2015-09-23 | 中国科学院计算技术研究所 | 分布式文件系统中的元数据快照存储和访问方法 |
CN106815330A (zh) * | 2016-12-29 | 2017-06-09 | 北京瑞卓喜投科技发展有限公司 | 沿空间维度拓展的区块链的生成方法及系统 |
CN106844523A (zh) * | 2016-12-29 | 2017-06-13 | 北京瑞卓喜投科技发展有限公司 | 顺序型多维拓展的区块链的生成方法及系统 |
CN106897353A (zh) * | 2016-12-29 | 2017-06-27 | 北京瑞卓喜投科技发展有限公司 | 中心型多维拓展的区块链的生成方法及系统 |
CN106909605A (zh) * | 2016-12-29 | 2017-06-30 | 北京瑞卓喜投科技发展有限公司 | 沿横向拓展的区块链的生成方法及系统 |
CN107066495A (zh) * | 2016-12-29 | 2017-08-18 | 北京瑞卓喜投科技发展有限公司 | 沿纵向拓展的区块链的生成方法及系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109213900A (zh) * | 2018-09-18 | 2019-01-15 | 百度在线网络技术(北京)有限公司 | 一种区块链的数据修改方法、装置、设备和介质 |
CN109325784A (zh) * | 2018-09-27 | 2019-02-12 | 深圳市九耀健康科技有限公司 | 基于区块链的数据验证平台及其数据验证方法、存储设备 |
CN109325784B (zh) * | 2018-09-27 | 2022-05-20 | 深圳市九耀健康科技有限公司 | 基于区块链的数据验证平台及其数据验证方法、存储设备 |
CN110138566A (zh) * | 2019-05-14 | 2019-08-16 | 数字钱包(北京)科技有限公司 | 验证方法、装置、电子设备及计算机可读存储介质 |
CN110543526A (zh) * | 2019-10-31 | 2019-12-06 | 成都四方伟业软件股份有限公司 | 一种基于区块链的优化储存方法及系统 |
CN110543526B (zh) * | 2019-10-31 | 2020-05-19 | 成都四方伟业软件股份有限公司 | 一种基于区块链的优化储存方法及系统 |
CN113839989A (zh) * | 2021-08-28 | 2021-12-24 | 西安交通大学 | 一种多节点数据处理方法 |
CN113839989B (zh) * | 2021-08-28 | 2022-08-05 | 西安交通大学 | 一种多节点数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108470039A (zh) | 区块链中的数据处理方法和装置 | |
CN114944932B (zh) | 将区块添加到被许可的区块链的方法和系统 | |
CN107391291B (zh) | 修改区块链即有区块体数据的区块链勘误方法及系统 | |
CN111461751B (zh) | 基于区块链的房产信息链上组织方法、历史状态追溯方法及装置 | |
CN108171601B (zh) | 区块链溯源追踪方法、装置和系统 | |
CN106815330B (zh) | 沿空间维度拓展的区块链的生成方法及系统 | |
CN109255056B (zh) | 区块链的数据引用处理方法、装置、设备及存储介质 | |
CN107463597B (zh) | 针对修改区块体数据的区块链的被动验证方法及系统 | |
US20210049715A1 (en) | Blockchain-based data procesing method, apparatus, and electronic device | |
CN109492049B (zh) | 用于区块链网络的数据处理、区块生成及同步方法 | |
CN104346365A (zh) | 确定与特定业务相关的关联日志的方法和装置 | |
WO2020220251A1 (zh) | 区块链系统数据处理方法和区块的生成方法 | |
CN108510268B (zh) | 环形区块链结构、数据处理方法和装置 | |
CN107153646B (zh) | 一种数据处理方法和设备 | |
CN107391292B (zh) | 针对保持区块体数据实现勘误的区块链验证方法及系统 | |
CN107704604A (zh) | 一种消息持久化方法、服务器和计算机可读存储介质 | |
CN106650496B (zh) | 一种数据处理方法及装置 | |
CN107423163B (zh) | 整体串行增加区块的区块链的勘误方法及系统 | |
CN108512649A (zh) | 区块链的反向哈希链接的处理方法及装置 | |
CN111177795A (zh) | 一种利用区块链识别视频篡改的方法、装置和计算机存储介质 | |
CN107463596B (zh) | 针对设置链外勘误表的区块链并行查询方法及系统 | |
CN107451177B (zh) | 针对增加区块的单个勘误的区块链的查询方法及系统 | |
CN108519985B (zh) | 双向区块链、数据处理方法和装置 | |
CN107451002B (zh) | 针对修改区块体数据的区块链的主动验证方法及系统 | |
CN107451007B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180831 |
|
RJ01 | Rejection of invention patent application after publication |