浅析以太坊GHOST协议

区块链达人 百科
2019-05-28 14:14:10

  

GHOST全称为Greedy Heaviest-Observed Sub-Tree,即贪婪最重可观察子树协议。与Bitcoin中的最长链原则不同,以太坊使用GHOST协议,通过判断最重子树来决定主链。

算法描述

选择区块作为主链的算法
Input: Block tree T
1. set B ← Genesis Block
2. if ChildrenT (B) = ∅ then return(B) and exit
3. else update B ← argmax |subtreeT (C)|
C∈ChildrenT (B)
4. goto line 2
ChildrenT (B)  返回B的子块集合;subtreeT(C)返回以C为根树的重量
从创世块开始,将B初始化为genesis block;

 

判断B的子树是否为空集,为空表明无子块当前即为主链,则返回B块并退出;

否则更新B为具有最重子树的子块;

跳转到步骤2继续寻找主链的下一区块;

以太坊与比特币的主链选择

区块weight为该区块为树根下有效区块的数量(difficulty累加)
在上图可见,使用比特币中的最长链原则,0<-1B<-2D<-3F<-4C<-5B为最长主链;在以太坊中使用最重子树原则0<-1B<-2C<-3D<-4B为最重主链

 

 

叔块奖励

 

 

基本内容

1.主链区块获得基础奖励(3Eth)

2.一个区块最多引用两个叔块

3.包含一个叔块可以获得挖矿奖励的1/32

计算公式

((叔块高度+8-当前块的高度)/8 )*base reward
交易费用(transaction fee)不会分配给叔块,当前块高度与叔块高度相差为8(或以上)不能作为叔块,无奖励

 

 

GHOST优点

 

 

1.安全性独立于出块速度,为GHOST的扩容提供了保证(不会因间隔时间的减少而导致安全性降低,最高可达200tps)

2.解决孤块奖励问题,鼓励矿工参与出块

3.论证了盲目通过增加出块速率和区块大小,来提高TPS不可行

 

小结

ghost协议使用最重链原则,提高了系统安全性;

 

增加了对叔块对奖励,激励矿工参与;

但目前的tps仍然不高(10~20),需要其他扩容方案的参与;

 

参考链接:

http://www.jouypub.com/2018/9b19cff7135411bd37356e6c4f5f63b7/

https://github.com/nebulasio/consensus-survey/blob/master/ch/main.pdf


本文地址: https://www.xiguacaijing.com/news/baike/2019/7631.html
声明:本文经授权发布,除注明来源外,均为西瓜财经用户投稿,不代表西瓜财经立场。转载请注明:西瓜财经(xiguacaijing.com)
提醒:投资有风险,入市需谨慎。若内容涉及投资建议,仅供参考勿作为投资依据。谨防以“区块链”名义进行非法集资。
赞助商