以太坊 2.0 的上线将成为加密社区的重大里程碑事件,一定程度上会决定区块链行业的发展走向,其中也将诞生许多参与机会,对整个加密生态的影响非常巨大。
本文将试图从参与者的角度理解以太坊 2.0 的一些基本框架,以及展望一下随之而来的市场机会。
以太坊的发展阶段分成四个部分,分别是:
Frontier 前沿-2015 年 7 月上线;
Homestead 家园-2016 年 3 月上线;
Metropolis 大都会-第一阶段拜占庭 2017 年 10 月上线,第二阶段君士坦丁堡 2019 年 2 月;
Serenity 宁静–预计 2020 年底上线。
以太坊的主网第一阶段上线时,各方面功能都不完备,所以每一个阶段的发展都试图解决某一些问题,如可用性、性能提升,图形界面优化等。前三个阶段均使用 PoW 型共识,而到了 Serenity 宁静阶段,将转为 PoS 型共识。Serenity 宁静阶段近两年来被业内称为以太坊 2.0,代表了一次非常重大的升级。
以太坊 2.0 的升级和前几次的升级最大的不同,是在于这次升级不是一次传统意义上的硬分叉,而是从 ETHer 从 1.0 链向 2.0 链的迁移开始。用户迁移是自愿的,所以会同时存在两条链,一个是 PoS 的 Beacon 链,一个就是现在这条 ETH1.0 链。根据路线图,两条链将分别继续开发,然后会最终合二为一,是一种巧妙也是比较现实的方法(也是考虑到 ETH1.0 巨大生态的可持续性的无奈之举)。
Beacon 链主要的是完成 PoS 和分片的实现,解决扩展问题,1.0 链要继续进化到 1.x, 到完成无状态以太坊的实现,解决状态爆炸问题。最终,是为了以太坊实现扩展性,如 Vitalik 所说,ETH2.0 is all about scaling。
Consensys 描述的 ETH2.0 的三个阶段:
ETH1.0 的留存目的之一继续作为当前以太坊生态的基础链继续存在。2.0 的升级过程中首要考虑的因素是,目前还有大量的 Dapp 在 1.0 链上,还有大量的开发者围绕着 1.0 进行各类产品 / 优化 / 底层 / 扩容的研究和开发。
而 2.0 的 Beacon 链在一开始是没有办法进行 Ether 转账的,转账只能发生在分片链上,而分片在 2.0 的 Phase1 才可以实现,在 Phase2 上才会重启智能合约,所以这些智能合约只能在 Phase2 阶段迁移过来。因此 1.0 也是保证以太坊目前的生态发展不受影响。
另一方面,1.0 将会继续进化到 1.x,这样以太坊的两条链在分别完成自己的任务之后,将开始合并。所以完整的 ETH2.0,既包括了宁静阶段的三个 Phase,也包括了当前 ETH1.x 的研发结果,直至合二为一。
目前的方案是,ETH1.x 作为 2.0 的一个分片链而被合并,状态则完全迁移到 2.0 上,这样现在的生态可以不受影响的直接迁移。
以太坊使用的是 MPT ( Merkle Patricia Trie)数据结构,但是随着区块的增加,其次存储数据量也在不断增加,以后势必造成状态爆炸的状态。
每一笔新的交易,都需要去遍历一遍 MPT 树,这对于扩展性来讲负担较重。所以无状态的概念被提了出来,就是当客户端节点可以不保存状态,但是仍然可以验证交易。而之前的状态通过状态见证者就可以得到实现。
所以在 1.x,将会出现有两类重要角色,一类是区块见证者(block proposer),包含了交易信息,和之前交易需要访问的所有状态和见证信息。另一类是状态见证者(state provider),保存了所有之前状态的信息,用以提供交易的验证。
新的角色需要新的激励,以太坊基金会研究员 Sam Wilson 及 Ansgar Dietrichs 一起探讨了状态见证者的三种激励模型,还比较早期,这里把三类模式的探讨列在此处:
除了无状态以太坊,开发者也讨论过状态租金的模式,以限制过于庞大的状态增长,但是开发者也讨论过状态租金的模式,但可能对现有的智能合约和 Dapp 影响较大(不交租金将导致合约停用),需要硬分叉实现,会引发较大争议,所以目前对状态租金的研究已经搁置,资源导向了还是无状态或者半无状态的开发。
简要而言,无状态以太坊的研究不仅是 1.x 的问题,最后也会变成以太坊 2.0 的的通用模式,以太坊基金会就认为未来以太坊 2.0 的分片链一定是无状态的。
以太坊 2.0 有四个需要解决的问题:分叉选择、最终性、分片、验证者责任。并分别用不同的技术和制度手段去实现。
以太坊 2.0 使用 LMD GHOST (「Latest Message Driven Greedy Heaviest-Observed Sub-Tree」) 作为分叉选择。这里面包含了两个协议:LMD 和 Ghost:
Ghost 是一个在 PoW 链上就非常应用成熟的协议,是一种最长链的原则,和 BTC 上的最长链原则相比,Ghost 选择子树最多的协议,所以最长的链未必是 Ghost 所选的链。相比最长链原则,Ghost 原则可以做到:1 收敛;2 抗 51% 攻击;3 TPS 和最长链差不多,但是安全性没有下降。Ghost 协议也是目前以太坊 1.0 所使用的协议。
LMD 是在 2.0 新加入的分叉原则,和 Ghost 一起构成了 LMD GHOST。LMD 就是指最新的消息。由于在 2.0 中采用 PoS 加入了验证者的角色,最新的消息就是指更多验证者的证明,就是在 Ghost 原则里,再加入更多验证者的证明 (attestation),这就使得最长的链变成权威链(canonical chain),根据 Casper 协议拥有最终确定性。
以太坊 2.0 的最终性由 Casper 协议来解决。
PoS 类型的共识有三类:中本聪类型的共识、PBFT 基础的共识(Tendermint,Casper FFG)和以链为基础的共识 (Casper CBC)。但是只有后两种可以达到最终性。
所谓最终性就是当一个区块被确认过以后,就基本不会被逆转。而中本聪类的共识,是依靠概率去「确定」最终性的,就是还可以被小概率事件所推翻。而 PBFT 类或者 CBC 类的最终性,即是 100% 概率的最终性,除非 1/4 (CBC)或者 1/3 (PBFT)以上的验证者站出来去反对,才可以翻转这个结果。
Casper FFG 对 PBFT 进行了改良,继承了 PBFT 的优点,并针对 PBFT 不可抵抗共谋进行了设计,并加入了抽象的共识机制、抗长程攻击、灾难性崩溃等机制的设计,并开始整合分片方案,成为 ETH2.0 phase0 阶段的共识机制。
Phase0 会开始采用一个修改后的 FFG,最终在 Phase2 或以后部分完成 CBC 的转换,CBC 拥有更高的安全性和理论性质,但复杂度和效率较低,实现起来难度大。
为什么要分片?共识协议改变成 PoS 是对扩展性是没有提升的,扩展性依靠的是分片。分片是计算机术语,数据库的分片已经久已存在。分片的难点在于维护安全性,因为一旦分片,每个分片的安全性就要自己维护。
2.0 的主要做法是,通过洗牌 Shuffle,通过伪随机来选择一批验证者,随机给分片链进行投票。如果没有随机,那可能大量的恶意验证者被分配的到一个随机验证委员会,这样通过洗牌,可以确定的是即便有 1/3 恶意攻击者存在的情况下,对分片链的攻击成功概率仍然很低。
除了分片以外,Layer2 一直也是扩展的主要途径。2.0 下 Layer2 仍然必要。目前来看 2.0 下若分片可以顺利实施,则 Layer2 的必要性可能不大。但关键在于分片实现的时间和稳定性。
Vitalik 自己都对以 rollup 为代表的 Layer2 的方案都很积极,分片的实现还需要好几年,目前 Layer2 就可以直接在 1.0 上使用,那扩容在今后几年都需要依靠 Layer2,所以这是非常必要的一个方向。即便 2.0 分片实现,Layer2 变得可能没有那么必须,但仍是可选方案,彼时其相比分片将非常成熟。
验证者 validator 在 Phase 0 阶段有三项任务:
在每一个 epoch 验证 attesting 信标链;
收集同一委员会验证者证言 attestations;
被随机选入验证者队伍后,对信标链上出块。
以太坊里的时间间隔有两个单位:一个 slot 为 12 秒,一个 epoch 为 32 个 slot=6.4 分钟。1 个 epoch 中,验证者以验证者委员会的方式去进行出块,每一个验证者委员会将以委任一个 slot。
委员会里面的验证者验证信标链的链头并进行广播。出块者 proposer 将从委员会中随机选出。被随机选上的验证者将负责出块并获得奖励,若是违反了出块规则(如二次投票或者循环投票),或者不在线,则会被罚没 slashing。
关于 slashing 的讨论我们放在下一部分。
以太坊 2.0 对于参与者来说最重要的特性就是可以进行 staking 了,而且可以从 Phase 0 就开始,这其中涉及质押回报、长期锁仓、经济奖惩等诸多问题,本部分尝试就重要方面进行讨论和解答。
就 32 个 Ether 就可以迁移到 Beacon chain 这个限制,目前已经有接近 11.7 万个超过 32 个 Ether 的地址。虽然数量一直在增加,但是从斜率上看,增加的速度已经维持了 2 年没有什么变化,而不是因为近期以太坊 2.0 上线的消息。
因为转移是自愿的,用户无非就是考虑几个事情:
锁仓收益率;
操作难度(奖惩机制);
流动性风险;
机会风险。
锁仓收益率并不完全确定,而是根据参与人数量最终确定,Vitalik 给过一个锁仓收益率的测算,大概如下:
如果是最低限度的人参与质押,即刚刚好 524,288 个 Ether (或持有至少 32 个 Ether 的 16,384 个账户)参与抵押,那收益率将非常高。但这似乎很难做到的,如上所示超过 32Ether 的地址已经多达 11.7 万个,仅这样计算,就高达 3,740,000 个 ether 要进行抵押。
补充:以太坊 2.0 的 Phase1 则需要至少 262,144 个账户或 8,388,608 个 ether 参与
当然采取观望态度的人会很多,但单地址中多于 32ether 的用户也会很多,很多大户持有的 Ether 量非常大,用户可以进行多账户分配参与抵押,所以我们预计质押 Ether 突破 300 万个并不困难,收益率很有可能下降到 10% 以下(根据 Vitalik 的测算表)。
另外就是那些不足 32 个的想参与质押服务的,可以通过 staking 服务商的类似「合并账户」的服务进行质押,所以最终的质押率不会太低。Consensys 做了份调查,那些愿意自己做 validator 的用户,预期自己跑的节点数量,可见一个用户跑多节点的情况会很常见。
以太坊 2.0 引入了惩罚机制,还细分成 slashing (罚没)和 inactivity leak (不作为惩罚)两类。
Inactivity leak 要求验证者持续在线,不然会导致不作为惩罚。如果验证者出现了双重投票或者循环投票,那可能被罚没,如果罚到低于 16eth,会被踢出验证者队伍。
所以惩罚机制是抵押最关心的问题,这也使得很多用户退而求其次,选择 staking provider,但即便如此,还是对 slashing 最为关心。
用户最关心的三大功能:1)非托管钱包;2)罚没机制;3)复合收益率
因为惩罚和罚没机制存在,ETH2.0 也提供对应的正向奖励,下面进行一下介绍:
反向惩罚
不在线罚没 inactive leak:
不在线罚没主要是针对验证人不在线的情况,基本是两种模式:
1)单纯的错过了一些出块的验证,这样只是失去应得的出块奖励,正常的比如线下维护是可以接受的;
2)还有就是以太坊 2.0 需要全体 2/3 验证者(资金)在线的需求,是为了保证整个网络的安全性。所以当有大规模的验证者在线下的时候(比如超过 1/3),这样系统就会自动减少不在线验证者的资金余额,直到线上验证者的资金余额超过全网 2/3,这种情况可能发生,但是概率不大,比如出现世界灾难的情况;
3)还有一种极端情况,是不在线和退出-加入的情况,可能会引发类似 Cosmos 第一次 slashing 一样的惩罚,即两个验证者分别验证不同的交易或块,虽然并非故意,还是遭遇到了系统的 slashing。
惩罚 slashing:
重复投票 double target vote。重复投票的极端情况可以变成 PoW 型公链的双花问题。主要是指验证者在一个 epoch 中分别投票给了不同的区块,会造成一下出两个块的的情况。如果是一个验证者用一个 Ether 分别交易两次,然后分别投票给两个区块,这就会变成双花问题。但是防止二次投票主要不是为了双花问题,而是防止被攻击。
重复提议 double proposal。重复提议是指提议者 proposer 在一个 slot 里提出了两个不同的区块。
循环投票 surround voting。循环投票有一些类似,但是可以是不在一个 epoch,比如一个投票者在一个 epoch 投给了一个链,但是在之后 epoch 投给了另外一个链,表示他同时认同几个链的事实。循环投票将导致长程攻击的出现。这两类惩罚在 Phase0 就会出现,之后会根据分片出现更多的奖惩机制。
正向激励
正向奖励也分成三种,前两种和 slashing 相关,第三种分成五类,为一般验证者奖励:
举报者奖励:
当一个验证者可以提供其他验证者违规行为(该行为并被判定为 slashing 行为)
出块者奖励:
那些验证者会被随机选为 proposer,以获得出块奖励。可以优良中获取奖励的方式:
加入有效举报的证明;
加入其他验证者的新的验证 attestations。举报的奖励会按照 7/8 和 1/8 分别分配给举报者和出块者,但是在 Phase 0 阶段,全部奖励只会分配给出块者。
举报的奖励
证明者奖励:
证明者奖励是指一个验证者同意一个 2.0 中的决议,这类奖励也分成五类:
包含所有验证;
指定正确的检查点验证;
制定正确的区块链头验证;
链上迅速验证;
在指定分片中指向正确的区块。
这五类奖励都和基础奖励 base reward 挂钩 , 基础奖励的计算方法如下:
其中有效余额为每个验证者有效抵押余额,基础奖励因子为一常数,总余额为所有验证者有效余额之和,单 epoch 基础奖励也为一常数并反映了一个 epoch 内的奖励之和。每种奖励具体计算可参加 CoDeFi 报告。
为什么需要惩罚和罚没?
Slashing 是 ETH2.0 中争议比较大的一个设置,但是以太坊基金会在阐述 CBC Capser 时也明确提到,启用 Slashing 的意义在于以下两点:
抵御攻击。Slashing 让 51% 的攻击要消耗大量成本,而且攻击后可以迅速恢复。这样让攻击者的成本提升到比获得更多,让攻击者选择去做验证者。
客服验证者困境。验证者的不作为是是验证者困境中的最大的问题,对错误事项进行签名进行惩罚可以有效缓解。
长期且时间不确定的 Ether 锁仓是妨碍用户质押 ether 的一个比较重要的原因。在 2.0 的 Phase 0 阶段,Beacon 链的质押是一种单向不可逆的过程,用户质押的 32 个 Ether 将无法交易,虽然可以有 staking 的补偿,但是用户没有办法自由转账,所以这也会妨碍大众转入 Beacon 链的意愿,因为这关乎 Beacon 的启动是否可以以最低限度开始 16,324 个验证者或者 524,288 个 ether 的抵押。
Consensys 的研究提到目前有像 liquidity staking working group 这样的组织在研究流动性质押的课题,将可以应用到 Beacon chain 质押上,但是会面临价值的可分离性,质押 / 流动比率,和验证者转换风险等问题,这都是值得探索的方向。
Liquidity staking,就是指用户可以在 staking 的同时,可以获得 staking 资产的流动性,并且可以把 staking 作为一种质押资产。将有两类方式进行流动性的质押,一类是中心化的方式,包括矿池、钱包或者交易所等,通过大量质押完成流动性的切换,用户可以直接在场内就完成流动性的管理和交易。另一类就是去中心化的方式,通过智能合约完成,也就是到 Phase2 才可以实现。所以目前来看中心化的方式先发优势很大。
当然中心化矿池或者交易所如果做大,过于中心化也比较有问题,比如交易所利用质押 Token 去做一些合约用户意愿相反的方向的投票,甚至大的矿池联合贿选等(到了 Eth2.0 的 CBC 阶段才有反贿选的机制)。反倒是去中心化的方案基于 Eth2.0,属于生态内的一部分,有可能会受到社区的支持,只是看用户到底选择经济利益还是治理权力罢了。目前大部分用户更关心经济(这也是目前区块链治理的困境),但是不代表以后治理层面的因素不重要。
我们了解到目前可以解决流动性锁仓的方法基本上只有一种,就是在 Ether 锁仓的时候,托管方 (可以是验证者也可以其他合作方) 同时发一个流动性的 Token,将以太坊挖矿的权益赋予到这个 Token 中,这个 Token 也可以流通。因为将有很长时间的 BETH 锁定期,所以这个新发 Token 的活跃时间会很长,不仅具备期货属性,还具备一定的债券属性,类似一种 2 年到期的国债期货(以 BETH 的超级信用来讲),将成为一个很大的市场。
从服务的全面性来讲,中心化的服务仍然是最有可能跑出的。会涉及到发 Token、流转、回收、对付以及 staking 服务,所以中心化的交易所、钱包或者托管方,最有可能把这些服务集成起来,是相当大的一块新增份额。
也有一些去中心的项目开始做 2.0 的相应的流动性服务,比如 Rocketpool,通过智能合约,发行代表 BETH 的 Token,连接用户和 node operator。相当于基于智能合约的一个流动性的插件,用户和 staking provider 都可以接过来,获取 Token 奖励。但由于只有到 2.0 才可以实现智能合约,所以市场节奏并不占优。
以太坊 2.0 的上线对于整个区块链生态,都是一件积极的事情:
第一,以太坊 2.0 将实现更高的安全性和可用性(理论和实践层面),证明了区块链可以作为世界计算机去承载应用。以太坊的商业模式一旦证明是成熟的,整个区块链将进入主流商业社会,VC/PE 的融资将加速。
第二,目前没有看到以太坊达到 2.0 以后还有什么计划,宁静或许就是最终的阶段。因为开发时间周期长,为整个区块链提供了详细的参照样本,后起的新链可以持续吸取经验。
第三,互操作性的链可以和以太坊直接交互,大规模的资产迁移和应用迁移成为可能。
第四,分片链有更大的包容性,各类链也可以选择成为以太坊生态的一部分。
对于以太坊本身来讲,可以实现更多商业层面的实现:
第一,DeFi 将可以在用户层面和 CeFi 竞争一下了。目前 DeFi 各个方面的表现,仍然不可能和 CeFi 相比,原因确实是底层太慢,导致应对极端事件不利,而且易用性还达不到互联网产品的门槛。
第二,之前火过的 Dapp 可以重新登上舞台了,甚至可以从分片链的角度重新建立专属的应用链。
第三,以太坊 2.0 可以变成资产上链的最佳选择,绝对安全、全球通用的平台。预计以太坊上承载的链上资产将爆发,很大概率超过以太坊的市值本身。
第四,以太坊的状态变得宝贵,可能会出现新的租赁业务模式。
虽然目前在这个阶段还看不到具体的很有希望的方向,真正有想象力的是当多类别、高价值资产开始在链上运作时,生态系统会开始量变引起质变,比如 AMM 类型的交易市场可能会从中心化交易所那里拿到更多的份额。
另一个要思考的问题是,区块链的互操作性会否造成造成虹吸效应,比如说链上的资产通过跨链都集中在以太坊上,这可能对一些二线的公链影响比较大。实际反映是市场更喜欢流动性更好的映射资产而不是实际资产本身,因为映射资产处于更安全,更去中心化,流动性更好的市场,以太坊 2.0 可能会变成了一个多资产类别的交易市场。