基于联盟链的去中心化能源交易系统

周鑫1,邓莉荣2,王彬1*,潘昭光1


(1.清华大学电机工程与应用电子技术系,北京市 海淀区 100089;2.清华大学清华-伯克利深圳学院,广东省 深圳市 518057)

摘要

随着分布式能源的快速发展,传统的中心化能源交易系统遇到了建造和维护中心化数据库的成本较高、数据被篡改后会酿成严重后果和难以保障用户隐私这三大问题。针对这些问题,设计了一种基于联盟链的去中心化能源交易系统。首先,分析了该系统的组成部分,利用联盟链的准入机制对用户进行监管。介绍了该系统的交易流程,包括网络节点的配置,使用数字证书注册管理员和用户,借鉴链上链下协同架构实现分布式交易撮合等。接着,介绍了该系统使用的分布式交易撮合算法。然后,利用Hyperledger Fabric平台研发了该系统,介绍了相关的软件架构。最后,分析了使用联盟链的优点,从系统总成本、园区内分布式光伏发电自销占比两个方面将设计的系统与中心化的点对网交易系统进行比较,验证了该系统用于分布式能源交易的可行性。

关键词 : 联盟链;去中心化;能源交易系统

0 引言

随着能源互联网的发展,光伏、风电这类能源利用率高、污染排放低的分布式能源已在世界各国受到广泛关注。2017年,国家发改委和国家能源局出台了《关于开展分布式发电市场化交易试点的通知》,鼓励分布式能源参与到电力市场中,提出建立分布式发电市场化交易平台。未来的电力市场参与者的类型将更为丰富,生产者和消费者不再是互斥的关系,用户将更多地以产消者的身份参与到电力市场交易中。

传统的电力市场交易采用集中式模式,发电商和用户将报价数据传递给中心化交易系统,然后再通过集中撮合或者优化的方式进行匹配[1]。但是,随着分布式能源的大量使用,这种中心化交易系统存在着以下问题:首先,交易的用户数量较多,交易数据量极大,建立中心化交易平台以及维护交易数据的成本很高;其次,交易中心信息安全程度不高,容易受到恶意攻击,数据被篡改后会造成严重后果;最后,交易中心存在信息不对称的问题,现在用户越来越重视隐私保护,而中心化交易系统难以保障用户隐私。为了解决这些问题,一些学者将目光放到了新兴的区块链技术上,提出使用区块链技术应对这些问题。

2008年,中本聪创立并发行了比特币[2],而区块链作为比特币的核心底层技术,具有去中心、去信任等优点,得到了人们的广泛关注。区块链是一种分布式数据库,其技术框架的四大组成部分为:共享账本、加密技术、共识机制、智能合约[3]。共享账本依托于数据库技术,每一笔事务都会添加到共享账本中。加密技术利用极高的计算复杂度来确保身份验证和事务验证的可靠性。共识机制是区块链系统的核心,区块链各个节点利用共识机制来验证事务,构建区块链节点间的信任系统。智能合约是嵌入在区块链系统中的商业条款,在智能合约中需要定义每一笔事务的价值流动和状态变化。

目前已有许多文献探讨了区块链技术在能源交易中的应用。文献[4]将区块链技术应用到大用户直购电中,利用互联链的思想,分别记录直购电及其二级市场交易、阻塞管理数据、日前市场交易。文献[5]使用区块链建立了分布式能源P2P(peer to peer)交易架构,基于连续双边拍卖机制建立了交易的结算机制,并讨论了区块链技术在能源交易市场中的局限性。文献[6]利用区块链中的联盟链建立了电动汽车间的P2P交易机制,该机制使用了基于PoW(proof of work)的共识机制增加了交易的安全性。文献[7]则使用联盟链设计了电动汽车的V2V(vehicle to vehicle)电力交易平台。文献[8]综述了分布式账本技术在局部能源市场P2P交易中的应用,提出了一种能源交易系统的架构,并在区块链PoS(proof of stake)共识机制的基础上提出了PoE(proof of energy)共识机制。文献[9]设计了一种基于多代理和区块链的分布式电力交易系统,提出使用两条区块链记录交易结果,并利用高频的检验机制对区块的内容进行验证。

