在迅速發展的區塊鏈技術領域裏,衆多協議已被提出並實施,然而每個協議都採用了不同的共識方法——從計算型的工作量證明(Proof-of-Work)到激勵型的權益證明(Proof-of-Stake),等等。由於協議在共識、安全性、編程語言等各個方面存在差異,自區塊鏈早期以來,流動性和資產逐漸在不同鏈之間分散。跨鏈橋成爲解決這一問題的方案,它能夠減少碎片化,整合各個區塊鏈之間的流動性。其中一種跨鏈橋協議就是 Wormhole,它便於加密貨幣和非同質化代幣(NFT)在不同智能合約區塊鏈(如 Solana 和以太坊)之間的流通。
跨鏈橋的當前風險
跨鏈橋可說是相當棘手的。確保其跨鏈橋的安全性是一個重要挑戰,因爲需要保護存儲在智能合約或中央託管方中的資產。由於橋樑的資金集中存儲,歷來都是黑客的目標。橋樑不斷演進的設計也爲攻擊者尋找新的漏洞和漏洞利用提供了可能。在 2022 年,Wormhole 曾因安全修復上傳到 Github 後被黑客攻擊,造成 3.25 億美元損失,黑客得逞後帶走了這筆資金。Chainalysis 報告稱,跨鏈橋攻擊在2022年佔據了總盜竊資金的 69%。
另一個面臨的挑戰是性能不佳與對中心實體的依賴。目前的跨鏈橋面臨着可擴展性問題。爲了更新和調整兩個鏈的狀態,跨鏈橋需要大量的計算能力和存儲容量,導致了重大的開銷。爲了減輕這種負擔,一些跨鏈橋已經轉向了委員會式的方法,即僅由有限的一組驗證者(甚至只有多籤持有者)來批准狀態轉移。然而,這種方法使它們暴露於漏洞和潛在攻擊之中。
正是這些問題促使開發人員開始尋求替代解決方案,特別是利用零知識密碼學的解決方案。在這些方法中,利用 zk-SNARKs 技術消除了委員會模型的需求,同時確保網絡的可擴展性。
基於 zk-SNARKs 技術的跨鏈橋
當前,有幾個項目正在跨不同生態系統和開發階段開發基於 ZK 技術橋解決方案,如:
Succinct Labs
zkIBC by Electron Labs
zkBridge by Polyhedra Network
這些倡議充分利用 zk-SNARKS 技術來革新跨鏈橋的設計。然而,爲了成功實施所有這些方法,一個關鍵的要求是輕客戶端協議 - 這是一種連接到全節點並促進與區塊鏈交互的軟件。該協議確保節點可以高效地同步已確認區塊鏈狀態的區塊頭。
在將 zk-SNARKs 技術應用於跨鏈橋時,會出現兩個主要挑戰。首先,與 rollups 相比,跨鏈橋需要更大的電路規模。其次,需要解決最小化鏈上存儲和計算開銷的問題。
Succinct Labs
Succinct Labs 正在開發適用於以太坊 2.0 的 PoS(權益證明)共識的輕客戶端,爲 Gnosis 和以太坊之間建立一個信任最小化的跨鏈橋。這個跨鏈橋利用 zk-SNARKS 的高效性,在鏈上以簡潔的方式驗證共識有效性證明。
該設置涉及一個包含 512 個驗證者的同步委員會,這些驗證者每隔 27 個小時隨機選出。這些驗證者負責在其分配的時間段內對每個區塊頭進行簽名。如果超過 ⅔ 的驗證者對每個區塊頭進行簽名,以太坊的狀態被認爲是有效的。驗證過程主要包括驗證以下內容:
1. 區塊頭的 Merkle 證明
2. 同步委員會中驗證者的 Merkle 證明
3. BLS 簽名以確保同步委員會的正確輪換
這個過程產生了顯著的計算成本,因爲其基本概念是輕客戶端利用 zk-SNARK(Groth16)來創建一個常量大小的證明(有效性證明),可以在 Gnosis 鏈上高效地進行驗證。證明是通過鏈下計算生成的,其中包括構建用於驗證驗證者及其簽名的電路,然後生成 zk-SNARK 證明。隨後,證明和區塊頭被提交到 Gnosis 鏈上的智能合約進行驗證。
採用 zk-SNARKs 有助於減少存儲開銷和電路複雜性,從而降低信任假設。儘管如此,這種方法專門針對以太坊 2.0 共識協議和 EVM 進行了優化,可能需要更大的適應性才能適用於其他區塊鏈網絡。
就在今年 7 月,Succinct Labs 做出了重大的宣佈,確認其以太坊 ZK 輕客戶端已正式整合到主網上,以增強 Gnosis Omnibridge 的安全性。這一整合將使 Succinct Labs 負責保護 Gnosis Omnibridge,目前該跨鏈橋的總鎖定價值(TVL)超過了4000萬美元,並且迄今爲止已促成了超過 15 億美元的穩定幣資產流動。
zkIBC by Electron Labs
Electron Labs 正在構建一座起源於 Cosmos SDK 生態系統的跨鏈橋,該生態系統是一個面向應用特定區塊鏈的框架。其跨鏈橋將利用 IBC(跨鏈通信)技術,實現在框架內定義的所有獨立區塊鏈之間的無縫通信。
但是,將 Cosmos SDK 的輕客戶端實現到以太坊中充滿了困難。Cosmos SDK 使用的Tendermint 輕客戶端在扭曲 Edwards 曲線(Ed25519)上運行,而這是以太坊區塊鏈不原生支持的曲線。因此,在以太坊的 BN254 曲線上驗證 Ed25519 簽名是昂貴且低效的。爲了克服這個障礙,Electron Labs 正在基於 zk-SNARKs 技術開發一個解決方案。這個系統將生成一個鏈下的簽名有效性證明,並且只在以太坊鏈上對證明進行驗證,從而有效地解決了這個問題。
通過採用這種方法,可以高效且具有成本效益地在以太坊區塊鏈上驗證 Cosmos SDK 中的Ed25519 簽名,同時避免引入任何額外的信任假設。不過,這種方法可能面臨的一個潛在問題是延遲。Cosmos SDK 中的區塊生成速率爲7秒,爲了跟上這個速率,證明的時間必須大大縮短。Electron Labs 打算通過使用多臺計算機同時生成證明,然後將它們合併爲單個 zk-SNARK 證明來解決這個問題。
zkBridge by Polyhedra Network
與其他兩種行業領導的基於零知識證明的跨鏈橋構造相比,zkBridge 憑藉其靈活多樣的框架脫穎而出,有助於在其平臺上開發多個應用。它有效地利用 zk-SNARKs 建立高效的通信過程,使得證明者能夠令接收鏈相信特定狀態轉換髮生在發送鏈上。zkBridge 框架由兩個關鍵組件組成:
區塊頭中繼網絡:這個組件從發送鏈獲取區塊頭,生成用於驗證區塊頭的證明,然後將區塊頭和證明都傳輸到接收鏈上的更新合約。
更新合約:這個部分維護一個輕客戶端狀態,並在關聯證明被驗證後自動納入發送鏈的區塊頭。此外,它也保持發送鏈當前的主鏈狀態更新。
zkBridge 與其他行業領導的方法主要的區別在於,zkBridge 只需要中繼網絡中存在一個誠實的節點,並假設 zk-SNARK 的可靠性。
這種構建中的一個關鍵進展在於 zk-SNARK 的並行使用:Virgo證明器(deVirgo),它引入了一種新穎的分佈式證明系統來加速證明生成過程,並使用遞歸證明來降低鏈上證明驗證的成本。deVirgo 依賴於 GKR 協議和多項式承諾方案來爲驗證多個簽名的電路生成證明。隨後,deVirgo 證明通過 Groth16 證明器進行壓縮,並由目標區塊鏈上的更新合約進行驗證。這些證明系統的結合使 zkBridge 能夠實現高效的跨鏈通信,而無需依賴外部信任假設。
zkBridge 的主網 Alpha 版本於 2023 年 4月發佈,現在正在促進幾個 L1 和 L2 區塊鏈網絡之間的跨鏈互操作性,如 BNB Chain、以太坊和Arbitrum。在 2023 年 ETHCC 巴黎 zkDAY 活動上,Polyhedra Network 的首席技術官,Tiancheng Xie,強調自其主網發佈以來,該協議已吸引了超過 50,000 名每日活躍用戶和 800,000 名每月活躍用戶。
憑藉其模塊化架構,zkBridge 爲開發者和用戶打開了廣闊的可能性。這些可能性包括代幣橋接和交換、消息傳遞以及根據不同區塊鏈網絡之間的狀態變化進行適應的計算邏輯。
總結
將 zk-SNARKs 技術納入跨鏈橋設計能有效地解決了與去中心化和安全性相關的問題。然而,由於涉及較大的電路規模,這也造成了計算瓶頸。隨着對互操作性的關注持續增加,相信將會有更多的開發者會努力投入到開發安全可擴展的跨鏈橋技術中。這些進展預計將對 ZK 技術的整體進步和應用產生積極的影響。因此,我們可以預期在不久的將來,研究、創新實現的顯著進展以及跨鏈應用的更廣泛採用。