权益证明 proof of stake

比特币和以太坊目前都是使用的基于工作量的证明,这种共识机制受到了普遍的批评——浪费电

以下这张图表示比特币的能耗随时间的曲线 以及 具体的数字

21 以太坊权益证明21 以太坊权益证明

 

 

以下是以太坊的能耗曲线

21 以太坊权益证明21 以太坊权益证明

 

以太坊与比特币相比能耗要少很多,这是因为比特币的出块时间长,以太坊的出块时间短,所以每个交易上比特币所花费的能耗要多很多,但是即使如此,以太坊挖矿所消耗的能耗要比信用卡公司多很多。

如果我们把以太坊和比特币的能耗和每个国家的能耗进行排序,将会有如下结果。

21 以太坊权益证明

大家思考几个问题。

矿工为什么要挖矿?

为了要收益,为什么要给他出块奖励呀?为了激励矿工参与区块链系统的维护,矿工具体要怎么挖矿:找一大笔资金买设备,挖矿的收益是由区块决定、算力决定、电力决定,实际上是拼钱决定的。

这就带来一个问题,既然是拼钱来决定谁来发布谁来发布下一个区块,我们直接拼钱来代替算力决定吧,有的时候管这种方式叫做virtual mining虚拟挖矿。

采用权益证明的加密货币一般会预留一部分货币给开发者,也会出售一部分货币用作货币的开发资金,将来按照权益证明的共识机制,每个人是按照资金的多少来进行投票。

 

这种方式的好处就是减少了挖矿的能耗,减少了碳排放,基于工作量证明的共识系统从某种意义来说维护区块链安全的资源不是一个闭环(越挖矿,越安全)。虽然 某种虚拟货币的总市值很高,但是跟某些组织相比,虚拟货币的总市值是微乎其微的,所以要是某个组织恶意发动攻击,只需要足够的资金来购买挖矿设备,然后聚集到一半以上的算力就可以,这个例子是说现实世界对这种区块链系统仍具有威胁能力

像比特币这种比较主流的加密货币,抗攻击的能力是比较强的,因为系统的总算力是比较大的。但是对于AltCoin这种小的币种,遇到这种攻击将是毁灭性的,很可能这个币的价值会直线下滑,这对于系统开发者和早期的挖矿者造成的损失将是灾难性的,一个专门的词就是infanticide把它扼杀在摇篮里。

那么我们采用权益证明的一个好处就是,无论某些组织再有钱,都不能通过外界的矿机等东西来威胁系统,只有通过获得更多的加密货币,才能对货币系统产生威胁,这就是我们说的基于工作量证明的共识系统从某种意义来说维护区块链安全的资源不是一个闭环(越挖矿,越安全),基于权益证明的货币系统是一个闭环,只能在系统内部发动攻击。而一旦有人通过大量法币来购买货币,会造成货币价格大涨,所以对于货币开发者来说这不一定是一个坏事。

有的加密采用的是混合模型,依旧会采用挖矿,但是挖矿的难度是和挖矿者持有的货币是相关的,持有的币越多,难度越小。

但是这样简单地设计是有一个问题,就是钱越多的人总能获得区块,富人越来越富,所以我们可以将比拼的钱进行一定时间内冻结,使得这笔钱不能参与下一次区块的发布权。这种做法有时候叫做proof of deposit

基于权益证明来设计问题将会遇到很多问题,早期遇到的一个问题是两边**的问题nothing at stake

21 以太坊权益证明

正常我们挖矿,将沿着最长合法链继续挖矿,但是要是使用权益证明的话(要使用资金进行**对比谁得到下一个区块的发布权),用户就可以在两条链上都进行**,因为在下面一条链上**并不会影响用户在上面一条链上**nothing at stake。这就是早期基于权益证明的共识机制遇到的一个问题

以太坊中准备采用的权益证明协议叫做Casper the friendly finality gadget(FFG),他在过度阶段也是要和工作量证明混合使用,为工作量证明提供finality,这个finality是一个最终的状态,包含在finality中的交易不会被取消,三单纯基于工作量证明,就是基于挖矿的交易是有可能是被回滚的。所以以太坊协议引入了一个概念validator叫做验证者,要想成为validator需要交纳一定的以太币成为保证金,validator的职责就是推动这个系统达成共识,投票决定那条链是最长合法链,投票的权重就是保证金的大小,混用的时候还是有人挖矿的,挖矿的时候每挖出一百个区块就作为一个epoch然后要进行一个投票决定他能不能成为finality,

two-phase commit

  • prepare message 第一轮投票

  • commit message 第二轮投票

  • 在casper协议中规定每一轮投票中,都要经过2/3以上的验证者才能通过。实际的系统中不再区分这两个message,而且把这个epoch变成了每50个区块生成一个epoch,然后每个epoch只需要一次投票就可以,对于下一个epoch,前面的epoch是它的prepare message 第一轮投票

这是原始的版本

21 以太坊权益证明

改良后的版本

21 以太坊权益证明

 

验证者在投票的过程中要是

  1. 不投票:扣掉部分保证金

  2. 乱投票:比如有两边**的行为,直接没收全部保证金

每一个验证者都有一定的任期,任期之后就要有一定时间的等待期,这时可能其他节点可能会对这个验证者进行一个检举、揭发,假如没有问题,就会回退给验证者保证金和一定金额的奖励。这就是casper协议的一个过程。

 

