CN108510254B - 链式双向区块链结构、数据处理方法和装置 - Google Patents
链式双向区块链结构、数据处理方法和装置 Download PDFInfo
- Publication number
- CN108510254B CN108510254B CN201810136667.2A CN201810136667A CN108510254B CN 108510254 B CN108510254 B CN 108510254B CN 201810136667 A CN201810136667 A CN 201810136667A CN 108510254 B CN108510254 B CN 108510254B
- Authority
- CN
- China
- Prior art keywords
- block
- chain
- existing
- transaction data
- blocks
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
- G06Q20/102—Bill distribution or payments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
Abstract
本发明实施例提供一种链式双向区块链结构、数据处理方法和装置,其中,链式双向区块链结构包括:至少一个链式双向链;所述链式双向链由多个区块沿两个相反方向顺序链接后而成,且按在后形成的链接方向中,每个在前区块中依次存储有该在前区块的后一区块中的数据经不可逆算法计算得到的校验值。本发明实施例的方案能够通过链式双向链接的区块指向关系,实现基于新生成的区块中的交易数据开启区块链中已有区块中的交易数据的处理逻辑。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种链式双向区块链结构、数据处理方法和装置。
背景技术
如图1所示,现有技术的区块链的结构都是以链状单向的方式进行延展的,后一个区块将基于前一个区块的内容计算获得的哈希值(Hash)写入到后一区块的区块头中,从而形成与前一个区块之间的逻辑关系。随着新数据的产生,区块链沿着箭头方向会不断地向前延展,并通过区块之间的哈希值的关系,形成不可逆的数据记录链条。
在上述区块链的逻辑体系中,只能体现和记录数据向前发展的内容和趋势。但是,实际上在数据的内容的生成和发展会有很多的变化和关系的存在,单纯的从前向后的记录逻辑必然会对区块链数据的发展产生限制。
发明内容
本发明提供了一种链式双向区块链结构、数据处理方法和装置,能够通过链式双向链接的区块指向关系,实现基于新生成的区块中的交易数据依次开启区块链中已有区块中的交易数据的处理逻辑。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种链式双向区块链结构,包括:至少一个链式双向链;
所述链式双向链由多个区块沿两个相反方向顺序链接后而成,且按在后形成的链接方向中,每个在前区块中依次存储有该在前区块的后一区块中的数据经不可逆算法计算得到的校验值。
第二方面,提供了一种数据处理方法,包括:
响应于包含开启区块链中已有区块的交易数据的新区块的生成,对新区块中的数据经不可逆算法计算得到校验值,并将该新区块的校验值按所述已有区块到所述新区块的链接方向反向逐层写入到所述已有区块中,形成以已有区块为首端区块、以新区块为末端区块的链式双向链接,以标识所述已有区块中交易数据被开启;
将形成具有开启区块链中已有区块中交易数据的链式双向链接的区块链中的新增数据向区块链网络进行广播。
第三方面,提供了一种数据处理装置,包括:
校验值计算模块,用于响应于包含开启区块链中已有区块的交易数据的新区块的生成,对新区块中的数据经不可逆算法计算得到校验值;
区块链接模块,用于将该新区块的校验值按所述已有区块到所述新区块的链接方向反向逐层写入到所述已有区块中,形成以已有区块为首端区块、以新区块为末端区块的链式双向链接,以标识所述已有区块中交易数据被开启;
数据广播模块,用于将形成具有开启区块链中已有区块中交易数据的链式双向链接的区块链中的新增数据向区块链网络进行广播。
本发明提供的链式双向区块链结构、数据处理方法和装置,通过链式双向链接的区块指向关系,可以基于新生成的区块中的交易数据开启区块链中已有区块中的交易数据,从而充分利用区块之间的反向链接结构来实现启用已有区块中交易数据的处理逻辑。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为现有技术的区块链的结构示意图;
图2为本发明实施例的反向链接结构示意图;
图3为本发明实施例的链式双向区块链结构示意图一;
图4为本发明实施例的链式双向区块链结构示意图二;
图5为本发明实施例的链式双向区块链结构示意图三;
图6为本发明实施例的链式双向区块链结构示意图四;
图7为本发明实施例示出的数据处理方法流程图一;
图8为本发明实施例示出的数据处理方法流程图二;
图9为本发明实施例示出的数据处理装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
区块链最初是伴随着着比特币的产生而提出的,因此,在描述区块链涉及的数据中,采用了交易数据和账本这样的表达,随着区块链技术的发展,其能够记录的信息和数据已经不限于传统意义上的交易数据,而是可以用来记录任何信息和数据。因此,在发明实施例中,交易数据是指一条信息、数据或者指令等,而账本是指由多个交易数据构成的集合体。
区块链是指由多个区块构成的经过区块链技术加密后的数据存储结构,区块链网络是指,有多个实现区块链技术的节点构成的网络。区块链网络中的节点,可以是互联网中具有处理区块链数据功能的服务器或者终端设备。区块链中的各个节点执行着对交易数据进行记账(将交易数据写入区块体)、将新区块链接到已有区块链上、对区块链进行存储和验证等功能。
本发明实施例的基本原理在于:通过包含开启区块链中已有区块的交易数据来指示节点建立反向链接,在经过多次反向链接后,进而建立链式双向链接,建立反向链接的时机是在新区块生成后。反向链接的建立方式,就是将这个新区块的数据经不可逆算法计算得到的校验值写入到之前的已有区块中,从而建立起一条从该新区块到已有区块的反向链接。通过从新区块开始依次建立当前区块到其父区块的反向链接直到链接到目标的已有区块,进而建立从该已有区块到新区块,以及从新区块再到已有区块的两个沿相反指向方向的链式双向链接。在新区块的建立过程中,节点会事先获取交易数据,在本发明实施例中,包含开启区块链中已有区块的交易数据可以是一种指令的形式,区块链中的节点在获取到该交易数据时,能够识别出该交易数据中指示的处理是建立反向链接,从而在生成新区块后,就触发建立多次的反向链接,进而建立链式双向链接的处理。
需要说明的是,本发明实施例中,区块之间的链接是一种逻辑意义上的链接,这种链接关系是通过区块链中的验证机制来体现的。在传统的区块链中,后一区块的区块头中记录着基于前一个区块生成的校验值,并基于这样的机制不断向前延展,从而形成链接方向始终向前的区块链。
如图2所示,该区块链中包含由区块4指向区块3的反向链接,即区块3的区块头中包含区块4的校验值hash2,由于反向链接的建立,导致区块3的内容被修改,当使用区块4中的记录的校验值对区块3进行验证时,由于区块3的区块头中出现了Hash2,基于修改后的区块3计算获得的校验值不等于区块4的区块头中记录的校验值,从而出现验证错误。
通过这种验证机制,就可以识别出反向链接的存在。在实际应用中,可以在每个区块的区块头中预留出用于填写反向校验值的数据区域,从而在后续验证过程中,当发现该区域中存在数据时,就能够获知该区块存在反向链接,然后再基于该数据对该区块之后的各个区块进行验证,找到基于哪个区块计算获得的该校验值,就可以获知完整的反向链接关系。
对于识别反向链接而言,还可以通过区块链勘误表的方式来实现。区块链勘误表可以认为是对区块链的不可篡改机制的一个补充,该区块链勘误表可以由管理区块链网络的监管节点来维护,其目的在于,用来执行一些对区块链的必要的修改,这些修改是在监管节点的监控下完成的,从而保证区块链数据的准确性。
对区块链中的各个区块的修改,可以记录在与区块链对应的区块链勘误表中,在该区块链勘误表中记录着修改所在的具体位置(区块编号和区块中数据的行号以及列号等),以及修改前后的信息或者数据。在验证的过程中,如果出现验证不通过的情形,可以查询该勘误表,确定该验证不通过的区块是否存在修改,如果存在,则可以用修改之前的数据或者信息再进行验证,如果通过,则可以确认该修改经过允许的,不是被恶意篡改。并且,在该区块链勘误表中,还可以进一步记录,该修改是否为反向链接的修改,以及具体是基于哪个区块生成的校验值等信息,从而便于识别出反向链接的逻辑关系。
下面通过多个实施例来进一步说明本申请的技术方案。
实施例一
基于上述区块链中反向链接结构及相应数据处理的方案思想,如图3所示,其为本发明实施例示出的链式双向区块链结构示意图一,包括:至少一个链式双向链(如图3中由Block2、Block4和Block5构成的链式双向链);
该链式双向链由多个区块沿两个相反方向顺序链接后而成,且按在后形成的链接方向(如图3中由Block5→Block4→Block2的方向)中,每个在前区块中依次存储有该在前区块的后一区块中的数据经不可逆算法计算得到的校验值。例如,该不可逆算法可以为哈希算法,相应的校验值为哈希值。
其中,所谓多个区块沿两个相反方向顺序链接是指,先按区块链正常从前往后延展的方向,先基于作为父区块的在前区块延展生成作为子区块的在后区块,然后再形成在后区块指向在前区块的反向链接,如此就形成了类似图3中的Block2→Block4→Block5的在先形成的链接方向和Block5→Block4→Block2的在后形成的链接方向所构成的具有链式双向链接的链条。而其中在前区块的定义,始终是按区块正常生成时的时间顺序定义,即按在先形成的链接方向定义,如图3中Block2和Block4始终是Block5的在前区块,Block2始终是Block4的在前区块。
相应的,按在后形成的链接方向(如图3中由Block5→Block4→Block2的方向)中,每个在前区块中依次存储有该在前区块的后一区块中的数据经不可逆算法计算得到的校验值,即Block4中存储有Block5的校验值,Block2中存储有Block4的校验值。
虽然理论上链式双向链中相邻两个区块互为父、子区块,在这两个区块的区块头中均应存储有对方区块中的数据经不可逆算法得到的校验值而看似矛盾,但是,由于这两个方向的链接是经先后顺序生成的也不会造成逻辑混淆。例如,先按在先形成的链接方向,在生成Block4时,先将Block2中的数据经不可逆算法得到校验值,并将该校验值记录在Block4的区块头中;然后在按在后形成的链接方向中,再将包含有Block2及Block5的校验值的Block4中的所有数据经不可逆算法得到校验值,并将该校验值记录在Block2的区块头中。换言之,Block2中既存储了原父区块的校验值,同时还存储了子区块Block4的校验值。
实际上,链式双向链结构可以视为多个顺序相邻的区块,先沿正常延展的方向(在先形成的链接方向)形成链接(Block2→Block4→Block5的指向链接),然后沿与正常延展的方向相反的方向(在后形成的链接方向)形成链接(Block5→Block4→Block2的指向链接)后所构成。
基于形成反向链接时,需要对具有反向链接关系的两个区块中的在前区块的修改,从而导致的校验无法通过的逻辑,可以设定该在前区块中的交易数据在形成时为关闭状态(即交易数据不可用)在形成反向链接之后,才设置交易数据被开启(即交易数据可用)。基于这种数据被开启的逻辑关系,在在后形成的链接方向中每个在前区块由于与其后的区块形成反向链接关系而依次被开启,并最终开启链式双向链中的首端区块中的交易数据。在形成的链式双向链中还可以对上述开启的逻辑关系进行拓展。比如,设置链式双向链中当首端区块中的交易数据被开启后,与该首端区块链接的其他区块中的交易数据也同步被开启等。
进一步地,在一个区块链中可以同时包含多个上述链式双向链结构,且这些链式双向链中的区块之间可以相互分离从而形成互不链接的多个链式双向链,也可以通过共用至少一个区块而相互链接在一起。
例如,上述链式双向区块链结构中可包括至少两个链式双向链,两个链式双向链共用一个首端区块,且首端区块中分别存储有该两个链式双向链中首端区块的下一区块中的数据经不可逆算法计算得到的校验值。
如图4所示,为示出的两个双向链共用一个首端区块的区块链形态图。其中两个虚线框各自对应一个链式双向链,且Block2为这两个链式双向链的共用首端区块,且Block2的区块头中分别记录了后一区块Block4和Block6的校验值。
基于图4所示结构在实际场景中的具体应用,可以设置这样的开启区块链中已有区块的逻辑,即当包含开启区块链中已有区块的交易数据存储于至少两个新区块中;则当包含开启区块链中已有区块的交易数据的全部新区块被生成,并且形成相应数量的多个链式双向链接后,才确定该已有区块中交易数据被最终开启。
如图4中所示,假设在后区块Block5和在后区块Block7中记录有用于开启Block2的所有交易数据,那么可以在Block5和区块Block4、在Block4和区块Block2之间形成反向链接,同时在Block7和区块Block6、在Block6和区块Block2之间形成反向链接,在形成上述两个链式双向链后,才最终确定Block2中的交易数据有效,交易数据被开启。
又例如,上述链式双向区块链结构中可包括至少两个双向链,两个双向链共用一个末端区块,且末端区块中分别存储有该两个链式双向链中末端区块的上一区块中的数据经不可逆算法计算得到的校验值。
如图5所示,为示出的两个链式双向链共用一个末端区块的区块链形态图。其中两个虚线框各自对应一个链式双向链,且Block6为这两个链式双向链的共用末端区块,且Block6中分别记录了其所在的两个链式双向链中前一区块Block4和Block5的校验值。
基于图5所示结构在实际场景中的具体应用,可以设置这样的开启区块链中已有区块的逻辑,即当包含开启区块链中多个已有区块的交易数据存储于同一个新区块中;则当包含开启区块链中多个已有区块的交易数据的该同一新区块被生成,并且形成相应数量的多个链式双向链接后,分别确定该多个已有区块中交易数据被开启。
如图5中所示,假设末端区块Block6中记录有用于开启Block2和Block3的交易数据,那么可以在Block6与Block4形成反向链接,Block4与Block2形成反向链接进而形成链式双向链后,确定Block2中的交易数据有效,交易数据被开启;在Block6与Block5形成反向链接,Block5与Block3形成反向链接进而形成链式双向链后,确定Block3中的交易数据有效,交易数据被开启。在Block2、Block3中的交易数据被确认开启后,还可以根据预置处理逻辑,将可能存在的与这两个链式双向链中首端区块相互链接的其他区块中的交易数据也一并设置为有效。
这里需要说明的是,在链式双向链中位于非首、末端的区块中也可记录开启其前一区块的交易数据,只是这些交易数据在初建后为关闭状态,只有在该区块与其后一个链接的区块形成反向链接后才会被后一区块中的交易数据所开启,在该区块中的交易数据被开启后,可以继续建立该区块与其前一区块的反向链接关系,进而开启前一区块中的交易数据;又或者,这些在链式双向链中位于非首、末端的区块中也可记录开启首个区块的部分交易数据,而末端区块中记录了开启首端区块中的最后一部分交易数据,所以在末端区块形成后,就可以从末端区块开始依次传递与前一区块形成反向链接,最终开启首端区块中的交易数据。由此可见,在链式双向链中的末端区块为开启整个链式双向链中各区块的最后一部分交易数据所在区块,只有该区块被创建后才可以陆续开启在前的区块中的交易数据,或者通过反向链接依次向前传递开启操作直到首端区块,而链式双向链中的首端区块中的交易数据即为最后被开启的数据。
进一步地,在上述任一种链式双向区块链结构中,还可以包括与双向链中首端区块链接的区块和/或子区块链。例如图6所示为在图3所示结构的基础上,与Block2还链接有区块Block6,以及由Block7和Block8构成的包含两个区块的子区块链。
在实际应用场景中,例如图6所示,在Block2中的交易数据被确认开启后,还可以根据预置处理逻辑,将与该链式双向链中的首端区块(Block2)相互链接的其他区块(Block6)和/或子区块链(由Block7和Block8构成的子区块链)的区块中的交易数据也一并设置为有效。
类似的,在实际应用场景中,例如图4所示,在Block2中的交易数据被确认开启后,还可以根据预置处理逻辑,将与该链式双向链中的共用首端区块Block2相互链接的其他区块和/或子区块链的区块中的交易数据也一并设置为有效。
类似的,在实际应用场景中,例如图5所示,在Block2、Block3中的交易数据被确认有效后,还可以根据预置处理逻辑,将与Block2、Block3相互链接的其他区块和/或子区块链的区块中的交易数据也一并设置为有效。
本发明实施例提供的链式双向区块链结构,通过链式双向链接的区块指向关系,可以实现基于新生成的区块中的交易数据依次开启区块链中已有区块中的交易数据的处理逻辑。
进一步地,在形成的至少两个链式双向链中,可以包含共用的一个首端区块,从而实现基于多个新生成的区块中的交易数据开启区块链中已有区块中的交易数据的处理逻辑。
进一步地,在形成的至少两个链式环形链中,可以包含共用的一个末端区块,从而实现基于同一新生成的区块中的交易数据开启区块链中多个已有区块中的交易数据的处理逻辑。
进一步地,在形成的双向链中,可以包含与链式双向链中首端区块链接的区块和/或子区块链,从而实现在基于新生成的区块中的交易数据开启区块链中已有区块中的交易数据的同时,同步开启与链式双向链中首端区块链接的其他区块中的交易数据的处理逻辑。
实施例二
基于上述区块链中反向链接结构及相应数据处理的方案思想,如图7所示,其为本发明实施例示出的数据处理方法流程图一,该方法的执行主体可以为区块链中的处理节点。如图7所示,该数据处理方法包括:
S710,响应于包含开启区块链中已有区块的交易数据的新区块的生成,对新区块中的数据经不可逆算法计算得到校验值;
S720,将新区块的校验值按已有区块到新区块的链接方向反向逐层写入到已有区块中,形成以已有区块为首端区块、以新区块为末端区块的链式双向链接,以标识已有区块中交易数据被开启。
在区块链延展生成新区块的过程中,如果当前新区块中存储用于开启已有区块的交易数据,那么在生成该新区块后,先将新区块按当前区块链的延展方向链接到区块链中,并将新区块中的数据经不可逆算法计算得到校验值,并将该新区块的校验值写入到该新区块的父区块中,从而形成以新区块的父区块为在先区块、以新区块为在后区块的反向链接;接着再以新区块的父区块的父区块为在先区块,以新区块的父区块为在后区块形成反向链接;以此类推,直到以被开启的已有区块作为首端区块建立反向链接,从而最终形成以已有区块为首端区块、以新区块为末端区块的链式双向链接。该链式双向链接用以标识已有区块中交易数据被开启。
其中,上述不可逆算法可以为哈希算法,相应的校验值为哈希值。
这里所谓的交易数据被开启即指交易数据有效,后续可基于这些被开启的交易数据生成新的交易数据对应的新区块。
比如,在资产的处理领域中,可能存在如下需求:在某个指定区块集中发售一批资产,但该资产初始为无效状态,在满足一定条件后,在之后的一个区块中执行一个特殊的交易,把之前指定区块的资产全部启动。上述的条件,可以是经过一定的时间,比如,对于一些尚处于质检期的商品,在质检通过后,该商品就具备出售的价值了。另外,上述条件也可以是资产的形态出现变化(初始化为无效),当这种变化发生时,就要通过特殊的交易数据来触发该资产进入有效状态。
针对这种情形,就可以通过一个特殊交易数据触发逐层建立多个反向链接,直到链接到包含该资产的指定区块,进而将之前的指定区块中的交易数据进行开启处理,从而使得之前区块的资产从无效变为有效状态。
S730,将形成具有开启区块链中已有区块中交易数据的链式双向链接的区块链中的新增数据向区块链网络进行广播。
由于链式双向链接中包含反向链接,且反向链接涉及到之前的已有区块的修改,因此,在节点生成新区块后,不仅要广播新区块,也需要将已有区块中的新增数据向区块链网络进行广播,以通过多个节点的共识机制对最终的区块链的执行验证和确认。
进一步地,在上述方法步骤中,如果包含开启区块链中已有区块的交易数据存储于至少两个新区块中,则图7所示方法步骤还可以具体细化为图8所示方法步骤,包括:
S810,响应于包含开启区块链中已有区块的交易数据的新区块的生成,对新区块中的数据经不可逆算法计算得到校验值;
S820,将新区块的校验值按已有区块到新区块的链接方向反向逐层写入到已有区块中,形成以已有区块为首端区块、以新区块为末端区块的链式双向链接;
步骤S810~S820与上述步骤S710~S720的内容相似。
具体地,上述包含关闭区块链中已有区块的交易数据可存储于至少两个新区块中。因此,基于已有区块形成的双向链接可以为多个。
S830,当包含开启区块链中已有区块的交易数据的全部新区块被生成,形成相应数量的多个链式双向链接后,确定已有区块中交易数据被最终开启。
在区块链延展生成新区块的过程中,用于开启已有区块的交易数据可能位于不同的新区块中,这些新区块被全部生成后,可将新区块中的数据经不可逆算法计算得到校验值,并将该新区块的校验值按已有区块到新区块的链接方向逐层反向写入到上一区块中,直到写入到已有区块中,从而形成以已有区块为首端区块、以各新区块为末端区块的多个链式双向链接。该多个链式双向链接共同用以标识已有区块中交易数据被开启。即基于每个新区块所形成的链式双向链均可以作为开启已有区块中交易数据的非充分必要条件。
S840,将形成具有开启区块链中已有区块中交易数据的链式双向链接的区块链中的新增数据向区块链网络进行广播。
步骤S840与上述步骤S730的内容相同。
进一步地,在确定区块链中已有区块中交易数据被开启后,还可以确定与该已有区块链接的其他区块中交易数据同步被开启。
比如,在资产的处理领域中,可能存在如下需求:在某个指定区块集中发售一批资产,但该资产初始为无效状态,并且与该区块还链接有基于这批资产进行的其他资产交易(初始为无效状态),在满足一定条件后,在之后的一个区块中执行一个特殊的交易,把之前指定区块的资产全部启动,同时基于该资产所形成的其他相关资产交易也同步被开启。上述的条件,可以是经过一定的时间,比如,对于一些尚处于质检期的商品,在质检通过后,该商品就具备出售的价值了,而基于这些商品的相关业务(这部分交易数据被存储在与之前指定区块链接的其他区块中)也需要被开启。另外,上述条件也可以是资产的形态出现变化(初始化为无效),当这种变化发生时,就要通过特殊的交易数据来触发该资产进入有效状态。与此同时,基于这些资产的其他交易(这部分交易数据被存储在与之前指定区块链接的其他区块中)也可同步被开启。
本发明实施例数据处理方法,基于链式双向链接的区块指向关系,可以实现基于新生成的区块中的交易数据逐层开启区块链中已有区块中的交易数据的处理逻辑。
进一步地,当包含开启区块链中已有区块的交易数据存储于至少两个新区块中时,只有两个新区块所在的链式双向链接形成后,才最终标识已有区块中的交易数据被开启。
进一步地,在确定区块链中已有区块中交易数据被开启后,还可以确定与该已有区块链接的其他区块中交易数据同步被开启。
实施例三
如图9所示,其为本发明实施例示出的数据处理装置的结构示意图一该装置可以为设置在网络中的服务器,用于执行实施例二中所示的方法步骤。如图9所示,该数据处理装置包括:
校验值计算模块910,用于响应于包含开启区块链中已有区块的交易数据的新区块的生成,对新区块中的数据经不可逆算法计算得到校验值;
区块链接模块920,用于将新区块的校验值按已有区块到新区块的链接方向反向逐层写入到已有区块中,形成以已有区块为首端区块、以新区块为末端区块的链式双向链接,以标识已有区块中交易数据被开启;
数据广播模块930,用于将形成具有开启区块链中已有区块中交易数据的链式双向链接的区块链中的新增数据向区块链网络进行广播。
进一步地,上述包含开启区块链中已有区块的交易数据存储于至少两个新区块中;
相应的,区块链接模块920还用于,
当包含开启区块链中已有区块的交易数据的全部新区块被生成,形成相应数量的多个链式双向链接后,确定已有区块中交易数据被最终开启。
进一步地,上述区块链接模块920还用于,
在确定区块链中已有区块中交易数据被开启后,确定与该已有区块链接的其他区块中交易数据同步被开启。
本发明实施例数据处理装置,基于链式双向链接的区块指向关系,可以实现基于新生成的区块中的交易数据逐层开启区块链中已有区块中的交易数据的处理逻辑。
进一步地,当包含开启区块链中已有区块的交易数据存储于至少两个新区块中时,只有两个新区块所在的链式双向链接形成后,才最终标识已有区块中的交易数据被开启。
进一步地,在确定区块链中已有区块中交易数据被开启后,还可以确定与该已有区块链接的其他区块中交易数据同步被开启。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (6)
1.一种数据处理方法,其特征在于,包括:
响应于包含开启区块链中已有区块的交易数据的新区块的生成,对新区块中的数据经不可逆算法计算得到校验值,并将该新区块的校验值按所述已有区块到所述新区块的链接方向反向逐层写入到所述已有区块中,形成以已有区块为首端区块、以新区块为末端区块的链式双向链接,以标识所述已有区块中交易数据被开启;
将形成具有开启区块链中已有区块中交易数据的链式双向链接的区块链中的新增数据向区块链网络进行广播。
2.根据权利要求1所述的方法,其特征在于,所述包含开启区块链中已有区块的交易数据存储于至少两个新区块中;
所述方法还包括:
当包含开启区块链中已有区块的交易数据的全部新区块被生成,形成相应数量的多个链式双向链接后,确定所述已有区块中交易数据被最终开启。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
在确定区块链中已有区块中交易数据被开启后,确定与该已有区块链接的其他区块中交易数据同步被开启。
4.一种数据处理装置,其特征在于,包括:
校验值计算模块,用于响应于包含开启区块链中已有区块的交易数据的新区块的生成,对新区块中的数据经不可逆算法计算得到校验值;
区块链接模块,用于将该新区块的校验值按所述已有区块到所述新区块的链接方向反向逐层写入到所述已有区块中,形成以已有区块为首端区块、以新区块为末端区块的链式双向链接,以标识所述已有区块中交易数据被开启;
数据广播模块,用于将形成具有开启区块链中已有区块中交易数据的链式双向链接的区块链中的新增数据向区块链网络进行广播。
5.根据权利要求4所述的装置,其特征在于,所述包含开启区块链中已有区块的交易数据存储于至少两个新区块中;
所述区块链接模块用于,
当包含开启区块链中已有区块的交易数据的全部新区块被生成,形成相应数量的多个链式双向链接后,确定所述已有区块中交易数据被最终开启。
6.根据权利要求4或5所述的装置,其特征在于,所述区块链接模块还用于,
在确定区块链中已有区块中交易数据被开启后,确定与该已有区块链接的其他区块中交易数据同步被开启。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810136667.2A CN108510254B (zh) | 2018-02-09 | 2018-02-09 | 链式双向区块链结构、数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810136667.2A CN108510254B (zh) | 2018-02-09 | 2018-02-09 | 链式双向区块链结构、数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108510254A CN108510254A (zh) | 2018-09-07 |
CN108510254B true CN108510254B (zh) | 2020-11-20 |
Family
ID=63375683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810136667.2A Active CN108510254B (zh) | 2018-02-09 | 2018-02-09 | 链式双向区块链结构、数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108510254B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408521A (zh) * | 2018-09-28 | 2019-03-01 | 上海擎沣投资控股有限公司 | 一种用于更新区块链全局数据状态的方法及其装置 |
CN111522831B (zh) * | 2020-04-30 | 2020-12-29 | 中科软科技股份有限公司 | 一种联盟链账本平台的数据记录方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02216552A (ja) * | 1989-02-17 | 1990-08-29 | Hokkaido Nippon Denki Software Kk | データベースシステムのデータ領域解放方式 |
CN106330431A (zh) * | 2016-08-29 | 2017-01-11 | 北京瑞卓喜投科技发展有限公司 | 基于区块链技术的数据处理方法、装置及系统 |
CN106503589A (zh) * | 2016-10-26 | 2017-03-15 | 北京瑞卓喜投科技发展有限公司 | 区块链交易信息正确性的校验方法、装置及系统 |
CN106779975A (zh) * | 2017-01-11 | 2017-05-31 | 合肥工业大学 | 基于区块链的信誉信息的防篡改方法 |
CN107066495A (zh) * | 2016-12-29 | 2017-08-18 | 北京瑞卓喜投科技发展有限公司 | 沿纵向拓展的区块链的生成方法及系统 |
EP3260979A1 (en) * | 2016-06-14 | 2017-12-27 | Royal Bank Of Canada | Verification of data processes in a network of computing resources |
CN107656812A (zh) * | 2017-09-27 | 2018-02-02 | 咪咕文化科技有限公司 | 区块链处理方法、系统、节点设备、终端和存储介质 |
-
2018
- 2018-02-09 CN CN201810136667.2A patent/CN108510254B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02216552A (ja) * | 1989-02-17 | 1990-08-29 | Hokkaido Nippon Denki Software Kk | データベースシステムのデータ領域解放方式 |
EP3260979A1 (en) * | 2016-06-14 | 2017-12-27 | Royal Bank Of Canada | Verification of data processes in a network of computing resources |
CN106330431A (zh) * | 2016-08-29 | 2017-01-11 | 北京瑞卓喜投科技发展有限公司 | 基于区块链技术的数据处理方法、装置及系统 |
CN106503589A (zh) * | 2016-10-26 | 2017-03-15 | 北京瑞卓喜投科技发展有限公司 | 区块链交易信息正确性的校验方法、装置及系统 |
CN107066495A (zh) * | 2016-12-29 | 2017-08-18 | 北京瑞卓喜投科技发展有限公司 | 沿纵向拓展的区块链的生成方法及系统 |
CN106779975A (zh) * | 2017-01-11 | 2017-05-31 | 合肥工业大学 | 基于区块链的信誉信息的防篡改方法 |
CN107656812A (zh) * | 2017-09-27 | 2018-02-02 | 咪咕文化科技有限公司 | 区块链处理方法、系统、节点设备、终端和存储介质 |
Non-Patent Citations (2)
Title |
---|
Building a block cipher mode of operation with feedback keys;Yi-Li Huang;《2013 IEEE International Symposium on Industrial Electronics》;20130722;全文 * |
区块链技术在我国社会信用体系建设中的应用研究;刘财林;《征信》;20170906(第8期);第28~32页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108510254A (zh) | 2018-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108462582B (zh) | 区块链中的反馈处理方法和装置 | |
CN108510268B (zh) | 环形区块链结构、数据处理方法和装置 | |
KR102008001B1 (ko) | 블록체인을 이용하여 스마트 계약을 생성하는 시스템 | |
CN107391291B (zh) | 修改区块链即有区块体数据的区块链勘误方法及系统 | |
CN105431905B (zh) | 具有内部读取-修改-写入操作的存储部件 | |
CN108108127B (zh) | 一种文件读取方法及系统 | |
CN106909605B (zh) | 沿横向拓展的区块链的生成方法及系统 | |
CN108510254B (zh) | 链式双向区块链结构、数据处理方法和装置 | |
CN111488291B (zh) | 区块链网络的压力测试方法及装置、系统 | |
CN103916483A (zh) | 一种针对编码冗余存储系统的自适应数据存储与重构方法 | |
CN110599174B (zh) | 一种区块链信息处理方法及相关设备 | |
CN107391292B (zh) | 针对保持区块体数据实现勘误的区块链验证方法及系统 | |
WO2022222786A1 (zh) | 文件存证的方法、装置及设备 | |
KR102172514B1 (ko) | 블록체인 기반 테스트 데이터 관리 방법 및 블록체인 노드 장치 | |
CN108519985B (zh) | 双向区块链、数据处理方法和装置 | |
JPWO2019038839A1 (ja) | ブロックチェーン管理装置、ブロックチェーン管理方法及びプログラム | |
CN110096903A (zh) | 基于区块链的资产验证方法及区块链网络系统 | |
CN112182105B (zh) | 一种基于Merkle树的区块链数据修改方法 | |
CN111461751A (zh) | 基于区块链的房产信息链上组织方法、历史状态追溯方法及装置 | |
US20200193430A1 (en) | Determining generation time for blockchain data | |
CN113362068B (zh) | 一种轻节点验证区块链状态转移的方法 | |
CN107451002B (zh) | 针对修改区块体数据的区块链的主动验证方法及系统 | |
CN105630619A (zh) | 一种帧序列处理方法及系统 | |
US20210099772A1 (en) | System and method for verification of video integrity based on blockchain | |
CN108520410B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |