CN115694876A - 一种区块链电力交易系统、共识方法、设备和存储介质 - Google Patents

一种区块链电力交易系统、共识方法、设备和存储介质 Download PDF

Info

Publication number
CN115694876A
CN115694876A CN202211034316.3A CN202211034316A CN115694876A CN 115694876 A CN115694876 A CN 115694876A CN 202211034316 A CN202211034316 A CN 202211034316A CN 115694876 A CN115694876 A CN 115694876A
Authority
CN
China
Prior art keywords
transaction
cross
fragment
segment
nodes
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
Application number
CN202211034316.3A
Other languages
English (en)
Inventor
王文
彭晓峰
肖春
张俊伟
杨烨
张晓晴
彭代文
高诗巧
鞠利伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Electric Vehicle Service Co Ltd
Marketing Service Center of State Grid Shanxi Electric Power Co Ltd
Original Assignee
State Grid Electric Vehicle Service Co Ltd
Marketing Service Center of State Grid Shanxi Electric Power Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Electric Vehicle Service Co Ltd, Marketing Service Center of State Grid Shanxi Electric Power Co Ltd filed Critical State Grid Electric Vehicle Service Co Ltd
Priority to CN202211034316.3A priority Critical patent/CN115694876A/zh
Priority to PCT/CN2022/137460 priority patent/WO2024040796A1/zh
Publication of CN115694876A publication Critical patent/CN115694876A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种区块链电力交易系统、共识方法、设备和存储介质,包括信誉模块、分片划分模块、分片内共识模块和跨分片共识模块;分片划分模块,用于根据系统中各节点的信誉值和节点所在地区,将所述节点划分到多个分片;信誉模块,由信誉链组成,用于基于节点的工作数据计算分片内各节点的信誉值;分片内共识模块,用于基于分片内的节点交易信息,通过分片内共识算法对分片内的节点交易进行验证;为分片内的节点提出跨分片交易;跨分片共识模块,用于通过多级跨分片共识机制,对跨分片交易进行验证;本发明基于信誉机制将节点编入分片,确保了分片内的安全性;通过多级跨分片共识机制对跨分片交易进行验证,能够保证节点安全高效的进行交易。

Description

