今天 星期三
2020-06-04 22:46:28
以太坊Layer 2 扩容之争 四大方案优劣势对比

随着以太坊网络的持续拥堵,众多 layer 2 解决方案在近期扎堆上线以争取市场份额,对此以太坊联合创始人 Vitalik Buterin 于近日转发了一条推文,并评论称:

「以太坊的 layer 2 扩容解决方案的初步部署基本成功,剩下的便是改进工作。」

此后,他还提到称:

面临的挑战是,用户需要用到钱包,将他们的币存放在 rollup 或 plasma 中,这是一个采用挑战问题,而不是技术挑战。这需要加强保障,这样用户就能够舒适地在 layer 2 系统中活动。如果设计正确的话,运营商不会消失,也无法冻结资金,但设计要考虑到,即便 layer 2 消失了,你也可以尽快地提取出资金。

因此,如果钱包检测到运营商离线,它会提取你的币并无缝切换为链上钱包。特别是 ZK rollup 理论上可以允许在几分钟内撤回,即使是在运营商不合作的情况下。

对于上面的评论,没有了解过以太坊生态的读者,可能会对 rollup、plasma、ZK rollup 这些专业名词感到陌生,总的来说,这些方案都属于 layer 2 解决方案(ZK rollup 有点特殊,但也可以认为是 layer 2),目的是解决以太坊网络的扩容问题,根据 ethgasstation 网站的数据统计显示,当前占以太坊网络使用量最大的交易源自 Tether 的 USDT 稳定币,其次则是一个庞氏骗局项目。而目前稳定币的活动正处于高速增长的阶段,因此以太坊网络的拥堵情况,急需要通过 layer 2 网络为主链分担交易。

OMG 网络先声夺人,Vitalik 向 Tether CTO 推荐 rollup 解决方案 

比如 OMG 网络(原 OmiseGO)先是宣布 V1 版本上线以太坊主网,随后公布了和 Bitfinex 及 Tether 的合作计划,后者将支持使用 OMG 网络进行 USDT 的转账,以减少确认时间和手续费。

而 OMG 网络使用的方案,正是上面提到的 plasma 方案,这是由 Vitalik 和闪电网络作者 Joseph Poon 在 2017 年首次提出的一种以太坊 layer 2 扩容方案。但实际上,plasma 解决方案存在着较大的缺陷,相关的团队(例如 Plasma Group)也已从该解决方案中撤离,唯独 OMG 网络在坚持开发这种方案。

因此,在看到 Tether 决定采用 OMG 网络后,Vitalik 忍不住向 Tether CTO 推荐起了 rollup 家族的解决方案。

所谓 rollup 解决方案,是去年开始兴起的一类 layer 2 扩容方案,目前主要分为了 ZK Rollup 和 Optimistic rollup 这两个分支,而它们也是当前最有希望的以太坊 layer 2 扩容方案。

StarkWare 并非采用 ZK Rollup,方案重命名为 validium

当然,这里 Vitalik 所提到的 StarkWare,实际上它并没有采用 ZK Rollup 解决方案(尽管其此前一直自称是用 ZK Rollup),在 Vitalik 的追问下,StarkWare 成员 Avihu Levy 解释了他们的设计:

而这样的设计,显然并不属于 rollup 解决方案,但它与 Plasma 又有不同,对此,StarkWare 联合创始人 Eli Ben-Sasson 便建议将他们的方案命名为 validium,以和 ZK Rollup、Optimistic Rollup 及 Plasma 方案进行区分。

 四大以太坊 layer 2 解决方案的简单对比 

好了,摆在我们面前的以太坊 layer 2 解决方案,一下从 2 个变成了 4 个,对于有选择困难症的用户而言,这显然不是什么好事,那它们到底有何不同呢?下面我们来简单分析并对比下:

首先 rollup 方案和 Plasma 方案的最大不同,在于前者将交易的数据放到链上,而 Plasma 只是把链外的数据在以太坊链上进行一个公证,这会引发一个数据可用性的问题,这使得 Plasma 的用户体验很糟,也没有办法真正做到无需信任。

而 rollup 方案的两个分支,ZK Rollup 和 Optimistic rollup,它们的区别主要是前者使用了零知识证明,后者使用了欺诈证明,在表现上,ZK Rollup(这里主要指 zkSNARK)对通用型智能合约的支持较差,因此短期只适合代币的转移和原子互换,这也是它非常适合去中心化交易所(DEX)的原因,而 Optimistic rollup 则支持任意智能合约逻辑的实现,因此非常适合复杂的 defi 应用。

而在可扩展性方面,ZK Rollup 表现则要优于 Optimistic rollup,前者理论上最高可达到 Visa 的 2000 tps 级别。

而关于安全性,Optimistic Rollup 模型基于两个假设:

1.至少 n 个节点中有 1 个诚实节点执行所有 Optimistic Rollup 交易,并且在无效状态转换发布时提交欺诈证明;(也称为 99% 容错共识)

2.Layer 1 网络有强大的抗审查性;

ZK Rollup 模型则基于:

1.Layer 1 网络有强大的抗审查性;

2.零知识证明的可信设置(目前一些新的零知识证明算法已无需可信设置);

而在延迟方面,根据 Loopring CTO Steve Guo 的说法,ZK Rollup 是要远远优于 Optimistic Rollup 的,zk Rollup 只要证明递交上链就意味着交易已最终结算,但 Optimistic Rollup 则需要等待一段很长的挑战期(至少以天为单位),依赖于欺诈证明来保证最终结算性。

总的来说,ZK Rollup 和 Optimistic Rollup 方案各有自己的权衡,如果单从简单的 ERC-20 代币(例如 USDT)传输交易来看,zk Rollup 方案明显要更胜一筹。

最后说说 StarkWare 所采用的 validium,简单说,它是关掉了链上数据的可用性,而依赖于链外数据可用性解决方案(需要信任),好处是可以实现更好的可扩展性,根据 Loopring 的说法,这样的选择可以将理论 tps 扩展到 1 万以上。

也就是说,从安全性、可扩展性和无需信任的综合角度来看,zk rollup 方案是目前最优的。

而单从可扩展性的角度来看,validium 可能会有一些优势,这或许是瞄准社交应用而准备的(例如 StarkWare 自己提到的 Reddit 社区积分)。

通过上面的简单分析,你会选择哪种 Layer 2 解决方案呢?