ZKSync 產品與生態:靈活組裝的擴容捷徑

鏈茶館
2022-06-24 22:12:21
收藏
從證明系統、數據可用性模式、開發語言和整體架構對比了StarkWare和ZKSync。除了整體架構方面,二者的核心角色類似、細節尚不明確外,其他方面都有不小的差異。

作者:echo_z,鏈茶館

隨著Optimism發幣、Arbitrum開啟Odyssey羊毛大戰,2022年下半年注定是L2百花齊放的階段。此前,鏈茶館已撰文詳述過L2的背景ZK系的StarkWare專項介紹,而作為ZK系的另一個代表項目,ZKSync也值得關注。本文將在與StarkWare對比的框架下,深度解析ZKSync的產品架構及運營生態。

一:產品體系

ZKSync的產品早已有之,但在1.0階段,僅僅支持支付等簡單功能;到2.0產品實現了EVM兼容,開始發揮其真正實力。

ZKSync2.0在去年6月上線測試網,但沒有向開發者開放;去年10月上線第一款zkEVM產品UniSync,也就是Uniswap在ZKSync的版本;直到今年2月,終於向開發者開放了ZKSync2.0開發工具,開始部署生態。目前ZKSync主網產品仍然在1.0階段。本文將重點圍繞2.0進行介紹。

1.1 證明系統:SNARK vs STARK

ZKSync與StarkWare在最底層所選擇的證明系統不同,ZKSync選擇的是較為成熟的SNARK技術,而StarkWare則是自研的STARK系統。底層技術的差異,也使得二者的性能潛力、產品路線圖迥然。

業界對於這兩種證明系統的共識是:在計算量較大的情況下,STARK的可擴展性和速度會明顯勝過SNARK,而且STARK更安全[1]。

在可擴展性和速度方面,STARK能夠生成包含更多計算結果的證明。雖然STARK所需要的字節數更多、驗證也需要更長的時間,但是更大的證明本身能夠使得每筆交易所分攤的gas更低。

在安全性方面,SNARK必須要有受信的初始化(Trusted Setup),有一定的信任前提,而STARK則不需要這個前提。

1.2 數據可用性模式:顆粒度不同的混合模式Volition

數據可用性(Data Availability),簡單解釋其含義為,除了交易更新完的最終狀態數據之外、用於復原交易歷史的其他相關信息,是否能被獲取。如果這些必要數據都放在鏈上,就是Rollup模式,安全級別更高、同時也因為消耗了更多鏈上存儲空間而更昂貴;如果放在鏈下就是Validium模式。數據可用性模式的選擇,本質上是安全性和效率之間的取捨。

在這一點上,StarkWare和ZKSync都採取了「Volition」模式,即Rollup和Validium的混合,用戶可以自主選擇用哪種方式來存儲數據。

image

來源:https://medium.com/starkware/volition-and-the-emerging-data-availability-spectrum-87e8bfa09bb

Volition的設想最早由StarkWare提出,上圖出自其2020年發布的博客。不過到目前為止,StarkWare和ZKSync都還沒有將Volition落地。但是在ZKSync的路線圖中,似乎對這一功能設計更為重視,專門命名為ZKPorter,並且將ZKPorter和zkEVM並列為兩大架構上的突破[2]。

值得注意的是,StarkWare和ZKSync對於用戶可選擇的「顆粒度」設定是不同的。StarkWare選擇的顆粒度更細,實現難度也更大。

StarkWare的設想中,用戶將會以「每筆交易」為單位,自主選擇數據可用性模式。但這樣可能會帶來一個問題:當用戶的同一個賬戶,同時選擇這兩種模式時,如果安全級別更低的Validium交易出現了問題,那在這筆交易之後出現的Rollup交易是否也會受到影響?按照StarkWare的早期設想,為了防止數據不可用性的攻擊,設計了最小回滾機制,即如果檢測到有數據不可用,就會將交易歷史回滾至上一个數據可用的區塊狀態。在最壞的情況下,最小回滾機制可能會要求所有數據都發布在鏈上,其實又回到了Rollup模式[3]。相關細節還未公布,但可以想見難題不少。

