一种分片区块链系统安全性保护方法与流程

未命名 08-20 阅读:67 评论:0


本发明属于区块链技术领域,更为具体地讲,涉及一种分片区块链系统安全性保护方法。


背景技术:

区块链是一种新兴的分布式数据库,所有的数据和操作在经过节点间的共识后,被打包进不断生成的区块中,系统中的每个节点都要存储全部区块。攻击者需要控制系统中的大部分节点,做到这点的难度很大,因此区块链具有不可修改的特性。由于每个节点都要存储全部的区块,导致了传统的区块链系统中交易并发能力有限,无法满足飞速增长的网络数据处理需求。因此,提出了分片区块链方案,将节点划分为多个分片,不同分片之间并行地生成区块,提高了系统的吞吐量和可扩展性,降低了单个节点的存储压力。然而区块链分片后单片节点数降低,相对较少的恶意节点即可控制某个分片,该分片所负责验证的交易将不能给出合法的验证结果,导致分片区块链系统丧失可用性。在2022年05月20日授权的、授权公告号为cn113242553b、发明名称为“一种基于区块链分片的恶意节点检测方法”的中国发明专利中提出了一种周期更新的信誉模型。根据服务器的行为表现评估该节点的可信度,并在评估过程中预估系统各个分片恶意节点数,结合其他算法,计算在系统安全的前提下分片数量的最大值,随后合并或重组分片,以确保分片安全可靠。然而,现有分片区块链系统,例如omniledger、rapidchain等都依赖于节点的随机分配与周期性轮换来防止恶意节点的共谋以控制某个分片,由于节点的随机分配并不能保证能够将恶意节点平均地分配到各个分片当中,使得现有分片区块链的整体安全阈值必须小于分片内的安全阈值,否则导致单个分片被控制,进而导致系统不可用。


