CN113064759A - 一种区块链数据回滚处理方法及其处理系统 - Google Patents
一种区块链数据回滚处理方法及其处理系统 Download PDFInfo
- Publication number
- CN113064759A CN113064759A CN202110359352.6A CN202110359352A CN113064759A CN 113064759 A CN113064759 A CN 113064759A CN 202110359352 A CN202110359352 A CN 202110359352A CN 113064759 A CN113064759 A CN 113064759A
- Authority
- CN
- China
- Prior art keywords
- data
- rollback
- node
- verification
- block 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
- 238000012545 processing Methods 0.000 title claims abstract description 22
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000012795 verification Methods 0.000 claims abstract description 96
- 238000000034 method Methods 0.000 claims abstract description 37
- 230000002159 abnormal effect Effects 0.000 claims abstract description 12
- 238000012790 confirmation Methods 0.000 claims abstract description 10
- 230000005856 abnormality Effects 0.000 claims abstract description 4
- 238000012546 transfer Methods 0.000 claims description 13
- 238000005096 rolling process Methods 0.000 claims description 9
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- 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
-
- 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
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明提供了一种区块链数据回滚处理方法及其处理系统,首先检测校验用户新增业务数据,并将其写入预设数据库并校验写入过程中是否发生异常,将所述业务数据发送至验证节点进行确认,将所述验证节点所确认的区块写入区块链;若区块链本身发生异常,共识节点生成并发送数据回滚请求至共识领导节点进行校验,共识领导节点生成数据回滚结构体并进行签名,发送到区块链网络;共识节点接收并校验所述数据回滚结构体,校验通过,则生成赞成票;共识领导节点统计赞成票的数量,判断能否进行回滚操作。本发明提供的区块链数据回滚处理方法及其处理系统,降低存在脏数据问题的风险,便于实现区块链的数据回滚,能够对回滚造成的用户损失进行保险赔付。
Description
技术领域
本发明涉及区块链技术领域,特别是涉及一种区块链数据回滚处理方法及其处理系统。
背景技术
在传统数据库中,管理员拥有对数据库进行任意修改的权限,这意味着数据库中的数据出现异常,管理员一个人就可以实现数据的修正。区块链的本质是一种链式数据库,但是在区块链中,并没有这个管理员,只能实现数据的增和查,不能删和改,想要实现数据修正,必须所有用户同意才可以,所以一旦数据上链,则无法篡改。而且在处理新增业务数据时,首先是执行区块链的写链操作,然后在执行数据库写库操作,当数据库写库发生异常时,往往需要造成区块链的回滚操作,此时由于区块链未能增加事务处理,会存在脏数据的问题,在区块链进行回滚时,造成的用户的损失也往往没有保险赔付,因此,设计一种新型区块链数据回滚处理方法及其处理系统是十分有必要的。
发明内容
本发明的目的是提供一种区块链数据回滚处理方法及其处理系统,降低存在脏数据问题的风险,便于实现区块链的数据回滚,能够对回滚造成的用户损失进行保险赔付。
为实现上述目的,本发明提供了如下方案:
一种区块链数据回滚处理方法,包括如下步骤:
步骤1:检测并校验用户新增的业务数据,校验通过后,将新增的业务数据写入预设数据库并校验写入过程中是否发生异常;
步骤2:若写入过程中未发生异常,则将所述业务数据发送至验证节点进行确认,经过确认后,将所述验证节点所确认的区块写入到区块链;
步骤3:若区块链本身发生异常,则通过任一共识节点或账本节点生成数据回滚请求,并将其发送至区块链中末尾区块的共识领导节点,共识领导节点对所述数据回滚请求进行验证,验证通过后,共识领导节点生成数据回滚结构体并进行签名,将签名后的数据回滚结构体发送到区块链网络;
步骤4:每一共识节点或账本节点接收并校验所述数据回滚结构体,若校验通过,则生成赞成票发送到共识网络;
步骤5:共识领导节点统计赞成票的数量,并将赞成票的数量与设定值相比较,若小于设定值,则不进行回滚操作,若大于设定值,则进行回滚操作。
可选的,步骤1中,检测并校验用户新增的业务数据,具体为:
若检测到用户新增的业务数据时,则对所述业务数据的合法性及完整性进行校验,若校验通过,将新增的业务数据写入预设数据库中,若校验不通过,则不进行操作。
可选的,步骤1中,校验写入过程中是否发生异常,具体为:
校验将所述业务数据写入到预设数据库中,是否违反唯一约束,若违反,则判定写入过程中发生异常,并将业务数据回滚到写入新增业务数据之前的状态,若不违反,则判定写入过程中未发生异常,执行步骤2。
可选的,步骤2中,将所述业务数据发送至验证节点进行确认,具体为:
判断所述业务数据是否发送至验证节点,若未发送至验证节点,则将业务数据回滚到写入新增业务数据之前的状态,若成功发送至验证节点,则将所述验证节点所确认的区块写入到区块链。
可选的,步骤3中,共识领导节点对数据回滚请求进行验证,验证通过后,生成数据回滚结构体并进行签名,将数据回滚结构体发送到区块链网络,具体为:
验证数据回滚请求的签名是否为发送请求的账本节点或共识节点的签名,若验证不通过则终止操作,若验证通过,进一步验证回滚区块高度是否在设定的回滚区块高度范围内,若验证不通过则终止操作,若验证通过,则进一步验证回滚原因是否属于设定范围,若验证不通过则终止操作,若验证通过,进一步验证待回滚区块哈希是否在待回滚区块高度所对应的区块内,若验证不通过则终止操作,若验证通过,共识领导节点生成数据回滚结构体并进行签名,将数据回滚结构体发送到区块链网络,其中数据回滚结构体包括数据回滚请求及共识领导节点的签名。
可选的,步骤4中,每一共识节点或账本节点接收并校验所述数据回滚结构体,具体为:
共识节点或账本节点校验数据回滚请求,若校验不通过则终止操作,若校验通过,则进一步校验所述回滚结构体的签名是否为共识领导节点的签名,若校验不通过,则终止操作,若校验通过,共识节点生成赞成票并签名,将签名后的赞成票发送到共识网络。
可选的,步骤4中,共识领导节点统计赞成票的数量,具体为:
共识领导节点校验赞成票的签名是否为发送赞成票的共识节点的签名,若校验通过,则赞成票的数量加一,若校验不通过,则不做处理。
可选的,所述方法还包括,在发生转账交易时,通过智能合约制定保险条约,在步骤5中所述回滚操作完成后,根据每笔转账交易通过保险条约进行赔付,具体为:
根据转账交易生成赔付请求交易,并发送至区块链网络,验证节点验证赔付请求交易是否合法,若合法则根据保险条约进行赔付,向当前用户的账户发放赔付款。
本发明还提供了一种区块链数据回滚处理系统,应用于所述区块链数据回滚处理方法,包括:
业务数据校验模块,用于检测新增的业务数据,并对所述业务数据进行校验;
业务数据写库模块,用于将校验通过的业务数据写入预设数据库;
业务数据写链模块,用于将所述验证节点所确认的区块写入到区块链;
预设数据库回滚模块,用于在用户新增业务数据校验失败、业务数据写入过程中发生异常或验证节点确认业务数据失败时,将业务数据回滚到写入新增业务数据之前的状态;
数据回滚请求模块,用于供共识节点或账本节点生成并发送数据回滚请求;
数据回滚校验模块,用于校验数据回滚请求的真实性;
数据回滚投票模块,用于生成数据回滚结构体,并发送至区块链网络,供所有共识节点投票,统计赞成票的数量,决定是否进行数据回滚;
数据回滚执行模块,用于执行数据回滚操作;
回滚赔付模块,用于对在回滚过程中造成损失的用户进行赔付。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明提供的区块链数据回滚处理方法及其处理系统,对数据入链事务处理调整了执行顺序,减少了区块链脏数据问题的出现,降低了系统性能的损耗,可以方便快捷的实现区块链数据回滚的投票,也能够对区块链数据回滚对用户造成的损失进行赔付;首先检测并校验用户新增的业务数据,判断该业务数据是否符合合法性和完整性,只有校验通过后才会将新增的业务数据写入预设数据库,进一步降低写入无效业务数据的可能性,判断业务数据写入到预设数据库中是否违反唯一约束,只有不违反时,才能进行下一步操作,将业务数据发送至验证节点,并判断验证节点是否收到,只有在验证节点收到的情况下,才能将所述验证节点所确认的区块写入到区块链,防止出现区块链脏数据的问题,当出现用户新增业务数据校验失败、业务数据写入过程中发生异常或验证节点确认业务数据失败的情况时,均将业务数据回滚到新增业务数据之前的状态;当区块链本身发生异常,不得不进行回滚操作时,通过发现异常的任一共识节点或账本节点生成并发送数据回滚请求至区块链中末尾区块的共识领导节点,共识领导节点校验数据回滚请求的签名与发送数据回滚请求的账本节点或者共识节点的签名是否一致,待回滚区块高度是否在预先设定的回滚区块高度范围内,回滚的原因是否符合,待回滚区块哈希是否在待回滚区块高度所对应的区块内,当以上要求都符合时,才会执行下一步的操作,共识领导节点生成数据回滚结构体并进行签名,并将签名后的数据回滚结构体发送到区块链网络,供每个共识节点或账本节点进行投票,每一共识节点或账本节点接收并校验所述数据回滚结构体,若校验通过,则生成赞成票发送到共识网络,共识领导节点统计赞成票的数量,并将数量与设定值相比较,若高于设定值,则执行回滚操作;在发生转账交易时,通过智能合约指定保险条约,在回滚操作完成后,根据转账交易生成赔付请求交易,并发送至区块链网络,验证节点验证赔付请求交易是否合法,若合法则根据保险条约进行赔付,向当前用户的账户发放赔付款,可以提高用户对区块链的使用满意度;所述系统为功能模块化设计,能够实现上述所有方法。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例区块链数据回滚处理方法流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种区块链数据回滚处理方法及其处理系统,降低存在脏数据问题的风险,便于实现区块链的数据回滚,能够对回滚造成的用户损失进行保险赔付。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为发明实施例区块链数据回滚处理方法流程示意图,如图1所示,本发明实施例提供的区块链数据回滚处理方法,包括如下步骤:
步骤1:检测并校验用户新增的业务数据,校验通过后,将新增的业务数据写入预设数据库并校验写入过程中是否发生异常;
步骤2:若写入过程中未发生异常,则将所述业务数据发送至验证节点进行确认,经过确认后,将所述验证节点所确认的区块写入到区块链;
步骤3:若区块链本身发生异常,则通过任一共识节点或账本节点生成数据回滚请求,并将其发送至区块链中末尾区块的共识领导节点,共识领导节点对所述数据回滚请求进行验证,验证通过后,共识领导节点生成数据回滚结构体并进行签名,将签名后的数据回滚结构体发送到区块链网络;
步骤4:每一共识节点或账本节点接收并校验所述数据回滚结构体,若校验通过,则生成赞成票发送到共识网络;
步骤5:共识领导节点统计赞成票的数量,并将赞成票的数量与设定值相比较,若小于设定值,则不进行回滚操作,若大于设定值,则进行回滚操作。
所述数据回滚请求包括回滚数据、回滚数据的签名,所述回滚数据包括待回滚区块高度、待回滚区块哈希及回滚原因、发送数据回滚请求的账本节点或者共识节点的节点地址。
步骤1中,检测并校验用户新增的业务数据,具体为:
若检测到用户新增的业务数据时,则对所述业务数据的合法性及完整性进行校验,若校验通过,将新增的业务数据写入预设数据库中,若校验不通过,则不进行操作。
步骤1中,校验写入过程中是否发生异常,具体为:
校验将所述业务数据写入到预设数据库中,是否违反唯一约束,若违反,则判定写入过程中发生异常,并将业务数据回滚到写入新增业务数据之前的状态,若不违反,则判定写入过程中未发生异常,执行步骤2。
步骤2中,将所述业务数据发送至验证节点进行确认,具体为:
判断所述业务数据是否发送至验证节点,若未发送至验证节点,则将业务数据回滚到写入新增业务数据之前的状态,若成功发送至验证节点,则将所述验证节点所确认的区块写入到区块链。
步骤3中,共识领导节点对数据回滚请求进行验证,验证通过后,生成数据回滚结构体并进行签名,将数据回滚结构体发送到区块链网络,具体为:
验证数据回滚请求的签名是否为发送请求的账本节点或共识节点的签名,若验证不通过则终止操作,若验证通过,进一步验证回滚区块高度是否在设定的回滚区块高度范围内,若验证不通过则终止操作,若验证通过,则进一步验证回滚原因是否属于设定范围,若验证不通过则终止操作,若验证通过,进一步验证待回滚区块哈希是否在待回滚区块高度所对应的区块内,若验证不通过则终止操作,若验证通过,共识领导节点生成数据回滚结构体并进行签名,将数据回滚结构体发送到区块链网络,其中数据回滚结构体包括数据回滚请求及共识领导节点的地址。
步骤4中,每一共识节点或账本节点接收并校验所述数据回滚结构体,具体为:
共识节点或账本节点校验数据回滚请求,若校验不通过则终止操作,若校验通过,则进一步校验所述回滚结构体的签名是否为共识领导节点的签名,若校验不通过,则终止操作,若校验通过,共识节点生成赞成票并签名,将签名后的赞成票发送到共识网络。
步骤4中,共识领导节点统计赞成票的数量,具体为:
共识领导节点校验赞成票的签名是否为发送赞成票的共识节点的签名,若校验通过,则赞成票的数量加一,若校验不通过,则不做处理。
所述方法还包括,在发生转账交易时,通过智能合约制定保险条约,在步骤5中所述回滚操作完成后,根据每笔转账交易通过保险条约进行赔付,具体为:
根据转账交易生成赔付请求交易,并发送至区块链网络,验证节点验证赔付请求交易是否合法,若合法则根据保险条约进行赔付,向当前用户的账户发放赔付款。
本发明还提供了一种区块链数据回滚处理系统,应用于所述区块链数据回滚处理方法,包括:
业务数据校验模块,用于检测新增的业务数据,并对所述业务数据进行校验;
业务数据写库模块,用于将校验通过的业务数据写入预设数据库;
业务数据写链模块,用于将所述验证节点所确认的区块写入到区块链;
预设数据库回滚模块,用于在用户新增业务数据校验失败、业务数据写入过程中发生异常或验证节点确认业务数据失败时,将业务数据回滚到写入新增业务数据之前的状态;
数据回滚请求模块,用于供共识节点或账本节点生成并发送数据回滚请求;
数据回滚校验模块,用于校验数据回滚请求的真实性;
数据回滚投票模块,用于生成数据回滚结构体,并发送至区块链网络,供所有共识节点投票,统计赞成票的数量,决定是否进行数据回滚;
数据回滚执行模块,用于执行数据回滚操作;
回滚赔付模块,用于对在回滚过程中造成损失的用户进行赔付。
所述区块链数据回滚处理系统还可为存储器及一个或多个处理器,所述存储器上储存着一个或多个程序,所述处理器调用所述程序实现上述方法。
本发明提供的区块链数据回滚处理方法及其处理系统,对数据入链事务处理调整了执行顺序,减少了区块链脏数据问题的出现,降低了系统性能的损耗,可以方便快捷的实现区块链数据回滚的投票,也能够对区块链数据回滚对用户造成的损失进行赔付;首先检测并校验用户新增的业务数据,判断该业务数据是否符合合法性和完整性,只有校验通过后才会将新增的业务数据写入预设数据库,进一步降低写入无效业务数据的可能性,判断业务数据写入到预设数据库中是否违反唯一约束,只有不违反时,才能进行下一步操作,将业务数据发送至验证节点,并判断验证节点是否收到,只有在验证节点收到的情况下,才能将所述验证节点所确认的区块写入到区块链,防止出现区块链脏数据的问题,当出现用户新增业务数据校验失败、业务数据写入过程中发生异常或验证节点确认业务数据失败的情况时,均将业务数据回滚到新增业务数据之前的状态;当区块链本身发生异常,不得不进行回滚操作时,通过发现异常的任一共识节点或账本节点生成并发送数据回滚请求至区块链中末尾区块的共识领导节点,共识领导节点校验数据回滚请求的签名与发送数据回滚请求的账本节点或者共识节点的签名是否一致,待回滚区块高度是否在预先设定的回滚区块高度范围内,回滚的原因是否符合,待回滚区块哈希是否在待回滚区块高度所对应的区块内,当以上要求都符合时,才会执行下一步的操作,共识领导节点生成数据回滚结构体并进行签名,并将签名后的数据回滚结构体发送到区块链网络,供每个共识节点或账本节点进行投票,每一共识节点或账本节点接收并校验所述数据回滚结构体,若校验通过,则生成赞成票发送到共识网络,共识领导节点统计赞成票的数量,并将数量与设定值相比较,若高于设定值,则执行回滚操作;在发生转账交易时,通过智能合约指定保险条约,在回滚操作完成后,根据转账交易生成赔付请求交易,并发送至区块链网络,验证节点验证赔付请求交易是否合法,若合法则根据保险条约进行赔付,向当前用户的账户发放赔付款,可以提高用户对区块链的使用满意度;所述系统为功能模块化设计,能够实现上述所有方法。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种区块链数据回滚处理方法,其特征在于,包括如下步骤:
步骤1:检测并校验用户新增的业务数据,校验通过后,将新增的业务数据写入预设数据库并校验写入过程中是否发生异常;
步骤2:若写入过程中未发生异常,则将所述业务数据发送至验证节点进行确认,经过确认后,将所述验证节点所确认的区块写入到区块链;
步骤3:若区块链本身发生异常,则通过任一共识节点或账本节点生成数据回滚请求,并将其发送至区块链中末尾区块的共识领导节点,共识领导节点对所述数据回滚请求进行验证,验证通过后,共识领导节点生成数据回滚结构体并进行签名,将签名后的数据回滚结构体发送到区块链网络;
步骤4:每一共识节点或账本节点接收并校验所述数据回滚结构体,若校验通过,则生成赞成票发送到共识网络;
步骤5:共识领导节点统计赞成票的数量,并将赞成票的数量与设定值相比较,若小于设定值,则不进行回滚操作,若大于设定值,则进行回滚操作。
2.根据权利要求1所述的区块链数据回滚处理方法,其特征在于,步骤1中,检测并校验用户新增的业务数据,具体为:
若检测到用户新增的业务数据时,则对所述业务数据的合法性及完整性进行校验,若校验通过,将新增的业务数据写入预设数据库中,若校验不通过,则不进行操作。
3.根据权利要求1所述的区块链数据回滚处理方法,其特征在于,步骤1中,校验写入过程中是否发生异常,具体为:
校验将所述业务数据写入到预设数据库中,是否违反唯一约束,若违反,则判定写入过程中发生异常,并将业务数据回滚到写入新增业务数据之前的状态,若不违反,则判定写入过程中未发生异常,执行步骤2。
4.根据权利要求1所述的区块链数据回滚处理方法,其特征在于,步骤2中,将所述业务数据发送至验证节点进行确认,具体为:
判断所述业务数据是否发送至验证节点,若未发送至验证节点,则将业务数据回滚到写入新增业务数据之前的状态,若成功发送至验证节点,则将所述验证节点所确认的区块写入到区块链。
5.根据权利要求1所述的区块链数据回滚处理方法,其特征在于,步骤3中,共识领导节点对数据回滚请求进行验证,验证通过后,生成数据回滚结构体并进行签名,将数据回滚结构体发送到区块链网络,具体为:
验证数据回滚请求的签名是否为发送请求的账本节点或共识节点的签名,若验证不通过则终止操作,若验证通过,进一步验证回滚区块高度是否在设定的回滚区块高度范围内,若验证不通过则终止操作,若验证通过,则进一步验证回滚原因是否属于设定范围,若验证不通过则终止操作,若验证通过,进一步验证待回滚区块哈希是否在待回滚区块高度所对应的区块内,若验证不通过则终止操作,若验证通过,共识领导节点生成数据回滚结构体并进行签名,将数据回滚结构体发送到区块链网络,其中数据回滚结构体包括数据回滚请求及共识领导节点的签名。
6.根据权利要求5所述的区块链数据回滚处理方法,其特征在于,步骤4中,每一共识节点或账本节点接收并校验所述数据回滚结构体,具体为:
共识节点或账本节点校验数据回滚请求,若校验不通过则终止操作,若校验通过,则进一步校验所述回滚结构体的签名是否为共识领导节点的签名,若校验不通过,则终止操作,若校验通过,共识节点生成赞成票并签名,将签名后的赞成票发送到共识网络。
7.根据权利要求6所述的区块链数据回滚处理方法,其特征在于,步骤4中,共识领导节点统计赞成票的数量,具体为:
共识领导节点校验赞成票的签名是否为发送赞成票的共识节点的签名,若校验通过,则赞成票的数量加一,若校验不通过,则不做处理。
8.根据权利要求1所述的区块链数据回滚处理方法,其特征在于,所述方法还包括,在发生转账交易时,通过智能合约制定保险条约,在步骤5中所述回滚操作完成后,根据每笔转账交易通过保险条约进行赔付,具体为:
根据转账交易生成赔付请求交易,并发送至区块链网络,验证节点验证赔付请求交易是否合法,若合法则根据保险条约进行赔付,向当前用户的账户发放赔付款。
9.一种区块链数据回滚处理系统,应用于权利要求1-8任一所述的区块链数据回滚处理方法,其特征在于,包括:
业务数据校验模块,用于检测新增的业务数据,并对所述业务数据进行校验;
业务数据写库模块,用于将校验通过的业务数据写入预设数据库;
业务数据写链模块,用于将所述验证节点所确认的区块写入到区块链;
预设数据库回滚模块,用于在用户新增业务数据校验失败、业务数据写入过程中发生异常或验证节点确认业务数据失败时,将业务数据回滚到写入新增业务数据之前的状态;
数据回滚请求模块,用于供共识节点或账本节点生成并发送数据回滚请求;
数据回滚校验模块,用于校验数据回滚请求的真实性;
数据回滚投票模块,用于生成数据回滚结构体,并发送至区块链网络,供所有共识节点投票,统计赞成票的数量,决定是否进行数据回滚;
数据回滚执行模块,用于执行数据回滚操作;
回滚赔付模块,用于对在回滚过程中造成损失的用户进行赔付。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110359352.6A CN113064759A (zh) | 2021-04-02 | 2021-04-02 | 一种区块链数据回滚处理方法及其处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110359352.6A CN113064759A (zh) | 2021-04-02 | 2021-04-02 | 一种区块链数据回滚处理方法及其处理系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113064759A true CN113064759A (zh) | 2021-07-02 |
Family
ID=76565632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110359352.6A Pending CN113064759A (zh) | 2021-04-02 | 2021-04-02 | 一种区块链数据回滚处理方法及其处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113064759A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114240439A (zh) * | 2022-02-28 | 2022-03-25 | 北京邮电大学 | 基于阈值签名与双哈希链模式的跨链交易回滚方法及装置 |
CN114301658A (zh) * | 2021-12-24 | 2022-04-08 | 江苏网进科技股份有限公司 | 一种基于Kafka收集分布式系统数据链路的方法 |
CN115002106A (zh) * | 2022-04-22 | 2022-09-02 | 中国农业银行股份有限公司 | 一种区块链验证方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309160A (zh) * | 2019-05-22 | 2019-10-08 | 平安科技(深圳)有限公司 | 数据入链事务处理方法、装置、计算机设备及存储介质 |
CN111258986A (zh) * | 2020-01-17 | 2020-06-09 | 杭州龙纪科技有限公司 | 一种区块链的回滚方法 |
CN111476670A (zh) * | 2020-04-08 | 2020-07-31 | 杭州复杂美科技有限公司 | 区块链回滚保险方法、设备和存储介质 |
-
2021
- 2021-04-02 CN CN202110359352.6A patent/CN113064759A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309160A (zh) * | 2019-05-22 | 2019-10-08 | 平安科技(深圳)有限公司 | 数据入链事务处理方法、装置、计算机设备及存储介质 |
CN111258986A (zh) * | 2020-01-17 | 2020-06-09 | 杭州龙纪科技有限公司 | 一种区块链的回滚方法 |
CN111476670A (zh) * | 2020-04-08 | 2020-07-31 | 杭州复杂美科技有限公司 | 区块链回滚保险方法、设备和存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114301658A (zh) * | 2021-12-24 | 2022-04-08 | 江苏网进科技股份有限公司 | 一种基于Kafka收集分布式系统数据链路的方法 |
CN114240439A (zh) * | 2022-02-28 | 2022-03-25 | 北京邮电大学 | 基于阈值签名与双哈希链模式的跨链交易回滚方法及装置 |
CN114240439B (zh) * | 2022-02-28 | 2022-05-13 | 北京邮电大学 | 基于阈值签名与双哈希链模式的跨链交易回滚方法及装置 |
CN115002106A (zh) * | 2022-04-22 | 2022-09-02 | 中国农业银行股份有限公司 | 一种区块链验证方法、装置、设备及介质 |
CN115002106B (zh) * | 2022-04-22 | 2024-04-12 | 中国农业银行股份有限公司 | 一种区块链验证方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113064759A (zh) | 一种区块链数据回滚处理方法及其处理系统 | |
US11544794B2 (en) | Claim settlement method and apparatus employing blockchain technology | |
EP3779760B1 (en) | Blockchain-based data processing method and apparatus, and electronic device | |
WO2020233402A1 (zh) | 应付账款订单校验方法、装置、设备及存储介质 | |
US20220036350A1 (en) | Cross-border resource transfer authenticity verification method, device and electronic equipment | |
CN107403379B (zh) | 一种数据处理方法、装置和区块链核心分布式系统 | |
CN111258986A (zh) | 一种区块链的回滚方法 | |
CN109886695A (zh) | 不同区块链之间的信息共享方法及装置和电子设备 | |
CN115131022B (zh) | 基于区块链的数字资产交易方法、装置、设备及介质 | |
CN110428238A (zh) | 区块链的账户撤回方法及系统 | |
CN110390183A (zh) | 基于区块链的数字版权交易存证系统 | |
CN114612103A (zh) | 跨区块链交易的方法、装置、系统、介质及电子设备 | |
CN111597269A (zh) | 一种基于区块链的合约实现方法、装置及设备 | |
CN103440460A (zh) | 一种应用系统变更验证方法及验证系统 | |
CN113313594A (zh) | 订单处理方法、装置、电子设备、存储介质及程序产品 | |
CN111209542B (zh) | 一种权限管理方法、装置、存储介质及电子设备 | |
CN112633885A (zh) | 一种多签名交易实现方法及相关装置 | |
CN112200670A (zh) | 一种事件驱动的智能合约平台设计 | |
CN110489438A (zh) | 一种客户行为信息处理方法及装置 | |
CN114064488A (zh) | 交易测试方法、装置、存储介质和设备 | |
CN111797590A (zh) | 数据核对方法、装置和设备 | |
CN112529462A (zh) | 业务验证方法、装置、服务器及存储介质 | |
CN114240434B (zh) | 一种基于Fabric的交易并发控制方法及系统 | |
CN110428260A (zh) | 区块链的账户模型 | |
CN116756723B (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 |