对Layer2而言,强制提款与逃生舱功能到底有多重要?

《对 Layer2 而言,强制提款与逃生舱功能到底有多重要?》

来源:Faust,极客 Web3

在现实世界中,几乎每一栋高楼大厦都有一个不可或缺的要素:安全出口。当火灾地震等突发事件降临时,安全出口就是保障人们生命安全的救命稻草。而在以太坊 Layer2 这个承载了百亿美元资产的托管平台体系中,可以让用户把资产安全撤回至 Layer1 的「强制提款」功能,已然成为不可或缺的必备设施。

Vitalik 在最近的文章「Different types of layer 2s」中也强调,用户能否顺利的把资产从 Layer2 撤回至 Layer1,是一个非常重要的安全指标。

对Layer2而言,强制提款与逃生舱功能到底有多重要?对Layer2而言,强制提款与逃生舱功能到底有多重要?

但「顺利提款」问题在过去似乎没有得到大多数人的重视,甚至许多 Layer2 项目方都没有上线「强制提款」或「逃生舱」功能。在 L2 生态体系未成火候的时代,漠视「无需许可的提款」似乎不成问题。但如今 Layer2 已经承载了 120 多亿美元的资产,已然变成了一栋「太大而不能倒」的大厦。如果这样的一栋摩天大楼没有安全出口,后果简直是不可想象的。

抱着让广大读者重视 Layer2 安全风险的目的,《极客 web3》将在下文以路印协议 V3 和 Arbitrum 为例,为大家阐明为何 forced withdraw 与 escape hatch 等「无需许可的提款功能」是 Layer2 不可缺少的一环。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

(根据 L2BEAT dYdX 浏览器显示,迄今为止 dYdX 强制交易/提款功能,总计被使用过 152 次,超过 100 万美元的大额提款多达 7 笔)

抗审查性是大问题:如果 Sequencer 故意拒绝你的请求,怎么办?

过去关于 Layer2 的科普文章往往有一个问题,就是大多数时候都着重强调「安全性」与表面上的「可用性」,却忽略了「抗审查性」。即便是在谈论去中心化排序器方案时,很多人注意到的也是 MEV 是否去中心化,而不是抗审查性的改善。

换句话说,大多数人往往注重 Layer2 的状态转换是否有效,排序器能不能盗币,欺诈证明/有效性证明系统有没有投入使用,却忽略了一个不该被忽视的风险:如果 Sequencer 一直拒绝你的交易请求,或者干脆长时间故障,甚至停机,这个时候怎么办?

要知道,在 Solana 宕机期间,曾有人因为资产面临清算而无法及时补仓,使得几百万美元的资产面临风险。此类拒绝用户请求的场景一旦发生,造成的经济损失并不可小视。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

即便只有个别人可能遭遇此类情况,但如果落到了一些手握大量资金的鲸鱼身上,整个市场都可能连带遭殃(假设某人在以太坊上的 Defi 借贷协议有几亿美元资产可能在一周内被清算,但他因为用了 Tornado 而被 OFAC 列入制裁名单。此人大部分资金都在 OP 上,而 OP 排序器配合 OFAC 拒绝它的请求)

我们不妨把这个问题投射到 avalanche 或 polygon 等独立于以太坊的公链上去分析。如果 Avalanche 上超过 2/3 的 Validator 共识节点决定对你展开交易审查,那么它们可以拒绝把你发起的 Txn 打包进区块里,或者不承认包含你的 Txn 的区块。这个时候,你的钱基本就被埋在了这条链里出不来:

除非你能拉拢一些 Validator,使得参与审查攻击的 Validator 不足 2/3,或者你能号召一些人通过社会共识的方法,把 Avalanche 分叉。显然在这个时候,你还是有办法把资金快速撤出 Avalanche 的,并且我们要考虑到,超过 2/3 的 Validator 联合起来对某个地址发起交易审查,本身就需要一段时间去达成,这会给被审查的用户留下充沛时间「逃出生天」。

