zkSync vs. StarkWare - 顶尖的两个 ZK Rollup 到底有何区别?

0xLawrence

本文中我们比较了 zkSync 和 StarkNet——两个表现较为突出的 ZK-rollups 以太坊扩容协议。 什么是 ZK-rollups? zkSync 和 StarkNet 二者间到底有何不同? 什么是 SNARKs 和 STARKs?在本文中我们将会一一解答这些问题,并会对各自的生态系统及路线图进行探索研究。

目录

  • 阅读建议
  • 背景
  • Zero-knowledge Rollups
  • ZK 与 Optimistic Rollups
  • zkSync 与 StarkNet
  • SNARKs 与 STARKs
  • EVM 兼容性
  • 生态对比
  • 发展路线图
  • 写在最后

阅读建议

在阅读本文之前,我们建议读者首先对区块链基础知识及 Layer-2 扩容方案有充分的了解,同时最好拥有对 Optimistic rollupsZero-knowledge proofs 的认知。

背景

zkSync 和 StarkNet 是市场目前最大的两个 Layer-2(L2)扩容协议,二者都使用 ZK-rollup 技术实现以太坊网络的扩容。阅读本文后,你将会对 ZK-rollups 的工作原理,以及 zkSync 和 StarkNet 的主要区别拥有更深刻的了解。 除此之外,你还将了解到 zkSync 和 StarkNet 的生态系统及其各自的开发路线图。

ZK-Rollup

在讲解 ZK-rollups 之前,我们先来复习一下:什么是零知识证明(ZKP)?它在 rollups 中有何作用?在密码学中,一方(求证人)能够向另一方(验证者)证明一个表述为真,同时仅证明表述为真,不泄露除了该此之外的任何信息,这种证明方法叫做零知识证明或协议。

至于 Rollup,他的原理是通过定序器节点批量处理数百笔交易,同时对于每笔交易生成一个 SNARK 或 STARK 证明(我们后面会讲到),并将这些交易的汇总结果发布到 Layer-1。这些证明被称为有效性证明,作用是在交易状态被发布到以太坊主网前对交易进行加密验证。

Optimistic Rollup 与 ZK Rollup

Technical comparison of Optimistic Rollup and ZK-Rollup
来源: Vitalik ButerinzkSync、及 MatterLabs Medium

零知识证明使 ZK-rollup 拥有相较于 Optimistic rollup 几乎可忽略不计的提款延迟和更高的安全性,用户不需要等待欺诈证明挑战期结束,也不用依赖交易验证者的诚实。

除了这些优点,ZK-rollups 还具有在未来启用隐私交易的潜力。Zcash Aztec Network 等项目已经实施了由 ZK-rollups 支持的隐私功能,而 zkSync 也已经公开表明过在未来进行隐私交易迭代的打算。

ZK-rollups 在理论每秒交易处理量(TPS)上限、交易完成时间和安全性上优于 Optimistic rollups,但在 EVM 兼容性(我们稍后会讲到)上处于落后位置。由于 ZK-rollups 的这些特征,Vitalik Buterin 认为短期内,Optimistic rollups 在通用 EVM 计算中可能会更胜一筹,但向中长期来看,随着技术的进步,ZK-rollups 的表现将在所有使用场景中胜出。

zkSync 与 StarkNet

相信现在你已经对 ZK-rollup 的工作原理有了一个直观的了解,我们可以开始比较 zkSync 和 StarkNet 了。不过首先,让我们简单介绍一下它们。

  • zkSync V1 是基于 SNARK 证明程序的 rollup 协议,由 MatterLabs 于2020年6月在以太坊主网发布。2022年2月,MatterLabds 又发布了 zkSync V2,这是首个 EVM 兼容的 ZK-rollup。
  • StarkNet 是基于 STARK 证明程序的 rollup 协议,由 StarkWare Ltd. 于2021年11月在以太坊测试网发布。当月晚些时候,其 Alpha 0.4.0版本在以太坊主网发布。

zkSync 和 StarkNet 之间一个重要的区别,就是它们使用不同的证明机制,分别被称为 SNARK(Succinct Non-Interactive ARgument of Knowledge)和 STARK(Scalable Transparent ARguments of Knowledge)。

SNARK 与 STARK

SNARK 和 STARK 最根本的区别在于它们的设置过程、可扩展性和抗量子计算机攻击能力。ZK-SNARK 必须经过一个授信的设置阶段,在这个过程中,所有用户必须信任一小群开发人员不会操纵代码或泄露漏洞信息。但这个设置过程只需要进行一次,并不会带来太大的安全风险,但无论如何降低了其去中心化程度。

而 ZK-STARKs 使用可公开验证的随机数来创建无需信任的可验证系统,从而免去了对授信设置的必要。STARK 也具有一定的量子弹性,而 SNARK 有可能被量子计算机攻击破解。

最后,ZK-STARK 在计算速度和规模上也比 ZK-SNARK 更具可扩展性,其潜在的证明速度比 ZK-SNARK 高10倍。 然而,ZK-STARK 目前的最大缺陷是技术尚未成熟,这限制了它的普及。

