KOL:回顾V神Rollups神作,详解以太坊为何需要二层扩展方案?

原文作者:Vitalik

原文翻译:TinTinLand

Rollups在以太坊社区中风靡一时,有望在未来成为以太坊的关键可扩展性解决方案。但是这项技术到底是什么,从中值得期待什么?又将如何使用它?本文在分析以太坊几个重要扩展方案的基础上,试图回答Rollups相关的一些关键问题。

背景:什么是L1和L2?

有两种方法可以扩展区块链生态系统。第一种,可以让区块链本身拥有更高的交易能力。这种技术面临的主要挑战是,具有“更大区块”的区块链本质上更难以验证,并且可能变得更加集中。为了避免这种风险,开发人员可以提高客户端软件的效率,或者持续地使用诸如分片之类的技术,以允许在多个节点上拆分构建和验证链的工作。也就是目前正在构建的以太坊的升级。

第二种,可以更改使用区块链的方式。用户不是将所有活动直接放在区块链上,而是在“第2层”协议中,在链下执行大部分活动。链上有一个智能合约,它只有两个任务:处理存款和取款,以及验证链下发生的一切都遵循规则的证据。有多种方法可以进行这些证明,但它们都具有一个共同的特性,即在链上验证证明比在链下进行原始计算要便宜得多。

状态通道如何运作

假设一个具体案例,Alice为Bob提供了一个网络连接,Bob以每兆0.001美元的价格支付费用。他们的交易不是每一次都要付款,而是使用以下L2方案。

首先,Bob将1美元放入智能合约中。为了向Alice支付第一笔款项,Bob签署了一张“票证”,上面写着“0.001美元”,并将其发送给Alice。为了进行第二次付款,Bob会签署另一张写着“$0.002”的票,并将其发送给Alice。依此类推,根据需要支付尽可能多的款项。当Alice和Bob完成交易后,Alice可以将最高价值的票据发布到链上,并包装在自己的另一个签名中。智能合约验证了Alice和Bob的签名,向Alice支付了Bob票上的金额,并将其余部分退还给Bob。如果Alice不愿意关闭通道,Bob可以启动一个退出期;如果Alice在这段时间内没有提供票据,那么Bob就会拿回他所有的钱。

这种技术强大之处在于:它可以调整处理双向支付的智能合约关系。例如Alice和Bob在频道内签订合约,以及如果Alice和Bob有一个开放的渠道,Bob和Charlie也是如此,Alice可以与Charlie进行无信任的互动。

外媒:Huobi Korea将切断与Huobi Global的联系:金色财经报道,Huobi Korea将切断与加密货币交易所Huobi Global的企业联系,并经营自己的业务。报道称,在这样做的过程中,它将就股权的所有权进行谈判。现有的Huobi Korea一半以上的股份由Huobi Global的创始人Leon Lin拥有。接下来的主要股东包括主席Jo Guk-Bong和韩国土地信托。Jo还拥有一家加密货币采矿企业,他将从Lin手中获得多数股权。[2023/1/9 11:02:36]

但是,channels可以做的事情是有限的。比如不能使用channels将资金从链下发送给尚未参与的人。channels不能用于表示没有明确逻辑所有者的对象。相比简单的经常性支付,如果有更复杂的需求,则需要大量的资金来锁定。

另请参阅:https://www.jeffcoleman.ca/state-channels和statechannels.org

PoS或DPoS)。每个间隔,操作员都会生成一个“batch”,其中包含他们从链下收到的所有Plasma交易。它们生成一个Merkle树,其中在树中的每个索引处,如果存在这样的交易,则有一个事务转移资产ID,否则该叶子为零。

他们还将每个索引的Merkle分支发送给该资产的当前所有者。要提取资产,用户将发布最近事务的Merkle分支,并将资产发送给他们。合约开始一个挑战期,在此期间,任何人都可以尝试使用其他Merkle分支来证明退出无效,方法是发送方在发送资产时不拥有资产,他们在稍后的某个时间点将资产发送给其他人。如果7天内没有人证明退出是欺诈性的,用户可以撤回资产。