但在 Layer2 上,这种情况可能大不相同。Layer2 的 Sequencer 一般都是由官方自己在运行,如果 Sequencer 想要对你展开审查攻击,它可以把你的钱「冻结在 Layer2」,也就是彻底拒绝你发起的,把资产从 L2 跨到 L1 的交易请求。显然按照 L2 的运作机理,如果你不能绕开排序器执行提款操作,是完全可能被 Sequencer 把资产冻结在 L2 不能转移走的。 

对Layer2而言,强制提款与逃生舱功能到底有多重要?

那么该怎么解决这种问题呢?其实说白了就是,怎么实现「无需许可」的提款功能,让用户在被 Sequencer 或 Layer2 项目方审查的情况下,安然无恙的把资产撤回到 Layer1 上?有一些项目方提出了去中心化 Sequencer 的方案,但这治标不治本,如果这些数量极为有限的排序器联合起来审查你,还是可以把你的资产「冻结」,况且 POS 节点的反女巫也是个棘手的问题(参考 Multichain 事件)。

真正最有效的办法,是直接在 L1 链上设置一个「出口」,让用户在长时间得不到 Sequencer 响应时,通过 L1 上的专用出口把资金从 L2 撤出。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

路印协议 V3 版本的强制提款与破产清算模式

这里我们以路印协议的 V3 版本为例,它针对用户发起的强制提款分列了两种不同情况,第一种情况是:

用户直接在 Layer1 上通过 ExchangeV3 合约中的 forcedWithdraw 函数发起强制提款,声明自己在路印协议的 L2 账户是哪个,以及要提走哪种 Token。之后,ExchangeV3 合约会抛出一个链上事件,提示有人发起了强制提款请求。由于路印协议的所有节点(包括 Sequencer)都运行着 Geth 客户端,所以会从以太坊区块中获知,有人发起强制提款并触发了对应的链上事件。 

对Layer2而言,强制提款与逃生舱功能到底有多重要?对Layer2而言,强制提款与逃生舱功能到底有多重要?

要注意的是,强制提款不会被立刻处理,而是置入 pendingForcedWithdrawals 队列,处于待处理状态。Sequencer 注意到有人在 Layer1 发起强制提款后,一般会在 15 天内触发 ExchangeV3 合约中的 Process 函数,在以太坊链上把 Token 转给提款发起者(从 L2 项目方在以太坊链上的存款地址,给提款者转钱)。 

如果 Sequencer 在 15 天内没有响应用户的强制提款请求,用户可以调用 notifyForcedRequestTooOld 函数,让 ExchangeV3 合约抛出名为 WithdrawalModeActivated 的事件,通知路印协议的全节点,破产清算模式被激活了。 

对Layer2而言,强制提款与逃生舱功能到底有多重要?

如果破产清算模式被激活,此时路印协议 V3 会停止接收 Sequencer 提交的新 L2 区块,也就是说这个时候路印协议整个就停止了运转。这个过程会持续至少 30 天。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

但在破产清算模式下,用户依然可以在 Layer1 上把自己的资产提走,只不过需要提交 merkle proof 证明自己的资产状况/状态,在 L2 的状态树上是可查的。(证明自己在 Layer2 的资产余额,和自己发起提款时声明的金额是一致的)

对Layer2而言,强制提款与逃生舱功能到底有多重要?

路印协议的这种破产清算模式,在 L2BEAT 上也被称作 Escape Hatch 逃生舱机制。这种模式的触发有个先决条件,就是排序器在规定的时间内没有响应用户的强制提款请求,或者 Sequencer 长期故障或停机。此时用户可以通过手动触发的方式,让 Rollup 合约进入冻结模式/停止运转。然后用户可以构造 merkle Proof 证明自己在 Layer2 上的资产情况,从 L2 项目方在 L1 的存款地址中,把属于自己的那部分资产提走。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