一种区块链电力交易系统、共识方法、设备和存储介质
技术领域
本发明属于智能电网和分布式电力交易技术领域,具体涉及一种区块链电力交易系统、共识方法、设备和存储介质。
背景技术
随着电力体制改革的深入和分布式能源渗透率的提高,分布式能源在发电侧和售电侧的有效配置面临机遇和挑战。传统的中心化电力交易模式存在透明度低、成本高、效率低、数据不可靠等诸多问题,难以落地,而区块链技术与分布式电力交易有很高的兼容性。在更广泛的智能电网支持下,使用分布式账本技术促进点对点(P2P)能源共享的隐私、信任和安全性正在受到全球关注。
针对区块链与电力交易的现有研究,大多侧重于对区块链技术应用场景、方向和价值的探索,而适应大规模分布式电力交易应用的研究还处于起步阶段。而由于电网中充电设备和充电站数量随时可能增加,使此类电力交易的可扩展性、交易吞吐效率和安全性能面临巨大挑战。
发明内容
为克服上述现有技术的不足,本发明提出一种区块链电力交易系统和共识方法,所述电力交易系统包括由多个节点构成的若干分区,和计算设备;所述节点为充电站;所述计算设备上安装有信誉模块、分片划分模块、分片内共识模块和跨分片共识模块;每个信誉模块和分片内共识模块均对应一个分片;分片划分模块和跨分片共识模块对应多个分片;各分片均包括交易链和信誉链;
所述分片划分模块,用于根据电力交易系统中各节点的信誉值和节点所在地区,将所述节点划分到多个分片;
所述信誉模块,由信誉链组成,所述信誉模块用于基于节点的工作数据计算分片内各节点的信誉值;
所述分片内共识模块,用于基于分片内的节点交易信息,通过分片内共识算法对分片内的节点交易进行验证;还用于为分片内的节点提出跨分片交易;
所述跨分片共识模块,用于通过多级跨分片共识机制,对分片内共识模块提出的跨分片交易进行验证。
优选的,所述分片划分模块,具体用于基于节点所在地区编码,将相同地区或相邻地区的节点划分到同一分片;当分片内节点生成设定数量的交易块后,读取并基于各分片内节点的信誉值表,按节点的信誉值从大到小的顺序,将信誉值相同的节点平均划分到各分片。
优选的,所述分片内节点的信誉值表存储于信誉块,所述信誉块由各分片的临时信誉块组成后链接于信誉链上;所述分片的临时信誉块中的信息,包括已确认的交易黑名单、交易链的历史信誉值和信誉值表中涉及的所有节点的集体签名。
优选的,所述跨分片共识模块包括下述跨分片交易验证机制:
多个分片组成一个跨分片交易验证委员会,每个分片为一个验证委员;所述委员会基于各分片的信誉值确定各分片的级别;同一个委员会管理的多个分片中至少有一个诚实分片;
所述跨分片交易验证为各级别分片由低到高逐级验证,且各级别分片验证通过后均进行签名;最低级别分片对最高级别分片进行验证;
当跨分片交易块获得全部级别分片的签名时,验证通过,并将验证通过的跨分片交易块添加到交易链上;
其中,所述各分片的信誉值,基于信誉块中各分片内节点的信誉值表确定;所述诚实分片为信誉值超过设定值的分片,所述诚实分片的验证结果可信;所述跨分片交易块由分片内共识模块基于分片内节点的跨分片交易信息提出。
优选的,所述跨分片共识模块的跨分片交易验证机制,还包括:
当跨分片交易出现分叉产生两个跨分片交易块时,各级别分片由低到高逐级选择并验证同一分叉上的跨分片交易块;
当跨分片交易块获得全部级别分片的签名时,验证通过,将验证通过的跨分片交易块添加到交易链上,并丢弃其他分叉上的跨分片交易块,恢复损坏的分片;
其中,所述跨分片交易出现分叉的情况,包括提出跨分片交易的分片损坏。
优选的,各级别分片对跨分片交易块的区块头进行验证;所述区块头中记录有各级别分片的验证历史和各级别分片中所有节点的集体签名。
优选的,所述分片内共识模块,具体用于基于分片内的节点交易信息,通过拜占庭容错共识算法对分片内的节点交易进行验证。
优选的,所述节点的工作数据包括:节点贡献总量、节点工作的频率和节点创建交易链分叉的频率。
基于同一发明构思,本发明还提供了一种区块链电力交易系统共识方法,包括:
提取分片内的节点交易信息;
若所述分片内的节点交易信息为分片内交易信息,则通过分片内共识算法,对分片内交易进行验证;若所述分片内的节点交易信息为跨分片交易信息,则通过多级跨分片共识机制,对跨分片交易进行验证;
其中,所述电力交易系统包括由多个节点构成的若干分区,和计算设备;所述节点为充电站;所述分片根据电力交易系统中各节点的信誉值和节点所在地区预先划分;各分片均包括交易链和信誉链。
优选的,所述各节点的信誉值记录于分片内节点的信誉值表;所述分片内节点的信誉值表存储于信誉块;所述信誉块由各分片的临时信誉块组成后链接于信誉链上;所述分片的临时信誉块中的信息,包括已确认的交易黑名单、交易链的历史信誉值和信誉值表中涉及节点的集体签名。
优选的,所述若所述分片内的节点交易信息为跨分片交易信息,则通过多级跨分片共识机制,对跨分片交易进行验证,包括:
通过各级别分片由低到高对跨分片交易块进行逐级验证,并在验证通过后进行签名;
当跨分片交易块获得全部级别分片的签名时,验证通过,并将验证通过的跨分片交易块添加到交易链上;
其中,多个分片组成一个跨分片交易验证委员会,每个分片为一个验证委员;所述委员会基于各分片的信誉值确定各分片的级别;同一个委员会管理的多个分片中至少有一个诚实分片;最低级别分片对最高级别分片进行验证;所述各分片的信誉值,基于信誉块中各分片内节点的信誉值表确定;所述诚实分片为信誉值超过设定值的分片,所述诚实分片的验证结果可信;所述跨分片交易块基于跨分片交易信息提出。
优选的,所述通过多级跨分片共识机制,对跨分片交易进行验证,还包括:
当跨分片交易出现分叉产生两个跨分片交易块时,通过各级别分片由低到高逐级选择并验证同一分叉上的跨分片交易块;
当跨分片交易块获得全部级别分片的签名时,验证通过,通过将验证通过的跨分片交易块添加到交易链上并丢弃其他分叉上的跨分片交易块,恢复损坏的分片;
其中,所述跨分片交易出现分叉的情况,包括提出跨分片交易的分片损坏。
优选的,各级别分片对跨分片交易块进行验证,包括:
各级别分片对跨分片交易块的区块头进行验证;
所述区块头中记录有各级别分片的验证历史和各级别分片中所有节点的集体签名。
优选的,所述若所述分片内的节点交易信息为分片内交易信息,则通过分片内共识算法,对分片内交易进行验证,包括:
基于分片内交易信息,通过拜占庭容错共识算法对分片内的节点交易进行验证。
优选的,所述分片的划分,包括:
基于节点所在地区编码,将相同地区或相邻地区的节点划分到同一分片;当分片内节点生成设定数量的交易块后,读取并基于各分片内节点的信誉值表,按节点的信誉值从大到小的顺序,将信誉值相同的节点平均划分到各分片。
优选的,节点的信誉值的计算,包括:
基于节点的工作数据,计算分片内各节点的信誉值;
其中所述节点的工作数据,包括节点贡献总量、节点工作的频率和节点创建交易链分叉的频率。
基于同一发明构思,本发明还提供了一种计算机设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,实现所述一种区块链电力交易系统共识方法。
基于同一发明构思,本发明还提供了一种计算机可读存储介质,其上存有计算机程序,所述计算机程序被执行时,实现所述一种区块链电力交易系统共识方法。
与最接近的现有技术相比,本发明具有的有益效果如下:
本发明提供了一种区块链电力交易系统和共识方法,所述电力交易系统包括由多个节点构成的若干分区,和计算设备;所述节点为充电站;所述计算设备上安装有信誉模块、分片划分模块、分片内共识模块和跨分片共识模块;每个信誉模块和分片内共识模块均对应一个分片;分片划分模块和跨分片共识模块对应多个分片;各分片均包括交易链和信誉链;所述分片划分模块,用于根据电力交易系统中各节点的信誉值和节点所在地区,将所述节点划分到多个分片;所述信誉模块,由信誉链组成,所述信誉模块用于基于节点的工作数据计算分片内各节点的信誉值;所述分片内共识模块,用于基于分片内的节点交易信息,通过分片内共识算法对分片内的节点交易进行验证;还用于为分片内的节点提出跨分片交易;所述跨分片共识模块,用于通过多级跨分片共识机制,对分片内共识模块提出的跨分片交易进行验证;本发明基于节点的信誉值将节点编入分片,使各分片内都具有尽可能高且相同比例的信誉良好的节点,保证了各分片的信誉平衡,确保了分片内的安全性;本发明通过多级跨分片共识机制对跨分片交易进行验证,能够保证节点安全高效的进行跨分片交易;通过分片内共识算法对分片内的节点交易进行验证,能够提高交易验证效率,进而提高系统交易吞吐量;
本发明提供的分片划分模块可随时将新加入的节点划分入分片进行交易,提高了电力交易的扩展性。
附图说明
图1为本发明提供的一种区块链电力交易系统的结构示意图;
图2为本发明提供的一种区块链电力交易系统共识方法流程示意图;
图3为本发明提供的一个区块链电力交易系统共识方法实施例的流程示意图;
图4为本发明提供的一种区块链电力交易系统的多级跨分片共识示意图;
图5为本发明提供的一种区块链电力交易系统的区块头信息示意图。
具体实施方式
为适应大规模分布式电力交易场景,本发明基于区块链技术的分布式电力交易框架,开展了基于异步共识机制的关键技术研究,设计了一种高吞吐量、安全性好的分片共识机制,能够在未来大规模电动汽车参与电力交易场景下,在安全性和吞吐量之间找到平衡,既能保证交易安全,又有较高的交易吞吐量。
下面结合附图对本发明的具体实施方式做进一步的详细说明。
实施例1:
本发明提供的一种区块链电力交易系统,其结构示意图如图1所示,包括:由多个节点构成的若干分区,和计算设备;所述节点为充电站;所述计算设备上安装有信誉模块、分片划分模块、分片内共识模块和跨分片共识模块;每个信誉模块和分片内共识模块均对应一个分片;分片划分模块和跨分片共识模块对应多个分片;各分片均包括交易链和信誉链;
所述分片划分模块,用于根据电力交易系统中各节点的信誉值和节点所在地区,将所述节点划分到多个分片;
所述信誉模块,由信誉链组成,所述信誉模块用于基于节点的工作数据计算分片内各节点的信誉值;
所述分片内共识模块,用于基于分片内的节点交易信息,通过分片内共识算法对分片内的节点交易进行验证;还用于为分片内的节点提出跨分片交易;
所述跨分片共识模块,用于通过多级跨分片共识机制,对分片内共识模块提出的跨分片交易进行验证。
在系统运行之前需要进行初始化,首先要对系统参数进行设置:
设置节点总数为N,分片数为K,各分片拥有最小尺寸,以保持相似的属性(所述最小尺寸指每个分片内的节点数目都有N/K个,最后一个分片内可以不足这个数目的节点,但其他分片内的节点不能超过这个数目),设置跨分片交易委员会大小为m(m<K)个分片;
设置节点身份标识(Identity,ID):本发明中节点的ID由地区编码+身份编码组成,地区编码由4位数字组成,身份编码由4位数字组成,即节点ID共8位数字,例如00010001代表1号地区的1号节点;
分片设置:每个分片有两条链,信誉链和交易链;两条链有不同的更新周期,信誉链设置为每生成一千个交易块更新一次信誉链,即每一千个交易块生成后,产生一个信誉块。
所述信誉模块由信誉链组成,信誉模块基于计算节点的信誉值,所述节点的工作数据包括三方面:参与节点贡献的有效工作(或贡献)的总量、工作的频率和创建的块被抛弃的频率(即节点创建交易链分叉的频率,如果节点总是创建分叉则视为恶意行为)。
所述分片划分模块,由于多数情况下电力调度都是在本地区域内调度,所以分片时应考虑到这一点,以减少跨分片交易的数量,提高系统效率。所述分片划分模块具体用于基于节点所在地区编码,将相同地区或相邻地区的节点划分到同一分片;所述分片划分模块将节点随机分配到一个包含与节点相同或相邻地区节点的分片,该分片通常具有最小尺寸,如果多个分片满足最小尺寸要求,系统会随机选择一个满足的分片来分配节点;
当分片内节点生成设定数量的交易块后,读取并基于各分片内节点的信誉值表,基于信誉机制,按节点的信誉值从大到小的顺序,将信誉值相同的节点平均划分到各分片;每次分片内节点的更新,本发明选择具有最大信誉值的当前未分配节点,将之分配到分片中,使各分片内都具有尽可能高且相同比例的信誉良好的节点,增强分片内的安全性,从本质上保持了每个分片中总信誉值的平衡和等价。
其中,所述分片内节点的信誉值表存储于信誉块,所述信誉块由各分片的临时信誉块组成后链接于信誉链上;所述分片的临时信誉块中的信息,包括已确认的交易黑名单、交易链的历史信誉值和信誉值表中涉及的所有节点的集体签名。
所述跨分片共识模块包括下述跨分片交易验证机制:
多个分片组成一个跨分片交易验证委员会,每个分片为一个验证委员;所述委员会基于各分片的信誉值确定各分片的级别;分片的级别与分片的信誉值呈正相关;同一个委员会管理的多个分片中至少有一个诚实分片;
所述跨分片交易验证为各级别分片由低到高逐级验证,且各级别分片验证通过后均进行签名;最低级别分片对最高级别分片进行验证;
当跨分片交易块获得全部级别分片的签名时,验证通过,并将验证通过的跨分片交易块添加到交易链上;
进一步的,本发明设计的多级跨分片共识机制要求后一个分片只需验证前一个分片提出的最新块(前一个分片验证通过的块),而不需要每个块都验证,以提高共识效率。当跨分片交易块得到了所有委员会委员的验证且通过后,该块和该块的父块都被认为是最终块,并添加到交易链上;
其中,所述各分片的信誉值,基于信誉块中各分片内节点的信誉值表确定;所述诚实分片为信誉值超过设定值的分片,所述诚实分片的验证结果可信;所述跨分片交易块由分片内共识模块基于分片内节点的跨分片交易信息提出。
所述跨分片共识模块的跨分片交易验证机制,还包括:
当跨分片交易出现分叉产生两个跨分片交易块时,各级别分片由低到高逐级选择并验证同一分叉上的跨分片交易块;
当跨分片交易块获得全部级别分片的签名时,验证通过,将验证通过的跨分片交易块添加到交易链上,并丢弃其他分叉上的跨分片交易块,恢复损坏的分片;
进一步的,每个分片负责验证前一个分片的验证结果,为了消除前一个分片验证的分叉,每个级别的分片只能选择自己曾经选择的一个分叉上的块进行验证。每个产生的块都需要记录一个从验证委员会中的前一个分片接收到的块。在这种情况下,一旦这样的块被验证,它就会记录其分片的验证结果;每个诚实分片不仅需要验证交易的有效性还要保证该块中的验证结果与其历史验证的块中的验证结果不冲突,在这种机制下,委员会中只要有一个诚实的分片,即可保证交易的安全和有效;
其中,所述跨分片交易出现分叉的情况,包括提出跨分片交易的分片损坏。
进一步的,各级别分片只对跨分片交易块的区块头进行验证;所述区块头中记录有各级别分片的验证历史和各级别分片中所有节点的集体签名。
由于拜占庭容错共识算法具有较低通信复杂度和较高扩展性,所述分片内共识模块,采用拜占庭容错共识算法对分片内的节点交易进行验证。
本发明基于节点的信誉值将节点编入分片,使各分片内都具有尽可能高且相同比例的信誉良好的节点,保证了各分片的信誉平衡,确保了分片内的安全性;本发明通过多级跨分片共识机制对跨分片交易进行验证,能够保证节点安全高效的进行跨分片交易;通过分片内共识算法对分片内的节点交易进行验证,能够提高交易验证效率,进而提高系统交易吞吐量;本发明提供的分片划分模块可随时将新加入的节点划分入分片进行交易,提高了电力交易的扩展性。
实施例2:
基于同一种发明构思,本发明还提供了一种区块链电力交易系统共识方法,其流程示意图如图2所示,包括:
步骤1:提取分片内的节点交易信息;
步骤2:若所述分片内的节点交易信息为分片内交易信息,则通过分片内共识算法,对分片内交易进行验证;
步骤3:若所述分片内的节点交易信息为跨分片交易信息,则通过多级跨分片共识机制,对跨分片交易进行验证;
其中,所述电力交易系统包括由多个节点构成的若干分区,和计算设备;所述节点为充电站;所述分片根据电力交易系统中各节点的信誉值和节点所在地区预先划分;各分片均包括交易链和信誉链。
所述各节点的信誉值记录于分片内节点的信誉值表;所述分片内节点的信誉值表存储于信誉块;所述信誉块由各分片的临时信誉块组成后链接于信誉链上;所述分片的临时信誉块中的信息,包括已确认的交易黑名单、交易链的历史信誉值和信誉值表中涉及节点的集体签名。
分片的划分,包括:
基于节点所在地区编码,将相同地区或相邻地区的节点划分到同一分片;当分片内节点生成设定数量的交易块后,读取并基于各分片内节点的信誉值表,按节点的信誉值从大到小的顺序,将信誉值相同的节点平均划分到各分片。
节点的信誉值的计算,包括:
基于节点的工作数据,计算分片内各节点的信誉值;
其中所述节点的工作数据,包括节点贡献总量、节点工作的频率和节点创建交易链分叉的频率。
步骤2具体包括:
基于分片内交易信息,通过拜占庭容错共识算法对分片内的节点交易进行验证。
步骤3具体包括:
通过各级别分片由低到高对跨分片交易块进行逐级验证,并在验证通过后进行签名;
当跨分片交易块获得全部级别分片的签名时,验证通过,并将验证通过的跨分片交易块添加到交易链上;
其中,多个分片组成一个跨分片交易验证委员会,每个分片为一个验证委员;所述委员会基于各分片的信誉值确定各分片的级别;同一个委员会管理的多个分片中至少有一个诚实分片;最低级别分片对最高级别分片进行验证;所述各分片的信誉值,基于信誉块中各分片内节点的信誉值表确定;所述诚实分片为信誉值超过设定值的分片,所述诚实分片的验证结果可信;所述跨分片交易块基于跨分片交易信息提出。
步骤3还包括:
当跨分片交易出现分叉产生两个跨分片交易块时,通过各级别分片由低到高逐级选择并验证同一分叉上的跨分片交易块;
当跨分片交易块获得全部级别分片的签名时,验证通过,通过将验证通过的跨分片交易块添加到交易链上并丢弃其他分叉上的跨分片交易块,恢复损坏的分片;
其中,所述跨分片交易出现分叉的情况,包括提出跨分片交易的分片损坏。
各级别分片对跨分片交易块进行验证,包括:
各级别分片对跨分片交易块的区块头进行验证;
所述区块头中记录有各级别分片的验证历史和各级别分片中所有节点的集体签名。
本发明基于节点的信誉值将节点编入分片,使各分片内都具有尽可能高且相同比例的信誉良好的节点,保证了各分片的信誉平衡,确保了分片内的安全性;通过多级跨分片共识机制对跨分片交易进行验证,能够保证节点安全高效的进行跨分片交易;通过分片内共识算法对分片内的节点交易进行验证,能够提高交易验证效率,进而提高系统交易吞吐量;本发明可随时将新加入的节点划分入分片进行交易,提高了电力交易的扩展性。
实施例3:
本实施例对一种区块链电力交易系统共识方法的具体实现过程进行介绍,其流程示意图如图3所示,包括:
系统初始化;
通过信誉模块计算和存储分片内节点的信誉值;
通过分片划分模块根据节点的信誉值和节点地区编号将节点编入分片;
通过分片内共识模块对分片内的交易进行验证,或提出跨分片交易;
通过跨分片共识模块基于多级跨分片共识机制验证跨分片交易;
其中,所述节点为充电站。
进一步的,系统初始化时需要对系统参数、节点和分片进行设置:
系统参数设置,设置节点总数为N,分片数为K,设置跨分片交易委员会大小为m个分片;
节点设置,本实施例设置节点的身份标识由地区编码+身份编码组成,地区编码由4位数字组成,身份编码也由4位数字组成,例如00010001代表1号地区的1号节点;
分片设置,每个分片内有两条链,信誉链和交易链;两条链有不同的更新周期,为了提升系统效率,信誉链设置为每生成1000个交易块,更新一个信誉块。
进一步的,节点的信誉值的计算过程如下:
1.每个分片创建并维护一条信誉链;
2.信誉值基于三个方面进行计算:参与节点贡献的有效工作(或贡献)的总量、节点工作的频率(活跃程度)和节点创建的块被抛弃的频率(即节点创建交易链分叉的频率,如果节点总是创建分叉则视为恶意行为);
3.当交易链上指定数量的交易块生成时,将在所有分片中的节点之间构建一个临时的信誉块,以反映其分片中的节点的信誉。这个临时的信誉块承载了每个分片中的节点的信誉(以信誉值表的形式记录)、已确认的交易黑名单、信誉链的历史信誉值以及参与的所有节点的集体签名。每个分片中的节点根据可用信息(例如节点活跃程度,节点恶意行为次数,节点贡献的有效工作的总量)单独计算一个临时信誉块。临时信誉块链接到交易链上,交易链可视为一个状态块,而信誉链中的信誉块是来自各个分片的临时信誉块的集合,包含所有节点的所有信誉值。信誉块通过聚合签名来验证有效性;
4.指定每一千笔交易更新一次信誉链,即每一千个交易块生成后,产生一个信誉块。
进一步的,节点编入分片的过程如下:
1.读取最新的信誉块,得到上一轮各分片的节点信誉值表;
2.对各节点信誉值进行排序,得到新一轮的所有节点的信誉值表;
3.对于列表中的每个节点,它被随机分配到一个包含与其编号相邻地区节点的分片,该分片通常具有最小的大小,以便它可以保持相似的属性。如果多个分片满足最小大小要求,分片划分模块随机选择一个满足的分片来分配节点;
4.对每次信誉列表的更新,分片划分模块选择具有最大信誉值的当前未分配节点分配到分片中,使各分片内都具有尽可能高且相同比例的信誉良好的节点,增强分片内的安全性,从本质上保持了每个分片中总信誉值的平衡和等价。
进一步的,为了使片内共识有更高的效率,所述分片内共识模块采用较低通信复杂度和较高扩展性的拜占庭容错(BFT)共识算法以提升效率。
对所述跨分片共识模块,其跨分片共识机制如下:
分片内通过片内共识提出一个跨分片交易准备块后,需要通过其他分片进行验证,一旦它收集到跨分片共识委员会中足够的签名(本实施例设定为跨分片共识委员会的全部签名),则它就被认为是一个有效的跨分片交易块,并可以被添加到交易链,随后与该块冲突的分叉块则被丢弃;
由多个分片组成一个跨分片交易验证委员会,每个分片为一个验证委员;根据分片近期的信誉和表现,将委员会划分为多个级别,分片的信誉值越高级别就越高;
产生跨分片交易的分片,需要将准备好的跨分片交易准备块发送给更高一个级别的分片,最高一个级别的分片产生的块则发送给第一个级别的分片;
每个级别的分片负责监控前一个级别分片的行为,并通过各自的分片内共识宣布交易验证结果。每个产生的块都需要记录一个从委员会中的前一个级别的分片接收到的块。分片对前一个级别分片的块的验证结果会记录在分片产生的块中,因此,每个诚实分片不仅需要验证交易的有效性还要保证该块中的验证结果与其父块中的验证结果不冲突,也就是每个分片只能验证自己曾经选择的一个分叉上的块。
为了更好的进行说明,如图4所示,本发明将跨分片共识委员会设为三个级别,其中三级为最低级别,一级为最高级别。假设三级分片中恶意节点超过阈值,导致分片损坏,后果为链上出现分叉,对一笔花费提出了两个交易块。则它提出的两个块α2’和α2”均被发送到二级分片,二级分片将从α2’和α2”中随机选择一个分叉的块进行验证。假设二级的分片选择了α2”进行验证,生成块β2。三级分片中与β2验证的块α2”冲突的块全部被丢弃,则α2’所处分叉消失,损坏的分片得到恢复。二级分片将验证结果β2发送到一级分片进行验证,一级分片验证无误后将所有验证结果发送给原分片即三级分片。
跨分片交易块确认后,每个分片负责将验证通过的块通知其所有者分片。交易验证历史沿验证的顺序累积和传输。所以验证过程中的最后一个分片知道完整验证历史的原始块。在这种情况下,每个诚实分片都需要通过传输累积的验证历史来通知原始分片验证通过的块。一旦原始分片从最后一个分片接收到包含交易验证历史的块,分片将验证通过的块加入交易链并丢弃其他冲突的块。
由于二级分片选择验证α2”,则该分片接下来只能验证该分叉上的块。如图4,β3为α3”的验证块。由于最后一个验证分片将结果发送给三级分片,三级分片以后产生的块也只能是α2”的分叉上的块。
进一步的,为了提升共识效率,在跨分片共识阶段,每个分片只需将准备验证的块的区块头发送到委员会中下一级别的分片(高一级别的分片)进行验证,每个分片只需为前一级别的分片(低一级别的分片)传来的区块头通过片内共识进行验证,并将自己的验证块的区块头发送到下一级别的分片。所述区块头的信息如图5所示,包括时间戳、代(epoch)号、本分片最新确认块的哈希值、前一个块的哈希值、聚合签名信息及本分片交易验证历史记录。
本发明通过将信誉机制用到分片过程中,基于节点的信誉值将节点编入分片,使各分片内都具有尽可能高且相同比例的信誉良好的节点,保证了各分片的信誉平衡,确保了分片内的安全性;本发明通过多级跨分片共识机制对跨分片交易进行验证,能够保证节点安全高效的进行跨分片交易;通过分片内共识算法对分片内的节点交易进行验证,能够提高交易验证效率,进而提高系统交易吞吐量;本发明提供的分片划分模块可随时将新加入的节点划分入分片进行交易,提高了电力交易的扩展性。
实施例4:
基于同一种发明构思,本发明还提供了一种计算机设备,该计算机设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor、DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行计算机存储介质内一条或一条以上指令从而实现相应方法流程或相应功能,以实现上述实施例中一种区块链电力交易系统共识方法的步骤。
通过本实施例提供的计算机设备,实现一种区块链电力交易系统共识方法,基于节点的信誉值将节点编入分片,使各分片内都具有尽可能高且相同比例的信誉良好的节点,保证了各分片的信誉平衡,确保了分片内的安全性;通过多级跨分片共识机制对跨分片交易进行验证,能够保证节点安全高效的进行跨分片交易;通过分片内共识算法对分片内的节点交易进行验证,能够提高交易验证效率,进而提高系统交易吞吐量;本发明可随时将新加入的节点划分入分片进行交易,提高了电力交易的扩展性。
实施例5:
基于同一种发明构思,本发明还提供了一种存储介质,具体为计算机可读存储介质(Memory),所述计算机可读存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中一种区块链电力交易系统共识方法的步骤。
通过本实施例提供的存储介质,实现一种区块链电力交易系统共识方法,基于节点的信誉值将节点编入分片,使各分片内都具有尽可能高且相同比例的信誉良好的节点,保证了各分片的信誉平衡,确保了分片内的安全性;通过多级跨分片共识机制对跨分片交易进行验证,能够保证节点安全高效的进行跨分片交易;通过分片内共识算法对分片内的节点交易进行验证,能够提高交易验证效率,进而提高系统交易吞吐量;本发明可随时将新加入的节点划分入分片进行交易,提高了电力交易的扩展性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用于说明本发明的技术方案而非对其保护范围的限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:本领域技术人员阅读本发明后依然可对发明的具体实施方式进行种种变更、修改或者等同替换,但这些变更、修改或者等同替换,均在发明待批的权利要求保护范围之内。