上述文献中,大部分文献并没有明确区块链的类型,只有少数文献具体的讨论了区块链中联盟链的应用。实际上,区块链可以分为公有链、联盟链和私有链。通常人们所说的区块链指的是公有链,它是完全去中心化的,节点可以随时加入或离开公有链网络。联盟链是部分去中心化的,由各个组织机构共同管理,用户需要经过身份验证才能进入到联盟链网络中。而私有链类似于普通的数据库,并不适合应用到分布式能源交易中。在分布式能源交易领域,联盟链要优于公有链,原因为:首先,任何一个节点都可以加入到公有链网络中,不利于能源系统的监管,而联盟链具有准入机制,只有符合要求的节点才能加入到联盟链网络中;其次,公有链的隐私保护依赖于匿名机制,但公有链上传输的数据是公开可见的,而联盟链可以通过权限控制防止恶意节点获得这些数据;最后,在防止数据篡改方面,公有链通常使用PoW或PoS共识机制,其中PoW机制具有速度慢和能耗大的缺点,PoS机制则存在着马太效应的问题,而联盟链可以采用基于PBFT(practical byzantine fault tolerance)或CFT(crash fault tolerance)的共识机制,共识速度较快。

本文在已有研究的基础上,设计一种基于联盟链的去中心化能源交易系统,并使用Hyperledger(超级账本)项目中的Fabric开发平台研发这一系统,结合分布式交易撮合算法,通过一个工业园区的算例分析该交易系统的可行性。

1 去中心化能源交易系统架构

本文设计的基于联盟链的去中心化能源交易系统如图1所示,相关的组织机构包括生产者、消费者、产消者、电网和支付机构五类。

图1中,生产者、消费者和产消者三大组织机构中的用户直接参与到能源的生产和消耗。电网一方面需要管理公共的电力设施,另一方面也需要弥补联盟链本质上作为信息层面的数据库的不足,执行相关的物理层面的操作。选择支付机构前需要先确定一个交易介质,而通常的区块链交易平台都是使用了数字代币作为交易介质,这样一来支付机构实际上就是区块链本身。但是本文使用的是联盟链,而联盟链是不一定需要使用数字代币的。考虑到央行正在研究使用联盟链发行央行数字货币,本文认为可以将银行作为支付机构,交易介质由银行决定,这里的联盟链交易系统只负责记录电力交易的账本。

该交易系统中,wallet是各个组织机构用来管理用户数字证书的身份管理系统,由相应的数字证书颁发机构创建,5类组织机构都至少要在wallet中注册一个管理员。然后,对于生产者、消费者和产消者来说,管理员还需要审核用户资格,创建若干用户。在交易时,用户需要将报价信息传递给联盟链,联盟链再通过智能合约对报价进行撮合,将报价和和交易信息写入到联盟链数据库中。得到交易结果后,电网执行相关的物理操作,支付机构对交易进行支付。可以看到,联盟链的主要作用在于用户准入审核、记录交易和报价数据以及通过智能合约进行交易结算。

图1 能源交易系统架构
Fig.1 Architecture of energy trading system

2 能源交易系统交易流程

本文设计的能源交易系统的交易流程如图2所示。

图2 交易流程
Fig.2 Transaction flow

2.1 联盟链网络配置

联盟链网络配置主要包括定义参加联盟链的各个组织机构和分配各个组织机构对应的节点。本文使用的联盟链开发平台为Hyperledger Fabric,该平台中联盟链网络的节点分为orderer节点、peer节点和client节点[10]。其中,orderer节点能够实现排序服务,将联盟链中发生的事务进行排序,打包整理成区块发送给其他节点;peer节点拥有一个区块链账本,所有peer节点会共同维护账本并验证其可靠性;client节点会向联盟链网络提交事务申请,并将需要改变联盟链账本的事务发送给orderer节点进行排序。

