CN115827772A - 适用于电力设备数据上链的共识方法、装置和服务器 - Google Patents
适用于电力设备数据上链的共识方法、装置和服务器 Download PDFInfo
- Publication number
- CN115827772A CN115827772A CN202211144475.9A CN202211144475A CN115827772A CN 115827772 A CN115827772 A CN 115827772A CN 202211144475 A CN202211144475 A CN 202211144475A CN 115827772 A CN115827772 A CN 115827772A
- Authority
- CN
- China
- Prior art keywords
- tree
- node
- transaction
- nodes
- common
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000002776 aggregation Effects 0.000 claims description 3
- 238000004220 aggregation Methods 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 3
- 230000004927 fusion Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003211 malignant effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种适用于电力设备数据上链的共识方法、装置和服务器,接收区块链中领导节点广播的交易集的摘要;根据交易集的摘要确定是否缺少交易;在缺少交易时,从领导节点索取缺少的交易,以形成完整交易集;将完整交易集的摘要广播至区块链中的各普通节点,以供各普通节点进行交易集共识;收集各普通节点广播的交易集投票,在达到法定人数条件时,完成出块。本申请实施例提供的适用于电力设备数据上链的共识方法,领导节点以及各普通节点在共识时只发送交易集的摘要,并不发送交易的实际内容,大大减少了数据的传输量和传输时间,提高了共识的效率。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种适用于电力设备数据上链的共识方法、装置、服务器和计算机可读存储介质。
背景技术
能源数据的计量认证是能源互联网实现开放与公平的重要基础。传统电力数据的计量认证方案的关键步骤就是将电力设备的数据上传至中心化设施从而进行收集、统计和计算。这种传统方案缺少一种透明、可追溯的技术手段,不能保证数据不被私自篡改。为电力能源计量数据提供认证保障服务,在保证数据安全可靠的同时,确保其数据的可信度和权威性就显得尤为重要。
区块链的去中心化数据存储的架构与技术本身带有透明性与可追溯性,十分适用于对电力数据的计量认证及交换等需要第三方中心化组织及担保的场合。区块链在机制上能够实现可信任与自组织,对未来能源系统中的多方协作发展具有重要意义。共识是区块链分布式计算的核心问题。在区块链系统中,共识就是各个节点对交易执行结果与其顺序达成一致的过程。区块链的共识算法总体可以分为两类,一类是无信任节点之间的共识算法,另一类是受信任节点之间的共识算法。
目前常用的共识算法是PBET共识算法,其中PBFT共识算法可以在少数节点作恶的场景中达成共识,它采用签名验证与哈希等密码学算法确保消息传递过程中的防篡改性、防伪造性、不可抵赖性。PBFT是一种确定性共识算法,其不会产生分叉,所有节点都在相同的配置下运行,且有一个领导节点,其他节点作为普通节点。领导节点负责对客户端的请求进行排序,按顺序发送给普通节点。
然而,对于电力设备数据上链,其具有数据量庞大、数据上链周期短、上链频率高的特点,传统的PBFT共识算法已不能满足性能上的要求,需在其基础上进一步改进,以提高共识效率。
发明内容
有鉴于此,本申请实施例中提供了一种适用于电力设备数据上链的共识方法、装置、服务器和计算机可读存储介质,以克服现有技术上链效率低的问题。
第一方面,本申请实施例提供了一种适用于电力设备数据上链的共识方法,该方法包括:
接收区块链中领导节点广播的交易集的摘要;
根据所述交易集的摘要确定是否缺少交易;
在缺少交易时,从所述领导节点索取缺少的交易,以形成完整交易集;
将所述完整交易集的摘要广播至区块链中的各普通节点,以供各所述普通节点进行交易集共识;
收集各所述普通节点广播的交易集投票,在达到法定人数条件时,完成出块。
第二方面,本申请实施例提供了一种适用于电力设备数据上链的共识装置,该装置包括:
摘要接收模块,用于接收区块链中领导节点广播的交易集的摘要;
缺少交易确定模块,用于根据所述交易集的摘要确定是否缺少交易;
交易索取模块,用于在缺少交易时,从所述领导节点索取缺少的交易,以形成完整交易集;
广播模块,用于将所述完整交易集的摘要广播至区块链中的各普通节点,以供各所述普通节点进行交易集共识;
交易投票模块,用于收集各所述普通节点广播的交易集投票,在达到法定人数条件时,完成出块。
第三方面,本申请实施例提供了一种服务器,包括:存储器;一个或多个处理器,与所述存储器耦接;一个或多个应用程序,其中,一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个应用程序配置用于执行上述第一方面提供的适用于电力设备数据上链的共识方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,计算机可读取存储介质中存储有程序代码,程序代码可被处理器调用执行上述第一方面提供的适用于电力设备数据上链的共识方法。
本申请实施例提供的适用于电力设备数据上链的共识方法、装置、服务器和计算机可读存储介质,接收区块链中领导节点广播的交易集的摘要;根据交易集的摘要确定是否缺少交易;在缺少交易时,从领导节点索取缺少的交易,以形成完整交易集;将完整交易集的摘要广播至区块链中的各普通节点,以供各普通节点进行交易集共识;收集各普通节点广播的交易集投票,在达到法定人数条件时,完成出块。
本申请实施例提供的适用于电力设备数据上链的共识方法,领导节点以及各普通节点在共识时只发送交易集的摘要,并不发送交易的实际内容,大大减少了数据的传输量和传输时间,提高了共识的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的适用于电力设备数据上链的共识方法的应用场景示意图;
图2为本申请一个实施例提供的适用于电力设备数据上链的共识方法的流程示意图;
图3为本申请一个实施例提供的SHA-MAP树结构示意图;
图4为本申请一个实施例中提供的适用于电力设备数据上链的共识装置的结构示意图;
图5为本申请一个实施例中提供的服务器的结构示意图;
图6为本申请一个实施例中提供的计算机可读存储介质的结构示意图。
具体实施方式
下面将对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了更详细说明本申请,下面结合附图对本申请提供的一种适用于电力设备数据上链的共识方法、装置、服务器和计算机可读存储介质,进行具体地描述。
请参考图1,图1示出了本申请实施例提供的适用于电力设备数据上链的共识方法的应用场景(即区块链系统结构)的示意图,该应用场景包括本申请实施例提供的区块链系统,该区块链系统包含了多个节点102。各个节点102可以是安装有区块链软件程序的服务器、服务器组以及终端设备等设备实现,或这些设备中的多种构成的分布式处理系统实现。节点102之间通过点对点网络通信连接以实现相互信息收发。其中,点对点网络(peer-to-peer,P2P),又称对等式网络,是无中心服务器、依靠用户群(peers)交换信息的互联网体系,它的作用在于减低以往网路传输中的节点,以降低资料遗失的风险。与有中心服务器的中央网络系统不同,对等网络的每个用户端既是一个节点,也可承担服务器的功能。
其中,终端设备可以是具有显示屏的各种电子设备,包括但不限于智能手机和计算机设备,其中计算机设备可以是台式计算机、便携式计算机、膝上型计算机、平板电脑、个人计算机等设备中的至少一种。本领域技术人员可以知晓,上述终端设备的数量可以更多或更少。比如上述终端设备可以仅为几个,或者上述终端设备为几十个或几百个,或者更多数量,本申请实施例对终端设备的数量和类型不加以限定。
需要说明的是上述示例中所展示的节点102虽然呈现为服务器、终端设备等实体设备,但是实质上这些实体设备仅为载体,其主要是通过安装并运行区块链软件程序的情况下来实现节点102的功能,例如实现节点102之间的共识机制等,故不需限制实体设备的类型。
另外,节点可以为多核终端设备,区块链系统中包括有一个领导节点和多个普通节点,其中领导节点可以向各普通节点广播交易集等。普通节点可以执行本申请实施例中提供的一种适用于电力设备数据上链的共识方法。
基于此,本申请实施例中提供了一种适用于电力设备数据上链的共识方法。请参阅图2,图2示出了本申请实施例提供的一种适用于电力设备数据上链的共识方法的流程示意图,以该方法应用于图1中的服务器(即普通节点)为例进行说明,包括以下步骤:
步骤S110,接收区块链中领导节点广播的交易集的摘要。
具体来说,区块链中包含有领导节点和普通节点,领导节点主要用于从交易池中不断提取交易;并判断交易集达到了广播条件后,开始提案自己的交易集,广播交易集的摘要给其他普通节点。
在一个实施例中,接收区块链中领导节点广播的交易集的摘要之前,包括:从各客户端收集交易,并将收集的交易放置于交易池,以供领导节点从交易池中提取交易集,并在达到广播条件后广播的交易集的摘要。
其中,客户端可以是用户、设备厂商、供电局等用户提交交易的渠道。
交易主要包括设备的资产编码、检定时间、运行时长等相关数据。
具体地,区块链各普通节点从客户端收集交易,并将收集的交易放置在交易池中;领导节点从交易池中不断提取交易;领导节点判断交易集达到了广播条件后,开始提案自己的交易集,广播交易集的摘要给其他节点。
步骤S120,根据交易集的摘要确定是否缺少交易。
在一个实施例中,交易集的摘要包括SHA-MAP树的树根摘要,SHA-MAP树为基数树与默克尔树融合形成的树;根据交易集的摘要确定是否缺少交易,包括:根据SHA-MAP树的树根摘要来确定是否缺少交易。
在一个实施例中,SHA-MAP树包括多层结构,每一层结构中的节点称为子树节点;根据SHA-MAP树的树根摘要来确定是否缺少交易,包括:根据SHA-MAP树的树根摘要在预先配置的数据库中查找是否存在SHA-MAP树的树根实体;在不存在树根实体时,从普通节点中请求获取树根实体;基于树根实体,分别检测每一个子树节点,并记录各子树节点的摘要;根据各子树节点的摘要确定是否缺少交易。
在一个实施例中,每一层结构中包括一个树节点和若干个叶子节点,或若干个叶子节点;下一层结构中的树节点和若干个叶子节点分别与上一层的树节点相连,每一层结构中的树节点和叶子节点称为子树节点;每一层结构的树节点为下一层结构中树节点的父亲树节点,且为上一层结构中树节点的孩子树节点;其中,交易集的摘要分别为各叶子节点的索引,一个交易的摘要为一个叶子节点的索引,各孩子树节点的摘要合集为父亲树节点的索引。
在一个实施例中,基于树根实体,分别检测每一个子树节点,并记录各子树节点的摘要,包括:当子树节点是叶子节点时,则从预先配置的数据库确认节点实体存在;当子树节点是树节点时,继续查找树节点的子树节点,直至在预先配置的数据库中无法找到树节点,记录无法找到的树节点的摘要值。
请参照图3所示,各个普通节点将交易构造成一个SHA-MAP树,SHA-MAP树融合基数树与默克尔树的特性,总共有多层(例如64层),包含树节点(又称内部树节点)与叶子节点两种树节点,树节点最多包含多个(例如16个)孩子树节点,叶子树节点不能包含孩子树节点,每一层结构中包括一个树节点和若干个叶子节点,或若干个叶子节点;下一层结构中的树节点和若干个叶子节点分别与上一层的树节点相连,每一层结构中的树节点和叶子节点称为子树节点;每一层结构的树节点为下一层结构中树节点的父亲树节点,且为上一层结构中树节点的孩子树节点;其中,交易集的摘要分别为各叶子节点的索引,一个交易的摘要为一个叶子节点的索引,各孩子树节点的摘要合集为父亲树节点的索引。SHA-MAP树的特性是可以根据索引快速定位到树节点在树上的位置,从而加快查询、修改的流程。领导节点在广播交易集时只广播SHA-MAP树的树根摘要。各个共识节点基于这个树根摘要进行交易集转发、校验及共识。
当节点收到领导节点广播的SHA-MAP树的树根摘要时,节点会根据这个摘要在本地数据库中查找是否已经存储了树根实体,如果不存在,先向其它节点请求这个树根实体,形成SHA-MAP树的基础。
基于SHA-MAP树实体,去分别检查它的16个子树节点,如果子树节点是叶子树节点,则直接在预先配置的数据库中确认节点实体的存在;如果子树节点是个树节点(即内部节点)就继续检查这个内部节点的子树节点,依次类推,确认在本地数据库中无法找到的所有树节点,记录节点对应的摘要值。
步骤S130,在缺少交易时,从领导节点索取缺少的交易,以形成完整交易集。
其中,对于普通节点缺失的树节点,可以批量从领导节点索要。
步骤S140,将完整交易集的摘要广播至区块链中的各普通节点,以供各普通节点进行交易集共识。
在一种可选的实施方式中,在共识初始阶段,各个普通节点接收各交易时,可以按照接收各交易的顺序只对其进行简单校验后就转发给网络上与它相连的所有节点。例如节点A收到了客户端按顺序提交的Tx1-Tx4四笔交易。节点A在收集到了Tx1后,对其通过简单验证后,立刻将其转发给节点B。随后的交易Tx2-Tx4同理。四笔交易的验证与转发流程可以是并行的,之间不存在关联。
步骤S150,收集各普通节点广播的交易集投票,在达到法定人数条件时,完成出块。
在完成出块时,各普通节点根据交易集生成带有验证的区块并广播,同时开始下一区块的交易集共识阶段。并且各普通节点收集到法定人数个验证,区块达成共识。
本申请实施例提供的适用于电力设备数据上链的共识方法,领导节点以及各普通节点在共识时只发送交易集的摘要,并不发送交易的实际内容,大大减少了数据的传输率,提高了共识的效率。另外,本申请实施例子所涉及的改进共识算法在传统共识算法的基础上大幅减少了网络中冗余的数据包,在保障交易消息尽量能到达所有节点的同时提升了网络效率。
在一个实施例中,从领导节点索取缺少的交易,以形成完整交易集之后,还包括:根据索取到的新的树根摘要,更新预先配置的数据库。
具体地,当要到新的树节点后,更新本地数据库,重新检查树上是否有缺失的树节点,循环往复,直到本地没有缺失的树节点为止。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
上述本申请公开的实施例中详细描述了一种适用于电力设备数据上链的共识方法,对于本申请公开的上述方法可采用多种形式的设备实现,因此本申请还公开了对应上述方法的适用于电力设备数据上链的共识装置,下面给出具体的实施例进行详细说明。
请参阅图4,为本申请实施例公开的一种适用于电力设备数据上链的共识装置,主要包括:
摘要接收模块410,用于接收区块链中领导节点广播的交易集的摘要;
缺少交易确定模块420,用于根据交易集的摘要确定是否缺少交易;
交易索取模块430,用于在缺少交易时,从领导节点索取缺少的交易,以形成完整交易集;
广播模块440,用于将完整交易集的摘要广播至区块链中的各普通节点,以供各普通节点进行交易集共识;
交易投票模块450,用于收集各普通节点广播的交易集投票,在达到法定人数条件时,完成出块。
在一个实施例中,交易集的摘要包括SHA-MAP树的树根摘要,SHA-MAP树为基数树与默克尔树融合形成的树;缺少交易确定模块420,用于根据SHA-MAP树的树根摘要来确定是否缺少交易。
在一个实施例中,SHA-MAP树包括多层结构,每一层结构中的节点称为子树节点;缺少交易确定模块420,用于根据SHA-MAP树的树根摘要在预先配置的数据库中查找是否存在SHA-MAP树的树根实体;在不存在树根实体时,从普通节点中请求获取树根实体;基于树根实体,分别检测每一个子树节点,并记录各子树节点的摘要;根据各子树节点的摘要确定是否缺少交易。
在一个实施例中,每一层结构中包括一个树节点和若干个叶子节点,或若干个叶子节点;下一层结构中的树节点和若干个叶子节点分别与上一层的树节点相连,每一层结构中的树节点和叶子节点称为子树节点;每一层结构的树节点为下一层结构中树节点的父亲树节点,且为上一层结构中树节点的孩子树节点;其中,交易集的摘要分别为各叶子节点的索引,一个交易的摘要为一个叶子节点的索引,各孩子树节点的摘要合集为父亲树节点的索引。
在一个实施例中,缺少交易确定模块420,用于当子树节点是叶子节点时,则从预先配置的数据库确认节点实体存在;当子树节点是树节点时,继续查找树节点的子树节点,直至在预先配置的数据库中无法找到树节点,记录无法找到的树节点的摘要值。
在一个实施例中,装置还包括:更显模块,用于从领导节点索取缺少的交易,以形成完整交易集之后,还包括:根据索取到的新的树根摘要,更新预先配置的数据库。
在一个实施例中,装置还包括交易收集模块,用于从各客户端收集交易,并将收集的交易放置于交易池,以供领导节点从交易池中提取交易集,并在达到广播条件后广播的交易集的摘要。
关于适用于电力设备数据上链的共识装置的具体限定可以参见上文中对于方法的限定,在此不再赘述。上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于服务器中的处理器中,也可以以软件形式存储于服务器中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
请参考图5,图5其示出了本申请实施例提供的一种服务器的结构框图。本申请中的服务器50可以包括一个或多个如下部件:处理器52、存储器54以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器54中并被配置为由一个或多个处理器52执行,一个或多个应用程序配置用于执行上述应用于适用于电力设备数据上链的共识方法实施例中所描述的方法。
处理器52可以包括一个或者多个处理核。处理器52利用各种接口和线路连接整个服务器50内的各个部分,通过运行或执行存储在存储器54内的指令、程序、代码集或指令集,以及调用存储在存储器54内的数据,执行服务器50的各种功能和处理数据。可选地,处理器52可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器52可集成中央处理器(Central ProcessingUnit,CPU)、图形处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器52中,单独通过一块通信芯片进行实现。
存储器54可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器54可用于存储指令、程序、代码、代码集或指令集。存储器54可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储服务器50在使用中所创建的数据等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
综上,本申请实施例提供的服务器用于实现前述方法实施例中相应的适用于电力设备数据上链的共识方法,并具有相应的方法实施例的有益效果,在此不再赘述。
请参阅图6,其示出了本申请实施例提供的一种计算机可读取存储介质的结构框图。该计算机可读取存储介质60中存储有程序代码,程序代码可被处理器调用执行上述适用于电力设备数据上链的共识方法实施例中所描述的方法。
计算机可读取存储介质60可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读取存储介质60包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读取存储介质60具有执行上述方法中的任何方法步骤的程序代码62的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码62可以例如以适当形式进行压缩。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种适用于电力设备数据上链的共识方法,其特征在于,所述方法包括:
接收区块链中领导节点广播的交易集的摘要;
根据所述交易集的摘要确定是否缺少交易;
在缺少交易时,从所述领导节点索取缺少的交易,以形成完整交易集;
将所述完整交易集的摘要广播至区块链中的各普通节点,以供各所述普通节点进行交易集共识;
收集各所述普通节点广播的交易集投票,在达到法定人数条件时,完成出块。
2.根据权利要求1所述的方法,其特征在于,所述交易集的摘要包括SHA-MAP树的树根摘要,所述SHA-MAP树为基数树与默克尔树融合形成的树;所述根据所述交易集的摘要确定是否缺少交易,包括:
根据所述SHA-MAP树的树根摘要来确定是否缺少交易。
3.根据权利要求2所述的方法,其特征在于,所述SHA-MAP树包括多层结构,每一层结构中的节点称为子树节点;所述根据SHA-MAP树的树根摘要来确定是否缺少交易,包括:
根据所述SHA-MAP树的树根摘要在预先配置的数据库中查找是否存在SHA-MAP树的树根实体;
在不存在所述树根实体时,从所述普通节点中请求获取所述树根实体;
基于所述树根实体,分别检测每一个子树节点,并记录各所述子树节点的摘要;
根据各所述子树节点的摘要确定是否缺少交易。
4.根据权利要求3所述的方法,其特征在于,所述每一层结构中包括一个树节点和若干个叶子节点,或若干个叶子节点;下一层结构中的树节点和若干个叶子节点分别与上一层的树节点相连,每一层结构中的树节点和叶子节点称为子树节点;
所述每一层结构的树节点为下一层结构中树节点的父亲树节点,且为上一层结构中树节点的孩子树节点;
其中,交易集的摘要分别为各叶子节点的索引,一个交易的摘要为一个叶子节点的索引,各孩子树节点的摘要合集为父亲树节点的索引。
5.根据权利要求4所述的方法,其特征在于,所述基于所述树根实体,分别检测每一个子树节点,并记录各所述子树节点的摘要,包括:
当所述子树节点是叶子节点时,则从预先配置的数据库确认节点实体存在;
当所述子树节点是树节点时,继续查找所述树节点的子树节点,直至在预先配置的数据库中无法找到树节点,记录无法找到的树节点的摘要值。
6.根据权利要求5所述的方法,其特征在于,所述从所述领导节点索取缺少的交易,以形成完整交易集之后,还包括:
根据索取到的新的树根摘要,更新所述预先配置的数据库。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述接收区块链中领导节点广播的交易集的摘要之前,包括:
从各客户端收集交易,并将收集的交易放置于交易池,以供所述领导节点从交易池中提取交易集,并在达到广播条件后广播的交易集的摘要。
8.一种适用于电力设备数据上链的共识装置,其特征在于,所述装置包括:
摘要接收模块,用于接收区块链中领导节点广播的交易集的摘要;
缺少交易确定模块,用于根据所述交易集的摘要确定是否缺少交易;
交易索取模块,用于在缺少交易时,从所述领导节点索取缺少的交易,以形成完整交易集;
广播模块,用于将所述完整交易集的摘要广播至区块链中的各普通节点,以供各所述普通节点进行交易集共识;
交易投票模块,用于收集各所述普通节点广播的交易集投票,在达到法定人数条件时,完成出块。
9.一种服务器,其特征在于,包括:
存储器;一个或多个处理器,与所述存储器耦接;一个或多个应用程序,其中,一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个应用程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211144475.9A CN115827772A (zh) | 2022-09-20 | 2022-09-20 | 适用于电力设备数据上链的共识方法、装置和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211144475.9A CN115827772A (zh) | 2022-09-20 | 2022-09-20 | 适用于电力设备数据上链的共识方法、装置和服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115827772A true CN115827772A (zh) | 2023-03-21 |
Family
ID=85523757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211144475.9A Pending CN115827772A (zh) | 2022-09-20 | 2022-09-20 | 适用于电力设备数据上链的共识方法、装置和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115827772A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116389507A (zh) * | 2023-06-06 | 2023-07-04 | 中铱数字科技有限公司 | 基于区块链的管理共识策略系统 |
-
2022
- 2022-09-20 CN CN202211144475.9A patent/CN115827772A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116389507A (zh) * | 2023-06-06 | 2023-07-04 | 中铱数字科技有限公司 | 基于区块链的管理共识策略系统 |
CN116389507B (zh) * | 2023-06-06 | 2023-08-04 | 中铱数字科技有限公司 | 基于区块链的管理共识策略系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI709868B (zh) | 基於區塊鏈的資料存證方法和裝置 | |
CN112235420B (zh) | 基于区块链的数据同步方法、系统及相关设备 | |
US20230315891A1 (en) | Transaction data processing method and apparatus, computer device and storage medium | |
CN113409047B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN111522874B (zh) | 区块链共识方法、装置、计算机设备和存储介质 | |
CN111416709A (zh) | 基于区块链系统的投票方法、装置、设备及存储介质 | |
CN112134883B (zh) | 基于可信计算进行节点间信任关系快速认证的方法、装置及相关产品 | |
CN115827772A (zh) | 适用于电力设备数据上链的共识方法、装置和服务器 | |
Wang et al. | A fast and secured peer-to-peer energy trading using blockchain consensus | |
CN106487653B (zh) | 一种消息处理方法及服务器 | |
CN115689760B (zh) | 一种高并发电力交易的区块链分片共识方法、装置和设备 | |
CN110298751A (zh) | 跨平台的交易数据处理方法、装置、终端及存储介质 | |
CN112131602B (zh) | 基于可信计算进行节点间信任关系快速扩展的方法、装置及相关产品 | |
CN112906171B (zh) | 一种综合能源系统可信协同优化方法及仿真平台 | |
CN117376366A (zh) | 区块链交易处理方法、装置、介质及电子设备 | |
CN114549149A (zh) | 智能电网能源交易数据处理方法、装置和计算机设备 | |
CN114363084A (zh) | 一种基于区块链的跨境贸易数据可信存储方法 | |
CN114254278A (zh) | 用户账号合并方法、装置、计算机设备以及存储介质 | |
CN111966919A (zh) | 一种事件消息的处理方法、装置及设备 | |
CN112487065A (zh) | 一种数据检索方法和装置 | |
CN113495982B (zh) | 交易节点管理方法、装置、计算机设备及存储介质 | |
CN111275346A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN112541764B (zh) | 基于智能合约的资产管理方法、装置和系统 | |
CN113300853B (zh) | 金融征信信息管理方法、装置、电子设备及存储介质 | |
CN115103039B (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 |