Claims (18)

1.一种区块链电力交易系统,其特征在于,所述电力交易系统包括由多个节点构成的若干分区,和计算设备;所述节点为充电站;所述计算设备上安装有信誉模块、分片划分模块、分片内共识模块和跨分片共识模块;每个信誉模块和分片内共识模块均对应一个分片;分片划分模块和跨分片共识模块对应多个分片;各分片均包括交易链和信誉链;
所述分片划分模块,用于根据电力交易系统中各节点的信誉值和节点所在地区,将所述节点划分到多个分片;
所述信誉模块,由信誉链组成,所述信誉模块用于基于节点的工作数据计算分片内各节点的信誉值;
所述分片内共识模块,用于基于分片内的节点交易信息,通过分片内共识算法对分片内的节点交易进行验证;还用于为分片内的节点提出跨分片交易;
所述跨分片共识模块,用于通过多级跨分片共识机制,对分片内共识模块提出的跨分片交易进行验证。
2.如权利要求1所述的系统,其特征在于,所述分片划分模块,具体用于基于节点所在地区编码,将相同地区或相邻地区的节点划分到同一分片;
当分片内节点生成设定数量的交易块后,读取并基于各分片内节点的信誉值表,按节点的信誉值从大到小的顺序,将信誉值相同的节点平均划分到各分片。
3.如权利要求2所述的系统,其特征在于,所述分片内节点的信誉值表存储于信誉块,所述信誉块由各分片的临时信誉块组成后链接于信誉链上;所述分片的临时信誉块中的信息,包括已确认的交易黑名单、交易链的历史信誉值和信誉值表中涉及的所有节点的集体签名。
4.如权利要求3所述的系统,其特征在于,所述跨分片共识模块包括下述跨分片交易验证机制:
多个分片组成一个跨分片交易验证委员会,每个分片为一个验证委员;所述委员会基于各分片的信誉值确定各分片的级别;同一个委员会管理的多个分片中至少有一个诚实分片;
所述跨分片交易验证为各级别分片由低到高逐级验证,且各级别分片验证通过后均进行签名;最低级别分片对最高级别分片进行验证;
当跨分片交易块获得全部级别分片的签名时,验证通过,并将验证通过的跨分片交易块添加到交易链上;
其中,所述各分片的信誉值,基于信誉块中各分片内节点的信誉值表确定;所述诚实分片为信誉值超过设定值的分片,所述诚实分片的验证结果可信;所述跨分片交易块由分片内共识模块基于分片内节点的跨分片交易信息提出。
5.如权利要求4所述的系统,其特征在于,所述跨分片共识模块的跨分片交易验证机制,还包括:
当跨分片交易出现分叉产生两个跨分片交易块时,各级别分片由低到高逐级选择并验证同一分叉上的跨分片交易块;
当跨分片交易块获得全部级别分片的签名时,验证通过,将验证通过的跨分片交易块添加到交易链上,并丢弃其他分叉上的跨分片交易块,恢复损坏的分片;
其中,所述跨分片交易出现分叉的情况,包括提出跨分片交易的分片损坏。
6.如权利要求4或5所述的系统,其特征在于,各级别分片对跨分片交易块的区块头进行验证;所述区块头中记录有各级别分片的验证历史和各级别分片中所有节点的集体签名。
7.如权利要求1所述的系统,其特征在于,所述分片内共识模块,具体用于基于分片内的节点交易信息,通过拜占庭容错共识算法对分片内的节点交易进行验证。
8.如权利要求1所述的系统,其特征在于,所述节点的工作数据包括:节点贡献总量、节点工作的频率和节点创建交易链分叉的频率。
9.一种区块链电力交易系统共识方法,其特征在于,包括:
提取分片内的节点交易信息;
若所述分片内的节点交易信息为分片内交易信息,则通过分片内共识算法,对分片内交易进行验证;若所述分片内的节点交易信息为跨分片交易信息,则通过多级跨分片共识机制,对跨分片交易进行验证;
其中,所述电力交易系统包括由多个节点构成的若干分区,和计算设备;所述节点为充电站;所述分片根据电力交易系统中各节点的信誉值和节点所在地区预先划分;各分片均包括交易链和信誉链。
10.如权利要求9所述的方法,其特征在于,所述各节点的信誉值记录于分片内节点的信誉值表;所述分片内节点的信誉值表存储于信誉块;所述信誉块由各分片的临时信誉块组成后链接于信誉链上;所述分片的临时信誉块中的信息,包括已确认的交易黑名单、交易链的历史信誉值和信誉值表中涉及节点的集体签名。
11.如权利要求10所述的方法,其特征在于,所述若所述分片内的节点交易信息为跨分片交易信息,则通过多级跨分片共识机制,对跨分片交易进行验证,包括:
通过各级别分片由低到高对跨分片交易块进行逐级验证,并在验证通过后进行签名;
当跨分片交易块获得全部级别分片的签名时,验证通过,并将验证通过的跨分片交易块添加到交易链上;
其中,多个分片组成一个跨分片交易验证委员会,每个分片为一个验证委员;所述委员会基于各分片的信誉值确定各分片的级别;同一个委员会管理的多个分片中至少有一个诚实分片;最低级别分片对最高级别分片进行验证;所述各分片的信誉值,基于信誉块中各分片内节点的信誉值表确定;所述诚实分片为信誉值超过设定值的分片,所述诚实分片的验证结果可信;所述跨分片交易块基于跨分片交易信息提出。
12.如权利要求11所述的方法,其特征在于,所述通过多级跨分片共识机制,对跨分片交易进行验证,还包括:
当跨分片交易出现分叉产生两个跨分片交易块时,通过各级别分片由低到高逐级选择并验证同一分叉上的跨分片交易块;
当跨分片交易块获得全部级别分片的签名时,验证通过,通过将验证通过的跨分片交易块添加到交易链上并丢弃其他分叉上的跨分片交易块,恢复损坏的分片;
其中,所述跨分片交易出现分叉的情况,包括提出跨分片交易的分片损坏。
13.如权利要求11或12所述的方法,其特征在于,各级别分片对跨分片交易块进行验证,包括:
各级别分片对跨分片交易块的区块头进行验证;
所述区块头中记录有各级别分片的验证历史和各级别分片中所有节点的集体签名。
14.如权利要求9所述的方法,其特征在于,所述若所述分片内的节点交易信息为分片内交易信息,则通过分片内共识算法,对分片内交易进行验证,包括:
基于分片内交易信息,通过拜占庭容错共识算法对分片内的节点交易进行验证。
15.如权利要求10所述的方法,其特征在于,所述分片的划分,包括:
基于节点所在地区编码,将相同地区或相邻地区的节点划分到同一分片;当分片内节点生成设定数量的交易块后,读取并基于各分片内节点的信誉值表,按节点的信誉值从大到小的顺序,将信誉值相同的节点平均划分到各分片。
16.如权利要求15所述的方法,其特征在于,节点的信誉值的计算,包括:
基于节点的工作数据,计算分片内各节点的信誉值;
其中所述节点的工作数据,包括节点贡献总量、节点工作的频率和节点创建交易链分叉的频率。
17.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,实现如权利要求9至16中任一项的区块链电力交易系统共识方法。
18.一种计算机可读存储介质,其特征在于,其上存有计算机程序,所述计算机程序被执行时,实现如权利要求9至16中任一项的区块链电力交易系统共识方法。
CN202211034316.3A 2022-08-26 2022-08-26 一种区块链电力交易系统、共识方法、设备和存储介质 Pending CN115694876A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211034316.3A CN115694876A (zh) 2022-08-26 2022-08-26 一种区块链电力交易系统、共识方法、设备和存储介质
PCT/CN2022/137460 WO2024040796A1 (zh) 2022-08-26 2022-12-08 一种区块链电力交易系统、共识方法、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211034316.3A CN115694876A (zh) 2022-08-26 2022-08-26 一种区块链电力交易系统、共识方法、设备和存储介质