Plasma提供比状态通道更强的属性:可以将资产发送给从未参与系统的参与者,并且资金要求很低。代价则是:在“正常操作”期间,通道不需要任何数据就可以上链,但Plasma要求每条链定期发布一个哈希值。此外,Plasma体转移不是即时的,必须等到间隔期结束以及区块公开上链。

此外,Plasma和通道有一个共同的弱点:它们之所以安全的背后依赖于这样一种理论——两个系统控制的每个对象都有一些逻辑上的“所有者”。如果该所有者不关心他们的资产,则可能导致涉及该资产的“无效”结果。这对于许多应用程序来说是可以的,但对于许多其他应用程序来说,是一个交易破坏者。即使是在未经所有者同意的情况下更改对象状态的系统也无法很好地使用Plasma。这意味着在Plasma或通道部署中,需要大量的“特定于应用程序的推理”,并且不可能制作一个仅模拟整个以太坊环境的Plasma或通道系统。为了解决这个问题,让我们开始了解第三种方案——Rollups。

数据:Huobi过去24小时净流出6090万美元,占周净流出超60%:1月6日消息,据链上数据分析公司Nansen在社交媒体披露,Huobi过去24小时平台净流出金额达6090万美元,过去一周净流出金额为9420万美元,主要涉及以太坊、Avalanche、BNB Chain、Fantom和Polygon链上交易,高余额钱包的提款主要集中在USDT、USDC和ETH三个加密货币。另据Nansen数据显示,当前Huobi主要资产分布为HT(30.6%)、USDT(20.9%)、TRX(17.6%)、BTC(13.5%)、ETH(5.4%)。[2023/1/6 10:58:33]

另请参阅:?http://plasma.io/plasma-deprecated.pdf

关于Rollups

Plasma和通道是“完整的”L2方案,因为它们试图将数据和计算都移出链下。但是,围绕数据可用性的基本博弈论问题意味着,不可能对所有应用程序都安全地执行此操作。Plasma和通道通过依赖所有者概念来解决这个问题,但这影响了他们的应用范围。然而,Rollups是一种“混合”L2方案。Rollups将计算移动到链下,但将每个任务的部分数据保留在链上。为了提高效率,他们使用了大量复杂的压缩技巧,尽可能用计算来替换数据。结果是系统中可扩展性仍然受到底层区块链的数据带宽的限制,但受限的程度低:以太坊基础层ERC20令牌传输的成本约为45000gas,而Rollups中的ERC20令牌传输占用16字节的链上空间,成本低于300gas。

值得注意的是,将数据“放在IPFS上”是行不通的,因为IPFS没有就任何给定的数据是否可用,达成共识,数据必须在区块链上。有了将数据放在链上这一共识,Rollups允许任何人根据需要在本地处理任何操作,允许他们检测欺诈、发起提款或亲自开始生成交易batch。缺乏数据可用性问题意味着恶意或离线操作员可以造成的伤害更小,Rollups更容易推理,为有权发布batch的人开辟了更大的使用空间。最重要的是,缺乏数据可用性问题意味着不再需要将资产映射到所有者,这使得以太坊社区对Rollups扩展方案十分感兴趣,Rollups是完全通用的,甚至可以在Rollups中运行EVM,允许现有的以太坊应用程序迁移到Rollups,几乎不需要编写任何新代码。

孙宇晨:火必Huobi业务发展势头良好,将加快全球合规展业步伐:1月5日消息,波场TRON创始人、火必Huobi全球顾问委员会成员孙宇晨发布多条推文,孙宇晨指出,火必Huobi近期业务发展势头良好,核心指标保持了高速增长,新注册用户数与资沉流入量日均增长率超过2022年峰值,并诞生了Pi、Bonk等首发千倍币,相关币种交易量均处于行业第一,引领了多个行业热点,持续带动市场行情复苏。

孙宇晨同时表示,火必Huobi基础安全能力强大,基础设施托管于国际知名云服务器,具备容错率极高的灾备能力,核心业务数据与技术架构不依赖任何中心化人力,十年无安全事故的行业最好安全记录,用户的资产安全将始终得到充分保护。

