深入理解以太坊系列(7): 幽灵协议GHOST与叔区块

“幽灵“协议(”Greedy Heaviest Observed Subtree” (GHOST) protocol)是由Yonatan Sompolinsky 和 Aviv Zohar在2013年12月引入的创新。幽灵协议提出的动机是在确认时间较为快速的区块链中由于生成区块的高作废率而受到安全性降低的困扰。以太坊跟幽灵协议有什么关系?叔区块又是什么概念?

以太坊在设计时考虑到了区块链中的两个问题:

1. 幽灵协议中提到的在区块高作废率:区块需要花一定时间才能扩散至全网,如果矿工A挖出了一个区块然后矿工B碰巧在A的区块扩散至B之前挖出了另外一个区块,矿工B的区块就会作废且没有对网络安全作出任何贡献。

2. 中心化趋势:如果A是一个拥有全网30%算力的矿池而B拥有10%的算力,A将面临70%的时间都在产生作废区块的风险而B在90%的时间里都在产生作废区块。如果作废率高,A将简单地因为更高的算力份额而更有效率。因此,区块产生速度快的区块链很可能导致一个矿池拥有实际上能够控制挖矿过程的算力份额。

以太坊解决这两个问题的方法便是推出了叔区块的概念。叔区块是当前区块祖区块(爷爷辈,往前两个区块)及其之前祖先区块的废弃后代区块。这个祖先区块最远可以到第七代。

以太坊采用幽灵协议解决了降低网络安全性的问题。在计算哪条链“最长”的时候把作废区块也包含进来,也就是说,不仅一个区块的父区块和更早的祖先块,连叔区块也被加进来以计算哪一个区块拥有支持其的最大工作量证明。

以太坊采用经济激励措施来解决中心化倾向问题。以太坊付给以“叔区块”身份为新区块确认作出贡献的作废区块87.5%的奖励,把它们纳入计算的“侄子区块”将获得奖励的12.5%。不过,交易费用不奖励给叔区块。