以太坊GHOST协议
发布时间:2024-06-28 14:20:28
以太坊的GHOST协议,全称为“Greedy Heaviest Observed Subtree”,是一种用于区块链的共识协议。在比特币的区块链中,只有最长的区块链才会被接受,其他分支链会被抛弃。而GHOST协议则允许快速确认区块,提高区块链的安全性和效率。
太坊的GHOST协议是什么?
以太坊的GHOST协议,全称为“Greedy Heaviest Observed Subtree”,是一种用于区块链的共识协议。在比特币的区块链中,只有最长的区块链才会被接受,其他分支链会被抛弃。而GHOST协议则允许快速确认区块,提高区块链的安全性和效率。
GHOST协议通过考虑整个区块链中的所有分支来确定主链,而不仅仅是最长的链。当有多个分支存在时,GHOST会选择最重的子树作为主链,而不是单纯选择最长的链。这意味着即使某些区块不在最长链上,只要它们是从主链上直接分支出去的,也会被考虑在内,从而提高整个网络的安全性和速度。
GHOST协议的引入使得以太坊网络更加去中心化和安全。因为矿工有动力挖掘分支链上的区块,而不仅仅是主链上的区块,这样可以防止中心化并提高网络抵抗攻击的能力。同时,GHOST还能够缩短区块确认时间,提高交易速度,减少交易拥堵的可能性。
以太坊共识协议需要解决的问题
以太坊相比于比特币,大幅度提高了出块速度。这样提高出块速度后,临时性的分叉成为了常态,而且分叉数目也会更多。
比特币的共识协议中,只有在最长合法链上的区块得到的奖励才是真正有用的,其他分叉上的奖励其实最后是作废了,成为了orphan block(也称stale block) 。比特币因为出现分叉的不是很多,所以可以这么规定。
而对于以太坊,临时性分叉是常态。如果把分叉的区块作废,那么意味着矿工挖出来的区块很有可能是无用的。
另外,随着挖矿设备专业化、矿池化,矿池出块的速度要比个人挖矿的快的多,在矿池和个人同时挖出来区块出现分叉时,矿池继续扩展自己的链,那么个人挖出来的区块很可能成为不了最长合法链(而且矿池一般都是分布式的,所以在网络中传输也会比个人矿工更快),最后得到奖励的都是矿池。导致矿池得到的奖励超过自己本身算力在整个系统中的比例,越是大型的矿池得到的奖励就越大,最终出现centralization bias(中心化带来的不成比例的优势,例如拥有系统30%算力的矿池却得到了系统60%的奖励)
再者,各个矿池如果挖出的区块出现了分叉,矿池为了不让自己的区块作废,有可能不愿意去扩展最长合法链,而是继续扩展自己的分叉争取让自己成为最长合法链,也不利于分叉的合并。
以太坊的共识协议
以太坊中采用了基于GHOST协议的共识机制。
GHOST协议并不是以太坊发明的,在以太坊出现之前就有已经出现了,以太坊对这个协议做了一些修改。
以太坊出块奖励
在比特币系统中,存在出块奖励的减半机制。
在以太坊中,没有出块奖励减半,每个区块的出块奖励是指定好的:
在以太坊初期,一个区块的出块奖励是 5ETH
2017年10月的拜占庭升级,一个区块的出块奖励降到 3ETH
2019年3月的君士坦丁堡升级,一个区块的出块奖励降到 2ETH
uncle block
GHOST协议的核心是,即使自己挖的区块作废了,也能得到一些出块奖励。被分叉出去的区块,在比特币中成为了orphan block,而在以太坊中叫做 uncle block。
区块2虽然没有在最长合法链上,但是如果区块5的uncle block数组里包含了区块2,那么区块2也可以得到7/8的出块奖励。
而区块5,每包含一个uncle block,也可以额外得到1/32的出块奖励(一个区块最多可以包含2个uncle block)。
uncle block不止是叔父辈分
以下图为例存在以下可能性,分叉没有被区块5作为uncle block包含:
挖出区块2的矿池 和 挖出区块5的矿池是商业竞争关系。区块5故意不将区块2作为 uncle block包含进去
先挖出了区块5,后挖出了区块4。区块5因为不知道区块4的存在所以没有将区块4作为 uncle block包含进去
区块5只能包含2个uncle block,已经包含了区块2和区块4,没有办法再包含区块6。
为了解决以上问题,在GHOST协议中,没有被区块5包含进去的分叉,可以被区块5后面的其他区块继续包含。(即可以被孙子辈、曾孙子辈.....的后辈作为uncle block 包含进去)。如下图所示:
注意:虽然区块6成为了区块7的uncle block,但是因为区块6是区块7的爷爷辈的,所以其得到的以太币将不再是 7/8的出块奖励,而是进行了削减。
uncle block得到的以太币数量
一个区块包含的uncle block不止是叔父辈分,那么会带来以下一些问题:
区块包含的叔父区块特别的古早,查询验证起来需要向前寻找很久很久
随着系统内算力的提升,越往后的区块的挖矿难度越低。所以矿工可以在区块链最前面挖矿难度低的位置不断的挖叔父区块,挣取叔父区块收益,而不再继续扩展最长合法链
.
为了解决这些问题,以太坊规定,只有在7代以内的uncle block才有奖励。而且随着辈分差的越来越远,得到的奖励也越来越少。具体奖励如图:
其中:
区块10只要包含的有uncle block,不管是哪个辈分的,每包含一个都可以得到1/32的出块奖励
区块10的uncle block中如果包含了区块9A(真正直接叔父),区块9A可以得到7/8的出块奖励
区块10的uncle block中如果包含了区块8A,区块8A可以得到6/8的出块奖励
区块10的uncle block中如果包含了区块7A,区块7A可以得到5/8的出块奖励
区块10的uncle block中如果包含了区块6A,区块6A可以得到4/8的出块奖励
区块10的uncle block中如果包含了区块5A,区块5A可以得到3/8的出块奖励
区块10的uncle block中如果包含了区块4A,区块4A可以得到2/8的出块奖励
4再往前的区块3A即使在区块10的uncle block数组中,区块3A也得不到奖励
另外,接着叔父区块分叉扩展的“堂兄弟”区块9A1,也得不到奖励。
设计出块奖励递减的机制,有利于鼓励出现分叉时尽早的进行合并。
如果“堂兄弟”区块也可以得到出块奖励,那么“分叉攻击”的成本就会变得很低,即使攻击不成功也能拿到奖励。
不管是比特币的“最长合法链”机制,还是以太坊基于GHOST的协议,都是为了将临时性分叉尽快的合并。
uncle block无法得到汽油费
在比特币中,拥有记账权的节点除了可以得到静态奖励block reward之外,还可以得到这个区块里的动态奖励transaction fee。
以太坊中类似,除了静态奖励block reward之外,执行区块里的智能合约时还可以得到gas fee。
uncle block得到的7/8的奖励只是block reward的7/8,不包含gas fee。uncle block 无法得到自己区块里面的gas fee。
uncle block中的交易不再执行
uncle block虽然被包含到了最长合法链中,但是其内部的交易实际上不会被执行,只有最长合法链上的区块的交易才会被执行。
最长合法链上的区块在引入uncle block时,实际上根本不查看uncle block中的交易内容,连交易内容的合法性也不检查。只会检查uncle block的区块头(检查这个区块的挖矿难度的合法性)。
Etherscan查看以太坊当前状态
Etherscan网站介绍
通过 Etherscan网站查看以太坊的当前状态:最近两周的交易量、最新挖出的区块、最新的交易等
查看区块包含的uncle block奖励
查看被包含的uncle block列表:来源
当前一个区块的出块奖励为 2ETH,所以最近的uncle block的出块奖励为ETH,爷爷辈的uncle block的出块奖励为 ETH.
由图中可以看出,uncle block基本都在“叔叔辈”或“爷爷辈“就被合并了。
uncle block详情:
可以看到,该区块作为uncle block,得到的 Uncle Reward为 ETH
最长合法链上的区块包含uncle block得到的奖励:
可以看到在 Block Reward中,因为它包含了1个uncle block,而多出了 ETH。
最新专题
-
LEO币历史价格走势图
LeoToken是一种区块链项目,致力于构建一个去中心化的金融生态系统。LeoToken项目的主要目标是提供支付、借贷、稳定币等金融服务,通过智能合约和区块链技术,实现金融服务的自动化和跨境支付的便捷性。LeoToken所处的赛道是金融科技领域,该领域利用区块链技术和数字货币创新金融服务模式,颠覆传统金融体系。通过区块链的去中心化特性和智能合约的自动化执行,LeoToken项目可以提供更高效、更安全的金融服务,同时降低成本和提升用户体验。本专题带您回顾LEO币历史价格走势图与LEO币历史最高价最低价,希望对您带来帮助。
-
LINK币历史价格走势图
Chainlink是一个区块链项目,旨在连接区块链智能合约与外部数据源和服务。它通过引入预言机(Oracle)的概念来解决智能合约无法直接访问外部数据的问题。预言机充当了区块链与外部世界沟通的桥梁,将外部数据传输到区块链上,为智能合约提供实时和准确的信息。Chainlink的预言机可以连接各种数据源,包括互联网API、传感器数据、天气信息等。通过这种方式,智能合约可以访问并利用这些外部数据,从而扩展了区块链应用的可能性。例如,基于天气数据的保险产品、基于运输数据的智能合约等都可以通过Chainlink的预言机实现。本期专题带您回顾LINK币历史价格走势图与LINK历史最高价最低价,希望对你带来帮助。
-
DOT币历史价格走势图
波卡(Polkadot)是一个由以太坊联合创始人之一加文·伍德(Gavin Wood)创建的区块链项目。波卡的目标是构建一个多链架构的区块链网络,旨在解决现有区块链网络的扩展性、互操作性和治理性等问题。波卡引入了一种创新的多链架构,通过主网络(Relay Chain)连接多条平行链(Parachains),每条平行链可以根据自身需求进行定制化,从而实现各种不同的功能和性能。这种架构有效地提高了整个网络的扩展性,使得系统能够更好地处理大量交易和数据。本期专题带大家回顾波卡DOT币历史价格走势图与DOT币历史最高价最低价,希望对您有帮助。
-
BCH币历史价格走势图
Bitcoin Cash (BCH)是比特币的一个硬分叉项目,旨在解决比特币网络拥堵和交易费用高涨的问题。它于2017年8月从比特币区块链中分叉出来,其首要目标是提高比特币的吞吐量,降低交易成本,并加速交易确认时间。Bitcoin Cash的支持者认为,通过增加区块大小限制,网络将能够处理更多交易,并提高整体的可扩展性。本文为您带来BCH币历史行情价格走势图以及BCH币历史最高价最低价,希望对您有所帮助。
-
AVAX币历史价格走势图
Avalanche是一个开源的区块链平台,旨在解决现有区块链网络中的可伸缩性、安全性和去中心化之间的平衡问题。其采用了一种名为Avalanche Consensus的共识算法,该算法被认为是一种快速、高效、安全且具有高度去中心化的共识协议。本专题主要介绍AVAX币历年来的价格行情(最高价,最低价)及AVAX币历史行情价格走势图。
-
OKB币历史价格走势图
OKB币是OKEx交易所发行的代币,而OKEx是全球知名的加密货币交易平台。OKB币是基于以太坊区块链发行的代币,具有类似于数字货币的特性,可以在OKEx平台上用于支付交易手续费、参与平台治理和其他用途。OKB币在OKEx生态系统中扮演着重要的角色,拥有一定的使用场景和功能。
-
BTG币最新价格,BTG币最新消息
BTG全称BitcoinGold,也有人称之为BitcoinGPU,起源是一个由开发者组织发起的一个反对segwit2x的活动:“NO2X”。 BTG是对比特币区块链进行硬分叉得到的一种新的数字货币,其主要特点为: 类似于Bitcoin Cash,BTG也会添加SIGHASH_FORKED(一种硬分叉后的安全机制)。
-
ROSE币最新价格,ROSE币最新消息
Oasis Labs借助区块链技术构建的新型云计算平台不仅具备了可扩展性,还解决了传统云计算平台存在的隐私保护问题。通过实现分布式架构和数据加密,Oasis Labs为用户提供了更加安全和可靠的云计算服务,助力用户更好地管理和保护自己的数据。随着区块链技术不断发展和完善,相信Oasis Labs的新型云计算平台将在未来得到更广泛的应用和认可。