Curve 的 Layer 2 选择:ZK Rollup 有何优势?

Curve选择ZKRollup主要是基于安全考量。

原文标题:《基于ZKRollup的Curve要来了》
撰文:蓝狐笔记

在过去几个月的DeFi冲击之下,以太坊网络不堪重负。Layer2和分片是以太坊未来可扩展性的路径。不过分片的成熟落地需要好些年,目前来说,最有可能的扩展路径是Layer2,而在目前的各种Layer2路径中,Rollup系列是最被看好的技术路径。

Rollup系列中主要有ZKRollup和OptimisticRollup,目前它们的进展都还算顺利。9月底Optimism团队宣布其测试网第一阶段开启;Fuel也向测试网推进;Loopring、zkSync、Deversifi(基于Starkware技术)也已经有了ZKRollup的落地。之前蓝狐笔记提到的Zeroswap《ZeroSwap:基于ZK-Rollup的DEX》也要推出基于ZkRollup的AMM模式DEX。Layer2在未来半年到一年时间里会呈现出蓬勃发展的态势,尤其是在DeFi领域。

而Curve在Layer2方面的推进速度较快,如今基于ZKRollup技术的Curve也马上要来了。根据MatterLabs和Curve的公告,在MatterLabs的帮助下,Curve团队将现有的Curve合约重写为Zinc版本,目前已经开放测试网进行测试。

Curve 的 Layer 2 选择:ZK Rollup 有何优势?https://zksync.curve.fi

Curve的Layer2选择

那么,Curve为何选择了基于ZKRollup的Layer2方案?

虽然市场上每个Layer2技术都在提自己的优势,但最终来说,每个解决方案都有其均衡选择。有些协议对于安全的需求没那么高,而对于性能的需求更高,比如游戏类的项目。有些协议在安全上无法妥协,比如DeFi协议,DeFi协议锁定的总资产量超过百亿美元,在其上交易的资金量高达数十亿美元。对于这些协议来说,安全性是首要考量的因素。

当前来看,相对而言,Layer2方面,ZKRollup和OptimisticRollup获得了更多DeFi协议的青睐。尤其是ZKRollup在安全性上接近于Layer1的级别,因此也被视为是未来一段时间内最具前景的Layer2方案。当然,在这个过程中,也有可能会有新的更好的解决方案冒出来,这需要时间来催化。

Curve选择ZKRollup很重要的原因是其安全性的考量,目前Cuvre上锁定的资产量超过15亿美元,近期日交易量大约1.5亿美元,已经具备了相当的规模,无法在安全性上进行过多权衡。ZKRollup几乎可以达到Layer1级别的安全。这是Curve选择ZKRollup的一个重要原因。

相对于采用经济激励的博弈模型,ZKRollup安全性更依赖于纯粹的数学。此外,OptimisticRollup有潜在的安全性问题,会随着其锁定资产量的增加,其安全性反而可能下降。因此,它有一个相对安全的资产范围,如果资产规模过大,可能会遭遇攻击。

此外,在最终性方面,ZKRollup相对于OptimisticRollup也有一定的优势,ZKRollup可以在几分钟内达成最终性,它支持资金快速撤回到Layer1。而OptimisticRollup有一个争议延迟时间的设计,一般至少需要一周时间。

当然,OptimisticRollup也有其优势,相对于ZKRollup,它在可编程性方面更友好,它支持EVM兼容,在将现有以太坊智能合约带入Layer2方面更便捷。

为了解决这一短板,MatterLabs宣称其在ZKRollup上实现了一些突破,尤其是支持任意用户定义的智能合约方面。MatterLabs引入Zinc编程语言和对SNARK友好的ZincVM,并为以太坊实现了递归PLONK证明验证。这三者结合将支持在ZkSync上的智能合约。

Zinc编程语言

根据MatterLabs的公告,在目前情况下,必须使用Zinc编程语言编写ZincVM的智能合约。Zinc遵循简化的Rust语法,同时借鉴了来自Solidity的所有智能合约元素和结构。Zinc在结构上跟solidity基本相同,将现有的Solidity代码转换为Zinc相对容易。不过,当前它还不支持图灵完备(后续有计划支持),因此它禁止递归和无限循环。此外,当前的Vyper程序都可以同构转换为Zinc。有经验的Solidity/Vyper的开发者可以在几天内掌握。

Zinc本身不是图灵完备,不过在它上面可以完成在Solidity上的工作,进行少量的修改即可。目前多数DeFi应用的代码很少需要循环或递归,此外,图灵完备的组件也可以通过利用交易级别的递归来重新实现。

ZincVM

按照MatterLabs的介绍,合约用Zinc编程语言进行编写和编译。ZincVM字节码和SNARK验证密钥可以以无须许可的方式部署到zkSync网络。

合约会在Layer2内分配到一个新地址。当用户跟合约交互,zkSync的验证者会执行ZincVM操作码,并产生交易有效性的零知识证明。证明将由rollup区块电路通过已部署的验证密钥来进行递归验证。区块证明则由以太坊上部署的zkSync智能合约验证,以授权实现状态转换。在可组合性方面,所有zkSyncLayer2的合约都可以相互调用,跟以太坊主网上一样。

用户密钥管理

根据MatterLabs的声称,zkSync直接集成到结账流程中,这种集成类似于web2.0的单点登录的身份验证方案。假设zkSync网站被黑,也需要通过用户以太坊钱包额外以消息签名方式进行双重因素验证。该签名当前由其服务器验证。为提升用户体验,MatterLabs正计划跟其他团队合作开发通用的以太坊Layer2签名标准。

开放测试

测试网功能已经齐全。用户可以编写合约,并部署到测试网上,进行本地测试,并生成智能合约执行的零知识证明。每笔交易会在zkSync测试网上进行真实代币转移,这些都会反映到区块浏览器和钱包中。用户需要用真实的测试网ERC20代币进行交易。

当前局限

目前ZincVM还没有集成到zkSync核心中。Zinc编程语言中的一些重要功能也可能有缺失。这有待后续的完善。

来源链接:mp.weixin.qq.com

免责声明:本文来自网络投稿,观点仅代表作者本人,不代表自链财经赞同其观点或证实其描述,版权归原作者所有,转载请注明出处。
温馨提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。

公众号