本文研发时只为电网配置了一个orderer节点。在实际应用场景中,可以考虑增加orderer节点的个数。关于peer节点的配置,由于peer节点直接参与记账过程,每个组织机构都应该配置peer节点。文献[11]研究了peer节点个数对达成共识所需时间的影响,指出当传输时延较小时,peer节点个数与平均达成共识所需时间近似为线性关系,为了加快共识速度,本文对5个组织机构都只配置了一个peer节点。而client节点本质上是用户与联盟链交互的接入点,是用户通过调用智能合约创建一笔事务形成的[12],在能源交易系统的背景下,只有生产者、消费者和产消者的用户才会有client节点。

联盟链网络的配置信息在联盟链网络启动后会记录到一个初始区块中,该初始区块只记录网络配置信息,不会记录其他的事务信息。在实际运行过程中,如果联盟链管理员需要修改网络配置,可以通过系统链代码[13]增加新的配置区块。

2.2 管理员与用户注册

管理员的注册实际上是基于公钥基础设施(public key infrastructure)实现的。首先,联盟链的各个组织机构都需要一个证书颁发机构,颁发的数字证书采用在互联网领域已经得到广泛应用的X.509标准[14],利用非对称加密技术验证身份信息。管理员在注册时首先需要创建公钥PK和私钥SK,私钥SK会对管理员的身份信息进行加密得到数字签名DS,当需要验证管理员的身份信息时,可以通过公钥PK对数字签名DS进行验证。管理员对应的组织机构会将管理员的数字证书拷贝一份记录到如图1所示的wallet身份管理系统中。身份信息的验证由MSP(membership service provider)提供,MSP不仅能够判断数字证书的有效性,还能够判断数字证书是否来自受信任的证书颁发机构[15]

生产者、消费者和产消者的用户注册与管理员不同,各个组织机构会以网站或APP的形式为用户提供一个注册的接口,当用户提交注册申请后,证书颁发机构并不会立刻向用户颁发数字证书,而是暂时记录用户的注册信息,等待管理员的审核。管理员本身并不会参与到能源交易中,而是作为政府监管功能的实际执行者,对参与到能源交易中的用户进行资格审核。

2.3 管理员审核用户

管理员首先需要通过数字证书证明自己的管理员身份,登录相应的组织机构用户审核网站或APP。用户提交的注册信息应当包括需要管理员审核的资料,管理员审核通过后,相应的证书颁发机构会为该用户生成一组公钥和私钥,并为该用户颁发数字证书。该用户的数字证书会拷贝一份记录到wallet身份管理系统中。此后用户便可以凭借该数字证书加入到联盟链网络中,以client节点的形式通过智能合约与联盟链进行互动,按照权限查询或修改联盟链的账本。

数字证书存在着过期的问题,当某个用户的数字证书过期后,证书颁发机构会将该数字证书加入到证书撤销列表中,管理员会重新审核用户的资格,审核成功后证书颁发机构会为该用户颁发新的数字证书,wallet身份管理系统会用新的数字证书替换掉原有的数字证书。

2.4 用户提交报价与交易撮合

生产者、消费者和产消者的用户会通过相应的组织机构网站或APP提交自己的报价信息,这里的报价信息应当包括价格与功率。这些报价信息会通过智能合约写入联盟链的数据库中。联盟链利用智能合约对报价进行撮合,具体内容如第3部分所示。撮合的结果也会通过智能合约写入到联盟链中。

用户提交报价或者写入交易时实际上改变了联盟链记录的账本内容,由于联盟链的账本是由所有的peer节点共同维护的,被修改的账本需要通过共识机制达成一致。区块链主流的共识机制为PoW机制和PoS共识机制。PoW共识机制是比特币采用的共识机制,通过求解复杂的数学问题来达成共识,会消耗大量的算力,共识速度慢,不能满足商业级别应用的需要。而PoS机制中引入了权益的概念,共识结果以权益最高的节点为准,但是权益最高的节点容易一直保持最高的权益,产生马太效应。另外PoW和PoS共识机制本质上是非确定性的[16],存在着分叉的问题[17],只能以概率的形式描述各个节点账本的一致性。

