基于PBFT改进共识技术的电力工程结算方法技术

技术编号:36111319 阅读:21 留言:0更新日期:2022-12-28 14:13
一种基于PBFT改进共识技术的电力工程结算方法,区块链系统的共识技术是去中心化的,将区块链的PBFT共识技术和电力工程结算结合在一起,消除了原来单个故障对整个系统造成的破坏,无中心节点可攻击,无需第三方介入,不用担心内部信息泄露的问题,进一步提高了方案的安全性。交易信息不可篡改,在多方共识的去中心化系统中,如果想要修改一个数据,就必须重新生成它之后的所有区块,这使得修改大量区块链上的数据难度非常高,这样的设计增强了交易数据的可靠性,防止被恶意篡改,承发包双方的利益得到维护。本发明专利技术设计了高效、安全、低耗的账本管理机制。账本管理机制。账本管理机制。

【技术实现步骤摘要】
基于PBFT改进共识技术的电力工程结算方法


[0001]本专利技术技术主要涉及一种电力工程结算方法,尤其是一种基于PBFT改进共识技术的电力工程结算方法,属于电力工程结算
,也属于区块链


技术介绍

[0002]近年来,由于市场经济得到了持续永久的发展,在这样的经济新局面新常态下,对工程结算的方案规定也越来越求精。目前工程结算大致分为包含以下几种方式:预付款结算、工程进度款结算、工程竣工款结算。工程结算对承包方和发包方的经济利益都有非常直接的影响。但是,在越来越重要的工程结算中却面临着许多问题,比如:发包方存在拖延、拖欠工程款问题,这已经成为制约工程结算发展的重要因素。
[0003]当前,针对工程结算中出现的问题,有必要去思考怎样更高效、快捷的解决工程结算中出现拖延、拖欠工程款等问题。为了减少工程结算过程出现的拖延、拖欠工程款问题,不少研发与技术人员都从加强工程施工合同履约管理和价款缴纳监督入手。但是,当前的解决方案还是停留在传统的技术方面,很少有人将区块链的多方共识技术应用到工程结算中,来解决工程结算中存在的拖延、拖欠工程款的问题。
[0004]类比银行的集中式记账系统,账本由银行进行集中管理,人们进行的所有交易信息都会记录在集中账本上。该账本由银行集中管理控制,因而银行这个账本管理机构的决定了其安全性和可信性,并且完全取决于银行本身的信用度。当然银行系统一般有更为完备的数据安全机制和管理制度,我们一般可以相信银行有良好的信用。但如果黑客或不法人员非法访问和更改账务信息,从理论上讲这些记账信息是可以被篡改的。
[0005]区块链和银行的账本系统类似,但是它是去中心化的,这意味着账本不会在一个集中的中心保存,也不会由一个实体拥有和控制。而是由参与交易的多方在共识机制下共同管理,从而从理论上避免了集中管理模式中完全依赖管理者自身信任的问题。由于区块链技术具有去中心化、极难篡改、数据公开、操作简单等优点,所以可以很好的应用到解决传统工程结算方式中的问题。不久的将来随着区块链技术的完善、监管体系的健全,区块链结算将会为工程财务的发展带来新的突破。
[0006]然而,在当前基于区块链来解决工程结算的方案中,多数是从区块链的角度来进行设计方案,工程结算部分仅是概念化、模块化的简单设计,很少有结合多方共识中进行具体设计的。
[0007]因此,当前很少有全面的、整体的、实用的使用区块链技术针对工程结算的管理方法。同时当前的解决方案中,对于工程结算的发包方存在拖延、拖欠工程款问题解决仍不够充分;并且没有设计出适用于工程结算的多方共识技术。

技术实现思路

[0008]本专利技术的提出,目的是开发一种基于PBFT改进共识技术的电力工程结算方法,通过区块链技术,基于多方共识的技术,解决了对于银行集中记账系统可能会被不法人员篡
改,避免工程结算中的拖延、拖欠工程款的技术问题,同时兼顾安全、高效以及低耗能的需求。
[0009]本专利技术的技术解决方案是这样实现的:
[0010]一种基于PBFT改进共识技术的电力工程结算方法,其特征在于将区块链多方共识PBFT技术应用到电力工程结算中,包括如下步骤:
[0011]步骤一、各节点开始执行:首先在提出的电力工程结算交易信息生成方案中,所有的共识节点共n个,记为P
i
(i∈[1,n]),这n个节点共同计算生成银行账户的工程结算的交易信息;同时设置每个节点先生成一个随机数s,之后将这个随机数作为常数再生成一个随机多项式,接着每个节点都把该节点生成的多项式通过秘密共享再生成n份秘密子交易信息,并共享给其它n

1个节点;
[0012]步骤二、密钥生成:共享给其它n

