技术视角剖析4个Layer2 DEXi:ZKSwap / StarkNet / Unipig / Loopring

ZKSwap团队推出的Layer2扩容方案 Zkspeed相比于市场上其他扩容方案有着技术上的领先优势,由此带来产品上更为良好的体验。

近期以太坊上的高手续费和低 TPS 使以太坊上的 Layer2 扩容之争变成了焦点。ZKSwap 团队推出的 Layer2 扩容方案 Zkspeed 相比于市场上其他扩容方案有着技术上的领先优势,由此带来产品上更为良好的体验。

本篇文章将以市场上既有的产品为基础,从技术方案角度出发,比较当下 ZKSwap 方案和其他扩容方案的异同之处。在具体的展开描述之前,也将简短的介绍下目前市场上的 Layer2 扩容技术的基本状况。

Layer2 扩容技术概述

迄今为止,Layer2 市场上已经是一片繁荣,技术上不断创新,各种产品也层出不穷。对于市场上的所有的产品,从技术角度上划分,可以大体分为三类:

  1. 状态通道:通过促进链下交易来减轻以太坊的负担,具有即时存取、高吞吐的特点,其弊端是设置通道浪费耗时,并且需要在通道中支付锁定资金,同时定时监测通道状态;

  2. 侧链技术:具有独立共识规则的独立区块链,与 Layer1 的共识不同步,这是它的弊端;

  3. rollup 技术:可以看作是一个高级的非托管侧链技术,它将计算放在链下,交易数据以及最新世界状态放在链上,保证了链上数据可用性。

与其他的两种方案相比,rollup 无需提前锁定代币,也不用设置自己的共识规则;而且它还可以保持和 Layer1 同样等级的安全性,同时方案本身具有通用性。随着 Layer2 技术的持续发展,rollup 技术方案也变得多样化,根据交易数据存储的位置和使用的证明方法的不同,又可以将 rollup 技术细分为以下四类:

  1. ZK-Rollup:Layer1 + Validity proofs,数据存储在链上,用零知识证明来保证状态转换的有效性;

  2. Optimistic rollup:Layer1 + Fraud proofs,数据存储在链上,在挑战期间,用欺诈证明来验证状态转换的有效性;

  3. Validium: Layer2 + Validity proofs,数据存在链下,用零知识证明来保证状态转换的有效性,并设立“数据可用性委员会”来保证链下数据的可用性;

  4. Plasma:Layer2 + Fraud proofs,数据存储在链下,用户提供欺诈证明来验证状态转换的有效性;

在实际的产品设计过程中,基于不同的业务场景,设计者往往需要在效率和安全性上做出权衡,要效率还是要绝对安全,每个产品设计时都有自己的侧重面。因此,也就有了上述的四种 rollup 方案。现在市面上的大部分产品,按技术分类的话,应该大都属于上述四类,更准确的说,是属于前三类,第四类方案提出的最早,安全性考虑的较少。

所以,ZKSwap 团队推出的 Layer2 扩容方案 Zkspeed 同样也属于上述范畴。然而,作为 Layer2 赛道上的一个新星,Zkspeed 方案与其他主流产品推出的 Layer2 方案相比会有什么样的技术优势呢?产品体验又有何异同呢? 接下来,我们将选取市场上具有代表性的几个产品,从技术方案和实际体验效果上做一些简单的对比分析,来看看 Zkspeed 扩容方案是否优胜同时产品体验是否更好。

Layer2 技术对比分析

根据我们的市场调研,我们选取了三个市场上具有代表性和前沿性的的产品,分别是 StarkWare 的 starkNet、Uniswap的unipig、Loopring的loopring。首先,我们先从技术方案的角度,来看一下 Zkspeed 和 starkNet、Unipig、Loopring 的区别,具体的如下表所示:

1

表1. Layer2 扩容方案分析表

图片说明:crs 对应需要多次可信设置的 zkp 算法;srs 对应只需要一次可信设置的 zkp 算法

根据上述表格可以看出:

  • Loopring:

使用的 Layer2 扩容方案是基于 ZK-Rollup 方案设计的,同时也支持 Validium 方案,即链上数据可用性是可以选择的。该方案使用的零知识证明算法是 zksnark 算法,需要第三方生成可信设置。

优点是: 这种算法的 proof 大小是常量大小的(比如 Groth16 算法);

缺点是:
可信设置是不通用的,针对不同的交易类型,都需要单独进行可信设置。因此,为了提高证明傲率,每个区块里的交易类型要求为同一交易类型,导致了如果某种类型的交易较少,那它上链的速度就会很慢,因为要等待足够的交易才打包区块。不过,在 Loopring 发布的协议 3.6 版本里可以看到,已经取消了了区块里是相同类型的交易的限制,相信会有更好的交易体验。

  • StarkWare:

StarkWare 团队研发的 Layer2 扩容引擎 starkEx,支持 Validium 方案和 ZK-Rollup方案两种模式可选。状态更新的有效性由零知识证明来保证,其用到的零知识证明算法是 zkstark 算法,

