Layer2 系統的安全性和效率取舍

2021-03-04 09:03:19

感謝 Matter Labs 提出關於部分 L1 數據鏈上可用性的問題,我們一直以來都非常重視社區的聲音,並會根據社區的需求修改方案。因此,我們想借着這次機會向大家分享 ZKSwap 开發團隊辛勤工作所交付的產品背後的一些思考。

經過非常謹慎細致的思考之後,為了 TPS 和 Gas fee 的效率,我們決定將 ZKSwap 的 L2 轉账放在鏈下。在 ZKSwap 的設計中,L1 相關的數據在鏈上,L2 相關的數據,比如轉账和交易,存在鏈下。盡管存在鏈下,這部分數據也會被驗證者實時公布。

例如,L2 區塊 7831:

https://api.zkswap.info/block/7831/pub-data

三種轉账類型

ZK-Rollup 協議中,一個區塊可以包括三種類型的轉账:

類型 1:來自 L1 的存款和創建 AMM 交易對的轉账;

類型 2:L2 發起且只能被 L1 驗證的轉账。比如,公鑰轉账將需要 L1 籤名來確保 L1 账戶的密鑰所有者能將他們的账戶與 L2 账戶關聯起來,因為電路不能檢查確認 L1 的籤名;

類型 3:由 L2 籤名驗證而無法被 L1 驗證的轉账。

ZKSwap 安全模型

一個區塊內記錄的 L2 轉账在 L1 上只有部分記錄。只有區塊信息的總結會被記錄在 L1 鏈上,例如區塊哈希、新默克爾根、區塊高度等等。

當一個區塊的轉账被提交到 L1 上,區塊就被創建出來,區塊哈希會被驗證。由於以太坊內建了 sha256 算法,所以區塊哈希通常也使用 sha256 進行計算。

為了保持數據可用性,所有的轉账數據都應該被提交到 L1 上,這被稱為「公开數據」。一筆轉账的公开數據與其在 L2 上的轉账並不完全相同。系統在進入「退出模式」時將使用公开數據,這樣任何人都能恢復最近的經過驗證的默克爾樹。

電路

L2 的電路與 L1 的智能合約能夠協同工作,確保 ZK-Rollup 協議的功能性。L2 的電路保證了以下幾點:L2 轉账籤名正確、L1 / L2 轉账執行正確、區塊信息計算正確、及時有效地更新账戶信息——包括默克爾根、账戶默克爾樹和費用信息等等。

雙驗證模式

驗證模塊對與安全性來說十分重要,是 ZK-Rollup 協議的基礎。

公开數據驗證——驗證第一類和第二類轉账的內容和次序。例如,驗證存款需要確保存款數額和信息與 L1 上記錄的相同,並且順序無誤。

區塊驗證——驗證一個區塊裏的轉账被正確執行,並且 L2 的账戶默克爾樹根被及時恰當地通過零知識證明進行更新。當一個區塊被驗證之後,更新的默克爾根就取得了最終性。

總結來說,整體的安全假設如下:

· 一個區塊的所有轉账公开數據在鏈上;

· 驗證一個區塊中第一類和第二類轉账被正確執行;

· 證明一個區塊內的所有轉账被正確執行、账戶默克爾樹被正確更新、一個區塊內的所有轉账的公开數據能夠匹配;

· 證明該區塊內所有公开數據都被正確計算;

· 提交給 L1 的區塊公开數據與零知識證明系統所證明的數據相同。

公开數據不上鏈時會發生什么?

如果公开數據不在鏈上,安全假設「提交給 L1 的區塊公开數據與零知識證明系統所證明的數據相同」就不能被驗證。這時候,當 L2 的零知識證明系統陣營所有轉账都被正確執行、默克爾樹都被正確更新時,只能說明一個區塊內的轉账有效,而不能證明來自特定區塊的其他轉账。

大多數第三類轉账都是安全的,但是對於提現操作來說,提現的收款人未經驗證,不能被零知識證明系統證明。

對於第一類轉账來說,所有可能的第一類轉账都能被證明,但不能被驗證。類如,零知識證明系統能證明一些非 L1 發起的存款轉账。

由於只有驗證着能提交公开數據或者區塊證明,所以社區必須信任驗證者是誠實的。當驗證者誠實時,以上所有的風險都不會存在。對 ZKSwap 來說,所有公开數據都在瀏覽器中同步公布,任何人都可以驗證公开數據和任何鏈上區塊。

將公开數據存在鏈下不是一個草率的決定。這個選擇背後的主要原因是降低 Gas 費和提高可擴展性。

Gas 費用

保持 ZK-Rollup 協議運行的一個痛點是 Gas。為了向 L1 提交一個區塊,需要消耗以下 Gas Limit (參考典型用例:只展示了區塊中的 L2 轉账(交易)):

一個區塊中,最多可以包括 120 筆交易轉账。

如果要在 L1 提交驗證一個區塊,需要消耗大約 23 萬 Gas Limit,call data 費用約佔 31%。

可擴展性(TPS)

可擴展性(TPS)是另一個考慮因素。假設一筆 L2 轉账消耗 1850.7 Gas,那么 ZKSwap 將消耗 10% 的以太坊 Gas,整體 TPS 將在 51.5。

這是在只有交易、沒有提現的情況,所以正常使用中將消耗更多 Gas,TPS 會更低。

結論

保護用戶資金安全對所有區塊鏈項目來說都很重要,也是 ZKSwap 的核心價值。當轉账的公开數據沒有提交上鏈時,安全性就依賴於零知識證明電路。當驗證者誠實時,用戶的資產就是安全的。從技術角度來說,如果驗證者不誠實,安全性將會是一個問題。這是降低 Gas、提高 TPS 的一個權衡。

考慮到 Gas 消耗和可擴展性,ZKSwap 做了一個艱難的決定,將公开數據不上鏈,換來對 L2 用戶更高的 TPS 和更低的 Gas 消耗。

我們愿意傾聽开發者和用戶的反饋,讓 ZKSwap 系統更好。我們也可以在任何時間將所有數據上鏈。事實上,在發布 ZKSwap 之前,我們已經實現了 100% 數據可用的版本(所有 L1 和 L2 轉账都在鏈上),所以我們可用隨時升級至這個 100% ZK-Rollup 的版本,提供更高的 Gas 消耗、更低的 TPS,但是更安全。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

BTC波動率 : FOMC會議

關鍵指標 (香港時間 9 月 19 日凌晨 12 點 -> 中午 12 點): BTC/USD 現...

星球日報
4 10小時前

HTX成長學院:美聯儲降息50基點將會帶來哪些影響?

一、引言 2024 年 9 月 19 日,美聯儲宣布將聯邦基金利率下調 50 個基點至 4.75%...

星球日報
4 10小時前

預售超14萬部,速覽新一代Web3智能手機Solana Seeker

9 月 19 日,Solana Labs 旗下的 Solana Mobile 在新加坡的 TOKE...

星球日報
4 10小時前

深入分析World Liberty Financial的價值:特朗普競選經費劣勢下的新選擇

作者 : @Web3Mario(https://x.com/web3_mario) 摘要 :首先祝...

馬裏奧看Web3
4 10小時前

聚焦TOKEN2049:沉寂已久的加密市場有哪些新看點?

原文整理: flowie, ChainCatcher 9 月 18 日,Web3 最受矚目的年度峯...

星球日報
4 10小時前

DePIN專題報告:超過370個代幣上线,Helium用戶突破11萬大關

DePIN Helium | Glow | Livepeer | IoTeX | TADA E V...

星球日報
4 10小時前