Devcon笔记:MEV、抗审查、ZK、rollup 和账户抽象

Zeqing G热度: 34108

就以太坊技术规划而言,本届 Devcon 讨论最多的五个主题是 MEV、抗审查、ZK、rollup 与下一代账户系统。

原文作者:Zeqing G

原文来源:medium

本届 Devcon 是 COVID 之后的第一届,也是以太坊转 PoS 后的第一届。因此会议主要围绕这几年以太坊技术规划展开,同时应用层的内容较少,这也是这次 Devcon 的一大遗憾。就以太坊技术规划而言,本届 Devcon 讨论最多的五个主题是 MEV、抗审查、ZK、rollup 与下一代账户系统。除此之外还掺杂了大量关于以太坊升级路线图与智能合约语言开发经验的讨论。下面我将会总结一下各个主题内有意思的内容。

MEV 与抗审查

MEV (maximal extractable value) 指的是决定区块内交易排序的人可以从区块排序中提取出来的价值。举个例子,当前时间有一个 NFT mint 活动,前 100 名可以 mint 出 NFT,有一千个人想 mint 这个 NFT。所以他们有动力去贿赂排序区块的人,让自己的交易排进前 100,这时 MEV 就产生了。

抗审查问题和 MEV 类似,决定区块内交易排序的人也可以决定哪笔交易不放入区块,这样就产生了中心化审查的风险。想象一下,如果所有打包区块的人都不愿意把 tornado 的交易放入区块,那么以太坊的隐私安全将会受到严重损害。

Devcon 上对 MEV 与抗审查的讨论主要集中在以太坊主网与 rollup 两方面。

由于以太坊主网已经升级 PoS 协议,MEV 也因为 PBS (proposer/builder separation) 被“驱逐”出协议层。因此 Devcon 上大多数人更加关心 builder 去中心化的问题。该问题有以下几个方面:

  1. Block builder 策略有待改进,build 本身对于以太坊网络的意义还没有被挖掘完;
  2. Block builder 本身几乎被 flashbots 垄断,flashbots 又是一个美国人设立的公司,市场当心其独大后的各种中心化风险;
  3. MEV 套利存在 latency 的问题,这导致多数 MEV 机器人会集中在 latency 低的地区部署节点,从而出现地理上的以太坊节点中心化问题,例如 AWS 宕机可能导致大量以太坊节点下线。

针对第一个问题,Devcon 上 Vlad Zamfir 提出了 smart transaction 的概念。这是一个更智能的 builder,可以帮助以太坊网络抵挡 DDoS,帮用户避免失败交易。当前 Vlad 已经讲概念形式化为论文,做成产品应该还需要一定时间。

针对后面两个问题,市场上最重要的 MEV 玩家是 flashbots,其在 Devcon 宣布为了应对中心化 block builder 的各种风险,将会进行版本名为 SUAVE 的升级。SUAVE 将会完全去中心化,完全开源,无缝支持以太坊,解决 MEV 地理聚集的问题,对 orderflow 更好的支持。

除了上述讨论外,Prysm 的 Terence Tsao 也专门针对 PBS 后的主网审查问题提出了自己的看法,除了老生常谈但遥遥无期的终极解决方案 crList 外,Terence 也提出了一些当前能缓解审查的临时方案:

  • Censorship oracle
  • Censorship filter

总体来说,我认为社区对以太坊转 PoS 后的 MEV 问题研究才刚起步,虽然有 smart transaction、SUAVE 等新内容出现,但是仍然以概念为主。而抗审查问题,我认为社区重视还不够,虽然我们已经有了长期方案 crList,但是我认为社区和开发者需要更加关注前 crList 时代的解决方案。毕竟扩容的 danksharding 前都有 proto-danksharding,抗审查前也需要一样的内容。

社区对 Rollup 的 MEV 与审查讨论较少。因为 Rollup 本身就是中心化出块的架构,所以 MEV 侵蚀以太坊主网去中心化的隐忧在 rollup 上并不存在。Optimism 已经明确表示 op 将会捕获 MEV 并将价值分配给协议本身。但是因为 rollup 是中心化架构,rollup 存在比较严重的审查与监管风险。所以 rollup 本身几乎无法篡改用户的交易,但是其完全可以阻止黑名单上的用户在 rollup 上提交交易。针对这个问题,社区的研究还相当稀少。本次 Devcon 看到的少数在这块有突破的想法是 shutter network。该想法利用密码学的算法,将交易加密提交 rollup,rollup 定序后再解密。这在很大程度上能够缓解 rollup 审查与 MEV 的问题。但是该想法尚处早期,如何跟 rollup 兼容也需要解决大量问题。