优点是: 与常用的 zksnark 算法不同,zkstark 算法不需要第三方的可信设置,而且其算法本身不依赖数学难题假设,具有一定的抗量子性;

缺点是: proof 的大小比其他的 zkp 算法要大的多,生成证明需要消耗大量的计算资源和存储空间。同时,StarkWare 团队研发的 Layer2 扩容解决方案值得期待,一种以太坊上的基于 STARK 的去中心化无许可 L2 ZK-Rollup产品,并且支持基于 Cairo 语言的通用计算;具体内容可参考链接 starkNet

  • Uniswap:

使用的 Unipig 扩容方案是基于 Optimistic rollup 设计的,如前图所示,改方案存在挑战期,即在挑战期间,用户可以提供欺诈证明来验证执行者的行为是否作恶。

优点是: 该方案兼容 EVM,并且交易数据存在链上,保证了安全性;

缺点是: 由于存在潜在的欺诈性证明,链上事务处理的时机会延缓;挑战成本昂贵,导致挑战模式基本上算是形同虚设。

ZKSwap: 推出的 Zkspeed 扩容方案兼顾了 ZK-Rollup、Validium 和 Optimistic rollup 方案的特点。即实现所有与 Layer1 交互的交易数据全部上链(ZK-Rollup),把单纯 Layer2 的交易数据存放在链下(Validium),交易 hash 数据上链,同时 ZKSpeed 也会提供一个完全上链的版本,这样可以实现更高的安全性,并提供零知识证明保证状态转换的有效性。

ZKSwap 采用自己研发的 Zkspeed 与其他三个扩容方案的差异:

  1. Zkspeed 方案采用 PLONK 零知识证明算法,所有交易类型共用一套可信设置,如此就无需按照交易类型进行区块打包;

  2. Zkspeed 方案采用了 GPU 实现版的 PLONK 算法,相比于普通的 CPU 实现版本运行速度上提升了 3 倍以上,再加上顶尖的硬件设备,使得证明的生成时间大大缩短,大幅提高了系统的吞吐量;

  3. ZKSwap 团队经过反复研究论证,在 Zkspeed 方案上探索性的采用了聚合证明(Aggregation proof) 方案,并首先应用到 AMM 的 DEX 领域(聚合证明方案最早由 Matter Labs 提出,并有一些简单的应用),把多个区块的证明聚合成一个证明,使得链上一次就可以完成多个区块的验证,大大的降低了交易的平均成本。

聚合证明(Aggregation proof)的技术原理如下图所示:

2

图2. Aggregation 方案

在 rollup 方案里,一个很明显的技术特点就是交易的批量处理,即对区块里的所有交易的有效性产生一个证明,然后链上主合约完成证明的有效性验证。如图 2 左侧所示,这和原始的单个交易处理力度相比,已经有了巨大的吞吐率的提升和交易成本的降低。然而,ZKSwap 团队发现,受限于零知识证明算法椭圆曲线参数的选取,一个区块内能批量处理的交易数量是有限的,再加上链上一次验证计算的成本高达 50WGas,导致每笔交易的成本并没有低到预期。因此,ZKSwap 技术团队持续进行技术应用创新的突破,并最终关注到了聚合证明(Aggregation proof)方案。

如上图右侧所示,聚合证明的思想很简单,可简单表述为:把每个区块的 proof 当作输入,把链上验证的过程当作证明电路,证明链上的验证过程是正确的,由于验证的形式就是一个双线性配对,因此,多个 proof 可以进行线性组合,然后利用一次双线性配对完成所有 proof 的有效性验证。 这样一来,多个证明的验证过程由多次变成 1 次,验证成本大幅降低,成本降低的幅度取决于区块聚合度(即一次聚合的区块数)。

目前 Zkspeed 方案支持聚合上链的交易笔数可根据实际情况进行调配,20、10、5笔均支持。同时,为了探索进一步降低交易成本的可能性,ZKSwap 团队追求精益求精,继续对上链数据进行聚合提交,即,多个区块一次提交,节省了一些固定成本,进一步压缩交易成本,最终实现一笔交易的成本消耗最低至1400 Gas,远低于行业其他产品。

展望

遗憾的是,目前 ZKSwap 的方案还不兼容 EVM,ZKSwap 团队的愿景是构建一个支持通用 EVM 的 rollup 扩容解决方案,使得其他应用无需重新编写智能合约就能实现快速迁移,目前 ZKSwap 团队已经投入研究,并取得了一些进展。除此之外,starkWare 和 Matter Labs 分别开发了 starkNet 和 zinc 的 Layer2 扩容解决方案,需要用对应新设计的 DSL 语言来编写证明逻辑,虽然此方案不算完美,但也算是一个阶段性的研发成果。未来 ZKSwap 团队愿和其他团队一起,共同致力于以太坊的 Layer2 扩容建设。

  • 发表于 2021-03-05 21:48
  • 阅读 ( 225 )
  • 学分 ( 1 )
  • 分类:交易所

0 条评论

请先 登录 后评论
ZKSwap
ZKSwap

16 篇文章, 121 学分