EVM 兼容性

由于使用不同的证明方法,zkSync 和 StarkNet 在 EVM 兼容性上也存在差异。zkSync V2 声称其 EVM 兼容性达到99%,需要先将 Solidity 和 Vyper 编译成中间语言 Yul,然后再通过 LLVM 编译成 zkEVM 字节码。此外,zkSync 支持他们自创的类 Rust 零知识证明优化语言 Zinc,它使用 LLVM 直接编译为字节码。不过 Zinc 目前还未达到图灵完备,由于 zkSync 团队一直专注于 Solidity 兼容性优化,Zinc 的开发自2021年9月以来一直处于停滞状态。

来源: [email protected]_supercycled

而 StarkNet 目前尚未开发针对 EVM 兼容性的解决方案。想要在 StarkNet 上部署智能合约,开发人员需要先学习 Cairo,这是一种由 StarkWare 为 STARK 证明程序构建的编程语言。或者,智能合约开发人员可以使用由 NetherindEth 开发的转译器 Warp 将 Solidity 代码转换为 Cairo。不过,仍然有一些 Solidity 特性转译器尚未支持,并且与 zkSync V2 的 EVM 兼容性相差甚远。

StarkNet vs. StarkEx

你很可能听说过 StarkEx,StarkWare 的另一项顶尖技术。StarkEx 并不是一个 ZK-rollup 扩容方案,而是一个可定制的 Layer-2 SaaS(软件即服务),它使用 STARK 证明程序为其他 Dapp 提供扩展服务。

可以通过记住几个关键点帮助区分这两者。

  1. StarkNet 是通用的 Rollup 扩容方案。StarkEx 是专门为 Dapp 开发的扩容工具箱
  2. StarkNet 可以扩展 Ethereum。StarkEx 只能扩展去中心化交易平台
  3. StarkNet 支持 DApp 之间的互操作性,但 StarkEx 不支持

了解两者之间的差异很重要,因为虽然使用 StarkEx 的 DApp 通常被纳入 StarkNet 生态系统,但像 TVL 这样的指标是完全独立的。

生态对比

现在让我们来看看 StarkNet 和 zkSync 各自的生态系统,下面是一张生态对比图。

Ecosystem Landscape of StarkNet & zkSync
来源: StarkNet EcosystemzkSync Ecosystem

截至本文写作时的2022年7月12日,zkSync 的 TVL(V1 和 V2)是5,700万美元。整个协议是100%开源的,其 Github repo 目前获得了1,400个收藏和超过350份克隆副本。它的基础设施主要是用 Rust 和 Typescript 开发的。 目前已有112个 Dapp 在 zkSync 上构建,其中10个已经上线主网。zkSync 上比较著名的项目包括非托管订单簿交易平台 Zigzag 和 DeFi 及 Web3 智能钱包 Argent

目前 StarkNet 的 TVL 在63.5万美元左右,有78个 Dapp 在其上构建,只有寥寥几个上线主网。不同于其他著名的 Rollup 扩容方案,StarkNet 目前是闭源的,其基础设施用 Cairo 构建。StarkNet 上著名的协议包括 Argent 为 StarkNet 打造的 Web3 钱包 ArgentX,以及去中心化 cross-rollup 桥 Orbiter Finance

在社交媒体体量方面,zkSync 同样更胜一筹,其 Twitter 粉丝数高出 StarkNet 将近87,000人,Discord 和 Telegram 频道成员数量也更多。

可以看出,无论是 zkSync 还是 StarkNet,它们的生态系统都远不如 Optimism 和 Arbitrum 这样的 Optimistic Rollup 的生态系统成熟。

发展路线图

在短期内,zkSync 在其测试网推出后的下一个重要里程碑将是其 V2 Alpha 主网的发布,目前尚未公布发布日期。作为其去中心化计划的一部分,他们未来将发布通证将用于质押,以成为 zkSync 网络的验证者。

StarkWare 的短期目标是升级他们的 Alpha 版本主网,为正式发布做准备。他们的长期目标分为3个阶段:建立可用服务、提高性能和去中心化。

StarkWare 认为他们已经实现了建立可用服务的首个目标,目前他们的开发重点是交易吞吐量、交易成本和延迟。StarkWare 最近还发布了他们的去中心化提案,其中包括计划于2022年9月进行的 StarkNet 通证空投的公告。StarkNet 的原生通证将用于系统治理、交易费用支付以及参与 StarkNet 的共识机制。

写在最后

感谢你读到这里,我们已经涵盖了 ZK Rollup 的功能,市场对它们的需求,以及它们与 Optimistic Rollup 相比如何。我们通过研究 zkSync 和 StarkNet 各自的证明程序(ZK-SNARK 与 ZK-STARK)及分别的 EVM 兼容水平解释了 zkSync 和 StarkNet 之间的区别。最后,我们提供了这两个扩容方案截至目前的生态系统和路线图。我们希望这些知识可以为你的 Layer-2 新世界之旅添柴加薪。

Layer 2

Rollups

0xLawrence

Computer Science 学生,区块链、加密货币和 Web3 研究员