GHOST 与分叉选择 | 盘他财讯
  1. 首页
  2. 文章资讯

GHOST 与分叉选择

Eth2 使用 Greedy Heaviest Observed Subtree (GHOST) 算法作为其分叉选择规则。在正常出块过程中出现分叉时,GHOST 规则会选择得到最多投票的分叉作为主链(协议会把分叉区块及其子孙区块所得票数加总起来比较)。

换句话来说,每当出现分叉,GHOST 都会选择得到各验证者最新消息支持更多的区块子树(即,以验证者最新发出的投票消息确定 TA 支持哪一边,然后选出得到更多验证者支持的区块及其子孙)(译者注:之所以叫 “子树”,是因为分叉中可能还有分叉,形象上更像树枝而不是链)。算法会重复运行,直到找出一个没有子孙的区块(作为区块链的顶端、最新区块)。

与最长链规则相比,GHOST 可以在网络通信延迟较高时降低攻击的破坏力,同时最小化重新确定主链时影响的区块链深度(即重组的链深度)。这是因为,尽管一个攻击者可以在自己所在的分叉上更高效地出块从而制造出更长的链,但 GHOST 会选择另一个分叉,因为那条分叉所得的总票数更多。

GHOST 与分叉选择

实际上,Eth2 使用了 GHOST 算法的一个变种,叫 “最新消息驱动型 GHOST”(LMD-GHOST),以适应 PoS 的特点。LMD-GHOST 背后的理念是,在计算链顶端时,只考虑每一个验证者 最新 发出的投票,完全不考虑它们以往作出的投票。这就大幅降低了运行 GHOST 算法的计算开销,因为在选择分叉时所需考虑的分叉数量一定不会超过验证者的数量(用大 O 表示法来说就是 O(v) )。

GHOST 规则下,验证者/矿工 总是可以尝试添加新的区块到区块链上(活性),而且可以在区块链上的任何一处尝试出块(异步性)。因为它能满足活性和完全异步性,根据好朋友 FLP 定理,我们知道它不可能达成安全性。缺乏安全性的表现形式是,一条区块链可以突然发生任意深度的回滚。显然,这种事情是不可接受的,而 Eth1 区块链的处理办法是,让用户自己来假设矿工的区块需要多长时间才能传遍全网,这就是为什么我们发起的交易要等待一段时间(X 个区块)的确认。Eth2 则是另辟蹊径。

原创文章,作者:盘他财讯 Shining,如若转载,请注明出处:https://www.pantacx.com/archives/678

盘他区块链作为区块链信息平台,本站所提供的资讯信息不代表任何投资暗示,本站所发布文章仅代表个人观点,与盘他财讯官方立场无关。鉴于中国尚未出台数字资产相关政策及法规,请中国大陆用户谨慎进行数字货币投资。

发表评论

邮箱地址不会被公开。

联系我们

17606005547

邮件:184116859@qq.com

工作时间:周一至周五,9:00-18:00,节假日休息

QR code