而在ZKSync的設計中,用戶將以「賬戶」為單位,選擇數據可用性模式。也就是說,Rollup賬戶的交易都將以Rollup模式進行,ZKPorter賬戶的冗餘數據則都會放在鏈下。如此一來,兩種模式下的交易其實是隔離的,各有各的交易歷史,不會相互影響。不過,ZKSync也會允許zkRollup和ZKPorter的賬戶之間進行互操作,猜測這樣的交易會同時記錄在zkRollup和zkPorter中,保證安全性。

image

來源:https://blog.matter-labs.io/zkporter-a-breakthrough-in-l2-scaling-ed5e48842fbf

1.3 開發語言:原生語言Cairo vs Solidity優先策略

StarkWare在很長一段時間內都以原生語言Cairo作為唯一的開發語言。Cairo也是StarkWare團隊自研的語言,能夠很好地適配STARK證明系統,但由於要求開發者學習新的語言,造成了進入門檻高的問題。

在兼容EVM方面,StarkWare的解決方案是由第三方團隊Nethermind開發Solidity到Cairo的編譯器Warp。Warp1.0版本由於生成的Cairo文件過大,普及率並不高,但Warp2.0版本借助了Yul(一種Solidity的中間代碼),大幅提升了效率[4]。就在本月,Warp2.0開始進入審計,即將投入使用。

ZKSync則在更早以前就採取了Solidity優先的策略,ZKSync2.0上線時就允許開發者用Solidity編寫合約。其實現方式如下圖所示:以LLVM作為編譯器後台,通過Yul將Solidity編譯到LLVM,再編譯到zkEVM。這樣做的好處在於,未來其他語言也可通過類似的方式(即先編譯到LLVM)來實現兼容。ZKSync目前的開發和維護集中在Solidity語言上,未來將開發自研的語言Zinc、開放Rust等語言的兼容。

image

來源:https://blog.matter-labs.io/zksync-2-0-hello-ethereum-ca48588de179

ZKSync的策略對開發者來說無疑降低了進入門檻,通過EVM兼容來快速吸引生態項目、沉澱TVL是其核心目標。但是鑑於StarkWare的編譯器Warp2.0即將上線,預期同樣能夠吸引Solidity開發者(但不確定功能上有多少差異),ZKSync的發展很有可能會受到影響。

1.4 整體架構:均以Sequencer和Prover為核心

整條網絡的核心架構,將會決定網絡以怎樣的方式來實現去中心化。整體上,二者都將以Sequencer和Prover作為架構的核心。Sequencer的核心作用包括:挑選有效交易並執行計算,而Prover則將為計算結果生成證明。

StarkWare還未明確Sequencer和Prover的角色會分開還是合併,而ZKSync則已經將Sequencer的角色稱為「全節點」,推測和Prover將會是獨立的實體[5]。此外,ZKSync的架構中還增加了交互器(Interactor)以輔助L2和L1的交互、計算手續費等,以及偏執監視器(Paranoid Monitor)來做健康監控。

如何實現去中心化,從長遠來看非常重要,但這一課題對於發展較為初期的ZK Rollups來說,還是下一步的問題,目前StarkWare和ZKSync都還沒有非常明確的答案。

1.5 小結

本節從證明系統、數據可用性模式、開發語言和整體架構對比了StarkWare和ZKSync。除了整體架構方面,二者的核心角色類似、細節尚不明確外,其他方面都有不小的差異。

在證明系統方面,StarkWare採取的STARK比ZKSync採取的SNARK具有更強的可擴展性和安全性;在數據可用性模式方面,二者都提供了用戶可自主選擇的Volition,但ZKSync將以賬戶為單位,而StarkWare以每筆交易為單位,ZKSync的顆粒度更粗、路徑也更簡單;在開發語言方面,StarkWare優先開發了原生語言Cairo,隨後通過第三方公司開發的編譯器實現EVM兼容,而ZKSync則在最開始就採取了Solidity優先的策略,對開發者門檻更低,但現在依然面臨StarkWare的強力競爭。