本文使用的共识机制采用了Hyperledger Fabric提出的执行-排序-验证框架[10],能够以确定性的方式达成共识。具体来说,联盟链首先检查用户的数字证书,确定用户身份有效后,用户就会以client节点的形式接入到联盟链网络中。通过联盟链提供的API(application programming interface),用户可以调用联盟链的智能合约,向联盟链发出写入报价或写入交易的事务申请。联盟链的智能合约部署到联盟链中,会配置几个组织机构中受信任的peer节点,当智能合约被调用后,这些受信任的peer节点会先模拟调用智能合约产生的结果,对该事务进行数字签名,此时它们并不会修改自身的账本。然后,电网对应的orderer节点会收集这些被签名的事务,并根据智能合约的配置判断是否集齐了受信任的peer节点的数字签名。当收集齐数字签名后,电网对应的orderer节点利用Kafka或Raft排序服务,对这段时间内收到的事务进行排序,并将这些事务打包成区块。最后,电网对应的orderer节点会将打包后的区块发送给所有的peer节点,peer节点根据收到的区块检查事务的有效性,对有效的事务执行相应的更新账本的操作。通过这种共识机制,联盟链各个peer节点能够保证记录账本的一致性,以公开透明、不可篡改的方式记录用户的报价和交易信息。

基于区块链的能源交易系统可以分为P2P模式和集中出清模式[18]。P2P模式下各个用户之间直接达成交易意向,不要通过智能合约进行撮合。这种模式的问题在于如何处理交易不满足电网物理约束的情况。而集中出清模式通过智能合约对用户的报价进行撮合,在撮合时会引入电网物理约束,从而解决P2P模式的问题。因此,本文设计的能源交易系统采用集中出清模式,联盟链会对交易进行撮合。但是,集中出清模式下的分布式撮合算法需要大量的迭代操作,更新大量的中间数据,如果这些数据全部记录在联盟链账本中,会花费大量时间,严重降低交易速度。文献[19]提出了使用链上、链下协同架构,将交易的部分过程放到链下,提升交易处理能力。本文将借鉴这种架构,链上只记录用户的报价和交易信息,在链下执行分布式撮合算法的迭代过程,中间数据也在链下存储,能够极大提高交易撮合的速度。

2.5 用户查询交易与付款

用户登录相关组织机构提供的网站或APP,能够查询到自己的交易结果。这里的查询操作同样是通过智能合约实现的,但是由于查询操作并不会改变联盟链的账本,所以不会出现共识过程。交易付款是由支付机构实现的,联盟链只负责对交易结果进行记账,支付机构可以根据实际情况选择数字代币或传统货币实现支付操作。

3 交易撮合

假设本文采用的集中出清市场是完全竞争市场,则该多边贸易问题可以形成一个类似于经济调度的问题[20]。目标函数是总成本最小,具体包括3部分:生产者的发电成本C(包括储能的成本或者负收益),减去消费者的用电效益U,加上与大电网进行交易的成本。

式中:PG PL分别为有功出力、有功负荷列向量,PG PL为相应的内部元素;Psell Pbuy分别为电网卖给/买入社区的电量;γsell γbuy分别为电网卖给/买入社区的单位价格;Z为状态变量,代表电压幅值,相角等。f(·)为潮流方程表达式,可以选择直流潮流、交流潮流以及考虑网损项的直流潮流。考虑到目前国内外电力市场(如广东电力市场、PJM、ERCOT、CAISO)主要使用直流潮流进行计算,本文选择使用直流潮流。下标r表示电网所连接的节点,-r表示除了电网连接的节点以外剩下的节点。GH分别为节点功率界限和线路潮流界限表达式。模型(1)中的约束条件依次为除参考节点以为的节点功率平衡约束,参考节点功率平衡约束,生产设备或灵活性负荷变化范围,和线路潮流约束。每条约束后的变量为相应的对偶变量。

