CN116028989A - 区块链验证方法及装置 - Google Patents
区块链验证方法及装置 Download PDFInfo
- Publication number
- CN116028989A CN116028989A CN202310303480.8A CN202310303480A CN116028989A CN 116028989 A CN116028989 A CN 116028989A CN 202310303480 A CN202310303480 A CN 202310303480A CN 116028989 A CN116028989 A CN 116028989A
- Authority
- CN
- China
- Prior art keywords
- chain
- hash information
- rule
- sub
- node
- 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.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及区块链技术领域,提供一种区块链验证方法及装置,所述方法包括:将回检规则发送至母链跨链节点,以使母链跨链节点将回检规则发送至提案节点;接收子链返回的检查点;检查点由提案节点根据回检规则构造,检查点包括回检规则指示的待回检区间的第一哈希信息;在回检请求触发的情况下,发送回检通知至子链,以使子链返回待回检区间的第二哈希信息;对第二哈希信息和第一哈希信息进行比对,确定验证结果。本发明实现母链为子链数据增信,监控子链的可信度,从而达到提升整体安全性的目的。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块链验证方法及装置。
背景技术
开放许可链控制台分为母链和子链两种角色。母链为开放许可链,子链由BaaS(Blockchain as a Service)平台创建,业务用户可在开放许可链控制平台单独申请建立子链,将应用部署在子链上,给有账本隔离需求的应用分配独享账本空间以满足应用的隐私要求。
然而,因子链分为BaaS平台新增子链、行业组织内部已运行区块链及行业组织外部区块链等多种类型,涉及复杂的用户操作群体,且可能位于行外网络环境,安全性相对于开放许可链较弱,导致子链的可信度存疑,进而带来安全隐患。
发明内容
本发明提供一种区块链验证方法及装置,用以解决现有技术中子链可信度存疑导致安全隐患的缺陷。
本发明提供一种区块链验证方法,应用于母链,包括:
将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;
接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;
在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;
对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
根据本发明提供的一种区块链验证方法,所述将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,包括:
制定或更新所述回检规则,并将所述回检规则发送至所述母链跨链节点,以使所述母链跨链节点将所述回检规则以跨链交易形式发送至中继网关,并使所述中继网关在验证所述跨链交易合法的情况下,将所述回检规则发送至所述提案节点。
根据本发明提供的一种区块链验证方法,所述第一哈希信息和所述第二哈希信息为所述待回检区间的所有区块头哈希,或所述待回检区间对应所有区块头哈希的根哈希。
根据本发明提供的一种区块链验证方法,所述接收子链返回的检查点,之后还包括:
基于所述提案节点的公钥对所述检查点进行签名验证;
所述对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果,包括:
在所述检查点签名验证通过的情况下,对所述第二哈希信息和所述第一哈希信息进行比对,确定所述验证结果。
根据本发明提供的一种区块链验证方法,所述公钥由所述提案节点提供。
本发明还提供一种区块链验证方法,应用于子链,包括:
接收母链发送的回检规则;所述回检规则是所述母链通过母链跨链节点发送的;
从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;
构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;
若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
根据本发明提供的一种区块链验证方法,所述第一哈希信息和所述第二哈希信息为所述待回检区间的所有区块头哈希,或所述待回检区间对应所有区块头哈希的根哈希。
根据本发明提供的一种区块链验证方法,所述从子链上获取所述回检规则所指示的待回检区间的第一哈希信息,包括:
从子链上获取所述待回检区间对应的所有区块头哈希;
基于各区块头哈希,生成梅克尔树,并以所述梅克尔树的根哈希作为所述第一哈希信息。
本发明还提供一种区块链验证装置,安装于母链,包括:
第一发送单元,用于将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;
第一接收单元,用于接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;
第二发送单元,用于在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;
验证单元,用于对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
本发明还提供一种区块链验证装置,安装于子链,包括:
第二接收单元,用于接收母链发送的回检规则;所述回检规则是母链通过母链跨链节点发送的;
获取单元,用于从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;
构造单元,用于构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;
返回单元,用于若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述区块链验证方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述区块链验证方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述区块链验证方法。
本发明提供的区块链验证方法及装置,通过将母链制定的回检规则发送至提案节点,使得提案节点能够从子链上获取可信度较高的第一哈希信息并返回至母链,以及在回检请求触发的情况下,子链返回第二哈希信息至母链,从而对第二哈希信息与第一哈希信息的进行比对后,可以确定子链的可信度。本发明通过母链对子链待回检区间数据进行检查,从而实现母链为子链数据增信,监控子链的可信度,进而达到提升整体安全性的目的。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的区块链验证方法的流程示意图之一;
图2是本发明提供的区块链验证方法的流程示意图之二;
图3是本发明提供的区块链验证方法的流程示意图之三;
图4是本发明提供的区块链验证装置的结构示意图之一;
图5是本发明提供的区块链验证装置的结构示意图之二;
图6是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,子链分为BaaS平台新增子链、行业组织内部已运行区块链及行业组织外部区块链等多种类型,涉及复杂的用户操作群体,且可能位于行外网络环境,安全性相对于开放许可链较弱,导致子链的可信度存疑,进而带来安全隐患。
对此,本发明提供一种区块链验证方法。图1是本发明提供的区块链验证方法的流程示意图之一,如图1所示,该方法应用于母链,包括如下步骤:
步骤110、将回检规则发送至母链跨链节点,以使母链跨链节点将回检规则发送至提案节点,提案节点为子链跨链节点。
具体地,回检规则是母链针对子链制定的,该回检规则中包含有子链上待回检区间信息,即待回检区间的起始区块和终止区块。其中,根据实践操作与调试,将待回检区间设置为子链区块高度的20%以内,可以保持较高的处理效率。
提案节点为子链上的指定节点,提案节点是跨链节点,也是构造检查点的子链节点。提案节点既可以获取子链上待回检区间的信息,也可以通过中继网关与母链跨链节点进行通信,进而母链跨链节点可以将通信内容发送至母链,进而实现与母链之间的通信。
可选地,母链在制定或更新回检规则后,将回检规则发送至母链跨链节点,通过母链跨链节点将回检规则发送至中继网关,进而中继网关可以将该回检规则发送至子链的提案节点。
步骤120、接收子链返回的检查点;检查点由提案节点根据回检规则构造,检查点包括回检规则指示的待回检区间的第一哈希信息。
具体地,待回检区间指子链上需要进行检查的区块。第一哈希信息用于表征待回检区间的验证信息,也就是不同待回检区间对应的第一哈希信息不同。由于子链区块中包含大量复杂数据结构,且每一区块包含了前一区块的哈希值、时间戳等区块数据,而哈希值用于表征对应区块的验证信息,因此本发明实施例中回检的第一哈希信息可以是待回检区间的所有区块头哈希,也可以是待回检区间的所有区块头哈希对应的根哈希。
可选地,在中继网关将回检规则发送至提案节点后,提案节点可以在子链上扫描待回检区间对应的区块,以获取待回检区间对应的所有区块头哈希;其中,本发明实施例既可以以待回检区间所有区块头哈希作为第一哈希信息,也可以以待回检区间所有区块头哈希对应的根哈希作为第一哈希信息,本发明实施例对此不作具体限定。
可选地,在提案节点获取第一哈希信息后,构造携带有第一哈希信息的检查点,并由提案节点将检查点发送至中继网关,以通过中继网关将检查点发送至母链跨链节点,并使母链跨链节点将检查点发送至母链,实现提案节点与母链之间的通信,使得母链能够获取检查点中的第一哈希信息。其中,检查点(Checkpoint)的数据结构可以包括提案节点(proposer)信息,待回检区间的起始区块(start_block)信息,待回检区间终止区块(end_block)信息,待回检区间对应区块的根哈希(rootHash)信息,时间戳(Timestamp)信息,以及检查点的签名(signature)信息。
步骤130、在回检请求触发的情况下,发送回检通知至子链,以使子链返回待回检区间的第二哈希信息。
具体地,回检请求可以是母链在接收到用户要求对子链进行回检的情况下触发,也可以是母链定时触发的,还可以是母链按照制定的回检策略触发的(如按照子链高度由高到低的顺序进行触发),本发明实施例对此不作具体限定。
在回检请求触发的情况下,母链发送回检通知至子链,具体可以是经过母链跨链节点发送至子链的提案节点,子链接收到回检通知后,查找待回检区间对应的区块,并生成对应区块的哈希信息,即第二哈希信息。具体来说,对应区块的哈希信息可以是待回检区间的各区块的区块头哈希,或待回检区间的所有区块头哈希对应的根哈希。
步骤140、对第二哈希信息和第一哈希信息进行比对,确定验证结果。
该验证结果可以是第二哈希信息、第一哈希信息的比对结果。比如,在具体实现时,用二进制01表示:比对结果为相同;用二进制00表示:比对结果为不相同。该具体实现为示例性说明,不够成对本发明实施例的限制性描述。
具体地,第一哈希信息是母链制定或更新回检规则时,通过向子链发送回检规则触发子链返回的;第二哈希信息是母链通过向子链发送回检通知使子链返回的。由于母链为开放许可链,其安全性相对于子链较强,即母链的可信度比子链的可信度高,进而由母链触发子链提供第一哈希信息,此后再将第二哈希信息与第一哈希信息进行比对验证,可信度高。
因此,若第二哈希信息与之前收到的第一哈希信息不同,则表明子链已被篡改。若第二哈希信息与第一哈希信息相同,则表明子链的待回检区间的区块被篡改的可能性极小,子链安全性较高,可信度较高,从而实现了母链为子链数据增信,提高子链的可信度,进而提升了整体安全性。
需要说明的是,母链可以根据实际情况灵活设置回检规则中的待回检区间,进而实现能够灵活对子链进行回检操作。例如,可以将待回检区间设置为子链中重要区块对应的区间,进而可以实现对重要区块数据进行回检,以对子链进行监控。
本发明实施例提供的区块链验证方法,通过将母链制定的回检规则发送至提案节点,使得提案节点能够从子链上获取可信度较高的第一哈希信息并返回至母链,以及在回检请求触发的情况下,子链返回第二哈希信息至母链,从而对第二哈希信息与第一哈希信息进行比对后,可以确定子链的可信度。本发明实施例中通过母链对子链待回检区间数据进行检查,从而实现母链为子链数据增信,监控子链的可信度,进而达到提升整体安全性的目的。
基于上述实施例,将回检规则发送至母链跨链节点,以使母链跨链节点将回检规则发送至提案节点,包括:
制定或更新回检规则,并将回检规则发送至母链跨链节点,以使母链跨链节点将回检规则以跨链交易形式发送至中继网关,并使中继网关在验证跨链交易合法的情况下,将回检规则发送至提案节点。
具体地,母链可以针对任一子链制定新的回检规则,也可以对已经存在的回检规则进行更新。在制定或更新回检规则后,需要将回检规则同步至提案节点,从而提案节点可以按照制定或更新的回检规则从子链上获取待回检区间的第一哈希信息。
其中,母链将制定或更新的回检规则同步至提案节点的具体步骤为:首先,将回检规则发送至母链跨链节点,以使母链跨链节点将回检规则以跨链交易形式发送至中继网关。其中,跨链交易中包含有回检规则,即包含有待回检区间的起始区块和终止区块。中继网关接收到跨链交易后,验证跨链交易是否合法,并在合法的情况下,中继网关将回检规则发送至提案节点。
此外,中继网关在接收到跨链交易后,还可以在母链和子链不同构时,将母链的参数格式映射成子链的参数格式,从而便于子链接收与处理。
基于上述任一实施例,第一哈希信息和第二哈希信息为待回检区间的所有区块头哈希,或者待回检区间对应所有区块头哈希的根哈希。
在一些具体实施方式中,第一哈希信息为提案节点返回的待回检区间对应所有区块头哈希的根哈希,而不是所有区块头哈希,不仅能够节省空间,进一步缓解了整体存储压力,而且提高了传输效率。
举例来说,待回检区间的起始区块为第1001个区块,终止区块为第1200个区块,则提案节点可以基于该200个区块的区块头哈希值,构造梅克尔树(merkle tree),生成对应的根哈希,从而构建整个检查点的数据结构。
在一些具体实施方式中,第二哈希信息为子链返回的区块头哈希的根哈希,而不是所有区块头哈希,进而母链接收和存储的也是根哈希,不仅能够节省空间,进一步缓解了整体存储压力,而且提高了传输效率。
基于上述任一实施例,接收子链返回的检查点,之后还包括:
基于提案节点的公钥对检查点进行签名验证;
对第二哈希信息和第一哈希信息进行比对,确定验证结果,包括:
在检查点签名验证通过的情况下,对第二哈希信息和第一哈希信息进行比对,确定验证结果。
具体地,母链上存储有提案节点的公钥,在母链接收到检查点后,基于公钥对检查点进行签名验证。在签名验证通过的情况下,表明检查点有效,也就是进一步验证了检查点中存储的第一哈希信息的可信度,进而母链对第二哈希信息和第一哈希信息进行比对时,准确验证子链的可信度。
可选地,母链的回检数据管理合约,在接收到检查点后,基于提案节点的公钥进行签名验证,验证通过则标识检查点有效。
基于上述任一实施例,公钥由提案节点提供。
在一些具体实施方式中,提案节点向母链发送公钥,并由母链保存和管理该公钥,以便后续基于该公钥进行签名验证。
基于上述任一实施例,本发明还提供一种区块链验证方法,如图2所示,该方法应用于子链,包括如下步骤:
步骤210、接收母链发送的回检规则;回检规则是母链通过母链跨链节点发送的。
具体地,回检规则是母链针对子链制定的,该回检规则中包含有子链上待回检区间信息,即待回检区间的起始区块和终止区块。
可选地,母链在制定或更新回检规则后,将回检规则发送至母链跨链节点,通过母链跨链节点将回检规则发送至中继网关,进而中继网关可以将该回检规则发送至子链的提案节点。
步骤220、从子链上获取回检规则所指示的待回检区间的第一哈希信息。
具体地,待回检区间指子链上需要进行检查的区块。第一哈希信息用于表征待回检区间的验证信息,也就是不同待回检区间对应的第一哈希信息不同。由于子链区块中包含大量复杂数据结构,且每一区块包含了前一区块的哈希值、时间戳等区块数据,而哈希值用于表征对应区块的验证信息,因此本发明实施例中回检的第一哈希信息可以是待回检区间的所有区块头哈希,也可以是待回检区间的所有区块头哈希对应的根哈希。
可选地,在中继网关将回检规则发送至提案节点后,提案节点可以在子链上扫描待回检区间对应的区块,以获取待回检区间对应的所有区块头哈希;其中,本发明实施例既可以以待回检区间所有区块头哈希作为第一哈希信息,也可以以待回检区间所有区块头哈希对应的根哈希作为第一哈希信息,本发明实施例对此不作具体限定。
步骤230、构造携带有第一哈希信息的检查点,并将检查点发送至母链跨链节点。
在一些具体实施方式中,在提案节点获取第一哈希信息后,构造携带有第一哈希信息的检查点,并由提案节点将检查点发送至中继网关,以通过中继网关将检查点发送至母链跨链节点,并使母链跨链节点将检查点发送至母链,实现提案节点与母链之间的通信,使得母链能够获取检查点中的第一哈希信息。
步骤240、若接收到回检通知,向母链跨链节点返回待回检区间的第二哈希信息。
在一些具体实施方式中,在回检请求触发的情况下,母链发送回检通知至子链,具体可以是经过母链跨链节点发送至子链的提案节点,子链接收到回检通知后,查找待回检区间对应的区块,并生成对应区块的哈希信息,即第二哈希信息。具体来说,对应区块的哈希信息可以是待回检区间的各区块头哈希,或待回检区间的所有区块头哈希对应的根哈希。其中,回检请求可以是母链在接收到用户要求对子链进行回检的情况下触发,也可以是母链定时触发的,还可以是母链按照制定的回检策略触发的(如按照子链高度由高到低的顺序进行触发),本发明实施例对此不作具体限定。
在一些具体实施方式中,第一哈希信息是制定或更新回检规则时,通过向子链发送回检规则触发子链返回的,第二哈希信息是母链通过向子链发送回检通知使子链返回的。由于母链为开放许可链,其安全性相对于子链较强,即母链的可信度比子链的可信度高,进而由母链触发子链提供第一哈希信息,此后再将第二哈希信息与第一哈希信息进行比对验证,可信度高。
因此,若第二哈希信息与第一哈希信息不同,则表明子链已被篡改。若第二哈希信息与第一哈希信息相同,则表明子链的待回检区间的区块被篡改的可能性极小,子链安全性较高,可信度较高,从而实现了母链为子链数据增信,提高子链的可信度,进而提升了整体安全性。此外,当第二哈希信息与第一哈希信息不同时,基于梅克尔树的根哈希可以快速定位出现篡改的区块,便于快速定位和排查隐患。
需要说明的是,母链可以根据实际情况灵活设置回检规则中的待回检区间,进而实现能够灵活对子链进行回检操作。例如,可以将待回检区间设置为子链中重要区块对应的区间,进而可以实现对重要区块数据进行回检,以对子链进行监控。
本发明实施例提供的区块链验证方法,通过接收母链制定的回检规则,从子链上获取可信度较高的第一哈希信息,并构造携带有第一哈希信息的检查点返回至母链,以及在接收到回检通知的情况下,返回第二哈希信息至母链,从而母链可以对第二哈希信息与第一哈希信息的进行比对后,确定子链的可信度,也就是本发明实施例中通过母链对子链待回检区间数据进行检查,从而实现母链为子链数据增信,监控子链的可信度,进而达到提升整体安全性的目的。
基于上述任一实施例,第一哈希信息和第二哈希信息为待回检区间的所有区块头哈希,或待回检区间对应所有区块头哈希的根哈希。
在一些具体实施方式中,第一哈希信息为提案节点返回的区块头哈希的根哈希,而不是所有区块头哈希,不仅能够节省空间,进一步缓解了整体存储压力,而且提高了传输效率。
在一些具体实施方式中,第二哈希信息为子链返回的区块头哈希的根哈希,而不是所有区块头哈希,进而母链接收和存储的也是根哈希,不仅能够节省空间,进一步缓解了整体存储压力,而且提高了传输效率。
基于上述任一实施例,第一哈希信息和第二哈希信息为待回检区间对应所有区块头哈希的根哈希。在此情况下,从子链上获取回检规则所指示的待回检区间的第一哈希信息,包括:
从子链上获取待回检区间对应的所有区块头哈希;
基于各区块头哈希,生成梅克尔树,并以梅克尔树的根哈希作为第一哈希信息。
在一些具体实施方式中,母链跨链节点通过中继网关向子链的提案节点发送回检规则,从而提案节点可以基于回检规则中携带的待回检区间的起始区块和终止区块信息,从子链上获取待回检区间的所有区块头哈希。接着,基于各区块头哈希,生成梅克尔树,并以梅克尔树的根哈希作为第一哈希信息。
基于上述任一实施例,本发明还提供一种区块链验证方法,如图3所示,该方法包括如下流程:
1、母链对提案节点发送的公钥进行保存并管理,以供后续验证签名。
2、母链跨链节点对母链的回检规则进行监听/订阅;
3、母链制定或更新回检规则;
4、触发回检事件,发送回检规则至母链跨链节点;
5、母链跨链节点将回检规则以跨链交易的形式转发到中继网关;
6、中继网关处理跨链交易,即验证跨链交易的合法性和有效性;
7、中继网关向子链跨链节点(提案节点)同步母链的回检规则;
8、提案节点扫描子链区块,获取回检规则中待回检区间的所有区块头哈希;
9、提案节点构造检查点;
可选地,本发明实施例中可以通过检查点机制来存储回检规则所指定区间内的区块头哈希的根哈希值;提案节点可以订阅回检规则,通过扫描子链的区块,获取回检规则所对应的待回检区间的区块头哈希并生成根哈希,生成的检查点包括该根哈希;将检查点信息提交到母链;其中根哈希的生成方式是根据起始区块与终止区块,构建一个预设范围内的梅克尔树;
可选地,本发明实施例中可以通过检查点机制来存储回检规则所指定区间内的所有区块头哈希;提案节点可以订阅回检规则,通过扫描子链的区块,获取回检规则所对应的待回检区间的区块头哈希,生成的检查点包括待回检区间的所有区块头哈希,将检查点信息提交到母链;
10、子链跨链节点提交检查点至中继网关;
11、中继网关将检查点提交至母链跨链节点;
12、母链跨链节点将检查点提交至母链;
13、母链接收到检查点后,通过提案节点公钥验证检查点有效性;
14、验证子链区块的有效性。
触发回检请求时,母链向子链发出回检通知,子链收到回检通知后,找到回检规则对应的待回检区间,获取待回检区间的所有区块头哈希。如果前述生成的检查点包括根哈希,则生成该区块区间的所有区块头哈希的根哈希,并将该根哈希返回给母链;如果前述生成的检查点包括待回检区间的所有区块头哈希,则将该所有区块头哈希返回母链。母链将该根哈希或该所有区块头哈希与检查点的内容进行比对,确认是否一致,进而得到验证结果。
在一些可选的实施方式中,母链发出的回检通知经由母链跨链节点、中继网关、提案节点达到子链。子链发出的根哈希或所有区块头哈希经由提案节点、中继网关、母链跨链节点到达母链。
可选地,回检通知中携带回检规则。
其中,触发回检请求包括两种模式:a、主动回检,由用户主动要求根据回检规则发起对子链的回检;b、定期回检,母链定时的基于回检策略选取符合回检规则的待回检区间进行回检。
可选地,回检策略如下:
当存在多个回检规则时,按照其建立的时间顺序由近及远进行回检;
当存在多条业务子链时,按照子链高度由高到低回检,或者按照发生回滚次数回检,或者按照跨链交易失败次数又高到低回检;
当存在外网环境下的业务子链时,优先回检该子链。
子链高度越高,存在的时间越久,长度更长,进而添加的区块越多,相应的风险可能更大,因此需要对其优先检查。对此,本发明实施例在存在多个子链对应有回检规则的情况下,可以按照各子链高度由高到低的顺序,对子链进行回检。
子链回滚次数越多,表明风险越大,因此本发明实施例在存在多个子链对应有回检规则的情况下,可以按照各子链回滚次数由多到少的顺序,对子链进行回检。
子链跨链交易失败次数越多,表明风险越大,因此本发明实施例在存在多个子链对应有回检规则的情况下,可以按照各子链对应跨链交易失败次数由多到少的顺序,对子链进行回检。
此外,由于外网环境更复杂,对应的业务子链相较于内网部署的子链的安全性更低,因此若存在外网环境子链对应有回检规则,优先回检该子链。
下面对本发明提供的区块链验证装置进行描述,下文描述的区块链验证装置与上文描述的区块链验证方法可相互对应参照。
基于上述任一实施例,本发明还提供一种区块链验证装置,如图4所示,该装置安装于主链,包括:
第一发送单元410,用于将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;
第一接收单元420,用于接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;
第二发送单元430,用于在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;
验证单元440,用于对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
基于上述任一实施例,本发明还提供一种区块链验证装置,如图5所示,该装置安装于子链,包括:
第二接收单元510,用于接收母链发送的回检规则;所述回检规则是母链通过母链跨链节点发送的;
获取单元520,用于从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;
构造单元530,用于构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;
返回单元540,用于若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
图6是本发明提供的电子设备的结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、存储器(memory)620、通信接口(CommunicationsInterface)630和通信总线640,其中,处理器610,存储器620,通信接口630通过通信总线640完成相互间的通信。处理器610可以调用存储器620中的逻辑指令,以执行区块链验证方法,该方法包括:将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
或该方法包括:接收母链发送的回检规则;所述回检规则是母链通过母链跨链节点发送的;从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
此外,上述的存储器620中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的区块链验证方法,该方法包括:将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
或该方法包括:接收母链发送的回检规则;所述回检规则是母链通过母链跨链节点发送的;从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的区块链验证方法,该方法包括:将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
或该方法包括:接收母链发送的回检规则;所述回检规则是母链通过母链跨链节点发送的;从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种区块链验证方法,应用于母链,其特征在于,包括:
将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;
接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;
在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;
对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
2.根据权利要求1所述的区块链验证方法,其特征在于,所述将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,包括:
制定或更新所述回检规则,并将所述回检规则发送至所述母链跨链节点,以使所述母链跨链节点将所述回检规则以跨链交易形式发送至中继网关,并使所述中继网关在验证所述跨链交易合法的情况下,将所述回检规则发送至所述提案节点。
3.根据权利要求1或2所述的区块链验证方法,其特征在于,所述第一哈希信息和所述第二哈希信息为所述待回检区间的所有区块头哈希,或所述待回检区间对应所有区块头哈希的根哈希。
4.根据权利要求3所述的区块链验证方法,其特征在于,所述接收子链返回的检查点,之后还包括:
基于所述提案节点的公钥对所述检查点进行签名验证;
所述对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果,包括:
在所述检查点签名验证通过的情况下,对所述第二哈希信息和所述第一哈希信息进行比对,确定所述验证结果。
5.根据权利要求4所述的区块链验证方法,其特征在于,所述公钥由所述提案节点提供。
6.一种区块链验证方法,应用于子链,其特征在于,包括:
接收母链发送的回检规则;所述回检规则是所述母链通过母链跨链节点发送的;
从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;
构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;
若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
7.根据权利要求6所述的区块链验证方法,其特征在于,所述第一哈希信息和所述第二哈希信息为所述待回检区间的所有区块头哈希,或所述待回检区间对应所有区块头哈希的根哈希。
8.根据权利要求7所述的区块链验证方法,其特征在于,所述从子链上获取所述回检规则所指示的待回检区间的第一哈希信息,包括:
从子链上获取所述待回检区间对应的所有区块头哈希;
基于各区块头哈希,生成梅克尔树,并以所述梅克尔树的根哈希作为所述第一哈希信息。
9.一种区块链验证装置,安装于母链,其特征在于,包括:
第一发送单元,用于将回检规则发送至母链跨链节点,以使所述母链跨链节点将所述回检规则发送至提案节点,所述提案节点为子链跨链节点;
第一接收单元,用于接收子链返回的检查点;所述检查点由所述提案节点根据所述回检规则构造,所述检查点包括所述回检规则指示的待回检区间的第一哈希信息;
第二发送单元,用于在回检请求触发的情况下,发送回检通知至子链,以使所述子链返回所述待回检区间的第二哈希信息;
验证单元,用于对所述第二哈希信息和所述第一哈希信息进行比对,确定验证结果。
10.一种区块链验证装置,安装于子链,其特征在于,包括:
第二接收单元,用于接收母链发送的回检规则;所述回检规则是母链通过母链跨链节点发送的;
获取单元,用于从子链上获取所述回检规则所指示的待回检区间的第一哈希信息;
构造单元,用于构造携带有所述第一哈希信息的检查点,并将所述检查点发送至所述母链跨链节点;
返回单元,用于若接收到回检通知,向所述母链跨链节点返回所述待回检区间的第二哈希信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310303480.8A CN116028989B (zh) | 2023-03-27 | 2023-03-27 | 区块链验证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310303480.8A CN116028989B (zh) | 2023-03-27 | 2023-03-27 | 区块链验证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116028989A true CN116028989A (zh) | 2023-04-28 |
CN116028989B CN116028989B (zh) | 2023-06-13 |
Family
ID=86079808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310303480.8A Active CN116028989B (zh) | 2023-03-27 | 2023-03-27 | 区块链验证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116028989B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108921559A (zh) * | 2018-07-27 | 2018-11-30 | 杭州复杂美科技有限公司 | 跨链交易校验方法、设备和存储介质 |
CN109766723A (zh) * | 2018-12-11 | 2019-05-17 | 烨链(上海)科技有限公司 | 一种区块链数据架构、监管架构、监管方法及计算机可读存储介质 |
CN111107136A (zh) * | 2019-12-05 | 2020-05-05 | 上海中信信息发展股份有限公司 | 一种基于ipfs的区块链跨链中继方法 |
CN111464518A (zh) * | 2020-03-25 | 2020-07-28 | 北京创世智链信息技术研究院 | 一种跨链通信数据的发送、验证方法及装置 |
CN112801665A (zh) * | 2021-03-19 | 2021-05-14 | 北京万物智链科技有限公司 | 一种基于服务器中继的跨链交易方法及系统 |
US20210258323A1 (en) * | 2018-11-16 | 2021-08-19 | Advanced New Technologies Co., Ltd. | Cross-chain data trusted management methods and apparatuses |
CN114240439A (zh) * | 2022-02-28 | 2022-03-25 | 北京邮电大学 | 基于阈值签名与双哈希链模式的跨链交易回滚方法及装置 |
-
2023
- 2023-03-27 CN CN202310303480.8A patent/CN116028989B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108921559A (zh) * | 2018-07-27 | 2018-11-30 | 杭州复杂美科技有限公司 | 跨链交易校验方法、设备和存储介质 |
US20210258323A1 (en) * | 2018-11-16 | 2021-08-19 | Advanced New Technologies Co., Ltd. | Cross-chain data trusted management methods and apparatuses |
CN109766723A (zh) * | 2018-12-11 | 2019-05-17 | 烨链(上海)科技有限公司 | 一种区块链数据架构、监管架构、监管方法及计算机可读存储介质 |
CN111107136A (zh) * | 2019-12-05 | 2020-05-05 | 上海中信信息发展股份有限公司 | 一种基于ipfs的区块链跨链中继方法 |
CN111464518A (zh) * | 2020-03-25 | 2020-07-28 | 北京创世智链信息技术研究院 | 一种跨链通信数据的发送、验证方法及装置 |
CN112801665A (zh) * | 2021-03-19 | 2021-05-14 | 北京万物智链科技有限公司 | 一种基于服务器中继的跨链交易方法及系统 |
CN114240439A (zh) * | 2022-02-28 | 2022-03-25 | 北京邮电大学 | 基于阈值签名与双哈希链模式的跨链交易回滚方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116028989B (zh) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Johnson et al. | A meta language for threat modeling and attack simulations | |
US8667096B2 (en) | Automatically generating system restoration order for network recovery | |
CN108932189B (zh) | 保存服务器日志的方法和装置 | |
US9940208B2 (en) | Generating reverse installation file for network restoration | |
CN110543788A (zh) | 数据存储方法、装置、计算机可读存储介质和计算机设备 | |
US20100223609A1 (en) | Systems and methods for automatic discovery of network software relationships | |
US20220244932A1 (en) | Multi-signature validation of deployment artifacts | |
CN112508566A (zh) | 基于联盟链的跨链隐私交易方法及设备 | |
CN105554133A (zh) | Http远程数据访问系统和方法 | |
CN110881051B (zh) | 安全风险事件处理方法、装置、设备及存储介质 | |
CN111680105A (zh) | 基于区块链的分布式关系型数据库的管理方法及系统 | |
US20220253297A1 (en) | Automated deployment of changes to applications on a cloud computing platform | |
CN116028989B (zh) | 区块链验证方法及装置 | |
CN113572619B (zh) | 一种基于notary的容器云镜像可信实现方法及系统 | |
CN108881104A (zh) | 一种对应用程序进行验证的方法和设备 | |
US11483158B2 (en) | Distributed ledger device, distributed ledger system, and distributed ledger management method | |
CN116827957A (zh) | 基于多区块链的信息处理方法、装置、设备以及介质 | |
CN112507343A (zh) | 一种bios更新方法、装置、设备及介质 | |
CN112926981B (zh) | 用于区块链的交易信息处理方法、装置、介质及电子设备 | |
CN109995888A (zh) | 区块链域名系统dns系统的数据更新方法及网络节点 | |
CN113935071A (zh) | 基于区块链系统的数据处理方法、装置、设备和介质 | |
CN114095174B (zh) | 基于区块链的产业统计数据采集存储方法、装置及设备 | |
CN102833229B (zh) | 一种信息系统的数据交互方法及装置 | |
CN114416106B (zh) | 更新编译计数值的方法、系统、电子设备以及存储介质 | |
CN111241188B (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 |