1个节点完成之后,所有节点都完成交易信息共享,每个节点都收到了其它节点发来的总计n份交易信息,每个节点都把这n份交易信息相加得到秘密交易信息之和,并用自己的私钥解密,而所有节点的交易信息之和即是所有人最初生成的随机交易信息的系数之和;最后由所有参与计算的节点中的n个节点进行秘密重构,通过插值公式进行秘密重构恢复出原来的多项式常数的和,即每个节点最初生成的随机数s的和,并对此结果再做哈希运算,即得出我们最终要生成的交易信息;每一个参与者会自动生成一个公钥和私钥,其中公钥对全网的所有参与者公开,而私钥则只有参与者本人知道,参与节点随机选择一个小于所有参与者的数作为他的私钥,记为sk,,并根据如下公式计算出他的公钥pk
i
=sk
i
.G,即为了防止恶意篡改,所以每个参与者的私钥不是固定的,公钥是私钥和基点G的乘积;
[0013]步骤三、交易信息共享:每个参与者都收到了其他参与者发送的用该参与者公钥加密的总计n个秘密交易信息,包括如下步骤:(1)生成多项式,P
i
在[1,n]内选择一个随机交易信息s进行核验,并记s
i
=a
i0
,之后再选择n

1个随机数a
i1,
a
i2,
...a
i,j
‑1并用a
i1,
a
i2,
...a
i,j
‑1作为多项式的系数生成一个如下的n

1次多项式:fi(x)=a
i0+
a
i1X+...+
a
i,i

1Xi
‑1;(2)计算子交易信息,对于j=1,2..,n,P
i
计算子份额f
i
(j);(3)子交易信息编码设计,对每个子交易信息f
i
(j)进行编码使其成为区块链系统上的一个点;
[0014]步骤四、子交易信息零知识证明,每个参与者节点都把自己解密的子交易信息S,发送给其他参与者节点,所有参与者节点只要集齐n个参与者的子交易信息之和就可以完成插值计算,以得到一个由所有参与者最初生成的子交易信息的和构成的全网达成共识的交易信息;对随机生成的工程结算交易信息做一次哈希运算,就得到所提方案生成的多方共识的电力工程结算交易信息,即S=hash(s);
[0015]步骤五、判断交易信息,对所有参与方的共识信息进行验证,如果得到了大于2/3的参与方认可,那么将同态信息进行相加,确保共识信息的防篡改性以及安全性;如果得不到大于2/3的参与方认可,将交易信息移除工程结算系统;
[0016]步骤六、同态信息相加:用一种加密函数,对电力工程结算明文进行环上的加法和乘法运算再加密,与加密后对密文进行相应的运算,结果是等价的,电力工程结算发包方可以委托第三方对数据进行处理而不泄露信息,保证了工程结算中生成的数据防止外界篡改,确保电力工程结算信息的安全性和准确性;
[0017]步骤七、子交易信息解密:是加密的逆运算,生成电力工程结算秘文的基础上使用
私钥将信息进行解密,获取秘文对应的明文,保证信息不被承发包双方以外的人获本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于PBFT改进共识技术的电力工程结算方法,其特征在于将区块链多方共识PBFT技术应用到电力工程结算中,包括如下步骤:步骤一、各节点开始执行:首先在提出的电力工程结算交易信息生成方案中,所有的共识节点共n个,记为P
i
(i∈[1,n]),这n个节点共同计算生成银行账户的工程结算的交易信息;同时设置每个节点先生成一个随机数s,之后将这个随机数作为常数再生成一个随机多项式,接着每个节点都把该节点生成的多项式通过秘密共享再生成n份秘密子交易信息,并共享给其它n

1个节点;步骤二、密钥生成:共享给其它n

1个节点完成之后,所有节点都完成交易信息共享,每个节点都收到了其它节点发来的总计n份交易信息,每个节点都把这n份交易信息相加得到秘密交易信息之和,并用自己的私钥解密,而所有节点的交易信息之和即是所有人最初生成的随机交易信息的系数之和;最后由所有参与计算的节点中的n个节点进行秘密重构,通过插值公式进行秘密重构恢复出原来的多项式常数的和,即每个节点最初生成的随机数s的和,并对此结果再做哈希运算,即得出我们最终要生成的交易信息;每一个参与者会自动生成一个公钥和私钥,其中公钥对全网的所有参与者公开,而私钥则只有参与者本人知道,参与节点随机选择一个小于所有参与者的数作为他的私钥,记为sk,,并根据如下公式计算出他的公钥pk
i
=sk
i
.G,即为了防止恶意篡改,所以每个参与者的私钥不是固定的,公钥是私钥和基点G的乘积;步骤三、交易信息共享:每个参与者都收到了其他参与者发送的用该参与者公钥加密的总计n个秘密交易信息,包括如下步骤:(1)生成多项式,P
i
在[1,n]内选择一个随机交易信息s进行核验,并记s
i
=a
i0
,之后再选择n

1个随机数a
i1,
a
i2,
...a
i,j
...

【专利技术属性】
技术研发人员:张利军张德奇杨玲胡靓胡炎军李皓郑恺
申请(专利权)人:国网浙江省电力有限公司杭州供电公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1