總體而言,ZKSync的路線更「親民」,產品也更類似蘋果的組裝模式,核心技術如SNARK、LLVM等均來自業界或學界的已有成果;相對來看,StarkWare則更硬核,不論在技術還是產品層面,都選擇了更難的原創路線。

二:運營生態

ZKSync的生態項目集中在Defi和基礎設施方面。

在ZKSync的官網,可以看到正在遷移到ZKSync2.0的成熟項目(部分如下圖),Defi類包括1inch、FRAX、Zigzag等;基礎設施類包括Gnosis Safe、Snapshot等、跨鏈橋如Orbit、中心化交易所如Banxa。

image

來源:https://ecosystem.zksync.io/

在其notion頁面則羅列了即將或已經部署在ZKSync2.0的新興項目。其中,Trustless Currency Protocol是一個類似Maker的抵押借貸項目,SyncSwap是一個類似Uniswap的代幣兌換DEX。Mint Square是一個基於ZK Rollups建立的NFT市場,也在StarkNet測試網上進行了部署,tofuNFT則是一個多鏈NFT市場,在BNB、ETH、Arb等多條鏈上均已部署。

image

來源:https://matterlabs.notion.site/zkSync-2-0-Testnet-Applications-e38328bccda7472793024a25e26a1cac

整體而言,ZKSync2.0的生態主要來源於成熟Defi及基礎設施項目的遷移、多鏈NFT市場的部署,除此之外似乎還沒有令人眼前一亮的項目。對比來看,StarkNet測試網上有諸多遊戲項目、以及StarkNet原生的Defi項目,從品類上比ZKSync要更豐富且獨立。

三:團隊及融資

Matter Labs聯創及CEO Alex Gluchowski來自德國,2011年畢業於柏林工業大學(Technische Universität Berlin),獲得碩士學位。其後,曾在多家公司擔任研發/CTO等職位。2013年開始創業,聯合創辦過健身平台Somuchmore GmbH(2013.12~2015.9)、野營車租賃平台PaulCamper(2015.10~2017.8)。2017年9月,進入香港的Entropy Labs擔任研發,從此開始進入區塊鏈行業。2018年年末,聯合創辦Matter Labs。

另一位聯創Alexandr Vlasov的經歷相對簡單,2006~2012年就讀於莫斯科國立大學,專業為核與粒子物理學,2013~2018年就讀於加拿大的麥吉爾大學,獲得電子工程博士學位,隨後就加入了Matter Labs主管研發。

截止目前Matter Labs總融資額度5,800萬美元,其中5,000萬美元均來自2021年11月的B輪融資,由a16z領投。a16z也投資了Optimism,同時押注OP系和ZK系。

對比來看,StarkWare曾有過ZCash的加密行業成功經驗、團隊以教授領頭,且已經獲得~2.8億美元融資,ZKSync的團隊和融資相對草根。

四:優勢及挑戰

ZKSync的風格有些類似蘋果,善於將成熟技術組裝成用戶可用的新產品,以Solidity為優先的策略也對開發者非常友好。對於ZKSync來說,現有的zkEVM能否迅速吸引L1上的已有成熟應用、將TVL做高,會是一個關鍵。這或許也是ZKSync希望在L2之爭中占有一席之地的捷徑之路。

然而在這一方面,ZKSync面臨多方面競爭:OP系的Optimism已經發幣,能夠通過代幣激勵來吸引用戶,而Arbitrum近日也已經開啟Odyssey活動,通過營銷活動來吸引用戶和資金;一直以來基於原生語言Cairo、生態較為獨立的StarkWare,也即將上線升級版的Solidity編譯器,降低了開發者進入門檻。在這一場L2之爭中,ZKSync的速度將至關重要。

鏈捕手ChainCatcher提醒,請廣大讀者理性看待區塊鏈,切實提高風險意識,警惕各類虛擬代幣發行與炒作,站內所有內容僅係市場信息或相關方觀點,不構成任何形式投資建議。如發現站內內容含敏感信息,可點擊“舉報”,我們會及時處理。
banner
ChainCatcher 與創新者共建Web3世界