以太坊透過 ZK 擴容成為現實
這段時間,網絡上很多媒體都在談論以太坊生態中一個突然串起的ZK(零知識證明)項目@brevis_zk。
這個項目對以太坊自身乃至以太坊生態未來的發展都有著很深遠的影響。
我開始關注ZK技術主要還是從以太坊二層擴展的成長開始的。
以太坊的二層擴展從大方向上看有兩條發展路徑:一個是以提交"故障證明"為基礎的OP路線;另一個就是以提交ZK(零知識證明)為基礎的ZK路線。
這兩個技術路線從實現上來說,OP更容易部署和實現,但在安全上不如ZK。ZK在理論上可以驗證每一筆交易的有效性,在安全上取得很理想的保證,但它需要大量的計算,要實現它不僅耗資源而且耗時,在當時(幾年前)的情況下難度很大。
經過這些年的實踐,很多二層擴展項目方都選擇了OP這條比較容易的技術路徑,一是為了在賽道中加緊卡位,另外也是為了抓緊機會發展自己的生態。漸漸地,OP一派在二層擴展生態中佔據了主流。在現今二層擴展的TVL排行榜中,位列前三的都是基於OP技術的二層擴展。
儘管眼看著ZK技術在二層擴展的競爭中漸漸失去了優勢,但這些年來Vitalik一直對ZK技術的執著和推進堅定不移。
這裡面比較重要的原因我估計大概有兩點:
一是為了讓以太坊儘量適用各種商業場景,那就需要以太坊能夠支持隱私技術。而在目前的各種隱私技術中,相對而言ZK較為成熟,因此在以太坊主網實現對ZK技術的支持就顯得越來越迫切。
二是為了在以二層擴展為框架的以太坊儘快實現更高層級的擴容,目前看ZK技術是比較可行的。
在這兩點中,第二點尤其值得關注。
在現在的以太坊架構中,每一筆交易在執行過程中,每個節點要運行交易中涉及的每一步(大體上可以理解為執行智能合約的每一行代碼)並且驗證結果的有效性。交易越複雜(智能合約的代碼越多),運行的步驟就會越多,時間就會越長。
在這種情況下,以太坊整體的運行效率就不可能高。
如果要提高以太坊主網的效率,可行的辦法就是提高GAS的上限。而但不斷提高GAS上限的結果就是節點的負擔會越來越重,最終導致運行一個以太坊節點會對硬件性能有著很高的要求。
而這又會傷害以太坊的去中心化,讓運行節點被少數有實力運作高性能硬件的玩家所壟斷。
ZK技術能夠怎麼解決這個問題呢?
可以理解為它把交易中涉及的每一步都在鏈下完成,在這個過程中它會生成一些中間結果(也被稱為"產生證明"),但最終它把這些中間結果("產生的證明")打包發給以太坊,以太坊主網收到這些結果後僅僅只對這些結果進行校驗運算。
這樣,以太坊主網的負擔就相當輕了。它再也不需要執行前面繁瑣的交易步驟,只需要進行校驗運算。而這種運算輕便、快捷,用較低成本的硬件也能完成。
理論上使用ZK技術後,以太坊既能做到大規模擴容,也能不傷害去中心化。
既然ZK技術這麼理想,為什麼若干年前不能大規模普及呢?
問題就在於當時的ZK技術產生證明非常耗時,要縮短這個時間必須要很高性能的硬件。
而現在,經過這些年技術的飛速發展,ZK技術已經能夠取得相當不錯的效果了。根據@brevis_zk公布的數據,在使用它的ZK技術後,以太坊99.6%的區塊能在12秒內完成證明,96.8%的區塊能在10秒內完成證明。
而12秒就是以太坊平均產生一個區塊的時間。
也就是說現在使用ZK技術完全不影響以太坊現在的運行,並且可以在現況下繼續對以太坊進行大幅擴容。
如果再考慮二層擴展對以太坊的擴容,那基本上可以說,使用ZK技術後,理論上以太坊的性能和效率在短期內就不再是個被強烈詬病的短板和障礙了。
這就是為什麼@brevis_zk這個項目受到包括Vitalik在內的社區成員高度關注的原因。
回到@brevis_zk這個項目。
它現在還未發幣,很多用戶在它上面完成各種操作,目的當然是為了未來可能的空投。
不過按照我過往的經驗,往往事前太過紅火、高光的項目真正等到發幣,反而可能一蹶不振、讓人大失所望。
所以我對這個項目持謹慎態度,我建議我們的讀者量力而行,不要不顧自身情況,耗費太多精力和時間,有空有閒的情況下適度參與就好了。
我這麼說不是說項目不好。它非常好。但項目好很多時候和短期幣價的走勢關聯沒那麼大。
這個項目最驚豔的地方不在項目本身,而在於它從技術上證明了ZK技術真的可以落地了,並且讓以太坊大規模擴容成為可以看得見的事實。
有了這個項目作示範,我相信未來層出不窮的ZK技術方案會湧現。屆時我們又會看到一波擴容技術的大爆發。







