CN113626876B - 一种基于电网区块链的共识方法 - Google Patents
一种基于电网区块链的共识方法 Download PDFInfo
- Publication number
- CN113626876B CN113626876B CN202110831392.6A CN202110831392A CN113626876B CN 113626876 B CN113626876 B CN 113626876B CN 202110831392 A CN202110831392 A CN 202110831392A CN 113626876 B CN113626876 B CN 113626876B
- Authority
- CN
- China
- Prior art keywords
- power
- grid
- node
- electric quantity
- electric
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012795 verification Methods 0.000 claims abstract description 11
- 230000005540 biological transmission Effects 0.000 claims description 42
- 238000010248 power generation Methods 0.000 claims description 42
- 230000005611 electricity Effects 0.000 claims description 40
- 230000009466 transformation Effects 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 8
- 238000004806 packaging method and process Methods 0.000 claims description 8
- 230000003068 static effect Effects 0.000 claims description 4
- 230000001131 transforming effect Effects 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 2
- 238000005538 encapsulation Methods 0.000 claims description 2
- 239000000470 constituent Substances 0.000 claims 1
- 239000000758 substrate Substances 0.000 claims 1
- 230000007246 mechanism Effects 0.000 abstract description 17
- 230000006870 function Effects 0.000 description 13
- 230000015654 memory Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 235000019892 Stellar Nutrition 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种基于电网区块链的共识方法,包括以下步骤:步骤1,电网节点广播电力交易订单;步骤2,候选区块封装电力交易订单;步骤3,候选区块提交电量证明;步骤4,候选区块电力交易记账;步骤5,电网节点共识验证;步骤6,电网区块链添加电网区块。本发明能够为电网区块链提供一种安全、可靠的共识机制。
Description
技术领域
本发明属于电网区块链技术领域,具体涉及了一种基于电网区块链的共识方法。
背景技术
近年来,我国电力行业有了飞速发展,我国是一个产电用电大国。这些年来,电力企业的交易账单管理也发生了巨大的变化,从最早的手工记账、软件记账,到业务系统管理记账,电力行业记账能力在逐步提高,但是仍然存在着或多或少的问题,例如中心化的管理缺乏灵活性,电力交易账单数据更新不及时,电力交易不透明,交易双方需要建立信任机制,集中的存储架构存在人为修改账单的可能。
近年迅速发展的区块链技术为电网管理提供了一种新思路。通常区块链共识过程可分成两步:第1步挑选一个特定的节点用于创建一个区块,保证其准确无误地加入到区块链中;第2步由所有节点对分布式数据记录达成共识,没有分歧,甚至防止恶意入侵。常用的共识机制有:工作量证明PoS、权益证明PoW、工作量、瑞波共识协议RCP等。
工作量证明(PoW)即根据节点的算力和工作量的多少来达成共识。PoW共识机制中,节点如要获取创建新区块的资格就必须一直不停的耗费自身算力去执行哈希计算,直至随机数符合预期的要求。
瑞波共识协议(RCP)使用一组特定的节点列表来达成共识,每当加入一个新的节点,就需要特殊节点列表中超过一定数量的成员同意。
恒星共识协议(Stellar Consensus Protocol,SCP)使用若干节点组成受信任的组(又称仲裁切片),只有这些受信任的节点同意的交易才能被验证。
因此,将区块链用于智能电网是可行的,但是现有区块链的共识机制并不适合电网的交易系统。PoW也会造成算力和能源的浪费,节点并非专注于分布式记账。DPoS交易需要确保每个被签名的区块获得一个受信任节点的签名,随着时间推移,账户资产较多的少数节点就有可能把控创建区块的权利。另外,瑞波共识协议(RCP)使用一组特定的节点列表来达成共识,随着时间推移,特定的节点列表就有可能把控创建区块的权利。另外,恒星共识协议(SCP)需要若干节点组成受信任的组,仍然存在控制区块创建的可能。最后,上述区块链共识机制,无法提供足够的灵活,互不信任的机构所发出的电力难以通过电网实现共享和交易。
现在市场上传统的集中式电力行业记账机制无法解决电力交易的去信任问题,而传统的区块链共识方法也无法为电网交易提供安全、可靠的交易机制。至目前为止,市场上尚未有基于电网区块链的共识方法。
发明内容
本发明的目的是为了主要解决在去信任的电网系统中安全交易和可靠共识问题,而提出了一种基于电网区块链的共识方法。
一种基于电网区块链的共识方法,
步骤1,电网节点广播电力交易订单;
步骤2,候选区块封装电力交易订单;
步骤3,候选区块提交电量证明;
步骤4,候选区块电力交易记账;
步骤5,电网节点共识验证;
步骤6,电网区块链添加电网区块。
在步骤1中,电网节点广播电力交易订单;电网用户每产生一笔新的电力交易,则将该笔电力交易订单向电网进行全网广播;
在步骤2中,候选区块封装电力交易订单;收到广播的所有电网节点在本节点上建立一个候选区块,并将收到的电力交易订单封装到本地的一个候选区块中;进一步地,本节点将所有其他节点广播的电力交易订单均封装在一起,即在同一个候选区块中;
在步骤3中,候选区块提交电量证明;所有电网节点均在自己的候选区块中提交电量证明,以便竞争记账权;
在步骤4中,候选区块对电力交易订单记账;当某个电网节点完成了电量证明,便在本节点的候选区块创建电力交易订单的账本,并将本节点的电量证明和电力交易订单的账本封装起来向电网广播,供全网进行共识;
在步骤5中,电网节点共识验证;电网节点对电力交易订单进行电量传输和电量使用;电网上其他电网节点验证该电网节点的电量证明和电力交易订单记账,并与各自节点中候选区块的封装信息进行对比;
在步骤6中,电网区块链添加电网区块;如果电网上所有电网节点对电量证明和电力交易记账均验证通过,便可将该候选区块添加到电网区块链中;否则,电网节点放弃该笔交易记账和区块创建,未接入电网区块链的电网节点删除本地的候选区块。
上述电网,指的电力系统中各种发电单元、变电单元、输配电单元、用电单元组成的电力网;进一步地,电网由不同单元的节点组成,即电网节点;
上述电网节点,指电网中各种发电单元、变电单元、输配电单元、用电单元的节点;进一步地,单个电网节点均具有通信功能和记账功能,能够创建候选区块,能够参与共识机制和竞争记账权;
上述候选区块,指电网节点中创建的临时性数据区块,具有记账功能,但在未被所有节点共识之前,候选区块只是暂时存在;进一步地,如果某个候选区块被所有电网节点共识,则该节点中的候选区块会被链接入电网区块链,并转为正式的电网区块;进一步地,未被所有电网节点共识的候选区块,则在共识过程结束后会被删除;
上述电网区块链,指电网中分布式数据区块组成的链式数据库,由地理上分布的电网区块组成;进一步地,电网区块链记载了所有被共识的交易账本,能够运行智能合约完成电力交易过程;
上述电网区块,指电网区块链的基本组成单元,所有区块前后互相连接,共同组成区块链;进一步地,每一个电网区块都是一个交易账本,记载了被共识的电网交易记录;
上述电力交易订单,指电网供电和用电双方之间就电力使用达成的交易凭证,电力交易订单记载了电力交易的时间戳,发电单元名称,用电单元名称,发电量的数值或使用电量的数值,电力交易订单编号;进一步地,电力交易订单能够加密方式记录本次订单交易使用的发电单元、变电单元、输配电单元、用电单元;
上述电量证明,指电力系统中各种发电单元、变电单元、输配电单元、用电单元对电网的贡献证明;进一步地,发电单元通过向电网发电来提供电量证明,发电量的多少决定了电量证明的数值大小;进一步地,变电单元通过向电网变电来提供电量证明,变电量的多少决定了电量证明的数值大小;进一步地,输配电单元通过向电网输配电来提供电量证明,输配电量的多少决定了电量证明的数值大小;进一步地,用电单元通过电网消耗电量来提供电量证明,使用电量的多少决定了电量证明的数值大小;优选地,电量证明允许电网中所有具有计算功能的设备参与电力交易记账和区块链构建。
在步骤1中,参与电力交易的电网节点可以是发电单元,也可以是用电单元,即是产销者;进一步地,电网节点根据电力交易订单预测可售电量为E,其中电网节点的可售电量等于发电量减去用电量,同时电网区块链为电网节点A生成产销者的2个密钥bα和bβ,并将其记录在电网区块链的数据库中。
在步骤2中,在封装电力交易订单时,电网节点使用加密的方式进行封装;优选地,两个电网节点A和B使用相应的公钥和私钥创建一对新地址:μAddr1和μAddr2;其中,μAddr1为交易地址,用于两个电网节点A和B执行电力交易;μAddr2为匿名通信地址,通过匿名信息流的方式实现匿名通信,并可传输隐私和保密的信息。
优选地,在电网节点A生成密钥bα和bβ后,电网节点B使用SHA256生成一个静态密钥jα和一个临时密钥jγ;
jα=SHA256(pubkeyzB||E||pubkeyPPB||Timestamp)
jγ=SHA256(jα||RamdomNumber)
其中,SHA256(·)为哈希函数;pubKeyB为电网节点B的公钥信息;Timestamp为时间戳;pubKeyPPB为电网节点B对应的发电设备的公钥;RandomNumber为随机数;jα是静态密钥,用于验证电网节点B对可售电量E的所有权;jγ是临时密钥,又称动态密钥,用于锁定以防止双重支付电量E;电网区块链向电网节点B的地址μAddr2发送消息jα和jγ,然后电网节点B使用μAddr2向全网广播电力交易信息,电网节点B的广播函数为I1(E,P,μAddr1B,μAddr2B),包含电网节点A可售电量E、保留价格P、交易地址μAddr1B以及匿名消息流地址μAddr2B。
在步骤3中,所有候选区块均可提交电量证明竞争记账权;进一步地,所有电网节点,包括各种发电单元、变电单元、输配电单元、用电单元的节点,均具有同等的记账权;进一步地,发电单元的发电量,变电单元的变电量,输配电单元的输配电量,用电单元的使用电量,均具有同等的电量证明,能够有效防止记账权过度集中在某个或某些电网节点上,也可有效防止攻击;优选地,电量证明的计算过程,需要考虑每个电网节点在电网中的工作时间长短,不同时段的电量大小,以及在不同的电力交易订单中服务质量的好坏;进一步地,在电网中工作时间越长,电量证明数值越大,电力交易订单服务质量越好的节点,越容易竞争到记账权;优选地,电量证明可以根据实际需要选择是否考虑不同时段、不同地域、不同发电单元的阶梯电价;优选地,电量证明中增加一个随机变量,防止攻击者利用计算电量证明的方式预测记账节点并攻击记账节点;
在步骤4中,当某个电网节点B完成了电量证明和候选区块创建后,使用μAddr2B加密电力交易订单的账本,并向电网上其他电网节点全网广播,每个电网节点都会收到该电网节点B的广播信息;如果电网节点A根据需要参与电网节点B的电量交易,则电网节点A使用匿名地址μAddr2向电网区块链发送消息,要求验证电网节点B对电量E的所有权证明,电网区块链验证数据库记录并回复真假;验证成功后,电网节点B会向电网节点A所售电量进行交易,电网节点A使用匿名地址μAddr2向电网中广播匿名竞价信息,其竞价函数为η(μAddr2A,μAddr2B,E1,P1),其中E1为电网节点B想要交易的电量,P1为电网节点A交易该电量的出价;
进一步地,电网根据收到的出售信息和竞价信息进行订单匹配;进一步地,电网完成电力交易订单匹配,进行电力交易订单账本的全网广播,广播函数为I1(μAddr2A,μAddr2B,E1,P1)。为了防止双重支付电量E1,系统会对电量E1进行上锁,锁定请求消息由电网节点B发送到电网中,其中包含证明电网节点B所有权的密钥jγ。锁定请求直到电量交易成功,当更换电量的所有权时取消锁定;锁定电量E1后,电网节点B和电网节点A将同时确认电力交易订单的交易细节并写入智能合约中;优选地,电网节点A和B共同支付一定的手续费。
在步骤5中,所有电网节点参与该笔电力交易订单账本的共识验证,共识过程由智能合约自动执行;电网节点B需向智能合约写入函数为ψ(μAddr1B,jγ,pubKeyPPB),电网节点A需向智能合约写入函数定义为ψ(μAddr1A,P1);当交易双方中的任何一方没有向智能合约发送相应的信息时,智能合约生成失败,该笔电力交易订单交易不成功;进一步地,智能合约生成后,智能合约会将电量所有权证明密钥jγ、pubKeyPPB发送给电网节点A的匿名消息地址μAddr2A;电网节点A用匿名消息地址μAddr2A向电网区块链发送共识请求A(jγ,pubKeyPPB,unlock,update),电网区块链接收到信息并验证jγ,解锁请求并生成一对新的密钥tα和tγ分别替换jα和jγ,其中,tα和tγ分别如下式所示:
tα=SHA256(pubKeyA||E1||pubKeyPPB||Timestamp);
tγ=SHA256(tα||RandomNumber);
此时,电网节点B的使用电量所有权属于电网节点A,电网节点B可以使用tα和tγ来消耗电量E1;其中可能会出现特殊的情况,电网节点A所售电量可以同时满足2个电网节点B和C,甚至更多电网节点,即,两个以上的电网节点B、C和电网节点A,以及本次电力交易订单使用的变电单元的电网节点,输配电单元的电网节点,均具有同等的电量证明,均可竞争本次交易的记账权;进一步地,经过智能合约匹配后,电网节点A所售电量E可以同时满足电网节点B和C的需求,电网节点A的可售电量E并将其分成E1和E2两部分;进一步地,电网区块链可以为2个电网节点B和C创建2个jα密钥,按照下式所示等式生成每一个新密钥;
jα+1=SHA256(jγ||E1/E);
进一步地,新密钥生成后,进入电量物理传输阶段,在该阶段内电网节点B使用新密钥tα和tγ来消耗电网节点A所产生的电量;所有节点进行解密,按照智能合约继续进行共识;进一步地,电力供应更多电网节点的情形可以类推;电网上所有电网节点接到广播消息,均参与验证该电网节点的电量证明和电力交易订单记账,并与本节点中候选区块的封装信息进行对比。
在步骤6中,所有电网节点对比后确认该广播消息与本地的封装信息是否一致,如是则返回消息1,如否则返回消息0;如果所有电网节点均返回消息1,本次电量证明和电力交易订单记账的共识才算成功;进一步地,本次电力交易订单规定的电量传输时间截止后,智能合约向双方的智能电表查询电量传输信息,智能合约根据智能电表所发送的电量传输信息进行电量结算,并核对是否完全履行本次电力交易订单的情况和服务质量进行计算;当电网节点A所产生或传输的电量小于电力交易订单约定的电量时,智能合约会减少电网节点A的服务质量值,并对电网节点A的服务质量值进行更新;当电网节点B使用电量大于智能合约约定的电量时,智能合约会将重新将电力交易订单发送给电网节点A,并重新评估服务质量;进一步地,在电网中工作时间较长,电量证明数值较大,电力交易订单服务质量越高,随机值越大的电网节点可竞争到记账权,将该电网节点对本次电力交易订单进行记账的候选区块连接到电网区块链;进一步地,其他电网节点失去本次记账权,删除本地节点上的候选区块。
电网由多个电网节点互相连接组成,电网节点通过电力交易订单进行交易,电网节点可以创建候选区块进行临时记账,电网节点通过电量证明竞争记账权,最终的电力交易记账经过共识后保存在电网区块中,多个电网区块互相连接组成电网区块链。
与现有技术相比,本发明具有如下技术效果:
1)本发明能够实现安全的电力交易而无需预先建立信任机制。本发明所述电网区块链具有自信任特性,分布于区块链中的所有用户均无须信任交易的任一方,也无须使用一个受信任的中心化机构,只需要信任区块链共识协议下的硬件系统和软件系统即可实现双方或更多方的电力交易。
2)本发明是去中心化的。本发明所述电网区块链无需中心化机构,所有节点具有各自独立的利益并互相竞争,所有互不信任的节点进行合谋欺骗是几乎不可能的。当所有节点在网络中拥有公共信誉时,便可在电网区块链节点之间建立信任网络,仅仅通过技术背书便可构建全新的信用体系,不再要求中心化的信用机构。
3)本发明具有更好的安全性。本发明的记账权依赖于电力的生产和电量消费,可以有效防止二次支付等攻击,具有良好的容错能力。以电力交易为驱动的电网区块链在实现一致性共识的过程中,最主要的风险就是二次支付行为通过采用适当的策略发布自己产生的区块,获得更高的相对收益,也会威胁电网区块链安全性和公平性。此外,本发明记账权分布于各种发电单元、变电单元、输配电单元、用电单元的节点,还能够阻止Eclipse攻击(即将目标对象的网络通信形成网络分区,阻隔交易传播)和Sybil攻击(即生产大量无意义的节点来破坏系统安全性)。
4)本发明具有更好的扩展性。本技术方案支持网络节点扩展,便于电网区块链的推广应用。扩展性通常分为系统成员数量的增加和交易订单数量的增加两大类,本技术方案使用各种发电单元、变电单元、输配电单元、用电单元的节点竞争记账权,在两类扩展性上均有优势。对于电网区块链,当系统成员数量、待确认交易数量增加时,本技术方案带来的系统负载和网络通信量的变化更小,具有较低的网络吞吐量。
5)本发明具有更好的性能效率。对于电网区块链,从交易达成共识被记录在区块链中至被最终确认的时间延迟,决定了系统每秒可处理的交易数量多少。与传统第三方支持的交易平台不同,本发明所述的电网区块链通过基于电量交易的共识机制达成一致,有助于提高其性能效率。而传统的共识机制远远无法支持电网交易的业务量,大量的算力浪费在争夺记账权上。
6)本发明具有更低的资源消耗。本技术方案在达成共识的过程中,系统所要耗费的计算资源不高,包括CPU、内存、网络等。本技术方案可以使用各种发电单元、变电单元、输配电单元、用电单元的节点进行记账,而且本技术方案所的述的电网区块链共识机制并非借助计算量或计算资源达成共识,无需配置计算能力强大的计算节点,资源消耗远远低于传统的共识机制。
附图说明
下面结合附图和实施例对本发明作进一步说明:
图1为本发明的结构示意图;
图2为本发明的工作方法流程图。
具体实施方式
图1为本发明的结构示意图;包括电网100,电网节点101,候选区块102,电网区块链200,电网区块201,电力交易订单300,电量证明301;
所述电网100,优选地,使用现有电力系统中各种发电单元、变电单元、输配电单元、用电单元组成的电力网;所述发电单元,包括火电,核电,水电,风电,太阳能,潮汐能等,能够提供电力供应的各类发电厂,以及配套的计算机、存储器、智能电表、仪器和仪表;所述变电单元,包括各类高低压变压器,电路切换回路,变电站,变电所,以及配套的计算机、存储器、智能电表、仪器和仪表;所述输配电单元,包括各类高低压输电线路,配电柜,配电站,以及配套的计算机、存储器、智能电表、仪器和仪表;所述用电单元,包括厂矿,企业,社区,以及配套的计算机、存储器、智能电表、仪器和仪表;
所述电网节点101,优选地,使用现有电网100中各种发电单元、变电单元、输配电单元、用电单元的节点;进一步地,单个电网节点101可使用具有通信功能和记账功能的计算机、存储器、智能电表、仪器和仪表;
所述候选区块102,优选地,在电网节点101中计算机、存储器、智能电表、仪器和仪表中存储区域创建的临时性数据区块;进一步地,电网节点101取得记账权后,候选区块102便转化为永久区块,接入电网区块链200中;进一步地,未转化为永久区块的候选区块102在共识结束后被删除;
所述电网区块链200,优选地,使用电网100中计算机、存储器、智能电表、仪器和仪表中存储区域建立分布式数据区块,并前后互相连接组成链式数据库;优选地,电网区块链200使用MYSQL建立分布式数据库;
所述电网区块201,优选地,在电网节点101中计算机、存储器、智能电表、仪器和仪表中存储区域创建的永久性数据区块;进一步地,只有电网节点101取得记账权后,该节点中的候选区块102才可转化为永久性的电网区块201,接入电网区块链200中;
所述电力交易订单300,优选地,在电网节点101中计算机、存储器、智能电表、仪器和仪表中存储区域创建的临时性交易凭证,记载了电力交易的时间戳,发电单元名称,用电单元名称,发电量的数值或使用电量的数值,电力交易订单编号;进一步地,电力交易订单300能够加密方式记录本次订单交易使用的发电单元、变电单元、输配电单元、用电单元,以便提供电量证明竞争记账权;进一步地,经过共识的电力交易订单300可以永久形式保存在电网区块链200的电网区块201上。
所述电量证明301,优选地,在电网节点101中计算机、存储器、智能电表、仪器和仪表中存储区域创建的临时性电量凭证,进一步地,经过共识的电量证明301可以永久形式保存在电网区块链200的电网区块201上。
图2为本发明的工作方法流程图。对于本发明的一个实施例,假设EA为电网节点101A出售的电量,EB为产销者B购买的电量。在所述方法中,消费者与发电单元使用区块链信息系统进行匿名通信以及电量的售出和交易,利用智能合约进行电量所有权密钥与代币的交换。所述方法包括6个步骤,主要步骤如下:
步骤1,电网节点101广播电力交易订单300;可按下式构建电力交易订单300的数据结构:
电力交易订单300M={电力交易订单编号,时间戳,发电单元名称,用电单元名称,发电量的数值或使用电量的数值}
进一步地,为了给各节点提供电量证明,可以加密函数EK加密本次订单交易使用的发电单元、变电单元、输配电单元、用电单元;
电力交易订单300M={电力交易订单编号,时间戳,EK(发电单元编号),EK(变电单元编号),EK(输配电单元编号),EK(用电单元编号),发电量的数值或使用电量的数值}
步骤2,候选区块102封装电力交易订单300;
候选区块102I封装电力交易订单300={节点1电力交易订单300,节点2电力交易订单300,节点3电力交易订单300,…}
步骤3,候选区块102提交电量证明301;
候选区块102I的电量证明301={发电/变电/输配电/用电电量数值,电量持续时间,服务质量}
记账权的节点=MAX{电网节点101的电量证明}
记账权的候选区块=记账权节点的候选区块102;
步骤4,候选区块102对电力交易订单300记账;优选地,使用SHA256进行加密,再进行广播;
SHA256{候选区块账本}=SHA256{电力交易订单编号,时间戳,发电单元名称,用电单元名称,实际完成的发电量数值或使用电量数值}
对于加密函数EK加密本次订单交易使用的发电单元、变电单元、输配电单元、用电单元的使用电量,可用下式:
SHA256{候选区块账本}=SHA256{电力交易订单编号,时间戳,EK(发电单元编号),EK(变电单元编号),EK(输配电单元编号),EK(用电单元编号),实际完成的发电量数值或使用电量数值}
步骤5,电网节点101共识验证;优选地,使用SHA256-1进行解密;
SHA256-1{候选区块账本}=SHA256-1{电力交易订单编号,时间戳,发电单元名称,用电单元名称,实际完成的发电量数值或使用电量数值}
对于加密函数EK加密本次订单交易使用的发电单元、变电单元、输配电单元、用电单元的使用电量,可用下式进行解密:
SHA256-1{候选区块账本}=SHA256-1{电力交易订单编号,时间戳,EK(发电单元编号),EK(变电单元编号),EK(输配电单元编号),EK(用电单元编号),实际完成的发电量数值或使用电量数值}
解密结束后,各节点对候选区块账本进行核对;
IF广播的账本=本地候选区块账本,THEN共识结果=1;ELSE共识结果=0;
IF所有节点的共识结果=1,THEN共识成功;ELSE共识失败;
步骤6,电网区块链200添加电网区块201;
IF共识成功,THEN区块链队尾=记账权候选区块,删除其他候选区块。
Claims (4)
1.一种基于电网区块链的共识方法,其特征在于,它包括以下步骤:
步骤1,电网节点(101)广播电力交易订单(300);电网(100)用户每产生一笔新的电力交易,则将该笔电力交易订单(300)向电网(100)进行全网广播;
具体的,参与电力交易的电网节点(101)为发电单元或用电单元,即是产销者;电网节点(101)根据电力交易订单(300)预测可售电量为E,其中电网节点(101)的可售电量等于发电量减去用电量,同时电网区块链(200)为电网节点(101)A生成产销者的2个密钥bα和bβ,并将其记录在电网区块链(200)的数据库中;
步骤2,候选区块(102)封装电力交易订单(300);
具体的,在封装电力交易订单(300)时,电网节点使用加密的方式进行封装;两个电网节点(101)A和B使用相应的公钥和私钥创建一对新地址:μAddr1和μAddr2;其中,μAddr1为交易地址,用于两个电网节点(101)A和B执行电力交易;μAddr2为匿名通信地址,通过匿名信息流的方式实现匿名通信,并可传输隐私和保密的信息;
在电网节点(101)A生成密钥bα和bβ后,电网节点(101)B使用SHA256生成一个静态密钥jα和一个临时密钥jγ;
jα=SHA256(pubkeyzB||E||pubkeyPPB||Timestamp)
jγ=SHA256(jα||RamdomNumber)
其中,SHA256(·)为哈希函数;pubKeyB为电网节点(101)B的公钥信息;Timestamp为时间戳;pubKeyPPB为电网节点(101)B对应的发电设备的公钥;RandomNumber为随机数;jα是静态密钥,用于验证电网节点(101)B对可售电量E的所有权;jγ是临时密钥,又称动态密钥,用于锁定以防止双重支付电量E;电网区块链(200)向电网节点(101)B的地址μAddr2发送消息jα和jγ,然后电网节点(101)B使用μAddr2向全网广播电力交易信息,电网节点(101)B的广播函数为I1(E,P,μAddr1B,μAddr2B),包含电网节点(101)A可售电量E、保留价格P、交易地址μAddr1B以及匿名消息流地址μAddr2B;
步骤3,候选区块(102)提交电量证明(301);所有电网节点(101)均在自己的候选区块(102)中提交电量证明(301);
步骤4,候选区块(102)电力交易记账;候选区块(102)对电力交易订单(300)记账;当某个电网节点(101)完成了电量证明(301),便在本节点的候选区块(102)创建电力交易订单(300)的账本,并将本节点的电量证明(301)和电力交易订单(300)的账本封装起来向电网(100)广播,供全网进行共识;
具体的,当某个电网节点(101)B完成了电量证明(301)和候选区块(102)创建后,使用μAddr2B加密电力交易订单(300)的账本,并向电网(100)上其他电网节点(101)全网广播,每个电网节点(101)都会收到该电网节点(101)B的广播信息;如果电网节点(101)A根据需要参与电网节点(101)B的电量交易,则电网节点(101)A使用匿名地址μAddr2向电网区块链(200)发送消息,要求验证电网节点(101)B对电量E的所有权证明,电网区块链(200)进行解密,验证数据库记录并回复真假;验证成功后,电网节点(101)B会向电网节点(101)A所售电量进行交易,电网节点(101)A使用匿名地址μAddr2向电网(100)中广播匿名竞价信息,其竞价函数为η(μAddr2A,μAddr2B,E1,P1),其中E1为电网节点(101)B想要交易的电量,P1为电网节点(101)A交易该电量的出价;
电网(100)根据收到的出售信息和竞价信息进行订单匹配;电网(100)完成电力交易订单(300)匹配,进行电力交易订单(300)账本的全网广播,广播函数为I1(μAddr2A,μAddr2B,E1,P1),为了防止双重支付电量E1,系统会对电量E1进行上锁,锁定请求消息由电网节点(101)B发送到电网(100)中,其中包含证明电网节点(101)B所有权的密钥jγ,锁定请求直到电量交易成功,当更换电量的所有权时取消锁定;锁定电量E1后,电网节点(101)B和电网节点(101)A将同时确认电力交易订单(300)的交易细节并写入智能合约中;电网节点(101)A和B共同支付一定的手续费;
步骤5,电网节点(101)共识验证;电网节点(101)对电力交易订单(300)进行电量传输和电量使用;电网(100)上其他电网节点(101)验证该电网节点(101)的电量证明(301)和电力交易订单(300)记账,并与各自节点中候选区块(102)的封装信息进行对比;
具体的,所有电网节点(101)参与该笔电力交易订单(300)账本的共识验证,共识过程由智能合约自动执行;电网节点(101)B需向智能合约写入函数为ψ(μAddr1B,jγ,pubKeyPPB),电网节点(101)A需向智能合约写入函数定义为ψ(μAddr1A,P1);当交易双方中的任何一方没有向智能合约发送相应的信息时,智能合约生成失败,该笔电力交易订单(300)交易不成功;智能合约生成后,智能合约会将电量所有权证明密钥jγ、pubKeyPPB发送给电网节点(101)A的匿名消息地址μAddr2A,进行解密;电网节点(101)A用匿名消息地址μAddr2A向电网区块链(200)发送共识请求A(jγ,pubKeyPPB,unlock,update),电网区块链(200)接收到信息并验证jγ,对请求进行解密,并生成一对新的密钥tα和tγ分别替换jα和jγ,其中,tα和tγ分别如下式所示:
tα=SHA256(pubKeyA||E1||pubKeyPPB||Timestamp);
tγ=SHA256(tα||RandomNumber);
此时,电网节点(101)B的使用电量所有权属于电网节点(101)A,电网节点(101)B可以使用tα和tγ来消耗电量E1;其中可能会出现特殊的情况,电网节点(101)A所售电量可以同时满足2个电网节点(101)B和C,甚至更多电网节点(101),即,两个以上的电网节点(101)B、C和电网节点(101)A,以及本次电力交易订单使用的变电单元的电网节点(101),输配电单元的电网节点(101),均具有同等的电量证明,均可竞争本次交易的记账权;经过智能合约匹配后,电网节点(101)A所售电量E可以同时满足电网节点(101)B和C的需求,电网节点(101)A的可售电量E并将其分成E1和E2两部分;电网区块链(200)可以为2个电网节点(101)B和C创建2个jα密钥,按照下式所示等式生成每一个新密钥;
jα+1=SHA256(jγ||E1/E);
新密钥生成后,进入电量物理传输阶段,在该阶段内电网节点(101)B使用新密钥tα和tγ来消耗电网节点(101)A所产生的电量;所有节点进行解密,按照智能合约继续进行共识;电力供应更多电网节点(101)的情形可以类推;电网(100)上所有电网节点(101)接到广播消息,均参与验证该电网节点(101)的电量证明(301)和电力交易订单(300)记账,并与本节点中候选区块(102)的封装信息进行对比;
步骤6,电网区块链(200)添加电网区块(201);如果电网(100)上所有电网节点(101)对电量证明(301)和电力交易记账均验证通过,便可将该候选区块(102)添加到电网区块链(200)中;否则,电网节点(101)放弃该笔交易记账和区块创建,未接入电网区块链(200)的电网节点(101)删除本地的候选区块(102);
具体的,所有电网节点(101)对比后确认该广播消息与本地的封装信息是否一致,如是则返回消息1,如否则返回消息0;如果所有电网节点(101)均返回消息1,本次电量证明(301)和电力交易订单(300)记账的共识才算成功;本次电力交易订单(300)规定的电量传输时间截止后,智能合约向双方的智能电表查询电量传输信息,智能合约根据智能电表所发送的电量传输信息进行电量结算,并核对是否完全履行本次电力交易订单(300)的情况和服务质量进行计算;当电网节点(101)A所产生或传输的电量小于电力交易订单(300)约定的电量时,智能合约会减少电网节点(101)A的服务质量值,并对电网节点(101)A的服务质量值进行更新;当电网节点(101)B使用电量大于智能合约约定的电量时,智能合约会将重新将电力交易订单(300)发送给电网节点(101)A,并重新评估服务质量;在电网中工作时间较长,电量证明(301)数值较大,电力交易订单(300)服务质量越高,随机值越大的电网节点(101)可竞争到记账权,将该电网节点(101)对本次电力交易订单(300)进行记账的候选区块(102)连接到电网区块链(200);其他电网节点(101)失去本次记账权,删除本地节点上的候选区块(102)。
2.根据权利要求1所述的方法,其特征在于,
所述候选区块(102),指电网节点(101)中创建的临时性数据区块,具有记账功能,但在未被所有节点共识之前,候选区块(102)只是暂时存在;如果某个候选区块(102)被所有电网节点(101)共识,则该节点中的候选区块(102)会被链接入电网区块链(200),并转为正式的电网区块(201);未被所有电网节点(101)共识的候选区块(102),则在共识过程结束后会被删除;
所述电网区块链(200),指电网(100)中分布式数据区块组成的链式数据库,由地理上分布的电网区块组成;电网区块链(200)记载了所有被共识的交易账本,能够运行智能合约完成电力交易过程;
所述电网区块(201),指电网区块链(200)的基本组成单元,所有区块前后互相连接,共同组成区块链;每一个电网区块(201)都是一个交易账本,记载了被共识的电网交易记录;
所述电力交易订单(300),指电网供电和用电双方之间就电力使用达成的交易凭证,电力交易订单(300)记载了电力交易的时间戳,发电单元名称,用电单元名称,发电量的数值或使用电量的数值,电力交易订单编号;电力交易订单(300)能够加密方式记录本次订单交易使用的发电单元、变电单元、输配电单元、用电单元;
所述电量证明(301),指电力系统中各种发电单元、变电单元、输配电单元、用电单元对电网(100)的贡献证明;发电单元通过向电网(100)发电来提供电量证明,发电量的多少决定了电量证明的数值大小;变电单元通过向电网(100)变电来提供电量证明,变电量的多少决定了电量证明的数值大小;输配电单元通过向电网(100)输配电来提供电量证明,输配电量的多少决定了电量证明的数值大小;用电单元通过电网(100)消耗电量来提供电量证明,使用电量的多少决定了电量证明的数值大小;电量证明允许电网(100)中所有具有计算功能的设备参与电力交易记账和区块链构建。
3.根据权利要求1所述的方法,其特征在于,在步骤3中,所有候选区块(102)均可提交电量证明(301)竞争记账权;所有电网节点(101),包括各种发电单元、变电单元、输配电单元、用电单元的节点,均具有同等的记账权;发电单元的发电量,变电单元的变电量,输配电单元的输配电量,用电单元的使用电量,均具有同等的电量证明,能够有效防止记账权过度集中在某个或某些电网节点上,也可有效防止攻击;电量证明(301)的计算过程,需要考虑每个电网节点(101)在电网中的工作时间长短,不同时段的电量大小,以及在不同的电力交易订单(300)中服务质量的好坏;在电网中工作时间越长,电量证明(301)数值越大,电力交易订单(300)服务质量越好的节点,越容易竞争到记账权;电量证明(301)可以根据实际需要选择是否考虑不同时段、不同地域、不同发电单元的阶梯电价;电量证明(301)中增加一个随机变量,防止攻击者利用计算电量证明(301)的方式预测记账节点并攻击记账节点。
4.根据权利要求1所述的方法,其特征在于,所述电网(100)由多个电网节点(101)互相连接组成,电网节点(101)通过电力交易订单(300)进行交易,电网节点(101)可以创建候选区块(102)进行临时记账,电网节点(101)通过电量证明(301)竞争记账权,最终的电力交易记账经过共识后保存在电网区块(201)中,多个电网区块(201)互相连接组成电网区块链(200)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110831392.6A CN113626876B (zh) | 2021-07-22 | 2021-07-22 | 一种基于电网区块链的共识方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110831392.6A CN113626876B (zh) | 2021-07-22 | 2021-07-22 | 一种基于电网区块链的共识方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113626876A CN113626876A (zh) | 2021-11-09 |
CN113626876B true CN113626876B (zh) | 2023-12-19 |
Family
ID=78380588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110831392.6A Active CN113626876B (zh) | 2021-07-22 | 2021-07-22 | 一种基于电网区块链的共识方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113626876B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114066530A (zh) * | 2021-11-26 | 2022-02-18 | 华北电力大学 | 一种基于区块链的微电网间可预测电能的分布式交易方法 |
CN114663091B (zh) * | 2022-03-25 | 2023-01-31 | 上海电力大学 | 基于多链式区块链架构的电力交易方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108805567A (zh) * | 2018-05-22 | 2018-11-13 | 深圳供电局有限公司 | 一种充电公司网络交易结算方法及装置 |
CN111932253A (zh) * | 2020-08-11 | 2020-11-13 | 华北电力大学(保定) | 一种基于信用共识机制的电能交易方法 |
JP6797450B1 (ja) * | 2020-06-04 | 2020-12-09 | みんな電力株式会社 | 電力取引支援システム、電力取引支援方法及びプログラム |
CN112785429A (zh) * | 2021-01-08 | 2021-05-11 | 西北工业大学 | 一种基于区块链技术的局域多微电网电力交易配对方法 |
-
2021
- 2021-07-22 CN CN202110831392.6A patent/CN113626876B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108805567A (zh) * | 2018-05-22 | 2018-11-13 | 深圳供电局有限公司 | 一种充电公司网络交易结算方法及装置 |
JP6797450B1 (ja) * | 2020-06-04 | 2020-12-09 | みんな電力株式会社 | 電力取引支援システム、電力取引支援方法及びプログラム |
CN111932253A (zh) * | 2020-08-11 | 2020-11-13 | 华北电力大学(保定) | 一种基于信用共识机制的电能交易方法 |
CN112785429A (zh) * | 2021-01-08 | 2021-05-11 | 西北工业大学 | 一种基于区块链技术的局域多微电网电力交易配对方法 |
Non-Patent Citations (1)
Title |
---|
适用于微电网区块链的信用共识机制;秦金磊 等;电力系统自动化(15);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113626876A (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mollah et al. | Blockchain for future smart grid: A comprehensive survey | |
Sun et al. | Blockchain-enhanced high-confidence energy sharing in internet of electric vehicles | |
Seven et al. | Peer-to-peer energy trading in virtual power plant based on blockchain smart contracts | |
Zhang et al. | A privacy protection scheme of microgrid direct electricity transaction based on consortium blockchain and continuous double auction | |
Thukral | Emergence of blockchain-technology application in peer-to-peer electrical-energy trading: A review | |
CN112434343B (zh) | 一种基于双重区块链技术的虚拟电厂安全调度与交易方法 | |
Cheng et al. | Research on application model of blockchain technology in distributed electricity market | |
Chen et al. | Secure electricity trading and incentive contract model for electric vehicle based on energy blockchain | |
Guo et al. | When blockchain meets smart grids: A comprehensive survey | |
Yap et al. | Blockchain technology for distributed generation: A review of current development, challenges and future prospect | |
Moradi et al. | Blockchain, a sustainable solution for cybersecurity using cryptocurrency for financial transactions in smart grids | |
CN110717832B (zh) | 基于区块链的清洁能源交易方法、系统、装置及存储介质 | |
Cao et al. | Blockchain-empowered security and privacy protection technologies for smart grid | |
Afzal et al. | Role of blockchain technology in transactive energy market: A review | |
Masaud et al. | A blockchain-enabled decentralized energy trading mechanism for islanded networked microgrids | |
Samuel et al. | A secure blockchain‐based demurrage mechanism for energy trading in smart communities | |
Shuaib et al. | Using blockchains to secure distributed energy exchange | |
CN113626876B (zh) | 一种基于电网区块链的共识方法 | |
CN108830711A (zh) | 一种基于区块链的能源互联网交易账本管理方法及系统 | |
Wang et al. | Blockchain-based dynamic energy management mode for distributed energy system with high penetration of renewable energy | |
Yahaya et al. | Blockchain-based secure energy trading with mutual verifiable fairness in a smart community | |
Yakubu et al. | Blockchain-based secure multi-resource trading model for smart marketplace | |
Wang et al. | A multiblockchain-oriented decentralized market framework for frequency regulation service | |
Erenoğlu et al. | Blockchain and its application fields in both power economy and demand side management | |
Salian et al. | Review of blockchain enabled decentralized energy trading mechanisms |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240814 Address after: 518000 1104, Building A, Zhiyun Industrial Park, No. 13, Huaxing Road, Henglang Community, Longhua District, Shenzhen, Guangdong Province Patentee after: Shenzhen Hengyuan Zhida Information Technology Co.,Ltd. Country or region after: China Address before: 443002 No. 8, University Road, Xiling District, Yichang, Hubei Patentee before: CHINA THREE GORGES University Country or region before: China |