当前位置:首页 > 区块链新闻 > 正文

浅析以太坊GHOST协议

来源: 互联网时间:2019-06-11 18:13:38

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

免责声明:

1.本文内容综合整理自互联网,观点仅代表作者本人,不代表本站立场。

2.资讯内容不构成投资建议,投资者应独立决策并自行承担风险。