区块链的一个基本属性是“最终确定性(finality)”,它的大概意思是经过一定时间后,被打包到权威链的交易是极其困难,甚至几乎不可能回滚的。Eth2在协议上有一个“明确的”机制是关于链的最终确定性的,它区别于现在使用PoW机制的比特币和以太坊上的“概率性”最终确定性。
在工作量证明中,共识从根本上说是一场全球竞赛,其中第一个挖出有效区块的幸运矿工会获胜——比赛方式是找出计算难度问题的数学方案。因此,出块时间是概率性的。越多的区块被打包到区块链上,回滚就越难,因为每个区块都代表了构建区块所需的电力和算力的累积总和。由于防止攻击者能够回滚今天的比特币和以太坊区块链是有切实的物理保证的,我们可以把超过一定时间的交易看作“被最终敲定了(finalized)”。
然而,权益证明机制的以太坊不是基于概率性最终敲定来运作的。相反,它把最终确定在协议上作了明确规定——“如果超过三分之二的验证者对区块链头正确投票了,经过一段很长的时间后,我们就认为这个特定检查点以前的所有交易都被最终敲定了”。最终确定性是明确的,而遵循协议的节点将无法回滚最终敲定的检查点(checkpoint),因为不管共识权重如何,这在根本上是不可能的。
以太坊伦敦升级在测试网上启动 一天内在Eth2上质押了10万以太坊:根据EIP-1559跟踪网站WatchtheBurn,自伦敦部署以来的一天内,Ropsten上已经烧毁了大约88,500个测试网ETH,名义价值1.776亿美元。加密数据聚合器CryptoQuant发现,大约在Eth2推出的同时,100,000以太币已存入Eth2的Staking合约,价值约2亿美元。CryptoQuant还指出,目前超过5%的ETH供应被锁定在价值约117.5亿美元的质押中。[2021/6/25 0:05:41]
在Eth2里,最终确定性的机制是什么样的?
Eth2是一个同步协议,它用“检查点"机制进行记账。本质上是一个验证者集被分配到一个有32个slot?的窗口,履行出块或对区块投票的职责。其中,每个slot是12秒,而32个slot构成一个epoch。在一个epoch里,有32个验证者被分配到担当区块提议者(blockproposer),其他验证者都担当证明者(attester),他们要给每个epoch里被提议的区块投票。
NBA球星拉梅洛·鲍尔在Ether Cards平台发售NFT收藏品:6月5日,NBA球星拉梅洛·鲍尔(LameloBall)在EtherCards平台发售由职业运动员制作的动态NFT收藏品。购买此NFT有几率获得球星签名产品、价值5000美金的球赛门票等多种奖品。[2021/6/5 23:14:32]
每个slot里只会分到一个区块提议者,但会有多个“证明者”
例如,Alice在slot4被选为区块提议者,而Bob、James、Charlie和Susan都被选为证明者,这意味着他们都要对Alice提议的权威区块投票。
Eth2使用Casper权益证明共识,特别是其中的”确定性小工具(finalitygadget)"。Eth2最终敲定的过程定义如下:
1、如果在一个epoch里,大于2/3的验证者对区块链头正确投票,我们说最新的epoch被证成了(justified)。
IOHK旗下团队将在ETC会议上演示“检查点”解决方案:8月18日午间,Ethereum Classic官方发推称,IOHK的Grothendieck团队将于北京时间8月21日早间8点ETC核心开发者会议上,演示他们的“检查点”解决方案,模拟51%的攻击。(注:检查点方案由Cardano创始人提出,主要针对防止ETC再发生51%攻击。)今日早间消息,ETC官方表示,核心开发人员将在8月21日讨论挖矿算法改变、硬分叉提案等内容。[2020/8/18]
2、如果连续两个epoch被证成了,那么current_epoch-2(当前epoch-2)被认为被最终敲定了。
在正常的操作中,链的目的是一直做最终敲定。如果在被最终敲定的epoch后有超过4个epoch,那么所有验证者都会开始受到惩罚,以激励快速恢复敲定工作。
epoch末会发生什么?
在eth2的epoch末,状态转换函数执行重要的记账功能,以弄清楚在这个时间段共识层确切发生了什么,并为下一个epoch做准备。验证者在每个epoch都会被混洗,分配新的任务,除非出现链重组,否则我们可以提前两个epoch得知我们分配到的任务。
动态 | ETC将在ETH区块链上实现代币化:据trustnodes消息,以太坊经典(ETC)官方宣布,ETC很快将以一种叫做TETC的独特代币在以太坊区块链上实现代币化。托管人可以在ETC区块链上创建一个智能合约,可以在合约中锁定ETC,并在ETH区块链上创建了一个发币智能合约,然后在这个合约中“打印出”TETC。为了让ETH(ETC)区块链了解ETC(ETH)区块链上发生的变化,这个过程中采用了一种包含复杂加密经济学的权威证明(POA)。[2019/3/6]
在epoch过渡中,我们会统计出链头的所有票数。验证者使用“有效余额(effectivebalance)"投票,以gwei计价。在谈论eth2时,我们通常会提到验证者参与率,它的定义是在一个epoch里用于区块链头正确投票所质押的总gwei与所有活跃验证者所质押的总gwei的比值。
确定一个新被最终敲定的检查点意味着什么?
公告 | 火币合约将在ETH分叉前10分钟暂停ETH资金划转:据火币公告,火币合约将在ETH分叉前10分钟暂停ETH资金划转操作,待硬分叉升级完成后恢复。[2019/2/28]
在Eth2,确定一个最终敲定的检查点是非常重要的,因为协议里很多明确定义的东西都以它为界限。也就是,在检查点被最终敲定前,所有通过p2pgossipsub收到的信息都会被忽略和丢弃。此外,以下是在eth2一个新被最终敲定的检查点会发生的事:
所有从新被最终敲定的检查点之前传入gossipsub的信息都会被忽略
分叉选择规则的更新只认从最终敲定的检查点开始的投票。这意味着,遵循协议的节点是不可能对被最终敲定的检查点进行回滚的。
被最终敲定的检查点以前的存储数据是可以被修剪的,没有安全问题
激励与重组
协议奖励对维护我们所谓的”链的活性“有一个很强的激励机制。自从Eth2的主网在2020年12月1日被激活以来,该链一直具有完美的活性,特别是每个epoch都按预期被最终敲定。而链的参与率,即正在给区块链头正确投票所质押的ETH占所有活跃验证者质押量的百分比,一直保持在90%以上的高水平。
数据来源:https://beaconcha.in
除非大部分的质押者都离线了,或多人使用的客户端实现出现严重漏洞,否则激励机制会一直支持最终敲定current_epoch-2。鉴于在eth2里,epoch时长为6.4分钟,即12.8分钟前的epoch应该总是被最终敲定的。
关于MEV,我们当然还没在区块链里看到出现超过12.8分钟的重组。那么,我们是否可能通过信标链本身的数据获得交易最终确定性的概率估值呢?
MEV
Eth2里的每个区块都包含关于共识的元数据,即每个区块都包含如下信息:
加入信标链的新验证者(eth1的验证者存款)
证明(attenstation),即其他验证者对链上先前区块的投票
验证者想要退出其职责的证明
验证者被罚没和被强制逐出的证明
对于我们的目的来说,最重要的就是证明。由于每个slot都会出块,时间是刚好12秒。对于我们收到的每个区块,我们都可以计算目前为止对区块链头正确投票的验证者所质押的ETH占所有活跃验证者所质押的ETH的百分比。例如,如果在一个epoch结束前我们已经收到超过前2/3的投票了,且上一个epoch已经有超过2/3的验证者正确投票了,我们能相当确定链的最终确定性很快能达成。也就是说,我们可以在最终确定性达成的前6.4分钟就对这个结果很有信心了。
尽管这种”信心“是很有用的,但如果在权威链的分叉上有足够多的投票权,1个甚至2个epoch内的重组仍然是可能的。就我们观察到的情况,Eth2上有大量投票权的小型分叉是很罕见的,并在当前的链上从未发生过。
关于MEV的问题:我们要多久才能知道最终确定性,使它对MEV-geth起作用呢?
对最终确定性的哲学讨论
节点可以违反协议吗?
最终确定性,说到底,是由对协议规则的社会共识执行的一个抽象概念。有一个诚实假设是,节点确实在遵循协议。这意味着即使一些行为不当的节点尝试修改它们的客户端软件,以忽略关于最终确定性的规则,也不会影响整个网络,因为所有其他节点都会遵循协议。
而决定重组的分叉选择是从被最新最终敲定的epoch开始的,除非绝大多数的节点都违反协议,否则重组是不可能发生的。
来源|?@prysmaticlabs
作者|RaulJordan
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。