當區塊鏈使用證明之後


乙太坊因為PoW鏈在效能上的限制,在很早期就開始研究擴容方案。 在L2的眾多案例裏,基於“證明”科技的兩類方案脫穎而出,其也被乙太坊奉為主要的擴容方案。 未來,即使PoS共識運行以及分片實現後,這些基於“證明”科技的擴容方案也會一直存在。

基於“證明”科技的解決方案,主要分為以欺詐證明、零知識證明的兩個方向,產生了Optimism、Arbtrium、zksync等應用此科技的方案。

而在整個區塊鏈領域裏,乙太坊的“證明”科技都與rollup科技進行了融合,形成了optimistic rollup和zk rollup以及,而像Mina這樣完全應用零知識證明科技體系的區塊鏈,其更重視零知識證明本身的應用。

為什麼乙太坊需要將證明和rollup同時實施,是因為乙太坊本身存在L1,證明和rollup都是為擴容而用。 在乙太坊區塊恒定的情况下,擴容思路主要為减小交易位元組大小和完成交易證明的驗證後打包。 證明减小了交易位元組大小,rollup則把交易數據打包到一起。 乙太坊上會有智慧合約驗證rollup數据集的證明有效性。

這種情況下,乙太坊L1是不需要更多的改造和變化的。

筆者選取了如下的一些資訊,來理解這一思路。

首先是使用zk rollup的zkSync。

在zkSync使用高峰期,其提現時間約為10分鐘。 在較低使用期間,可能需要長達7小時。 現時,提款時間取決於zkSync上的活動,因為這是一個完成區塊並將它們提交到L1的過程,將塊提交到L1,是交易被確認後。

zkSync網絡的計算服務提供者是“Stichting ZK Sync”,在zkSync中,每筆交易的成本有兩個組成部分:

鏈下部分(存儲+證明者成本):狀態存儲和SNARK(零知識證明)生成的成本。 這部分依賴於硬體資源的使用,囙此是不變的。 基準估計每次轉帳約為0.001美元。

鏈上部分(gas成本):對於每個zkSync區塊,驗證者必須支付乙太坊gas來驗證SNARK,另外每筆交易額外支付約0.4k gas來發佈狀態。 鏈上部分是一個變數,取決於乙太坊網絡中當前的gas價格。 但是,這部分比普通ETH/ERC20轉帳的成本要便宜幾個數量級。

一旦zkSync塊的SNARK證明生成並被智慧合約接受,zkSync中的交易就達到了乙太坊的最終確定性。 證明時間生成預計為10分鐘左右,即提交後10分鐘,zkSync(證明)交易與包含在同一個乙太坊區塊中的任何L1乙太坊交易與有證明的交易一樣是最終的。

當用戶發送交易時,需要等待塊被填充,不會立即生成證明。 隨著zkSync系統的更高輸送量,塊之間的時間將會减少。

而相比之下,基於欺詐證明的擴展解決方案(例如樂觀匯總)需要至少1周的鎖定期才能或多或少地安全運行,這會導致1周的最終確定時間。

這個過程表現了證明和匯總的關係。 也表現了當使用證明後,也帶來了一些其他問題,比如樂觀匯總中的鎖定期和挑戰期。 當用戶像optimism的主網轉移資產的時候,資產可以很快生成,而當從optimism像乙太坊L1轉移資產(就像rollup數據像L1提交一樣)時,因為欺詐證明的原則要等待數據在一定時間內沒有驗證者認為證明數據有問題的過程,囙此會出現鎖定期和挑戰期。 就帶來了提現到賬的等待問題(也就是塊確認問題)。

而證明同時帶來的其他問題還會集中在證明數據在L1層的可用性。 例如代表的就是EVM的相容性,智慧合約的普遍適用。

所以Vitalik才會認為樂觀匯總會比zk rollup在EVM上的進展更快更具優勢,其原因是在於欺詐證明本身和零知識證明間的區別。

所以應用零知識證明科技,在科技上完成突破似乎要改變更多的系統設計,例如Mina。

其在共識層、節點層、驗證者層都與乙太坊有明顯不同。 其最主要的特點是把整個區塊鏈的存儲大小保持在22位元組,這是零知識證明的作用,將原本幾百GB的數據以證明替代。 其原理在於,不保存數據,而只保存數據變動的“快照”證明,然後基於數學邏輯推理出數據的有效性。 其比較明顯的解釋是,只給大象拍照,而不保存大象本身。 無論區塊鏈如何新增交易狀態,都是一張照片的大小。

但Mina還是存在存儲數據的歸檔節點以及承擔證明計算的節點,並且因為區塊鏈過輕,當運行一些計算的時候,會使用很多鏈下的計算和存儲。 這也是為了使用零知識證明科技的優勢而帶來的一定選擇。

這可能也意味著Mina這樣的區塊鏈,其應用方向很大程度會局限在一個簡單的電子支付系統或代幣交易系統。

綜上,當區塊鏈使用了證明之後,我們主要看到的是證明在幫助L1擴容,但如果用零知識證明科技全面改造區塊鏈,似乎其應用的週期還需要更長遠一些。