ZK

ZK 是本次 Devcon 的显学,每天都有相当多 ZK 的讨论。ZK 本身也是 crypto 里发展速度相当快的方向。关于 ZK 发展的演进,Semiotic Labs 的 Severiano Sisneros 有相当不错的总结

DEVCONSeveriano, Semiotic Labs x Devcon

我们可以从图里看到当前 ZK 当前状态的全部对比,从 Nova 到 Plonk 和 Homomorphic Signatures。

ZKEVM 同样受到极大关注,ZKEVM 是一种支持 ZK 的虚拟机,且兼容以太坊虚拟机本身,这样可以让以太坊生态无痛移植至 ZK rollup。这块几乎当前社区最热门的方向,但是我们必须冷静看待,就像 V 神在 rollup days 上所讲的:

ZK-EVMs will not be bug-free for a long time.

除此之外,zk rollup 的发明人 Barry 在跟朋友聊天时表示,明年 ZKEVM 顺利的话能实现 ERC20 的 transfer。所以这仍然是一个还需要多年时间的漫长进程

在 Devcon 上,我们还可以看到万物皆可 ZK 的趋势,很多项目尝试用 ZK 重构原有的架构。这个趋势很难说是对或错,但是考虑到 ZK 应用的大规模铺开仍然需要时间,因此在我看来,这样有一些过热。

Rollup

首先我们来了解一下 rollup 是什么。Rollup 是一种中心化出块,去中心化验证的技术。换句话说,rollup 为了保证性能,它选择用高性能的服务器中心化的执行验证交易,以达到足够高的性能;因此同时,rollup 会把交易压缩写入主网,因此主网拥有 rollup 全部交易记录。当 rollup 宕机或者被监管后,通过主网把钱存入 rollup 的用户仍然可以直接与主网合约进行交互,证明自己在 rollup 上拥有的资产数量并将资产提出。所以 rollup 实现了一种中心化快速出块,去中心化智能合约验证资产与提币的架构。其资金安全由以太坊保护。

Rollup 领域是受 cosmos 模块化区块链想法影响最深的方向。我们可以看到 optimism 在 Devcon 上提出了 op stack 的概念,将 rollup 分层:

  • Consensus
  • Execution
  • Settlement

其中,Consensus 又被分为 DA (数据可用性)与 Derivation 两层。开发者可以根据自己的需要在每一层选择不同的技术栈。至此,模块化区块链的大趋势已经在 rollup 领域确立。原因也很简单,链是为了服务开发者与应用的。过去因为开发公链的难度太大,多数应用公司与开发者只能去适应链本身。但是随着 rollup 技术的成熟与简化,未来利用 rollup 搭建自己的应用 rollup(对比 cosmos 的应用链概念)的应用会越来越多。因为这样更能根据自己的应用特点高度定制 rollup 的特性,不再需要看 rollup 平台本身的脸色。dYdX 从 starkex 迁移至 cosmos 就是这个趋势的体现。那么在此基础上,模块化这种简化开发过程的技术就成为了 rollup 发展的必然方向

除此之外,rollup 本质上也是一种跨链桥的良好实现,本届 Devcon 有人意识到了这边,并提出了 rollup 是最安全的跨链桥的观点(Rollups Are the Most Secure Bridges)。在未来,rollup 与跨链技术的相互结合将会是一个很有意思的方向。

下一代账户系统

由于 MPC 钱包与抽象账户的成熟,下一代账户系统在会议上受到相当大关注。被关注的理由也很简单,现在的账户系统太难用了。一个小白用户要进入 crypto 的世界,他/她需要学习以下内容:

  • 私钥是什么,私钥和密码有什么区别;
  • 安全保存私钥;
  • 丢私钥的严重性;
  • 没有 native token,不能转账(比如 USDT)
  • batch transaction
  • 等等等等

这些问题对于普通用户难度太大,如果 crypto 的野心是 on boarding billion 级别的用户,那么这些问题必须被解决。

在这个基础下诞生了两种改善钱包体验的技术:MPC 钱包与抽象账户(abstract account)。

其中 MPC 钱包的好处是在尽量不影响私钥安全与去中心化的情况下,改善私钥保存与恢复的用户体验。我们参考 imToken 在 Devcon 分享的 MPC 方案:

DEVCONChangwu, imToken x Devcon