技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种分片区块链系统安全性保护方法,使得分片区块链的整体安全性能够大于等于分片内的安全阈值,从而获得更高的分片系统安全性保护。为实现上述发明目的,本发明分片区块链系统安全性保护方法,其特征在于,.包括以下步骤:(1)每个节点除了保存其所在分片的历史区块之外,还可以额外存储1个或多个其他分片节点保存的历史区块,使得该节点能够监督其它分片的交易验证结果;(2)在每一轮共识开始之前,核心分片向每个普通分片发送普通分片各自负责验证的那些交易,此外,核心分片还向所有普通分片都发送本轮共识需要验证的所有交易的集合。通过这种方式,每个普通分片内的每个节点可以验证其所负责验证的那部分交易,同时还可以根据本轮共识需要验证的交易集合,对其额外存储的其他普通分片的历史区块中
交易验证结果进行监督;(3)每一轮共识中,每个普通分片对其所负责验证的交易经过片内共识后,将验证结果返回给核心分片。如果该普通分片中的某个诚实节点对该分片的1个交易验证结果提出异议,该节点向核心分片对该条交易进行举报;(4)核心分片收集各普通分片对其所负责的交易的验证结果,以及举报节点对其所监督的交易的举报信息,如果两种信息内容一致,则进入步骤(5),否则进入步骤(6);(5)核心分片生成本轮共识的若干区块,然后把区块分发给普通分片,即每个普通分片收到一个区块;核心分片还将本轮所有区块的hash发给每一个普通分片,即每个普通分片都拥有全部历史区块的hash。此外,核心分片还将未打包进区块的交易集合发给每个普通分片,如果某个节点根据其额外存储的区块,认为某笔未打包进区块的交易是合法的,则将举报信息发给核心分片;(6)核心分片检查举报信息,通过验证举报信息中所提供的区块的hash,判断该区块是否合法。若该区块是合法的,则基于举报信息生成指控信息,发给被举报分片;若该区块是非法的,则判断举报节点举报失败,进入步骤(8);(7)被举报分片收到指控信息后,可将证明交易合法的信息打包为反驳信息发送核心分片,核心分片根据反驳信息,向其它能够验证该反驳信息的节点请求区块。若验证结果支持该反驳信息,则判断被举报分片未被贿赂,举报节点举报失败;若验证结果不支持该反驳信息,则判断被举报分片已被贿赂,举报节点举报成功;(8)核心分片根据举报结果,处理举报节点与被举报分片。如果举报节点举报成功,则给予举报节点奖励,并且重组被举报分片;如果举报节点举报失败,则给予举报节点惩罚。所述区块链系统由多个分片组成,其中包含1个核心分片和多个普通分片,每个分片包含多个节点,每个节点只能属于一个分片。区块链系统中的所有历史区块被分别存储到不同的普通分片中,即不同的普通分片负责存储的历史区块互不重复。普通分片内的节点除了存储其所在分片的历史区块,还可以额外存储其他普通分片的历史区块。在交易验证过程中,普通分片内的节点除了验证其所在分片负责验证的那部分交易,还可以监督其所额外存储的交易的验证。所述核心分片负责收集本轮共识需要验证交易集合,并向每个普通分片发送各自负责验证的那部分交易,然后收集普通分片的验证结果以及节点的举报信息,根据普通分片的验证结果和举报的处理结果,将被判断为合法的交易打包进若干区块中,并交给普通分片存储。节点的功能模块包含:节点身份模块、存储模块、交易验证模块、片内共识模块、举报生成模块、举报验证模块、举报反驳模块、举报裁决模块、奖惩模块。节点身份模块:存储本节点公私钥和其他节点公钥,所有由节点发出的信息必须通过节点身份模块以本节点私钥进行签名;节点身份模块也可通过其他节点公钥和签名验证算法确认消息来源。存储模块:用于存储本分片区块、额外存储的其他分片区块,以及存储所有历史区块的hash等。交易验证模块:用于收集本分片可验证的待验证交易信息,并基于存储模块存储
的内容验证交易是否合法。片内共识模块:用于片内节点间就交易验证结果达成共识。举报生成模块:用于发现不合法的交易验证结果并提出举报。具体包括:基于节点额外存储的其他分片的区块验证其他分片给出的交易验证结果,并在发现错误后将举报信息发送给核心分片。举报信息由举报对象、举报内容、证据区块、签名组成。举报对象是指,针对某笔交易的验证结果与举报节点不同的分片;举报内容是指,针对某笔交易的验证结果;证据区块是指,举报节点所额外存储的、能够证明某分片给出的验证结果不合法的区块;签名是指,举报节点应在举报信息上签名,在举报信息被验证后,核心分片将根据签名追溯举报节点,从而对举报节点给予奖励或惩罚。举报验证模块:用于帮助节点验证举报内容是否可靠。具体包括:判断证据的真实性、判断举报内容是否属实,从而生成指控信息并发给被举报分片。举报反驳模块:用于当分片成为被举报分片时,通过搜索被举报交易中相关信息所在的区块,生成反驳信息并发送给核心分片。举报裁决模块:用于帮助核心分片基于举报信息、反驳信息以及对这些信息的验证结果,得到举报正确性判断结果,并调用奖惩模块形成特殊奖惩交易,广播给各分片,并监督奖惩的执行。奖惩模块:对举报节点和被举报分片进行奖励和惩罚。本发明的目的是这样实现的:当前已有的分片区块链只能通过对节点的随机分配和在分片中节点的定期轮换来保障分片系统的安全性,这要求系统的整体安全阈值必须小于片内安全阈值。本发明提出了一种分片区块链系统安全性保护方法。本方法通过允许每个节点额外存储其它分片的历史区块,使节点具有监督并举报其他分片的交易验证结果的能力,在解决了不合法交易上链以及合法交易未能上链的问题的同时,改变了现有分片系统都依赖于节点的随机分配与周期性轮换来保证系统安全性的分片路线。本发明提出的节点举报机制可以使得分片区块链的整体安全性能够大于等于分片内的安全阈值,从而获得更高的分片系统安全性保护。本发明提出了一种分片区块链系统安全性保护方法,具有以下有益效果:1、本发明允许每个节点除了保存其所在分片的历史区块之外,还可以额外存储1个或多个其他分片节点保存的历史区块,使得该节点能够监督其它分片的交易验证结果。本发明提出的节点举报机制首次在分片区块链上实现了系统整体安全性能够大于等于分片内的安全阈值,实现了更高的分片系统安全性保护。2、本发明提出的安全保护方法仍然保留了分片区块链的优点,即每个节点只存储系统中全体区块的一部分,每个节点存储的区块数量仍然远小于系统中的总区块数量,节点的存储代价仍然是比较低的,因此系统仍然具有较好的可扩展性。
附图说明
32.图1为本发明提供的一种分片区块链系统安全性保护方法的系统组成示意图;图2为本发明提供的一种分片区块链系统安全性保护方法的节点模块示意图;
图3为本发明提供的一种分片区块链系统安全性保护方法示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。为了解决当前分片区块链只能通过定期重组分片来实现系统对节点的随机分配,进而导致系统的整体安全阈值必须小于片内安全阈值的问题,本发明提出了一种分片区块链系统安全性保护方法。本发明通过允许节点额外存储其它分片的历史区块,使节点具有监督并举报被贿赂分片的能力,在解决了不合法交易上链以及合法交易未能上链的问题的同时,改变了现有分片系统都依赖于节点的随机分配与周期性轮换来保证系统安全性的分片路线。为了更好的描述上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。实施例一在本实施例中,我们以一个分片区块链系统为例,假设系统中有10000个服务器节点,从中选出100个节点组成核心分片,核心分片将剩余的9900个节点随机分组,每100个节点组成一个分片,共组成99个普通分片。系统中的所有历史区块被分别存储到不同分片中,即不同分片存储的区块互不重复。如图1所示,所有节点都可以额外存储其他分片的历史区块。在交易验证过程中,每个分片内部采用pbft共识,所有节点除了验证各自所在分片负责验证的那部分交易,还可以监督其所额外存储的交易的验证。系统中的一个服务器实体代表分片区块链中的一个节点,如图2所示,节点的功能模块包含:节点身份模块:存储本节点公私钥和其他节点公钥,所有由节点发出的信息必须通过节点身份模块以本节点私钥进行签名;节点身份模块也可通过其他节点公钥和签名验证算法确认消息来源。存储模块:用于存储本分片区块、额外存储的其他分片区块,以及存储所有历史区块的hash等。交易验证模块:用于收集本分片可验证的待验证交易信息,并基于存储模块存储的内容验证交易是否合法。片内共识模块:用于片内节点间就交易验证结果达成共识。举报生成模块:用于发现不合法的交易验证结果并提出举报。具体包括:基于节点额外存储的其他分片的区块验证其他分片给出的交易验证结果,并在发现错误后将举报信息发送给核心分片。举报验证模块:用于帮助节点验证举报内容是否可靠。具体包括:判断证据的真实性、判断举报内容是否属实,从而生成指控信息并发给被举报分片。举报反驳模块:用于当分片成为被举报分片时,通过搜索被举报交易中相关信息所在的区块,生成反驳信息并发送给核心分片。举报裁决模块:用于帮助核心分片基于举报信息、反驳信息以及对这些信息的验
证结果,得到举报正确性判断结果,并调用奖惩模块形成特殊奖惩交易,广播给各分片,并监督奖惩的执行。奖惩模块:对举报节点和被举报分片进行奖励和惩罚。如图3所示,在本实施例中,本发明分片区块链系统安全性保护方法的实施包含以下步骤:(1)每个节点除了保存其所在分片的历史区块之外,还可以额外存储1个或多个其他分片节点保存的历史区块,使得该节点能够监督其它分片的交易验证结果;(2)在每一轮共识开始之前,核心分片向每个普通分片发送普通分片各自负责验证的那些交易,此外,核心分片还向所有普通分片都发送本轮共识需要验证的所有交易的集合。通过这种方式,每个普通分片内的每个节点可以验证其所负责验证的那部分交易,同时还可以根据本轮共识需要验证的交易集合,对其额外存储的其他普通分片的历史区块中交易验证结果进行监督;(3)每一轮共识中,每个普通分片对其所负责验证的交易经过片内共识后,将验证结果返回给核心分片。如果该普通分片中的某个诚实节点对该分片的1个交易验证结果提出异议,该节点向核心分片对该条交易进行举报;(4)核心分片收集各普通分片对其所负责的交易的验证结果,以及举报节点对其所监督的交易的举报信息,如果两种信息内容一致则进入步骤(5),否则进入步骤(6);(5)核心分片生成本轮共识的若干区块,然后把区块分发给普通分片,即每个普通分片收到一个区块;核心分片还将本轮所有区块的hash发给每一个普通分片,即每个普通分片都拥有全部历史区块的hash。此外,核心分片还将未打包进区块的交易集合发给每个普通分片,如果某个节点根据其额外存储的区块,认为某笔未打包进区块的交易是合法的,则将举报信息发给核心分片;(6)核心分片检查举报信息,通过验证举报信息中所提供的区块的hash,判断该区块是否合法。若该区块是合法的,则基于举报信息生成指控信息,发给被举报分片;若该区块是非法的,则判断举报节点举报失败,进入步骤(8);(7)被举报分片收到指控信息后,可将证明交易合法的信息打包为反驳信息发送给核心分片,核心分片根据反驳信息,请求其它节点对该反驳信息的验证,若超过1/2的节点都支持该反驳信息,则判断被举报分片未被贿赂,举报节点举报失败;若支持该反驳信息的节点数不足1/2,则判断被举报分片已被贿赂,举报节点举报成功。由于分片内采用pbft共识,因此片内安全阈值为1/3,而系统的整体安全阈值可以达到1/2;(8)核心分片根据举报结果,处理举报节点与被举报分片。如果举报节点举报成功,则给予举报节点奖励,并且重组被举报分片;如果举报节点举报失败,则给予举报节点惩罚。尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

