GHOST V.S. GHAST

GHOST 协议全称 Greedy Heaviest-Observed Sub-Tree,源自DAGLabs, 是最早(2013)提出用区块树(BlockTree)解决区块链扩容问题的协议,GHOST协议开创了从链式区块链延伸到图式区块链的先河,是具有里程碑式的意义。

红色区块代表孤块,会被抛弃掉

每个区块只有一个父区块; 绿色空心区块代表区块会进账本,但是交易会被抛弃

每个区块会有多个父亲; 区块都是实心的,代表交易都会打进账本

GHOST 改进了比特币最长链共识,率先提出了最重树共识,这样可以在出块率非常高时,账本分叉数量很多时,仍然能够保持跟比特币相当的安全性,从而实现高确认速度和高吞吐量。

以太坊的共识协议就是一个修改版的GHOST协议,所以以太能将出块周期缩短到15秒而不会牺牲安全性。从以太中存在叔块(uncle)也可以看出,此时的账本因为出块率增大而产生了分叉,已经不是严格意义的链式账本,而是图式账本,账本的形态更像一棵树。

值得注意的是GHOST协议只有最重链,也称主链(类似树的主干),才会打包交易,其他区块虽然会打包进账本,以提高账本的安全性,但是里面的交易会被抛弃,仍然存在着大量的浪费。因此,DAGLabs后续推出了另一个里程碑式的协议Inclusive,该协议是第一个真正意义的BlockDAG协议, 奠定了后续BlockDAG协议族的基础。

Conflux是来自清华团队的最新研发的BlockDAG协议,Conflux协议大体的思路是可以理解为两次GHOST算法,第一次BlockDAG(区块图)转化成为BlockTree(区块树),第二次就直接是排序了。

来自:https://arxiv.org/pdf/1805.03870

由于Conflux协议深度依赖GHOST协议,自然也需要改进GHOST协议的不足,这也就是Conflux团队提出的GHAST协议,Greedy Heaviest-Adaptive Sub-Tree.

GHAST目前还在研发当中,细节较少,公开的资料只有Conflux团队接受媒体的采访, 我这里直接引用Conflux创始人龙凡先生的解读。

Blockquote
说到 GHAST 算法,我们可以先看 GHOST 算法,GHOST 算法有一个很大的缺陷:当整个网络的出块速度非常非常快的时候,攻击者可以进行 liveness 攻击。liveness 攻击的意思是攻击者不以双花为目的,而是以让这个网络没有办法确认交易为目的。

Blockquote
事实上 GHAST 是给每个区块打了权重,当攻击者在做双花攻击的时候,这个树图的拓扑结构会变得非常奇怪,因为你需要两棵子树都非常大,并且它们甚至是一样重。

更多解读可以参考,
https://www.chainnews.com/articles/573805537438.htm

由于采访没有提实现的方案,我这就不过度解读了,可以确定的是GHAST协议是通过给每个区块加权,从而检测网络在承受存活攻击(liveness attack)时账本的特征来抵御攻击。更多细节,等GHAST协议有更多的公开的资料后会跟大家分享。

2 Likes

很专业哦

觉得這个论坛适合学习

说对了哈哈哈

最长链,,,侧重链,,,网状链,,,演化过程,都是解决孤块问题,提升效率