解读Vitalik Buterin最近关于Plasma和ZK+Plasma的演讲
Vitalik Buterin最近在伊斯坦布尔的L2DAYS大会上发表了题为”退出EVM验证游戏: Plasma的回归”的演讲,并随后更新了同名博客文章。
在2017年8月,Vitalik Buterin和Joseph Poon发表了一篇名为《Plasma:自主智能合约》的文章,宣布将Plasma作为以太坊的新扩容方案。然而,随后这项技术一直没有取得进展,Plasma在资金退出等问题上非常复杂,导致其很难成为真正可行的扩容解决方案。但是Plasma的失败并非没有用处,zk-Rollup的出现让人们看到了Layer-2扩容的可能方向,它可以解决Plasma的数据可用性问题和退出复杂性问题。
随着Layer-2格局越来越中心化,Vitalik又提出了Plasma方案,并结合zk-SNARK证明探讨更多关于以太坊扩容的可能性。加密研究员Haotian撰文从Plasma应用场景、ZK+Plasma等方面解读了Vitalik的新文章。
在阅读了Vitalik Buterin关于Plasma回归的新作后,我对基于类UTXO的账本的”退出游戏”机制深感兴趣,而且Vitalik似乎有意引导市场朝着ZK+Plasma的方向探索,避免市场停留在Rollup阶段内卷。接下来,我将详细为大家科普解读一下。
在我上一篇解读Vitalik文章中,我提到以太坊的二层扩容方案原本有Plasma、Rollup、Validium、Parallel等多种方案,Vitalik期待中的扩容方向应该是均衡发展,适配各类应用场景进行多样化的Layer-2构建。然而,现实市场格局是,Rollup方案一家独大,并且日益内卷。
然而,Rollup方案虽然安全性高,但对数据可用性的依赖性过大,而纯以太坊数据可用性又受限于性能和成本问题,所以现在市场上出现了一种占据Rollup阵营但却依赖第三方数据可用性的解决方案,这是一种正在扭曲Rollup方案的现状,绝非Vitalik想看到的。
因此,Vitalik在新文章中重新提出了Plasma,并引导了一种ZK+Plasma的扩容解决方案,显然又是一次关乎Layer-2政治的摇旗。的擴容方案。這樣的話,2 層可以用非常中心化的方式,且設計非常複雜的帳本模型來高效擴展,還能複用主網 vailidator 這些系統能力。
總得來說,Plasma 用在支付場景可以保證帳本狀態被有效追蹤和記錄。為何呢?
1)支付場景下,使用者只需要保留餘額狀態,若其他場景得保留全部鏈下狀態資料,會帶來儲存空間壓力;
2)Plasma 安全性依賴「退出遊戲」機制,運營方作惡,使用者可發起挑戰提出自己的資產,若資產狀態複雜則則會很麻煩;
3)目前 Plasma 很難相容 EVM 的諸多無主狀態,使用者很難用 Plasma 的默克爾狀態樹帳本來對應很多非交易狀態,比如 LP、CDP;
如 Vitalik 文章中所說,簡單而言:
Plasma Cash 可以把每個 Token 視為 NFT,有唯一編號,當某個使用者發生轉帳時,運營方會在默克爾樹葉上記錄一筆更新狀態,每個使用者都可以儲存自己全域性的默克爾樹狀態,這樣帳本追溯起來就不會出亂。
若是本就同質化的 Token,使用者可能在消費時存在多次拆分和合併,比如小王 1 個 ETH,先拆分了三份,又把其中兩份合併了,每一份都是不規則的,比如 0.001、0.1、0.3 等,如果大批量的拆分,可能導致默克爾資料冗餘,這樣發起退出遊戲機制時可能會產生問題(挑戰和驗證成本較高),比如回溯近一週的帳本發現對不上帳。如何解決呢?可以為每一次資產拆分或合併狀態匹配一個類 UTXO ID,這樣無論怎麼拆分都能即刻定位到相應交易樹葉。
因為 Plasma 沒有像 Rollup 們一樣有自己獨立的鏈系統,它得時刻確保自己的側鏈記帳和主網保持同步,這就允許其不必刻意追求去中心化,只要有一個可高效記帳的運營主體就行。
但問題來了,若運營方釋出了無效區塊記了假帳,竊取使用者資產該怎麼辦?使用者需要隨時發出「退出遊戲」機制,把 2 層的資產 withdraw 回 1 層,類似於 Rollup 的逃生艙安全機制。
如何做呢?使用者可以晒出自己默克爾樹狀態證明,證明資產轉移過程,並發起 7 天挑戰期,主網驗證節點會檢測使用者是否為最終的資產 Owner,以及使用者是否存在資產雙花等問題。(因為主網節點儲存了更多的默克爾樹狀態可以核對使用者的 Proof 是否有惡意退出之嫌)。
通過「退出遊戲」來約束 2 層運營方作惡,而挑戰期的存在則避免了使用者惡意退出,這就確保了 Plasma 鏈的正常執行。
如前邊所言,Plasma 目前更多是針對支付交易場景設計的 2 層解決方案,是一種可類比為 UTXO 模型的記帳,而 EVM 本身則是帳戶模型。UTXO 可以記錄每一次餘額狀態重新整理,但 EVM 狀態機中的很多「無 Owner」場景很難用 Plasma 的方案來實現。
比如,比如存入 Uniswap 池子的 USDC,放在 MakerDAO 的 CDP 中的資產也同理,使用者很難證明哪一筆資產屬於自己,這樣一旦出現運營方當機問題,合約被鎖,使用者就無法正常「退出遊戲」。
因為無法證明使用者在合約裡有錢。受 Plasma 資料特性影響,主網只能監測合約的餘額,若運營方給合約增發了一部分錢,使用者怎麼能證明哪筆錢是自己的,哪筆錢是被惡意增發的呢?
何況一個 layer2 側鏈如果只能實現 Payment 轉帳交易,要如何構建應用和生態,顯然這會大大限制 Plasma 的使用場景。
若 Plasma 底層徹底的被 ZK 化,使用者的操作會以 zk-SNARK 證明形式存在,就能釋放很多 EVM 的狀態機場景:
假若使用者向 Plasma 某合約存入了一筆資產,就可以構造一筆 zkSNARKs 證明,這個證明可以向主網發起「退出遊戲」,這樣即使池子受安全威脅被凍結,使用者也能撤出自己的合法資產;
或者在涉及隱私 DEX 的交易場景下,使用者可以用 zkSNARKs 來證明擁有某資產,而不需要暴露自己的隱私;以及 Plasma 的智慧合約在進行復雜升級時也可以 zkSNARKs 的形式證明其狀態升級正確性,而不需要暴露細節,也能提升合約作惡難度;
以上。
整體來說,Vitalik 全文清晰地描述了 Plasma 的現狀以及存在的問題,包括未來 ZK 化的可能性。在我看來,Plasma 並不新穎,甚至過去多年它已經在支付場景找到了自己的位置,此時此刻 Vitalik 丟擲 ZK+Plasma 的新方向,是一次方向引導,也是一次政治搖旗,至於市場是否會順著 vitalik 的意思走,我個人不是很樂觀:
1)Rollup 是市場從投入成本、開發難度、生態相容度等綜合出來的最優解,ZK+Plasma 固然是一種更高階的 ZK-Rollup,但當下 ZK-Rollup 的發展也並不樂觀,直接跳到 Plasma 過於倉促了;
2)Validium 作為一種獨立鏈擴容方案,在 ZK 的應用程度上相對更高階,但它完全依賴鏈下 DA,相較之下 ZK+Plasma 似乎和以太坊主網黏性更高,但 Vitalik 這樣呼籲可以理解,ZK 的成熟開發者們放棄 Validium 搞 ZK+Plasma 的動力或許不足。
延伸閱讀:
V神談Layer2擴容全文:Rollup與Validiums(有效性驗證)兩者間權衡
相關報導
【以太坊創辦人Vitalik】對太坊擴展性方案「Plasma」提出了新的構想
真的需要那麼多Layer2嗎?
ETH投資必讀》子網 vs. Layer2:兩種擴容解決方案的優劣差異
V神喊話比特幣「該學以太坊Layer2擴容」,不然僅停留在支付階段
Tags:
layer2
plasma
Rollup
Vitalik Buterin
ZK
以太坊
支付