imToken、用户手机与第三方存储服务器(比如 iCloud)各保存一个 secret share,每次发送交易都需要三个实体中的两个联合发送交易。我们考虑 share 被盗与 share 丢失的情况:

  • 只有当三方中有两方同时被盗,私钥才会被黑客获得,因此黑客需要在短时间内同时攻击 imToken 服务器、iCloud 服务器与用户手机中的两个;相较于 imToken 直接保存私钥,安全提升,相较于用户直接保存私钥,用户体验提升;
  • 同理,只有三者中两个同时丢失 share,私钥才无法恢复;相较于让用户直接保存私钥,私钥恢复难度下降,用户体验提升。

除此之外,MPC 钱包因为是链下钱包,因此天然支持多链,也能方便支持复杂资管策略,因此是一种相当好的下一代钱包方案。

抽象账户在密钥管理与恢复上有着和 MPC 钱包类似的效果,但是因为它是链上钱包,因此对于复杂多签策略的开发与维护难度比 MPC 更大,且不支持多链。但是抽象账户也有着 MPC 钱包无法比拟的好处。比如用户可以在没有 native token 支付 gas 的情况下转账 ERC20 代币,这将对只想使用 crypto 不想炒币普通用户提供了巨大便利——未来用户只要账户里有 USDC 就可以进行消费。

抽象账户是在去年底实现了重大突破,EIP-4337 一举解决了过去抽象账户面临的棘手问题。以太坊社区多年来一直在讨论抽象账户,之前甚至有 argent 与 mykey 尝试用合约的方法实现抽象账户的功能,但是效果都不尽如人意。一大原因是以太坊协议本身不支持合约地址发出交易,导致合约钱包转账手续费过高。

以太坊协议不支持的原因也很现实——抽象账户可能引入 DDoS 以太坊网络的攻击向量。举个例子,节点打包交易前需要判断交易是否合法,如果不合法,节点将会丢弃交易,那么这笔不合法的交易没有上链,交易发送者也没有被扣除手续费。因此,节点判断交易是否合法的过程需要尽量简单,否则攻击者可以免费消耗节点大量计算资源。但引入抽象账户后,节点需要计算的内容大大增加(比如一个钱包只有 USDC,但是想转账,那么节点甚至需要去查询 USDC 对 Ether 的价格来判断它是否有足够手续费转账)。这会引发潜在的大规模网络攻击。(想象一下攻击者创建一百万个账号往节点发送不合法但重计算的无效交易)

上述问题在去年底被 EIP-4337 解决。EIP-4337 的想法是将安全风险隔离出协议层,引入 MEV 套利者进抽象账户。每次抽象账户转账的手续费由 MEV 机器人支付,从用户账户扣除的手续费是否足够支付交易手续费由 MEV 机器人判断。这样,以太坊协议并没有任何改变,但是又巧妙实现了抽象账户的功能

以上就是 MPC 钱包和抽象账户在本届 Devcon 的进展与介绍。我认为未来的钱包会 MPC 与抽象账户融合的产物。这点,我赞同 changwu 大哥的看法:

DEVCONChangwu, imToken x Devcon

以太坊升级路线图

最后再简单介绍一下 Devcon 上讨论的以太坊升级路线图:

  • 扩容方面,Danksharding 还需要数年才能完成,但是其实当前最重点是 proto-danksharding,乐观预期在上海升级会实现 proto-danksharding;
  • Proto-danksharding 对以太坊与 rollup 的改善被低估,事实上 proto-danksharding 可能给 rollup 带来 10 倍的手续费改善;
  • 去中心化方面,verkle tree 已经上线测试网,如果 verkle tree 合并成功,将会给以太坊轻节点带来革命性提升,当前 verkle tree 问题主要集中在算法太慢,IO 太重,数据库结构重构方面。

总体来说,本届 Devcon 是对过去三年以太坊社区技术的总结,也是对未来的规划。这几年,以太坊上出现了相当多激动人心的技术与架构演进,未来也有很多重大升级。只要以太坊去中心化与理想主义的底色没有变,我相信以太坊的未来是值得期待的。

以上就是我对 Devcon 的总结与观察,由于内容太多,难免有错误,欢迎大家跟我讨论交流。

责任编辑:Kate

声明:本文为入驻“MarsBit 专栏”作者作品,不代表MarsBit官方立场。
转载请联系网页底部:内容合作栏目,邮件进行授权。授权后转载时请注明出处、作者和本文链接。未经许可擅自转载本站文章,将追究相关法律责任,侵权必究。
提示:投资有风险,入市须谨慎,本资讯不作为投资理财建议。
免责声明:本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况,及遵守所在国家和地区的相关法律法规。