casper协议可以给挖矿挖出的区块链的某种状态做一个检查点:一个check point,那么这个check point是不是绝对安全的?通过这个验证者达成的finality有没有可能被推翻?

我们之前说的包含在finality中的交易是不会被推翻的,这句话是不是太绝对了。

假如某个矿工要推翻一个finality是不可能的,为什么?

因为finality 是验证者投票投出来的,单纯是有恶意的矿工,无论算力有多强,假如没有验证者作为同伙,finality 是不可能被推翻的。

那么什么样的情况会造成finality被攻击成功的情况?

一定是有大量的验证者给两边的分叉都进行**的情况下,因为casper协议要求每轮投票要求有2/3以上的验证者支持才能通过,如果出现这种情况,那么至少有1/3的验证者两边都投票了,这一旦发现这1/3的验证者的保证金将会被没收。

其实这里我不是很明白,那么至少有1/3的验证者两边都投票了是什么意思?是不是剩下不到2/3的验证者即使投票给了一个分支,这个finality也不会被接受,即推翻。的意思。

 

总结

我们可以看到,基于权益证明的共识机制与基于工作量的共识机制是完全不一样的。以太坊的设想是逐步将基于工作量证明过渡到基于权益证明,随着时间的推移,挖矿得到的奖励是越来越少的,权益得到的奖励是越来越多的,最后达到完全不用挖矿的境界。

为什么以太坊一开始不用权益证明呢?

  1. 权益证明不是很成熟,工作量证明是很成熟的(比特币和以太坊的挖矿算法都经历了bug bounty的检验,没有人发现什么漏洞)很多人认为权益证明是未来发展的方向,但是目前主流的加密货币用的还是工作量证明,比如以太坊现在还是用的工作量证明,上个月有个叫EOS的加密货币上线了,用的就是权益证明的方式挖矿,但是用的不是casper协议,用的是DPOS协议,

什么是DPOS(转载https://www.jianshu.com/p/b3302e107a77)?

阿呆:小星,你知道DPOS是什么吗?

小星:区块链里面一个重要的东西叫共识算法,DPOS是其中的一种,DPOS(Delegated Proof of Stake)委托权益证明。

阿呆:委托权益证明,似懂非懂。

小星:委托权益证明,其实类似于公司董事会制度,在DPOS共识制度下,会选出一定数量的代表,来负责生产区块。这些代表是怎么被选出来的呢?是每一位持币人,根据手中的持有的代币投票选出来的。

阿呆:被选出来的代表为啥要做生产区块这件事情呢?不做会怎么样?

小星:被选出来的代表管他叫节点,这些节点生产区块,是可以获得区块中的代币奖励,就如公司董事会成员干活也是有收益,不是白白干活的。如果节点不履行它生产区块的职责,那么它就会被干掉,换其他人上,有利益在,就会有人来做,排队等着上的人很多。

阿呆:嗯,用区块奖励来激励节点好好生产区块,有经济刺激,干活才更得劲。那DPOS和POW、POS它们各自的特点是什么呢?

小星:三者各自特点:

POW(工作量证明)特点:安全、去中心化,但速度低,共识时间长,耗能大; POS(权益证明)特点:共识时间短,耗能小; DPOS(委托权益证明)特点:出块时间很短,效率非常高。

小星:DPOS是在POW和POS的基础上发展起来的,其解决POW能耗高,避免POS权益分配下可能的“信任天平”偏颇,但DPOS相对不够去中心化,但去中心化只是手段,不是目的。

阿呆:功能说的再好,DPOS在哪些应用吗?

小星:DPOS在比特股和Steem上已运行多年,交易速度达到每秒上千笔,出块时间短,1.5s;在EOS的测试网络上,出块时间更短0.5s。

阿呆:嗯,有案例更有说服力。刚才把DPOS类比公司董事会制度,公司的董事有很多事情要去做,在DPOS共识下,选出来的节点,除了生产区块,还要干嘛?

小星:DPOS算法要求系统做三件事:

(1)随机制定生产者的顺序; (2)不按顺序生产区块无效; (3)一个周期洗牌一次,打乱原有顺序。

阿呆:嗯,都是生产区块的这些事,刚聊了很多DPOS的点,如类似公司董事会制度、DPOS特点等,那么DPOS这样设计,其背后的理性逻辑又是什么呢,为啥要这样设计?

小星:前说到DPOS比POW和POS在交易速度等方面有很多优势,这些设计背后逻辑简单说利益最大化、成本最小化,即:

  1. 持币人投票选举出块节点;

  2. 最大化持币人的盈利;

  3. 最小化维护网络安全的费用;

  4. 最大化网络的效能;

  5. 最小化运行网络的成本。

阿呆:嗯,利益最大化

作者:等风的猴子 链接:https://www.jianshu.com/p/b3302e107a77 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

现在对于权益证明的共识机制还处于探索阶段。

 

老师在最后说道,利用工作量证明机制消耗多余电能变成有价值的货币的方式也是有一定的可取之处的,不能一棒槌打死。

 

 

 

 

 

 

 

相关文章:

  • 2021-12-05
  • 2021-10-27
  • 2022-01-08
  • 2021-10-11
  • 2021-07-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-10-14
  • 2021-10-20
  • 2021-11-17
  • 2021-04-21
  • 2021-11-14
  • 2021-12-05
相关资源
相似解决方案