定义原变量对偶变量本文采用原对偶梯度算法求解该问题[21]。其中原变量按照负梯度方向进行梯度下降迭代,对偶变量按照正梯度方向进行梯度下降迭代。具体迭代格式如下

式中:L为模型(1)的拉格朗日函数;ξi αi分别为节点i的原变量xi和对偶变量yi的迭代步长,xixyiy

值得一提的是,该算法是完全分布式的。因为本地代理i拥有本地数据(包括自身的目标函数Ci Ui,功率界限Gi),处理本地变量(xi yi),并且与邻居节点交换部分信息(xj yj),即可实现本地优化,达到与全局优化一致的最优解。

4 去中心化能源交易系统开发

本文使用Hyperledger Fabric联盟链开发平台研发了基于联盟链的去中心化能源交易系统。该系统的软件架构如图3所示,从底层到顶层分为网络配置层、智能合约层、中间件层和网站应用程序层。在这4层中,智能合约层和中间件层是最重要的部分,智能合约层定义了用户与联盟链账本的交互方式,而中间件层一方面能够处理注册问题,另一方面能够调用智能合约以链上链下协同的方式实现交易撮合。本文接下来将重点介绍智能合约层和中间件层。

图3 能源交易系统软件架构
Fig.3 Software architecture of energy trading system

在Hyperledger Fabric平台中,智能合约部署在各个peer节点上,在智能合约中可以定义用户对peer节点存储账本的读写操作。另外,与以太坊等区块链开发平台不同,Hyperledger Fabric支持使用Java等通用编程语言编写智能合约。本文设计的智能合约如图4所示,采用TypeScript语言编写。在智能合约中首先需要定义联盟链数据库记录的内容,为此本文定义了Transaction(交易)和Offer(报价)两种数据类型,联盟链各个peer节点底层将使用CouchDB数据库记录这些数据。然后本文定义了一个用于执行智能合约操作的类,在这个类中定义了5个函数:instantiate,createTransaction, payTransaction、queryDatabase和writeOffer,分别代表初始化、创建交易、交易付款、查询数据和写入报价。值得一提的是,为了方便起见,在payTransaction函数中本文只是简单的将该笔交易的状态从未付款改为已付款,实际应用场景下还需要支付机构执行相应的支付操作。

在中间件层中,使用Hyperledger Fabric内置的Fabric-CA作为证书颁发机构,执行相应的身份验证以及注册操作。而中间件层中调用智能合约需要使用Hyperledger Fabric提供的gateway类,利用gateway能够连接到联盟链网络中,再调用API中的getcontract的函数就能够间接调用智能合约中定义的函数。中间件层的架构图如图5所示。链下交易撮合的流程为,wallet中的电网管理员利用gateway调用智能合约中的queryDatabase函数,得到用户提交的报价信息,然后利用链下撮合代码进行分布式的交易撮合,并得到交易结果。而为了将交易结果写回到链上,链下撮合代码通过wallet中的电网管理员利用gateway调用智能合约中的createTransaction函数,将撮合结果写入到联盟链账本中。

图4 智能合约架构
Fig.4 Architecture of smart contracts

图5 中间件层架构
Fig.5 Architecture of middleware layer

5 算例及分析

为了验证本文设计的基于联盟链的去中心化能源交易系统应用于分布式能源交易的可行性,本文从系统总成本、园区内分布式光伏发电自销占比两个角度出发,将基于联盟链的去中心化交易系统与中心化的“自发自用,余量上网”点对网交易系统进行比较。这里的点对网交易系统指园区内的用户只能直接与外电网交易,用户之间不会直接进行交易。本文选取的园区电网拓扑模型如图6所示,一些重要参数可以参考附录,完整的参数见参考文献[22]。