技术特征:
1.一种分片区块链系统安全性保护方法,其特征在于,.包括以下步骤:(1)每个节点除了保存其所在分片的历史区块之外,还可以额外存储1个或多个其他分片节点保存的历史区块,使得该节点能够监督其它分片的交易验证结果;(2)在每一轮共识开始之前,核心分片向每个普通分片发送普通分片各自负责验证的那些交易,此外,核心分片还向所有普通分片都发送本轮共识需要验证的所有交易的集合,通过这种方式,每个普通分片内的每个节点可以验证其所负责验证的那部分交易,同时还可以根据本轮共识需要验证的交易集合,对其额外存储的其他普通分片的历史区块中交易验证结果进行监督;(3)每一轮共识中,每个普通分片对其所负责验证的交易经过片内共识后,将验证结果返回给核心分片;如果该普通分片中的某个诚实节点对该分片的1个交易验证结果提出异议,该节点向核心分片对该条交易进行举报;(4)核心分片收集各普通分片对其所负责的交易的验证结果,以及举报节点对其所监督的交易的举报信息,如果两种信息内容一致,则进入步骤(5),否则进入步骤(6);(5)核心分片生成本轮共识的若干区块,然后把区块分发给普通分片,即每个普通分片收到一个区块;核心分片还将本轮所有区块的hash发给每一个普通分片,即每个普通分片都拥有全部历史区块的hash;此外,核心分片还将未打包进区块的交易集合发给每个普通分片,如果某个节点根据其额外存储的区块,认为某笔未打包进区块的交易是合法的,则将举报信息发给核心分片;(6)核心分片检查举报信息,通过验证举报信息中所提供的区块的hash,判断该区块是否合法;若该区块是合法的,则基于举报信息生成指控信息,发给被举报分片;若该区块是非法的,则判断举报节点举报失败,进入步骤(8);(7)被举报分片收到指控信息后,可将证明交易合法的信息打包为反驳信息发送核心分片,核心分片根据反驳信息,向其它能够验证该反驳信息的节点请求区块;若验证结果支持该反驳信息,则判断被举报分片未被贿赂,举报节点举报失败;若验证结果不支持该反驳信息,则判断被举报分片已被贿赂,举报节点举报成功;(8)核心分片根据举报结果,处理举报节点与被举报分片;如果举报节点举报成功,则给予举报节点奖励,并且重组被举报分片;如果举报节点举报失败,则给予举报节点惩罚。2.根据权利要求1所述的分片区块链系统安全性保护方法,其特征在于,所述区块链系统由多个分片组成,其中包含1个核心分片和多个普通分片,每个分片包含多个节点,每个节点只能属于一个分片;区块链系统中的所有历史区块被分别存储到不同的普通分片中,即不同的普通分片负责存储的历史区块互不重复,普通分片内的节点除了存储其所在分片的历史区块,还可以额外存储其他普通分片的历史区块;在交易验证过程中,普通分片内的节点除了验证其所在分片负责验证的那部分交易,还可以监督其所额外存储的交易的验证;所述核心分片负责收集本轮共识需要验证交易集合,并向每个普通分片发送各自负责验证的那部分交易,然后收集普通分片的验证结果以及节点的举报信息,根据普通分片的验证结果和举报的处理结果,将被判断为合法的交易打包进若干区块中,并交给普通分片存储。
3.根据权利要求2所述的分片区块链系统安全性保护方法,其特征在于,所述节点的功能模块包含:节点身份模块、存储模块、交易验证模块、片内共识模块、举报生成模块、举报验证模块、举报反驳模块、举报裁决模块、奖惩模块;节点身份模块:存储本节点公私钥和其他节点公钥,所有由节点发出的信息必须通过节点身份模块以本节点私钥进行签名;节点身份模块也可通过其他节点公钥和签名验证算法确认消息来源;存储模块:用于存储本分片区块、额外存储的其他分片区块,以及存储所有历史区块的hash;交易验证模块:用于收集本分片可验证的待验证交易信息,并基于存储模块存储的内容验证交易是否合法;片内共识模块:用于片内节点间就交易验证结果达成共识;举报生成模块:用于发现不合法的交易验证结果并提出举报;具体包括:基于节点额外存储的其他分片的区块验证其他分片给出的交易验证结果,并在发现错误后将举报信息发送给核心分片;举报验证模块:用于帮助节点验证举报内容是否可靠;具体包括:判断证据的真实性、判断举报内容是否属实,从而生成指控信息并发给被举报分片;举报反驳模块:用于当分片成为被举报分片时,通过搜索被举报交易中相关信息所在的区块,生成反驳信息并发送给核心分片;举报裁决模块:用于帮助核心分片基于举报信息、反驳信息以及对这些信息的验证结果,得到举报正确性判断结果,并调用奖惩模块形成特殊奖惩交易,广播给各分片,并监督奖惩的执行;奖惩模块:对举报节点和被举报分片进行奖励和惩罚。4.根据权利要求3所述的分片区块链系统安全性保护方法,其特征在于,所述举报信息由举报对象、举报内容、证据区块、签名组成;举报对象是指,针对某笔交易的验证结果与举报节点不同的分片;举报内容是指,针对某笔交易的验证结果;证据区块是指,举报节点所额外存储的、能够证明某分片给出的验证结果不合法的区块;签名是指,举报节点应在举报信息上签名,在举报信息被验证后,核心分片将根据签名追溯举报节点,从而对举报节点给予奖励或惩罚。

技术总结
本发明公开了一种分片区块链系统安全性保护方法,其中分片区块链系统由1个核心分片和多个普通分片组成。普通分片中的每个节点除了存储其所在分片的历史区块,还可以额外存储其他分片的历史区块。当系统中单个分片被贿赂时,被贿赂分片对其所负责验证的交易将不能给出合法的验证结果。此时,存储了被贿赂分片历史区块的那些诚实节点可以向核心分片提交对某个交易验证结果的举报,核心分片确认举报的有效性,且系统根据举报是否有效来对提交举报的节点进行奖励或惩罚。本发明通过允许节点额外存储其所属分片外的历史区块,使节点具有监督并举报被贿赂分片的能力,可以解决不合法的交易上链以及合法的交易未能上链的问题,改变了现有分片系统均依赖于节点的随机分配与周期性轮换来保证安全性的分片路线。期性轮换来保证安全性的分片路线。期性轮换来保证安全性的分片路线。


技术研发人员:曹晟 田一凡 陈昊佢 王奕文 陈润泽 张小松
受保护的技术使用者:四川省数字经济研究院(宜宾)
技术研发日:2023.06.06
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