2021-06-25 23:08 | 出处: ECN以太坊中文社区
编者注:北京时间6月23日晚,以太坊基金会研究团队在 Reddit 论坛进行了第六次 AMA,包括以太坊共识机制、质押、合并、分片、Layer2 、状态管理及以太坊经济机制等众多主题。ECN 对大部分问答进行了筛选整理,并编译成文。需要注意的是,基金会研发团队成员就某些话题存在个人的看法和推测,为避免曲解,请以原贴为准。
由于篇幅较长,本文将作上下两期发布,本期主题包括共识机制、合并、分片、质押及 Layer2,下期主题将包括状态管理、无状态性、经济机制、EIP-1559及密码学等。
Reddit AMA链接:https://www.reddit.com/r/ethereum/comments/o4unlp/ama_we_are_the_efs_research_team_pt_6_23_june_2021/
共识机制
01
bcd_is_me 提问:
以太坊设置了难度炸弹以防止矿工对 ETH2.0 进行分叉 (为了继续挖矿他们很可能会分叉)。怎么阻止他们在 (潜在) 分叉中拆除难度炸弹?
网友回复:
难度炸弹的目的并不是为了防止分叉,而是确保分叉。我们需要担心的是以太坊会不会走比特币的老路,由于社区对分叉过于忌惮而停滞不前。通过增加难度炸弹,无论如何都需要进行硬分叉,要么切换到 PoS 共识,要么进行 PoW 分叉。
基金会 Carl Beekhuizen 回复:
基本上是这样的。如果人们想要继续在 PoW 上挖矿,他们仍然需要分叉。这避免了”默认“选项,每个人在某个时间点都需要做出选择。
02
IronCena 提问:
你们对混合 POS/POW 机制怎么看?
Vitalik 回复:
在我看来这不适合以太坊。如果 PoS 的实施结果比 PoW 好,那么也会优于混合机制。我认为没有理由把 PoS 与 PoW 看作是一种凹形关系,而更像是线性关系。也就是说,对于有许多参与者希望“与物理实在具有直接联系” (或其他原因) 的区块链社区来说,混合 PoW/PoS 可能不失为一种好方法,同时还能提高安全性。
03
Bob-Rossi 提问:
是否讨论过降低 PoW 链区块奖励来抵消 PoS 信标链增发的奖励,防止整个以太坊网络发行量的增加?主要是因为好奇心,我想不会真实发生这种情况,因为矿工们会竭力反击。
基金会 Justin Drake 回复:
据我所知,没有想过降低 PoW 链的区块奖励。附带说明一下,我相信我们有最好的长期货币政策:最低必要发行量 (minimum viable issuance),同时为我们提供有保障的安全性和最高可行的稀缺性。PoS 的短期增发很大程度上只是宏观计划中的微弱干扰。
基金会 Danny Ryan 回复:
一直都有很多提议讨论在 PoS 到位之前降低 (甚至是提高) PoW 的发行。基于我的了解,这些提议在很大程度上遭到了直接抵制,认为此类辩论和改变只会分散注意力,并可能导致合并延迟或是面临更大的风险。
基金会 Carl Beekhuizen 回复:
我们没有这种计划。PoW 链的价值和安全性并未因为信标链的发布而发生改变,我们仍然需要为矿工维护网络安全的服务支付费用。
合并 (The Merge) 及发展规划
01
squishchaos 提问:
就研究工作而言,PoS 的合并工作还有什么障碍?在分片上线之前还有什么待解决的问题?
Vitalik 回复:
在我看来已经没有研究上的问题了。现在已经有了完整的规范,目前只剩下开发和测试工作。
现在分片也有了理论上可实现的规范,但还处于早期开发和迭代阶段。所以只是很多繁重的工作,还有很多关于 p2p 子网的细节,/u/protolambda 在这项工作的领导方面非常出色。
02
bcn1075 提问:
在合并完成之后,是否还会有类似冰河世纪 (难度炸弹) 的方式来强制升级?
基金会 Justin Drake 回复:
合并之后不会再有类似炸弹的事物。其收益和代价不相符。利益相关者和社区之间的一致性明显强于矿工和社区之间的一致性,因此不需要通过炸弹之类的事物来武装共识参与者。此外,在信标链中每个 slot 是规律的 12 秒,尚不清楚应该如何合理安放炸弹。
根据我的超良货币观点,合并是一个自然的谢林点,从反复扩展的、有时间限制的算法发行到无时间限制的算法发行。合并可能是最后一次对宏观发行政策的干预 (有计划将活跃验证者的数量限制为 2^20 或 2^19,这本身就为日发行量设置了上限)。
基金会 Danny Ryan 回复:
在这一点上存在一些争论,我个人认为现在是时候停用这种机制了。还有一些关键的升级待实现 (分片和无状态性),但我相信有足够的需求和动力来完成这些升级,而不必担心停滞。由于完全从 PoW 切换到 PoS,这些升级的对抗性力量也减少了。
03
bchain 提问:
分片会在合并完成之后的 2022 年部署。分片之后是什么计划?2023年我们能期待什么?
基金会 Justin Drake 回复:
”2022 年”听起来很合理,但与往常一样,日期只是推测。好消息是,表达性智能合约 rollups (例如 Arbitrum, MatterLabs 和 Optimism的产品) 应该会在 2022 年之后提高可扩展性,从而减少实现分片的压力。
基本数据分片之后是一系列安全性升级:秘密领导人选举、托管证明、数据可用性采样、无偏随机性。Vitalik 在这条推文中对路线图进行了可视化。
基金会 Danny Ryan 回复:
合并完成之后主要是分片和无状态性/状态管理这两大升级。我目前不确定哪个会先发布,因为它们是非常独立的工作流和升级。在那之后,我想我们可以回到对预编译的争论上:)
分片
01
Liberosist 提问:
我有一些关于数据分片的问题:
在数据分片实现后,数据可用性和执行的费用市场是否会互相独立?
一层的智能合约 (及其开发者) 如何从数据分片中受益?
假如数据分片的安全性要基于委员会,你们预期数据可用性采样 (DAS) 会延迟多久?
基金会 Danny Ryan 回复:
1、问题一:是的,到时会有一个类似 1559 的机制使数据进入数据分片,这与应用层的执行费用市场是独立开来的。这是两个独立的资源,因此费用市场将区分开来并独立定价。也就是说,在某些情况下,由于应用层和数据层的使用模式是通用的,在某些情况下对执行的需求可能会和数据需求相耦合。因此在这种情况下,其中一方价格飙升可能会同时引起另一方价格飙升。
2、问题二:我们预计从数据分片中受益的主要 L1 合约会是通过使用 L1 的数据达到扩容效果的 L2 协议 (即 rollups)。除了 rollups,很可能还有其他特定应用对成本低廉的 L1 数据有所需求。在我看来,一旦以太坊开发社区获取了新的资源,他们会很快找到创新的方法来使用 (并滥用) 它!
3、问题三:所幸 DAS 可以在不进行共识分叉的情况下。这是因为它本质上是对分叉选择的附加过滤器,可能会限制区块树的某些分支。因此,DAS 可以在早期进行实验,并随时间推移完全实施。基于委员会的安全将首先实现,或与 DAS 同时实现,因为我们将会严重依赖委员对信标链的承诺,为系统核心部分提供分片数据的信息 (因此能够在 EVM 中使用)。至于DAS,经过不断的研发和规范简化,我其实不再那么担心实现的复杂性了。DAS 在很大程度上重用了现有的工程组件,例如用于采样的分片 gossip 通道 (尤其是在主要的 push 而不是 pull 模型中)。
基金会 Dankrad Feist 回复:
在数据分片实现后,数据可用性和执行的费用市场是否会互相独立?
分片的概念是我们不必拆分 gas 市场。每个分片都有自己的 gas 市场,添加另一个分片不需要降低其他分片的 gas limit。
一层的智能合约 (及其开发者) 如何从数据分片中受益?
只有使用数据分片才能从中受益。要么部署会使用数据分片的 L2 协议,要么在你的合约中以其他方式利用数据可能性。如果不使用数据分片,一个反常的结果就是你的交易可能会变得更贵。原因是 L2 将能够更有效地利用 L1 区块空间,因此长期来看会推高 gas 价格。
假如数据分片的安全性要基于委员会,你们预期数据可用性采样 (DAS) 会延迟多久?
好消息是 DAS 只需要基础 (诚实多数) 数据分片的软分叉。因此基本上可以在客户端团队准备就绪后立即添加。我希望它能够在分片部署后的 12 个月内实现。
02
redpnd 提问:
分片上线之后 rollups 会发生哪些改变?
Vitalik 回复:
Rollups 可以将分片用作数据层 (短期内分片只提供数据存储功能)。这会使得 rollups 的成本降低 100 倍以上,并使现有的”侧链“项目更容易转变成为 rollups。
基金会 Justin Drake 回复:
数据分片会首先被引入。Rollups 能够将其所有的交易数据存放在数据分片中,并使用 Eth1 的 EVM 来生成 SNARKs (就基于 SNARK 的 rollups 而言) 和欺诈证明 (就optimistic rollups 而言)。
Staking (以太坊质押)
01
u/mm1dc 提问
我有一个关于提款的问题。
届时开放提款功能,能否支持部分提款?比如说,提出质押所得利润,而保留 32 ETH 继续参与质押?我听说流程为:退出、提款然后重新质押 32 ETH 生成新的验证者节点。这样的话周期太长了,而且对用户很不友好。
基金会 Justin Drake 回答
届时开放提款功能,能否支持部分提款?比如说,提出质押所得利润,而保留 32 ETH 继续参与质押?
这种从一个验证者余额中提到另一个账户中的部分提款被称为“资产转移” (transfers)。正如你所指出的,"transfers"通过解锁验证者余额中除 32 ETH 之外的“超额余额” (excess),从而提高质押的资本效率。
至于你的问题,没错,最终 Eth2 会支持 ”transfers“。然而正如这条推文所说,"transfers" 功能不会在合并时就立即开放。这是为了降低合并难度,尽快实现合并。
我听说流程为:退出、提款然后重新质押 32 ETH 生成新的验证者节点。这样的话周期太长了,而且对用户很不友好。
我们确实计划实现信标链内部”transfers“功能。届时,将不再需要退出、提款和重新激活的过程。
基金会 Danny Ryan 回答
当提款功能开启之后,对余额中 32 ETH 之外的资产进行提款肯定是一种选项。验证者集的稳定性对客户端架构 (例如,在内存中缓存和处理的共识实体较少) 以及质押的用户体验都有好处。
这个功能的细节有待研究,但我特别喜欢 Jim McDonald 的提议:允许区块提议者在生产区块时发出信号,提取余额中 32 ETH 之外的”超额余额“ (提议链接:https://ethresear.ch/t/simple-transfers-of-excess-balance/8263) 这个提议非常好,因为它不需要添加一个新的信标链操作,也不需要处理这些操作所带来的市场影响。但是用户体验方面的缺点是:验证者节点的超额余额提款相对较少 (这有也意味着系统的负载较少)。
02
u/sggts04 提问
合并后有没有可能降低运行一个验证者节点所需的 ETH 门槛?我知道此前定下 32 ETH 限制是,一枚 ETH 大约 100-200 美元,那么现在价格飙升了,运行一个验证者节点的门槛降低到 2-4 个 ETH 是否有意义?
Vitalik 曾提到,以太坊分片可以轻易扩展至 ** 个分片以上。并且 ** 只是你们正在努力的目标,那么一旦这个目标达到了,你们认为分片数可以增加至多少?
Vitalik Buterin 回答
合并后有没有可能降低运行一个验证者节点所需的 ETH 门槛?我知道此前定下 32 ETH 限制是,一枚 ETH 大约 100-200 美元,那么现在价格飙升了,运行一个验证者节点的门槛降低到 2-4 个 ETH 是否有意义?
至于为什么当前的验证者节点运行门槛要设置在 32 ETH,请参阅规范注释的这一部分。不幸的是,如果我们将数量减少那么多,很可能的结果是,这个链将变得更加庞大,更难处理,从而降低人们验证它的能力。
我认为的方法有:
1、接受大部分人无法参与基础层质押这一事实,并努力实现最大程度去中心化的质押池 (这些质押池内部使用多方计算)。
2、减少存款大小,要知道共识层的 RAM 存储要求很容易膨胀到 8-16 GB;同时,将 epoch 的长度增加至如 256 个 slots,将牺牲敲定的时间。
3、使用 ZK-SNARK 技术来实现轻量级的验证者;一种称为聚合器的特殊参与者将负责提出聚合签名证明。
基金会 Justin Drake 回答
合并后有没有可能降低运行一个验证者节点所需的 ETH 门槛?
降低运行一个验证者全节点的最低门槛有两个关键优势。首先,这降低了成为个人质押者的门槛,更加有利于去中心化。其次,这增加了验证者节点的数量,从而解锁了更多分片的可能性。从长远来看,我们肯定会努力降低这个门槛,但这是个艰巨的工程挑战 (见下文)。
运行一个验证者节点的门槛降低到 2-4 个 ETH 是否有意义?
问题是每个增量验证者节点都会对信标链施加一些非零的计算负载 (如 CPU 和 RAM 负载)。因此,为了让信标链本身去中心化,我们需要限制验证者的数量。就目前而言,信标链可能可以安全地支持 1 M,而无需客户端实现者进行太多工作。(目前我们大概有 18 万个验证者节点。) 虽然在没有重大突破的情况下,2 个 ETH 或 4 个 ETH 的要求听起来相当激进 (当我们升级至后量子聚合签名时就算有重大突破了),但我们或许可以通过突破 BLS 签名以及客户端 RAM 优化的极限,将门槛降低至 16 ETH 甚至是 8 ETH。
Vitalik 曾提到,以太坊分片可以轻易扩展至 ** 个分片以上。并且 ** 只是你们正在努力的目标,那么一旦这个目标达到了,你们认为分片数可以增加至多少?
虽然增加分片的数量绝对有可能 (早在 2018 年我就指出,我们可以利用 BLS 签名将分片数量增加至 1024 个),但是“轻易”确实有点夸大其词。原因是为了更好的用户体验,我们现在给自己施加额外的约束,即对每个分片区块和每个 slot 进行交联。这种低延迟的交联在信标链上相对密集,因此我们可能会逐步增加分片的数量 (例如,增加到 128,再到 256 等),而不是一下子从 ** 个增加到 1024 个分片。
03
u/TheEvilMonkeyDied 提问
一旦人们意识到质押带来的巨大好处,当需求大到制约验证者的地步时,是否需要质押候补名单?
基金会 Justin Drake 回答
当需求大到制约验证者的地步时,是否需要质押候补名单?
已经有一个候补名单了!现在等待激活队列中大约有 5,500 个验证者节点。每天约有 900 个验证者节点被激活,因此目前需要等 6 天。
我确实认为合并后会新增大量的验证者节点,原因有二。首先,如果合并进展顺利,验证的风险将大大降低。其次,验证者 MEV (最大可提取价值,maximal extractable value) 将显著增加,包括交易费用的未销毁部分和一些外部支付 (如 Flashbots 贿赂)。这很有可能将质押的 APY 从 个位数推高至两位数。这里有一个计算 APY 的电子表格,自行输入自己的质押数量来预测吧:https://docs.google.com/spreadsheets/d/1FslqTnECKvi7_l4x6lbyRhNtzW9f6CVEzwDf04zprfA/edit#gid=0
基金会 Danny Ryan 回答
有一个进入和退出的队列。目前,每个 epoch 能够进入 (或退出) 4 个验证者。一天大概有 225 个 epoch,所以每天大约可以激活 900 个验证者节点。
可以在浏览器 https://beaconcha.in/ 中看到,目前在等候被激活的队列中有 5000 多个验证者。所以清空当前队列大约需要 6 天。信标链创世以来,我们见过队伍非常长的时候,也见过排队验证者数量接近零的时候 (能够快速激活)。
随着大家对质押的需求起起落落,我完全可以预料到这种情况会出现大幅波动。从长期来看,这将达到平衡,我预计验证者排队数量大部分时间都会徘徊在零附近。