本文首先比较了两种交易系统的总成本,如图7所示。从图7中可以看到,本文设计的去中心化联盟链交易系统的总成本要低于中心化的点对网交易系统。这个现象主要是跟外电网售电和购电的价格有关。通常情况下,考虑到外电网的输电成本,外电网的售电价格比园区内用户的发电成本更高,而外电网的购电价格比园区内用户的购电效益更低。去中心化的联盟链交易系统中用户会倾向于先与其他用户进行交易再与外电网进行交易,所以去中心化的联盟链交易系统的总成本会低于中心化的点对网交易系统。另外,由于储能元件的成本较小,而优化目标为系统总成本最低,储能元件会尽可能向用户售电,从而减少外电网的售电量,这同样会降低去中心化的联盟链交易系统的总成本。

图6 网络拓扑
Fig.6 Network topology

图7 系统总成本比较
Fig.7 Comparison of total system cost

图8比较了2种交易系统的园区内分布式光伏发电自销占比情况。

图8 园区内分布式光伏发电自销占比比较
Fig.8 Comparison of ratio of distributed PV energy traded within park

由图8可知,使用本文设计的去中心化联盟链交易系统,能够增加园区内分布式光伏自销占比。这是因为,去中心化的联盟链交易系统中,新能源发出的电量在满足自身的需求后,会先在用户之间进行消纳,然后再卖给外电网,而中心化的点对网交易系统中新能源除少量自用外只能直接卖给外电网。从园区的角度来看,去中心化的电力交易平台中新能源会优先供给园区内用户,所以去中心化的联盟链交易系统的园区内分布式光伏自销占比会高于中心化的点对网交易平台。该算例中新能源发电量要比负荷小很多,所以分布式光伏自销占比为100%。

图9为联盟链记录交易结果的区块的简化示意图。每个区块的头部包括上一个区块的哈希值和当前区块的哈希值,各个区块通过哈希值相连。每个区块记录的数据比较复杂,图中只显示了调用的智能合约及其参数。将这些智能合约记录下来相当于记录了对交易数据的所有操作,必要时可以回溯各个区块的内容对每一个操作进行验证。

上述算例提供了一个将联盟链应用到分布式能源交易中的例子。从联盟链本身的优点来看,该系统继承了公有链去中心化和不可篡改的特点,省去了传统能源交易系统建造和维护中心化数据的成本,几乎杜绝了篡改数据的可能性。另外,联盟链具有准入机制,能够限制外部的恶意节点加入到联盟链网路中,而当内部出现恶意节点时可以通过其身份信息及时找出恶意节点。综上所述,联盟链具备应用到分布式能源交易系统中的可行性。

6 结论

本文分析了传统中心化能源交易系统在分布式能源交易场景下的局限性,指出了联盟链比公有链更适合应用于能源交易领域,设计了一个基于联盟链的去中心化能源交易系统,使用Hyperledger Fabric平台研发了该系统。使用联盟链能够以部分去中心化的方式维护交易数据,防止数据被恶意篡改,提高隐私保护能力。本文探索了联盟链在分布式能源交易中的应用,将联盟链交易系统与分布式交易撮合算法相结合,从系统总成本、园区内分布式光伏发电自销占比2个角度出发与传统的点对网交易系统进行了比较,验证了该系统用于分布式能源交易的可行性。但是本文设计的联盟链交易系统的架构比较简单,而且只是对联盟链的优点进行定性分析,并没有给出定量的结果。下一步可以在该联盟链交易系统的基础上,探究更加通用的联盟链交易系统架构,应用不同的交易算法,分析联盟链交易系统的性能与用户数量间的关系。

图9 区块信息
Fig.9 Block information

附录

表A1中列出了24个用户的基本参数,包括用户的类型、连接母线编号、报价功率的上下限、发电成本/用电效益的2个系数。表中的星号*表示数据为时变变量。

表A1 园区用户参数
TableA1 Parameters of agents in park