孙宇晨最后指出,火必Huobi将坚持和加快全球合规展业步伐,在每个合规展业地区,都会根据当地的法规政策来保障从业者的合法权益,充分尊重当地员工的合法诉求,并为优秀人才持续提供具有行业竞争力的激励和待遇。[2023/1/5 10:23:36]

另请参阅:https://docs.ethhub.io/ethereum-roadmap/layer-2-scaling/optimistic_rollups/

Rollups工作原理

链上有一个智能合约,它维护一个状态根:Rollups状态的Merkle根。

任何人都可以发布batch,即高度压缩的事务集,以及以前的状态根和新的状态根。合约检查batch中的上一个状态根,是否与其当前状态根匹配;如果匹配,它会将状态根切换到新的状态根。

为了支持存款和取款,添加了输入或输出“超出”汇总状态的事务的功能。如果batch具有来自外部的输入,则提交batch的事务还需要将这些资产转移到Rollups合约。如果一个batch有输出到外部,那么在处理该batch时,智能合约会启动这些提款。

如何知道batch中的后状态根源是正确的?如果有人可以提交一个具有任何post-stateroot的batch而不会产生任何后果,那么他们可以将Rollups中的所有硬币转移给自己。这个问题很关键,对此产生了两个截然不同的解决方案系列,导致了两种不同的Rollups。

Huobi Global“挖矿宝”首期限时抢购项目已售罄:据官方消息,Huobi Global“挖矿宝”首期USDT限时抢购项目上线5分钟立即售罄。目前,“挖矿宝”限时抢购活动仍在持续进行中,2021年1月28日至2月3日,“挖矿宝”每日都会发布一款高收益的USDT限时抢购项目,第二期项目1月29日上午11点准时上线开抢。

此外,在2021年1月26日至2月3日期间,参与Huobi Global“挖矿宝”BTC、USDT灵活挖矿项目还可享受额外加息1%;并且,用户认购USDT定期挖矿项目,挖矿前7日还可享受三倍收益活动福利。更多详情请查看原文链接。[2021/1/28 14:13:08]

OptimisticRollups,使用欺诈证明:Rollups合约跟踪其状态根的整个历史记录和每个batch的哈希。如果有人发现一个batch具有不正确的后状态根,他们可以发布一个证明来链接,证明该batch的计算不正确。合约将验证证明,并还原该batch及其之后的所有batch。

ZKRollups,使用有效性证明:每个batch都包含一个称为ZK-SNARK的加密证明,它证明post-stateroot是执行batch的正确结果。无论计算量有多大,证明都可以在链上非常快速地验证。

在两种类型的Rollups之间存在复杂的权衡:

总的来说,在短期内,Optimistic的Rollups可能会在通用EVM计算中胜出,而ZKRollups可能会在简单的支付、交换和其他特定于应用程序的用例中胜出。

据上图可知,声称batch无效的欺诈证明将包含绿色数据:batch本身以及Merkle树的部分,这些部分只需要证明由batch读取和/或修改的特定帐户。黄色树中的节点可以从绿色的节点重建,因此不需要提供。此数据足以执行batch并计算后状态根。如果计算出的状态后根和batch中提供的后状态根不相同,则该batch是欺诈性的。

可以确定的是,如果batch构造不正确,并且所有以前的batch都正确构造,则可能会创建欺诈证明,表明该batch构造不正确。请注意有关以前batch的声明:如果有多个无效batch发布到Rollups中,则最好尝试证明最早的batch无效。当然,如果batch构建正确,则永远不可能创建欺诈证明,证明该batch无效。

回顾丨上周热点事件:“投票”、“反弹”、“风险”排名前三:根据火币区块链大数据周度数据洞察,上周热点事件排名前三的为“投票”、“反弹”和“风险”。其中“投票”主要涉及EOS超级节点的投票,以及币安投票上币等;“反弹”主要反映经历上周币价的暴跌后,本周币价有所反弹;“风险”相关话题主要集中在:1、由于比特币价格下跌和算力增长导致的挖矿风险,2、EOS主网上线后技术漏洞风险,3、场外交易风险(银行卡冻结等)。[2018/6/25]