Publications (1)

Publication Number Publication Date
CN115694876A true CN115694876A (zh) 2023-02-03

Family

ID=85061456

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211034316.3A Pending CN115694876A (zh) 2022-08-26 2022-08-26 一种区块链电力交易系统、共识方法、设备和存储介质

Country Status (2)

Country Link
CN (1) CN115694876A (zh)
WO (1) WO2024040796A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116055064A (zh) * 2023-03-17 2023-05-02 安徽中科晶格技术有限公司 区块链分片中多区块同时共识方法、系统、介质及设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109697606A (zh) * 2018-09-30 2019-04-30 贝克链区块链技术有限公司 基于创新性的信誉证明共识协议的分布式网络及生态系统
CN109544334B (zh) * 2018-10-22 2020-09-29 深圳市哈希树科技有限公司 一种网络可扩展性区块链实现方法
US20200162261A1 (en) * 2018-11-18 2020-05-21 Ramachandran Iyer System and method of blockchain consensus mechanism with custom hardware based on geographic distribution, density, node asset and reputation
CN112417056B (zh) * 2020-12-18 2023-10-24 昆明理工大学 一种基于区块链数据共享的信誉值动态分片两层共识方法
CN112910965B (zh) * 2021-01-18 2022-12-06 香港理工大学深圳研究院 一种提交分片型区块链下跨分片事务的方法及系统
CN113568974A (zh) * 2021-07-23 2021-10-29 中信银行股份有限公司 基于区块链系统的分片共识方法、设备以及可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116055064A (zh) * 2023-03-17 2023-05-02 安徽中科晶格技术有限公司 区块链分片中多区块同时共识方法、系统、介质及设备