在 StarkEx 的文档中,还为这一过程画了专门的示意图。如果 L2 用户在 L1 提交的 Forced Withdrawal 请求在 7 天窗口期结束时,未得到定序器响应,则该用户可以调用 freeze Request 功能让 L2 进入冻结期。此时,L2 定序器将无法在 L1 上更新 L2 的状态,L2 状态冻结后要过 1 年才能解冻。之后用户可以提交 merkle proof 并提款。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

对Layer2而言,强制提款与逃生舱功能到底有多重要?

但要构造 Merkle Proof,需要先获知完整的 L2 状态树,也就是需要找一个 L2 全节点索要数据,同时需要一段代码来生成 merkle Proof,显然这需要一定的技术门槛。为了方便广大用户,L2BEAT 此前曾声明,Layer2 应该设置一批权限开放且代码开源的全节点,帮用户获知 L2 上全体账户的状态(包含余额、交易次数等)。这一举动其实也说明了强制提款与逃生舱机制的重要性。 

对Layer2而言,强制提款与逃生舱功能到底有多重要?

Arbitrum 的「强制包含交易」功能

但强制提款/逃生舱似乎不是唯一的抗审查解决方案。比如,Arbitrum 采用了「强制包含交易」的方式,用户可以先在 L1 上的 delayed Inbox 合约提交需要被 Sequencer 处理的 Txn/withdraw,如果 Sequencer 超过 24 小时没有处理,用户可以调用 L1 上 Sequencer Inbox 合约的 force Inclusion 函数,让 Txn 直接被包含进 Arbitrum 的交易序列中(抛出一个链上 event 告知 Arbitrum 全节点,几笔 delayed Inbox 上有记录的 Txn 需要被包含进 L2 的账本中)。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

对Layer2而言,强制提款与逃生舱功能到底有多重要?

相比之下,Arbitrum 的方法要更简单些,但这种方法还是略带不足:因为它只抛出一个链上事件告诉 Arbitrum 节点,有几笔被排序器忽略了的交易需要被包含进 L2 最长链中,而不是像路印协议和 StarkEx 的 破产模式/逃生舱 那样允许用户直接在 L1 上把钱提走。如果 Arbitrum 的挑战者节点联合起来发动审查攻击,似乎还是可以让用户的钱被冻结在 L2。

所以说 Arbitrum 的 force Inclusion 还不够 permissionless,虽然只要有一个诚实节点愿意发布欺诈证明,就可以指出排序器忽略了某个用户的 forceInclusion 请求,但这还是引入了一定程度的信任假设,只不过程度很轻微。

更确切的说,「需要被强制包含的交易」是要被至少 1 个 ARB 的挑战者节点认可的,这些节点目前有 9 个,它们有权决定给哪些 L2-L1 之间的跨链消息放行,现在也只有它们能发布欺诈证明。只要这 9 个节点联合串谋,理论上还是可以让用户的「强制交易」无效。

所以,目前 Arbitrum 的强制包含交易/提款,不像路印和 StarkEx 的破产清算模式那样无需 L2 节点许可。但 L2BEAT 还是对 Arbitrum 的这个方案给予了很高的评价。因为在未来,Arbitrum 会上线名为 BOLD 的 Permissionless 的欺诈证明发布机制,挑战者节点届时将难以或无法串谋(现在其实就很难串谋)。

对Layer2而言,强制提款与逃生舱功能到底有多重要?

按照 L2BEAT 的数据,目前 TVL 超过 5000 万美元,且没有针对 Sequencer Failure 或 Proposer Failure 中的某项提供应对举措的,包括:OP Mainnet、Base、zkSync Era、Mantle、Starknet、Linea、Polygon zkEVM、Metis。这些 L2 都可以在极端情况下导致用户资产被冻结在 L2 提不出来。