其中一部分只是高级编码:以太坊的RLP在每个值的长度上浪费了1个字节。但是也包含了一定的压缩技巧:

Nonce:此参数的目的是防止重放攻击。如果帐户的当前Nonce为5,则该帐户的下一笔交易必须具有Nonce5,一旦处理了交易,帐户中的随机数将增加到6,因此无法再次处理该交易。在Rollups中,我们可以完全省略随机数,因为我们只是从前状态中恢复随机数;如果有人尝试使用较早的随机数重放交易,则签名将无法验证,因为签名将针对包含更高Nonce的数据进行检查。

Gasprice:我们允许用户以固定范围的Gasprice付款,如2的16次幂。或者可以在每个batch中都有一个固定的费用,甚至将gas支付完全转移到Rollups协议之外,并让交易参与者通过状态通道向batch创建者支付费用。

Gas:我们同样可以将总Gas限制为2的多次幂。或者在batch级别设置Gas限制。

To:我们可以用index替换20字节的地址。如果一个地址是添加到树中的第4527个地址,我们只使用index4527来引用它,将向状态添加一个子树,以存储index到地址。

Value:我们可以用科学记数法存储值。在大多数情况下,转账只需要1-3位有效数字。

Signature:我们可以使用BLS聚合签名,它允许将大量签名聚合成单个约32-96字节的签名。然后,可以针对一个batch中的整组消息和发件人检查此签名。表中的“约0.5”表示在聚合中可以组合的签名数量存在限制,可以在单个块中验证,因此大批量约每100个事务需要一个签名。

ZKRollups的一个重要压缩技巧是,如果交易的一部分仅用于验证,并且与计算状态更新无关,则该部分可以留在链下。OptimisticRollups则无法做到,因为如果以后需要在欺诈证明中检查数据,则仍需要将数据包含在链上,而在ZKRollups中,证明batch正确性的SNARK已经证明提供了验证所需的任何数据。具备隐私保护功能的rollups是一个重要例子:在OptimisticRollups?中,每个交易中用于隐私的约500字节,ZK-SNARK需要在链上;而在ZKRollups中,覆盖整个batch的ZK-SNARK已经毫无疑问地表明“内部”ZK-SNARK是有效的。

这些压缩技巧是Rollups可延展性的关键。如果没有它们,Rollups可能只是基本链可扩展性的10倍左右,而进行数据压缩后,几乎所有应用的扩容性都可以实现100倍以上的提升。

完全无政府状态:任何人都可以随时提交batch。这是最简单的方法,但它有一些重要的缺点。一旦存在多个参与者,同时生成并尝试并行提交batch,但最终只有一个batch能被成功打包。这导致在生成证明方面浪费大量精力,以及将batch发布到链中浪费Gas。

中心化处理:存在一个排序者来提交batch。这是最“高效”的,但它依赖于一个核心的actor来操作。

排序者拍卖:举行拍卖以确定谁有权成为第二天的排序者。这种技术的优势在于它能筹集资金,通过Rollups控制的DAO来进一步分配。(参见:MEV拍卖)

从PoS集合中随机选择:任何人都可以将ETH存入Rollups合约,并且每个batch的排序者是从其中一个存款人中随机选择的,被选中的概率与存入的金额成正比。这种技术的主要缺点是它会导致大量不必要的资本锁定。

DPoS投票:序列者在拍卖中被选中,但如果他们表现不佳,代币持有者可以投票将他们踢出并举行新的拍卖。

可以允许许多排序者并行发布batch,以提高抗审查性,而不必担心某些batch会因为某些其他batch首先被包含而无效。

如果状态根是欺诈性的,则无需还原整个batch;您可以只还原状态根,并等待某人为同一batch提供新的状态根。这为交易发送者提供了更好的保证,即他们的交易不会被还原。

总而言之,这是一个相当复杂的技术,试图在效率,简单性,抗审查性和其他目标的复杂权衡之间取得平衡。现在说这些想法的哪种组合效果最好还为时过早。时间会证明一切。

Rollups?能带来多少扩展??

