近期,LayerZero 宣布將 Google Cloud 整合為預設的跨鏈預言機,而這也引發有趣的議題,即跨鏈安全性最終只能依賴中心化巨頭嗎?
(前情提要:雲端巨頭Google Cloud合作LayerZero提供預言機,加強跨鏈協議安全性 )
(背景補充:Google Bard 擴充功能上線!整合Gmail、Map、雲端硬碟..使用教學 )
LayerZero 和 Google Cloud 已宣佈將 Google Cloud 整合為 LayerZero 上的新跨鏈預言機選項。在 LayerZero 的跨鏈實施中,預言機的角色是驗證訊息是否已經由源鏈處理了跨鏈訊息請求。現在,在 LayerZero 上構建的應用程式可以從四個不同的預言機選項中進行選擇,包括 Chainlink、Polyhedra 的 zkLightClient 以及由 Polygon 和 Sequoia 管理的預言機。
最新的變化是,Google Cloud 將替代 Polygon/Sequoia 管理的預言機,成為 LayerZero 跨鏈解決方案的應用程式的預設配置。這是自 2022 年 3 月以來 LayerZero 首次更改預設配置,因此對 LayerZero 而言是一次重大變革。此舉也可能對 Solana 產生影響,考慮到 Google Cloud 僅在幾個月前加入 Solana 生態系統,成為驗證者和核心基礎設施提供商。這也引發了有趣的思考,即區塊鏈的跨鏈安全性最終可能需要依賴中心化的網際網路巨頭,這是一個值得深思的話題。
與此同時,ZK 跨鏈互操作協議 Polyhedra 最近剛剛完成與 BNB 二層網路 opBNB 的整合。該協議與 LayerZero 成為 BNB Chain 生態系統催化劑獎(BNB Chain Ecosystem Catalyst Awards)榜單上僅有的兩個跨鏈橋協議。考慮到 Multichain 的失敗,目前似乎只有兩種主流跨鏈路線可供選擇:預言機(Oracle)跨鏈和零知識證明(ZK)跨鏈。而 LayerZero 和 Polyhedra 分別代表了這兩種路線的領先者。
延伸閱讀:Binance Labs 投資大盤點:未發幣潛力專案
LayerZero 本質上利用了輕節點技術原理,設計了超輕節點機制,通過中繼器和預言機將中間的信任環節分成兩部分,從而以更低的成本換取更高的安全性。
輕節點僅儲存歷史所有區塊頭,不儲存區塊內的具體交易資訊。多個 Merkle Root 的區塊頭足以使用默克爾樹驗證交易是否真實存在於該區塊中。通過在輕節點上執行驗證,完全排除了公證人等外部角色的干擾,實現了更高度的去中心化,從而提高了安全性。然而,這也意味著跨鏈成本將分攤給跨鏈需求的使用者,可能會變得較高。
超輕節點(Ultra-Light Node,ULN)相對於輕節點,執行與鏈上輕節點相同的驗證,但不會按順序保留所有塊頭,而是由分散的預言機根據需要流式傳輸。它的優點是不需要依賴輕節點來獲取區塊頭資料流。然而,它的代價是缺乏歷史順序資料流,這意味著如果預言機和中繼者同時作惡,就可能通過驗證導致執行惡意資訊,從而降低了一定程度的安全性,但降低了成本。
在這個過程中,中繼器的作用是將跨鏈訊息中的 Receipt 和 Merkle Proof 所需的路徑資訊傳遞給目標鏈上的智慧合約以進行驗證。Receipt 包含了交易執行結果、交易hash和交易事件日誌等資訊。而 Oracle 在 LayerZero 跨鏈中扮演公證人的角色,它將源鏈上的跨鏈請求所在的 Blockhash 和 Block Receiptsroot 傳遞到目標鏈上。Blockhash 用於告知目標鏈上的智慧合約哪個區塊包含了使用者的跨鏈請求,而 Block Receiptsroot 用於驗證中繼器傳遞的訊息。因此,出於利益考慮,預言機必須極其可信,因為它的可信度決定了資產的安全性。
如果只有一個預言機,存在極大的風險。為了防範這種情況,LayerZero 實施了任何應用都可以自定義預言機來支援其系統的策略。即使一些預言機當機或作惡,跨鏈工作仍然可以繼續進行。市場競爭逐漸演化出多種選擇,形成了多對多的選擇格局,各方之間將建立去中心化的相互監督體系。即使某一預言機和某一中繼器合謀,也只會對使用了這兩者的特定應用產生一定影響。
除了安全性因素之外,LayerZero 還具有更強的通用性和極低的協議接入成本,這是一個隱形的優勢。
- 通用性更強。在當前的跨鏈協議中,包括 Cosmos 生態的 IBC 協議和 Polkadot 生態的 XCMP 跨鏈協議,要驗證其他公鏈上的交易,必須在以太坊上部署相應的輕節點。高昂的 Gas 成本使得許多 EVM 相容鏈(如 ETH/BSC/Polygon/L2 等)難以支援 IBC 協議,從而限制了 IBC 協議的通用性,目前它僅能在相對小眾的 Cosmos 生態鏈之間執行。
- 更低的開發者接入複雜度。從一開始,LayerZero 協議的工作重心就放在了極簡的合約接入設計上,而跨鏈訊息的需求潛力巨大,涵蓋跨鏈借貸、收益聚合和交易等方面。由於易於使用和開發,該協議已經在 30 多個鏈上傳遞了數百萬條訊息。
至於 ZK 跨鏈技術,它應對了預言機跨鏈的信任問題。通過引入零知識證明技術,ZK 跨鏈不是消除中繼器,而是將中繼器的證明過程交由密碼學來處理,從信任第三方轉變為信任密碼學。這使得可以在鏈下驗證新區塊頭,並將新區塊頭及其有效性證明(Zk Proof)提交到鏈上,鏈上可以直接驗證 ZK Proof,等效於驗證新區塊頭。ZKBridge 採用模組化設計,將驗證智慧合約的程式與核心橋分開。核心橋包括中繼器和更新合約,中繼器接收上一個區塊的區塊頭並驗證其正確性,由更新合約檢查並接受這些證明。應用程式合約由傳送方和接收方合約組成,分別部署在兩條鏈上,這些合約與 ZKBridge 互動,執行跨鏈操作。
延伸閱讀:a16z:如何用一場魔術理解「零知識證明(ZKP)」是什麼?
在跨鏈時,區塊頭中繼節點生成零知識證明,證明中繼的區塊頭正確,並將其傳送給更新合約。更新合約維護髮送方區塊鏈的狀態,並允許接收方合約查詢區塊頭。應用程式合約定義要橋接的資訊。
為此,PolyHedra 開發了名為 deVirgo 的證明系統,它是 Virgo 協議的分散式版本,旨在通過將計算分散在多臺機器上來並行化 GKR 協議。雖然與 Starkware 和 Polygon Zero 使用的密碼假設相同,即 ZK-SNARK,但其創新之處在於使用分散式方法生成 SNARK 證明,即鏈下生成 ZK-SNARK 證明的工作分拆成多臺機器的平行計算。根據 Polyhedra 公佈的測試資料,使用兩個 AMD EPYC ™ 7763 CPU 生成以太坊全節點證明並遞迴驗證的時間不到 12 秒,遠低於以太坊的區塊時間。
然而,這並不意味著 ZKbridge 在效能方面一定優於中繼器跨鏈。即使不考慮 Polyhedra 的測試資料,驗證成本仍然是一個值得擔憂的問題。以 EVM 為例,驗證一個 ZK 證明需要超過 500k 的 Gas 費,而中繼器驗證一個簽名的 Gas 費不到 30k,這意味著最終的跨鏈費用可能會非常高。目前,Polyhedra 只推出了 NFT 的跨鏈功能,費用仍然在可接受範圍內,但 NFT 跨鏈與 FT 跨鏈的本質邏輯有所不同,因此 Polyhedra 的實際跨鏈成本仍需進一步測試。
此外,Polyhedra 還設計了一種名為 paraPlonk 的證明系統,據稱可以加速現有的 zkRollup 系統。它通過讓分散式節點之間傳遞極少量的資料以實現協同驗證工作。然而,我們還未在產品上體驗到這一功能。
在 ZK 技術的發展過程中,可能的實現路徑之一是讓 ZK 證明成為其中一個預言機選項。使用者可以根據需求選擇不同的預言機,如果涉及較大金額,可以選擇 ZK 驗證,如果金額較小,可以選擇像 Google Cloud、Chainlink 這樣的預言機。
從行業發展的角度來看,這對於 LayerZero 和 Polyhedra 等 ZK 跨鏈協議以及整個行業都是一種雙贏的路線。流動性割裂問題已經蔓延到跨鏈領域,如果 ZK 證明能夠充當預言機,有望實現現在分散的流動性的大整合。