区块链学习笔记17——GHOST协议

十七、GHOST协议

以太坊中的共识机制GHOST协议,以太坊把出块时间降到了十几秒,这对于提高系统的throughput(吞吐量)和降低反应时间来说,都是很有帮助的,跟比特币的10分钟的出块时间相比,以太坊的出块速度相当于提高到了40倍,但是这样大幅度降低出块时间之后也带来一些新的问题,前面讲过比特币和以太坊都是运行在应用层的共识协议,底层是一个P2P的Overlay Network,这个Overlay Network本身传输的时间是比较长的,因为他的拓扑协议做flooding的时候没有考虑实际的拓扑结构,就带来一个问题,发布一个区块的时候,这个区块在网络上传到其他节点可能需要十几秒的时间,对于比特币来说,10分钟的出块时间相当于600秒,足够让新发布的区块传播到网上的其他节点,即使这样,但因为挖矿是个概率的过程,仍然有可能有两个矿工同时获得记账权,同时发布区块,会带来临时性的分叉,对于以太坊来说,这种临时性的分叉会变成常态,而且分叉的数目也会变得更多,因为十几秒的出块时间很有可能别的节点没有来得及收到发布的区块,还是沿着原来的区块链往下挖,可能等到收到发布的区块的时候,他自己已经挖到了区块,那对于共识协议来说,有什么挑战呢?比特币只有在最长合法链上的那些区块,里面所包含的出块奖励才是真正有用的,其他的一些分叉的链上的出块奖励其实最后是作废的,可以画一个例子

比如说下图是个区块链,分了三个叉,差不多是同一个时间取得了记账权,最后有一个会胜出成为最长合法链,比如说中间这个,那么上面和下面的这个区块叫做orphan block,stale block,就是挖到这个区块的矿工在里面有一个铸币交易,能够得到一定数量的比特币,但这个实际上是没有用的,因为不在最长合法链上,所以得到的出块奖励最后等于作废了,对于比特币来说,因为出现这种临时性的分叉不是很多,所以这么规定还是可以接受的,但是对于以太坊也这样处理的话,那么意味着这个矿工挖到的区块有很大概率是白挖了,对于个体矿工特别明显,大型矿池会出现mining centralization(挖矿集中化),从过去的经验来看,大型矿池所在的分叉更有可能成为最长合法链,这就促使别的矿工沿着最长合法链继续挖,因为沿着别的链去挖的话,很有可能就白挖了,这样就使大型矿池出现恶性循环,越是大型矿池得到的收益越大,mining centralization更严重,有时候叫centralization bias,就中心化带来的不成比例的优势,如果以太坊按照比特币的共识机制就会有一定的问题

在这里插入图片描述

那怎么办呢?

以太坊中采用一个基于GHOST协议的共识机制,这个并不是以太坊发明的,在以太坊出现以前已经有GHOST协议了,以太坊对这个协议做一些修改

核心思想

挖到的矿发布一个区块,这个区块最后作废了,你挺伤心的,会给你一些安慰,一些奖励,这个时候也能得到一些出块奖励,作废的区块起了一个好听的名字叫做uncle block,因为相对于最长合法链的当前区块来说,是他的叔父区块,最长合法链的下一个区块在发布的时候可以把叔父区块包含进来,这样的话,叔父区块可以得到八分之七的出块奖励,以太坊的出块奖励,刚开始的时候是5个以太币,17年下半年的时候改成3个以太币,所以出块奖励是(7/8)*3个以太币,所以挖到矿最后虽然没有被认可但也可以得到一定的好处,那个包含叔父区块的区块可以得到额外的(1/32) *3个以太币的奖励,加起来一共可以得到((1/32) *3+3)个以太币的奖励,一个区块最多可以包括两个叔父区块,所以这个例子当中上下两个叔父区块都可以被包含进去,那

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值