图A1 外电网售电和购电价格
Fig.A1 Electricity purchase and sale prices of grid

图A2 光伏出力
Fig.A2 Power of phtovoltaics

图A3 某大型负荷功率范围
Fig.A3 Power range of some large load

参考文献

[1]Haring T W, Mathieu J L, Andersson G.Comparing centralized and decentralized contract design enabling direct load control for reserves[J].IEEE Transactions on Power Systems, 2016,31(3): 2044-2054.

[2]Nakamato S.Bitcoin: A peer-to-peer electronic cash system[EB/OL].https://www.bitcoincash.org/bitcoin.pdf.

[3]Gaur N, Desrosiers L, Ramarkrishna V, el al.Handson blockchain with Hyperledger: Building decentralized applications with Hyperledger Fabric and Composer[M].Packt Publishing Ltd, 2018.

[4]欧阳旭,朱向前,叶伦,等.区块链技术在大用户直购电中的应用初探[J].中国电机工程学报,2017,37(13):3737-3745.

Ouyang Xu, Zhu Xiangqian, Ye Lun, et al.Preliminary applications of blockchain technique in large consumers direct power trading[J].Proceedings of the CSEE, 2017, 37(13):3737-3745(in Chinese).

[5]李彬,覃秋悦,祁兵,等.基于区块链的分布式能源交易方案设计综述[J].电网技术,2019,43(3):961-972.

Li Bin, Qin Qiuyue, Qi Bing, et al.Design of distributed energy trading scheme based on blockchain[J].Power System Technology, 2019, 43(3): 961-972(in Chinese).

[6]Jiawen Kang, Rong Yu, Xumin Huang, el al.Enabling localized peer-to-peer electricity trading among plug-in hybrid electric vehicles using consortium blockchains[J].IEEE Transactions on Industrial Informatics, 2017, 13(6): 3154-3164.

[7]王惠洲,于艾清.基于联盟区块链技术的V2V电力交易研究[J].现代电力,2019,36(3):34-41.

Wang Huizhou, Yu Aiqing.Study on V2V electricity trading based on consortium blockchain technology[J].Modern Electric Power, 2019, 36(3): 34-41(in Chinese).

[8]Siano P, de Marco G, Rolan A, et al.A survey and evaluation of the potentials of distributed ledger technology for peer-topeer transactive energy exchanges in local energy markets[J].IEEE Systems Journal, 2019, 13(3): 3454-3466.

[9]Luo F J, Dong Z Y, Liang G Q, et al.A distributed electricity trading system in active distribution networks based on multiagent coalition and blockchain[J].IEEE Transactions on Power Systems, 2019, 34(5): 4097-4108.

[10]Androulaki E, Barger A, Bortnikov V, el al.Hyperledger Fabric: a distributed operating system for permissioned blockchains[C]//Proceedings of the Thirteenth EuroSys Conference.ACM, 2018: 30.

[11]Sukhwani H, Martinez J M, Chang X L, et al.Performance modeling of PBFT consensus process for permissioned blockchain network (hyperledger fabric)[C]//2017 IEEE 36th Symposium on Reliable Distributed Systems (SRDS),September 26-29, 2017.Hong Kong, China.New York, USA:IEEE, 2017.

[12]Valenta M, Sandner P.Comparison of Ethereum, Hyperledger Fabric and Corda [EB/OL].Frankurt School, Blockchain Center, 2017.http://explore-ip.com/2017_Comparison-of-Ethereum-Hyperledger-Corda.pdf.

[13]Hyperledger Fabric Document.System Chaincode[EB/OL].(2019)[2019-06-10].https://hyperledger-fabric.readthedocs.io/en/latest/smartcontract/smartcontract.html#system-chaincode.

[14]Cooper D, Santesson S, Farrell S, et al.Internet X.509 public key infrastructure certificate and certificate revocation list(CRL) profile[R].RFC Editor, 2008.DOI:10.17487/rfc5280