Also Published As

Publication number Publication date
WO2024040796A1 (zh) 2024-02-29

Similar Documents

Publication Publication Date Title
KR102578019B1 (ko) 블록체인 기반 데이터 검출 방법 및 디바이스, 및 컴퓨터 판독가능 저장 매체
CN110474774B (zh) 基于区块链的系统中的区块创建方法及区块链节点
CN108648084B (zh) 一种区块链网络的数据处理方法、装置、设备及存储介质
CN109034813B (zh) 代表节点设备选举方法、装置、计算机设备及存储介质
CN111061769B (zh) 一种区块链系统的共识方法及相关设备
Sheng et al. BFT protocol forensics
CN110990408A (zh) 基于区块链的业务信息协同方法、业务系统及联盟链
CN110851537A (zh) 一种基于区块链分片技术的共识方法
CN111130790B (zh) 基于区块链节点网络的共识出块方法
CN113256297B (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
CN106650496B (zh) 一种数据处理方法及装置
CN113553375B (zh) 一种面向图式区块链的分片存储装置及方法
CN113626875A (zh) 一种区块链分片赋能的知识图谱文件存储方法
CN113254272A (zh) 区块链网络的数据处理方法、装置、计算机设备和介质
CN115549931B (zh) 一种基于拟态防御的拜占庭容错实现方法及系统
CN115694876A (zh) 一种区块链电力交易系统、共识方法、设备和存储介质
CN114490020A (zh) 一种区块链分片方法、系统及电子设备
CN116471024A (zh) 一种基于dag和分片的区块链异步共识算法
CN112398949A (zh) 交易确认方法、系统、装置和计算机设备
Fang et al. Pelopartition: Improving blockchain resilience to network partitioning
CN114202422A (zh) 一种区块链分片方法、区块链系统及跨分片交易处理方法
CN117251889B (zh) 区块链共识方法、相关装置和介质
CN111475839A (zh) 一种用于不可信环境的冗余数据编码方法、存储介质
CN116389504A (zh) 基于区块链的身份认证快速共识方法、系统、设备及介质
CN116633699B (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