所以显而易见,强制提款或破产清算模式有其存在的必要性,虽然目前它只是依靠用户-排序器这个对手方之间的博弈来发挥作用,还称不上真正意义的「随时可提款」(Arbitrum 有 24 小时延时且可能失败,路印最长 15 天延时,StarkEx 有 7 天最大延时),但显然「有总比没有好」。而且强制提款的延时问题,相信可以在未来靠着更精巧的机制设计被妥善解决(目前主要顾及到某些 MEV 科学家可能利用 forceInclusion 发起抢跑交易,所以要引入延时。具体详情可以阅读各大 L2 项目方的官方资料)

随着去中心化 Sequencer 被越来越多 L2 纳入路线图,以及 Vitalik 为首的以太坊基金会不断向人们加强对 Layer2 安全性的教育,类似强制提款的抗审查交易功能势必会被越来越多人所重视,这将使得以太坊 Layer2 体系更接近一个抗审查、去信任化的金融基础设施体系。如果 Layer2 实现了去信任化的资金进入进出方式,相信将会有更多做市商与流动性提供者进入 L2 基础设施,为整个 web3 的 mass adoption 向前推进一步。

原文链接

文章来源于互联网:对Layer2而言,强制提款与逃生舱功能到底有多重要?

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策井自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场

上一篇 2023年11月8日 下午6:55
下一篇 2023年11月8日 下午7:26

相关推荐

  • ConsenSys:以太坊上海升级临近, ETH质押提款终极指南

    《 ConsenSys:上海升级 ETH 质押提款终极指南 》 来源: ConsenSys 编译: Lynn MarsBit 执行摘要 以太坊正在经历一个基础设施快速发展的时期。自 2015 年以太坊区块链的首次实施推出以来,它已经经历了一系列计划的技术升级。每一次升级都使以太坊的愿景进一步成为焦点——成为开放的、去中心化的、可信的、无权限的、可编程的基础设…

    2023年4月10日
  • Polygon zkEVM 主网测试版发布纪念 NFT 现已开启铸造

    ChainCatcher 消息,Polygon zkEVM 主网测试版将于今晚上线,由官方发行的纪念 NFT “To Ethereum, with Love” 现已开启铸造。(来源链接) 文章来源于互联网:Polygon zkEVM 主网测试版发布纪念 NFT 现已开启铸造

    2023年3月28日
  • HUMANS将于3月19日为Web3创始人和投资者组织路演日活动

    来源:HUMANS HUMANS 是一个帮助需要融资的公司开展募资活动的路演平台,本周将举办一场针对 Web3 创始人和投资者的线上活动——{TGE Q2} 创业公司路演日。 {TGE Q2} 创业公司路演日为 Web3 创始人提供了一个独特的平台,展示他们的项目,给予投资者一个深入了解并与 Web3 和区块链领域最令人激动的创业公司背后的创新者建立联系的绝…

    2024年3月14日
  • Web3 合规工具 Verofax 将通过众筹完成 75 万美元融资

    ChainCatcher 消息,Web3 合规工具 Verofax 将在巴林中央银行许可和监管的 Beban 众筹平台上完成 75 万美元融资。GCC 投资者可以通过 Beban 众筹平台参与 Verofax 的 75 万美元融资,最低投资 100 美元。 据悉,Verofax 由阿联酋的政府资助项目 MBRIF 和 Hub71 孵化,总部位于阿联酋,在欧洲…

    2023年3月6日
  • Bixin Ventures:我们为什么投资Pendle

    《Bixin Ventures:我们为什么投资 Pendle》 来源:Bixin Venture 投资逻辑 完整的收益策略工具包 在传统金融市场中,利率衍生品的日交易量高达数万亿,市场参与者利用这一金融产品可以进行投机或对冲利率的波动。随著去中心化金融(DeFi)的不断成熟,这类收益的机会也将逐步增加。无论是为 GMX/Gains Network 上的交易提…

    2023年4月17日
返回顶部