在现有的以太坊链上,gas限制为1250万,交易中每个字节的数据花费16gas。这意味着,如果一个块只包含单个batch,则该batch可以有=750,000字节的数据。如上所示,ETH传输的Rollups每个用户操作只需要12个字节,这意味着该批最多可以包含62,500个事务。在13秒的平均区块时间下,这相当于约4807TPS。

以下是其他一些示例用例的图表:

最大可扩展性增益的计算公式为/*1200万/1250万。

值得注意的是,这些数字过于乐观。一个块几乎永远不会只包含一个batch,至少因为存在并且将有多个Rollups。其次,存款和取款将继续存在。第三,在短期内使用率会很低,因此固定成本将占主导地位。但即使考虑到这些因素,超过100倍的可扩展性增益也有望成为常态。

现在,如果我们想超过约1000-4000TPS该怎么办?这就是Eth2数据分片的用武之地。分片提案每12秒提供16MB的空间,可以容纳任何数据,且确保对该数据的可用性。此数据空间如果由Rollups使用,每秒约1398kb空间比现有以太坊链提高了23倍,从长远来看,数据容量预计将进一步增长。因此,使用Eth2分片数据的Rollups可以共同处理多达约10万交易,未来甚至更多。

Rollups?有哪些尚未完全解决的挑战?

虽然Rollups的基本概念现在已经很好理解,它们是可行和安全的,并且已经有多个Rollups部署到主网中,但仍有许多Rollups设计领域尚未得到充分探索,将以太坊生态系统的大部分内容完全引入Rollups以方面存在很多挑战。一些关键问题包括:

用户和生态入驻-使用Rollups项目不多、用户不熟悉,很少有钱包集成Rollups。商家和慈善机构尚未支持这种支付方式。

跨Rollups交易-高效地将资产和数据从一个Rollups移动到另一个Rollups,而无须产生经由L1的费用。

审计激励-如何最大程度提高至少有一个诚实节点完整验证一个OptimisticRollup的机率,使问题出现时他们会广播欺诈证明?对于小规模Rollup(高至每秒几百笔交易),这个问题不大,因为对矿工来说只是举手之劳,但对于大规模的Rollup来说,还需要更充分的理由以说服矿工去做验证。

探索Plasma和Rollups之间的设计空间-是否有技术可以将一些与状态更新相关的数据放在链上,但不是全部,且这些数据会产生有用的东西?

最大限度地提前确认安全性-许多Rollups提供了“pre-confirmation”的概念,以实现更快的用户体验,其中排序者立即提供承诺,即交易将包含在下一批中,并且如果排序者违背了诺言,则排序者的存款将被销毁。但这一计划的经济安全是有限的,因为有可能同时向许多行为者做出许多承诺。这种机制能否得到改进?

提高对缺失的排序器的响应速度-如果Rollups的排序者突然脱机,那么短时间从这种情况中恢复,要么是快速且低消耗地切换到另一个Rollup,要么是换一个排序者,都是有成本的。

高效的ZK-VM-生成ZK-SNARK证明通用EVM代码已正确执行并具有一个给定的结果。

结论?

Rollups是一种强大的、新颖的L2扩展方案,预计将成为以太坊在短期和中期扩展的基石。与之前的L2扩展方案不同,它们可以支持通用的EVM代码,允许现有应用程序轻松迁移。而Rollups通过妥协——交易处理不是完全在链下进行,而是每笔交易留下一小部分数据在链上,在以太坊社区中获得了高度关注。

从技术设计角度,Rollups有多种类型,如使用欺诈证明的OptimisticRollups,使用有效性证明的ZKRollups。Rollups仍然是一种早期的、正迅速发展的技术,预计在未来几年中,Rollups空间中将出现更多令人兴奋的项目。

原文链接

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

波场WOW:Decentralized Finance Token (DEFI)

一、项目介绍 WOWMAX是下一代DEX聚合协议,它使用滑点作为额外的优化来源。WOWMAX将一笔大笔交易拆分成小部分,然后发送到各个DEX并进行第三方山寨币套利,以最大限度地提高金额.

[0:31ms0-3:392ms