[15]Hyperledger Fabric Document.Membership[EB/OL].(2019)[2019-06-10].https://hyperledger-fabric.readthedocs.io/en/latest/membership/membership.html

[16]Androulaki E, Cachin C, De Caro A, el al.Cryptography and protocols in hyperledger fabric[C]//Real-World Cryptography Conference.2017.

[17]Kiayias A, Russell A, David B, el al.Ouroboros: A provably secure proof-of-stake blockchain protocol[C]//Annual International Cryptology Conference.Springer, Cham, 2017:357-388.

[18]王蓓蓓,李雅超,赵盛楠,等.基于区块链的分布式能源交易关键技术[J].电力系统自动化,2019,43(14):53-64.

Wang Beibei, Li Yachao, Zhao Shengnan, et al.Key technologies on blockchain based distributed energy transaction[J].Automation of Electric Power Systems, 2019, 43(14): 53-64(in Chinese).

[19]孙毅,范灵俊,洪学海.区块链技术发展及应用:现状与挑战[J].中国工程科学,2018,20(2):27-32.

Sun Yi, Fan Lingjun, Hong Xuehai.Technology development and application of blockchain: current status and challenges[J].Strategic Study of CAE, 2018, 20(2): 27-32(in Chinese).

[20]Lirong Deng, Xuan Zhang, Hongbin Sun.Real-time autonomous trading in the electricity-and-heat distribution market based on blockchain[C]//IEEE PES General Meeting,2019.

[21]Feijer D, Paganini F.Stability of primal-dual gradient dynamics and applications to network optimization[J].Automatica, 2010, 46(12): 1974-1981.

[22]Github.Bkcase[CP/OL].[2019-06-29].https://github.com/foxtemp/bkcase.

Decentralized Energy Trading System Based on Consortium Blockchain

ZHOU Xin1, DENG Lirong2, WANG Bin1*, PAN Zhaoguang1
(1.Department of Electrical Engineering, Tsinghua University, Haidian District, Beijing 100089, China;2.Tsinghua-Berkeley Shenzhen Institute, Tsinghua University, Shenzhen 518057, Guangdong Province, China)

Abstract: With the rapid development of distributed energy,conventional centralized energy trading systems have encountered three major problems: the high cost of building and maintaining a centralized database, the serious consequences caused by data tampering, and the difficulty of protecting user privacy.To solve these problems, this paper presents a decentralized energy trading system based on consortium blockchain.First, this paper analyses the components of the system, using the access mechanism of consortium blockchain to supervise users.The paper then introduces the transaction flow of the system, including the configuration of network nodes, the use of digital certificates to register administrators and users, and the realization of distributed transaction matching using the architecture of on-chain and offchain collaborations.The system is then established using the Hyperledger Fabric platform, and the related software architecture is introduced.Finally, this paper analyzes the advantages of using consortium blockchain, compares the system designed in this paper with the centralized peer-to-grid trading system from two aspects: total system cost and ratio of distributed PV energy traded within park, which verifies the feasibility of applying this system to distributed energy trading.

Keywords: consortium blockchain; decentralization; energy trading system

文章编号2096-5125 (2019) 06-0556-10

中图分类号:F416.2;TP311

文献标志码:A

DOI:10.19705/j.cnki.issn2096-5125.2019.06.005

基金项目:国家自然科学基金(51537006)。

National Natural Science Foundation of China (51537006).

收稿日期:2019-06-30;修回日期:2019-08-07。

作者简介:

周鑫

周鑫(1997),男,博士研究生,研究方向为综合能源系统和区块链在能源领域的应用,E-mail:zx-scott@foxmail.com。

邓莉荣(1993),女,博士研究生,主要从事电力市场和综合能源系统研究,E-mail:denglirong_1993@163.com。

王彬(1984),男,博士,高级工程师,主要从事智能电网和能源互联网能量管理与运行调控等领域的教学与研究工作。通信作者,E-mail:wb1984@tsinghua.edu.cn。

(责任编辑 张宇)

  • 目录

    图1