橋是一種通信協議,用于促進區塊鏈之間的信息傳輸。建造橋雖然有用,但卻是一件有風險的事情。區塊鏈歷史上最代價慘重的一些黑客攻擊都僅針對橋。
據估計,截至2022年,過去一年損失的資金中,69%是由于橋攻擊造成的,損失達數十億美元。
在本文中,我們關注使用零知識證明(ZKP)的橋結構的具體實現。雖然有些黑客攻擊不能僅僅因使用ZKP而做到預防,但ZKP的可靠性將區塊鏈共識協議的安全性擴展到了橋。
橋與零知識證明
近年來,我們看到零知識證明(ZKP)在應用方面取得了巨大的進展,其穩定性為提供安全和去中心化的應用程序創造了條件。因此,ZKP也被用于制定橋建設是有意義的。下面,我們回顧和比較這一領域的三個有趣的發展:
使用zk-SNARK對共識進行簡潔驗證:使用單個zk-SNARK實現以太坊PoS(權益證明)輕客戶端。通過zk-SNARKS(ElectronLabs)將IBC(區塊鏈間通信)引入以太坊:CosmosSDK上的工作原型到帶有單個zk-SNARK的以太坊輕客戶端。zkbridge:無需信任的跨鏈橋變得實用((BerkleyRDI):使用2步遞歸zk-SNARK實現CosmosSDK到以太坊輕客戶端,以太坊輕客戶端到兼容EVM的區塊鏈(本文未涉及)。這些項目利用zk-SNARK的特性來重新定義橋應該如何設計。以上所有假設都存在一個輕客戶端協議,該協議確保節點可以同步最終區塊鏈狀態的區塊頭。將ZKProllup背后的思想應用于橋的兩個主要挑戰是:首先,與rollup相比,橋中涉及的電路大小要大幾個數量級;其次,如何減少鏈上的存儲和計算開銷。
共識證明的簡明驗證(SuccinctLabs)
SuccinctLabs為以太坊2.0權益共識證明構建了一個輕客戶端,在Gnosis和以太坊之間構建了信任最小化的橋,它使用zk-SNARK(非零知識)的簡潔屬性來高效地驗證鏈上共識有效性證明。
該設置由以太坊中每27小時隨機選擇的512名驗證者組成的同步委員會組成。這些驗證者被要求在其運行周期內對每個區塊頭進行簽名,如果超過2/3的驗證者對每個區塊頭進行簽名,則以太坊的狀態被認為是有效狀態。驗證過程主要包括:
Linux基金會的金融服務部門將擴展包括區塊鏈的新興技術領域:金色財經報道,Linux基金會的金融服務部門Fintech Open Source Foundation (FINOS) 將在摩根大通的FINOS開放日上宣布其努力通過Zenith特別興趣小組(SIG)的成立來引領新興技術的發展,SIG將由摩根士丹利執行董事Peter Smulovics擔任聯合主席,以促進金融服務行業對革命性和變革性技術的探索和采用。
FINOS執行董事兼歐洲Linux基金會總經理Gabriele Columbro表示,人工智能、區塊鏈和量子等新興技術正在徹底改變金融服務行業,與其他行業一樣,在很大程度上重新定義了這個行業的本質。不幸的是,雖然金融服務對這些技術的投資往往歸于創新部門,但很少投入生產。這就是為什么我對Zenith的巨大潛力感到興奮,它不僅要為FINOS成員提供共享研發的途徑,還要為其試點提供一條非常可行的途徑,以通過開源達到臨界采用率。[2023/6/18 21:44:15]
Merkle證明的區塊頭Merkle證明的同步委員會中的驗證者用于正確輪換同步委員會的BLS簽名上述驗證需要每27小時在鏈上存儲512個BLS公鑰,并且要對每個區塊頭驗證簽名都進行驗證,這將導致512個橢圓曲線添加(在曲線BLS12-381中)和鏈上的配對檢查,該操作的成本是高昂的。這里的核心思想是使用zk-SNARK(Groth16)來生成有效性證明(大小恒定),并且可以在Gnosis上進行有效的鏈上驗證。
使用zk-SNARKS的簡潔性來擺脫昂貴的鏈下驗證
以太坊輕客戶端在Gnosis鏈上使用Solidity智能合約,而鏈下計算包括構建circom電路以驗證驗證者及其BLS簽名,然后計算zk-SNARK證明。在此之后,區塊頭和證明被提交給智能合約,然后智能合約在Gnosis鏈上執行驗證。SNARK計算部分的電路大小和驗證時間總結如下:
AI Meta Club推出AI Tool集:據官方消息,近日,AI Meta Club推出了豐富的AI Tool集,讓用戶可以輕松地使用多種AI工具來處理各種任務。該集合包括了AI寫作,AI圖片,AI語音,AI聊天,AI翻譯,AI訓練等八大類別,三十多款AI應用程序。AI Meta Club表示,這一舉措將為廣大AI愛好者提供更為便利的資源,幫助他們更加高效地完成各種任務。同時這些AI工具也能幫助DAO提高工作效率和降低管理成本。[2023/6/9 21:25:50]
SNARK部分的電路大小
優化包括使用驗證者的512個公鑰(PK)輸入作為使用ZK友好的Poseidonhash的承諾。Poseidonhash解決了存儲開銷問題并減小了電路大小。減小電路尺寸的過程如下;受信任的委員會在27小時后更新,之前的委員會使用SSZ(SimpleSerialization),使用SHA256序列對新的委員會進行數字簽名。而不是直接在創建大型電路的SNARK中使用它(每個位操作需要一個門,在SHA中有大量的位操作),對當前公鑰使用Poseidonhash的承諾。
總結:它所使用的這種橋接方法非常特定于應用程序(依賴于共識協議),它的安全性來自于zk-SNARK的穩定性。此外,通過優化,它不僅實現了較低的存儲開銷,降低了電路復雜度,完成了簡潔驗證,同時也具有通用性。
將IBC引入以太坊(ElectronLabs)
ElectronLabs旨在從CosmosSDK生態系統(應用特定區塊鏈的框架)中構建一座橋,使用IBC(區塊鏈間通信)來實現框架中所定義的所有主權區塊鏈間的通信。
此設置與前面討論的情況類似,但方向相反,其中輕客戶端(來自CosmosSDK)需要在以太坊上的智能合約中進行驗證。從實際意義上講,在以太坊上運行來自其他區塊鏈的輕客戶端似乎具有挑戰性。在CosmosSDK中,Tendermint輕客戶端運行在扭曲的Edwards曲線(Ed25519)上,以太坊鏈本身不支持該曲線。因此,以太坊(BN254)上Ed25519簽名的鏈上驗證變得低效且成本高昂。
RNS.ID:Vitalik Buterin獲得帕勞共和國RNS.ID數字身份證:1月5日消息,帕勞共和國數字身份證RNS.ID團隊發推表示,以太坊創始人Vitalik Buterin已正式獲得RNS.ID數字身份證。[2023/1/5 10:23:30]
在Cosmos到以太坊的橋中使用zk-SNARK
與我們前面的討論類似,CosmosSDK上的每個區塊頭(每個區塊頭由曲線Ed25519上的約128個EdDSA簽名組成)由一組驗證者簽名組成(驗證一個區塊需要32個高風險簽名)。驗證簽名會生成大型電路,這是一個重要的計算組件。因此,基本問題是如何在以太坊鏈上高效、便宜地驗證來自CosmosSDK中任何區塊鏈的Ed25519簽名。解決方案是構建一個zk-SNARK,它在鏈下生成簽名有效性的證明,并且只在以太坊鏈上驗證證明本身。
circom庫支持BN128、BLS12-381和Ed448-Goldilocks曲線,因此,為了在素數p=2^(255)-19的Ed25519曲線上執行模運算,可以將字段元素的表示分解為更小的85位整數(85*3=255),以實現高效的模運算。circom生成的電路是Ed25519簽名驗證電路的R1CS表示,它由橢圓曲線點加法/加倍和上面定義的模運算組成。用于簽名驗證的電路使用circom庫構造,每次簽名驗證會產生約2M的約束。
在見證計算之后,Rapidsnark庫為Ed25519簽名驗證生成Groth16證明。與BLS簽名不同,Ed25519曲線簽名不可聚合,因此不能為聚合簽名生成單個zk-SNARK證明。相反,簽名是批量驗證的,并且可以觀察到,驗證時間與批次中的簽名數量成線性關系。
數據:BTC已實現上限達13個月低點:金色財經消息,據Glassnode數據顯示,BTC已實現上限剛剛達到13個月低點,數額為399,169,974,813.62美元。[2022/11/14 12:59:51]
因此,減少一批次中的簽名數量,確實可以降低證明時間(減少延遲),但隨之也會增加成本(gas費),因為每批生成的證明數量會增加。
總結:這種橋接方法也特定于它們的應用程序,并具備源于zk-SNARK證明的可靠性的安全性。特別是,在不引入任何新的信任假設的情況下,它驗證了以太坊上Tendermint輕客戶端的Ed25519簽名。域外模塊化算法是一種有價值的鏈上驗證計算優化方法。與SuccinctLabs方法類似的一個具體技術問題是延遲。CosmosSDK中的區塊生成速率約為7秒,為了跟上這個速率,證明時間就不得不降低。Electronlabs提出用多臺機器并行計算,以與區塊生成速率相同的速度生成證明,并進行遞歸生成單個zk-Snark證明。
zkbridge(BerkleyRDI)
與其他兩個行業主導的ZKP橋結構不同,zkbridge是一個框架,可以在其之上構建多個應用程序。這個想法類似于前面討論的兩種方法,并且需要兩個鏈上的輕客戶端和智能合約來跟蹤摘要,對應于兩端的最新狀態。橋的核心組件是區塊頭中繼網絡、更新合約和應用程序特定合約(發送方:SC1,接收方:SC2)。
橋組件是灰色陰影區域。
區塊頭中繼網絡由中繼節點網絡組成,這些中繼節點偵聽橋接鏈上的狀態變化,并從區塊中的完整節點檢索區塊頭。橋上中繼節點的主要功能是生成一個ZKP,該ZKP驗證來自一個鏈的區塊頭的正確性,并將其轉發給另一個鏈上的更新合約。更新合約會進行驗證并接受或拒絕來自中繼網絡中的節點的證明。行業主導的方法和zkbridge之間的主要區別是,信任假設基本上簡化為中繼網絡中存在一個誠實節點,并且zk-SNARK是可靠的。
安全團隊:Brahma TopGear (brahTOPG) 項目存在任意外部調用的風險,請迅速取消授權:11月10日消息,據慢霧安全團隊監測,2022年11月10日,ETH鏈上的brahTOPG項目遭到攻擊,攻擊者獲利約 89,879 美元。慢霧安全團隊分析稱,此次攻擊的主要原因在于Zapper合約為對用戶傳入的數據進行嚴格檢查,導致了任意外部調用的問題,攻擊者利用此任意外部調用問題竊取了對合約仍有授權的用戶的代幣。
慢霧安全團隊提醒使用過該合約的用戶請迅速取消對該合約的授權以規避資產被盜的風險。[2022/11/10 12:43:42]
這種結構的一個關鍵創新是并行使用了zk-SNARK:Virgoprover(deVirgo),它具有簡潔的驗證/證明大小,不需要可信的設置。其用于驗證N個簽名的電路本質上由相同的子電路的N個副本組成,稱為數據并行電路,每個子電路與其他子電路相互排斥。例如,前面一節中討論的Ed25519簽名驗證就是這種情況。
Virgoprover的核心組件是基于GKR協議的零知識擴展,該協議為分層電路中的每個子電路和多項式承諾方案運行總和校驗參數。deVirgo泛化本質上是在一組中繼節點上運行一個Virgoprover,并通過將證明和多項式承諾聚合到一個主節點來避免證明大小的線性增長。
在deVirgo中證明ed25519簽名的電路尺寸
對于使用大約10M門驗證100個簽名的電路,證明大小為210KB(與Virgoprover大小相同)。Zkbridge使用兩步遞歸。在第一步中,生成一個deVirgo證明,然后使用Groth16prover對其進行壓縮。Groth16verifier生成deVirgo電路執行的完整證明。遞歸的主要目的是實現簡潔(證明尺寸)和降低驗證gas成本。
然后,中繼網絡將Groth16證明提交給可以在鏈上驗證它的更新合約。deVirgo證明系統具有后量子抗性,因為它只依賴于抗碰撞哈希函數,主要的計算瓶頸是大型電路中的數論變換(NTT)。有一件事似乎沒有被提及,即中繼網絡的計算將遭受與MPC相同的通信復雜性,這也將影響證明時間。對于中繼網絡中的N臺機器,GKR多層和校驗協議的通信復雜度為O(Nlog_2(gatesperlayer))。即使對于32個簽名的情況,在中繼網絡中有32臺機器,這也將導致網絡中的通信輪數比較多,這可能會完全扼殺分布式計算帶來的性能。
使用上述方法解決了前面討論的來自CosmosSDK-Ethereum輕客戶端的Ed25519簽名驗證問題。橋由一個中繼網絡組成,它獲取Cosmos區塊頭并生成一個deVirgo證明用于分布式證明生成。接下來,由Electron-labs設計的優化簽名驗證電路的Gnark適配在遞歸的第二步生成Groth16證明。
Ed25519簽名的證明時間:RV:遞歸驗證者
更新合約在以太坊的Solidity中實現,并跟蹤Cosmos區塊頭和中繼網絡的Groth16證明。驗證成本是恒定的<230Kgas,這是由于Groth16證明的恒定大小。此外,有可能批量驗證B個連續區塊頭,并為B個頭生成單個證明。然而,增加批次的大小也增加了驗證時間,但由于鏈上的驗證負擔較小,因此會降低gas成本。和以前一樣,硬件加速也可能進一步改進Gnarkprover。
總結:zkbridge是在橋上構建應用程序的框架。橋的設計使用中繼網絡來生成ZKP,并且具有最低的信任假設。只要能夠克服中繼網絡中類似MPC的通信復雜性,就可以使用任何可并行化的ZKprover。更具體地說,先不考慮deVirgo中繼網絡的MPC復雜性,NTT是中繼節點的單個Virgoprover組件的瓶頸。
快速比較:
下面我們對本文討論的三種橋梁結構的各種特征進行快速比較。
綜上所述,使用ZKP設計橋,解決了去中心化和安全性問題,但由于電路規模大而產生了計算瓶頸。
計算開銷的問題可以通過硬件加速來改善,特別是使用SNARK,以及提交公共數據的技巧,它們可以有效的減少存儲開銷。由于大部分的橋接工作都是證明數據并行電路,因此將ZKP推廣到像deVirgo這樣的并行性是有價值的研究方向。
此外,由于多鏈宇宙中的區塊鏈是根據應用程序在各種各樣的領域(字段,曲線)上定義的,字段內外算法的優化在最低級別上是至關重要的構建模塊。通過MPC生成證明的并行性在通信復雜度方面有其自身的瓶頸,這是目前尚未解決的問題。
為什么多鏈宇宙是碎片化的?
區塊鏈生態系統的當前狀態類似于泡沫宇宙的異構分布,每個都有自己的共識機制、設計、應用程序和用例規則。截至撰寫本文時,有超過100個第1層(L1)區塊鏈協議,用戶數量不斷增長,隨著區塊鏈用例的增加,這個數字可能還會增長。
區塊鏈三難困境指出,很難同時實現理想區塊鏈的三個基石:
去中心化可擴展性安全
根據用例的不同,除了吞吐量和成本之外,三個基石的重要性順序也可能不同。三難困境中的不同權衡可以想象成在保持面積不變的情況下三角形的變形。當兩個角互相靠近時,第三個角會移動得更遠。這些權衡導致了區塊鏈的不同概念,從而使開發人員能夠自由地為合適的應用程序選擇不同的平臺。這同時也導致了碎片化的多鏈宇宙,每個區塊鏈基本上都是獨立運行的,完全“不知道”其他區塊鏈的存在。
多鏈宇宙中的鏈間通信,通常被稱為互操作層,是充當不同區塊鏈之間橋梁的基礎設施。橋使用戶能夠在鏈之間傳遞消息,包括數字資產、鏈狀態、合約請求、證明等。簡而言之,跨鏈橋“整理”了碎片化的多鏈世界。因此,很多研究和開發都集中在構建多鏈宇宙中的這個關鍵組件上。
建設橋
橋是一種雙向通信協議,它向另一個鏈C2中的應用程序證明一個鏈C1中的事件的發生,反之亦然。為了簡單起見,我們使用術語,源鏈(C1)和目標鏈(C2),它們是可以互換的。C1上的狀態更改必須在C2上“鏈上”進行驗證。這通常是由輕客戶端完成的:C2上的合約跟蹤C1上的一組區塊頭,并使用與從源鏈提交的根對應的Merkle證明對它們進行驗證。一般來說,C1和C2可以在不同的域中工作。除了不斷增加的區塊頭列表之外,客戶端還需要存儲和驗證新出現的區塊頭。這將導致顯著的計算和存儲開銷,而且通常效率低下。為了繞過這個問題,許多橋的建造都采取了更中心化的方法。
致命弱點:輕客戶端協議,有一小組可信任的驗證者來簽署狀態更改。
這通常發生在資金轉移的情況下,其中將大量信任假設放在中心化的橋實體上,該實體通常由少量受信任方組成。這違背了區塊鏈的基本原則,也帶來了與審查和安全相關的問題。
區塊鏈歷史上一些最大的黑客攻擊發生在橋上
大多數現有的橋(為了流動性)通過鎖定-鑄造-銷毀-釋放機制運行。用戶通過將資金發送到鏈C1上的橋協議與橋進行交互,橋協議將這些資金“鎖定”到合約中,即這些資金在C1中不可用。橋允許用戶在另一個區塊鏈C2中鑄造等值的資金。一旦用戶花費了一些資金,并希望將剩余的資金返回到C1,他就“銷毀”C2中的資金,橋對其進行驗證,并“釋放”C1中的剩余資金。在這樣的鏈間橋中,大量資金可能存放在其安全性依賴于少數受信任方的橋中,使其成為攻擊的活躍目標。
總的來說,建造橋的主要技術挑戰是:
低計算開銷(有效處理跨域數據)。低存儲開銷。(簡潔)安全/去信任。(可靠性)
Tags:區塊鏈ARKNAR以太坊區塊鏈幣在哪個平臺交易DarkShield Games Studiolunar幣蒸發了多少如何挖以太坊幣
一、介紹 對于crypto投資者來說,在2022年持有游戲公會Token會是一件非常痛苦的事。本報告中比較的每個Token在今年都下跌了80%以上.
1900/1/1 0:00:00今日早間,SushiSwap新任“主廚”JaredGrey在推特上遭到了yannickcrypto.eth等多位網友的集體聲討.
1900/1/1 0:00:00元宇宙充滿潛力! 花旗和麥肯錫預測元宇宙市場規模將在2030年達到13萬億美元。21Shares建立了一個Dune儀表板,以追蹤3個最大的元宇宙項目在Web3市場發展趨勢.
1900/1/1 0:00:00近期BNB跨鏈橋受攻擊,導致近$570M損失。這一事件再次把跨鏈橋的安全性問題推上熱議。根據Messari8月的研報數據,過去一年內共有8起跨鏈橋攻擊事件,構成將近$2B美金的資產損失.
1900/1/1 0:00:00概括 少數MEV搜索者通過Osmosis套利獲得了數百萬美元,而無需按照利潤的比例向網絡支付費用.
1900/1/1 0:00:00項目簡介 SubDAO是一種多鏈DAO協議,它支持DAO執行各種與決策相關的交易,SubDAO旨在為風險投資領域的革命提供一個通用且廣泛適用的DAO工具.
1900/1/1 0:00:00