撰文:Jonathan Claudius, Anirudh Suresh, Eric Wong, Akshath Sivaprasad
編譯:0x9F,0x214,BlockBeats
在物理和加密的世界中,橋梁都是為了連接兩個被障礙物隔開的地方。物理橋梁連接被山谷、河流等自然屏障隔開的土地,而跨鏈橋協議則連接原本沒有辦法進行通信和同步的區塊鏈。每當橋梁遭受摧毀和攻擊,其重要性就得以彰顯。在物理世界中,歷史上有據可查的災難性橋梁坍塌事件足以表明它們是多么重要,以及設計或建造不當的橋梁是多么危險。
加密世界的「跨鏈橋」協議亦是如此。跨鏈橋在安全風險方面極易被盯上。從智能合約可能的漏洞和攻擊的規模角度來看,跨鏈橋呈現出一個二次方風險面:隨著橋接的區塊鏈數量增加,維持跨鏈橋運行所需的智能合約數量也呈二次方增長(至少在點對點模型中如此)。根據定制配置在不同運行時間編寫的更多智能合約也迅速增加了跨鏈橋風險。在輪輻模型中,一個與中心鏈 / 網絡相關的漏洞會導致不對稱的風險。
正如最近的?Nomad 攻擊事件所示,一個錯誤可能導致橋梁的大部分或全部資金損失。然而漏洞與跨鏈橋無關,可能只是源于一個操作上的失誤。在 Ronin 跨鏈橋的案例中,糟糕的操作安全措施讓網絡釣魚攻擊有機可乘,黑客獲得了對保障網絡安全的大部分驗證節點的控制權,從而能夠攜帶價值超過 5 億的資金逃之夭夭。2 月份發生的 Wormhole 攻擊事件同樣是由于驗證審查的缺失,讓攻擊者能夠創建一個虛假簽名,竊取超過 3.2 億美元。
如果不關注安全性,不可避免地會發生更多的疏忽,因而遭受攻擊和損失。對黑客而言,跨鏈橋規模巨大的 TVL 比普通協議更具吸引力。
上述的攻擊事件均與協議的橋接邏輯無關,而是與智能合約漏洞和操作疏忽有關。即使使用最精心編寫的代碼,經過最棒的安全審計,隨著連接的區塊鏈和啟用功能的數量增加,也必然會有被遺漏的漏洞。出于這個原因,跨鏈橋需要被配置為不僅在正常情況下能夠安全工作,更重要的是能夠應對極端情況。
用戶在使用跨鏈橋時主要關注以下幾個特性:良好的用戶體驗、低滑點高效率和資產安全。其中,安全性是評估跨鏈橋的重中之重。
考慮到這一點,讓我們看看不同橋梁是如何迭加其安全性的。我們將從以下三個層面展開討論,比較不同跨鏈橋的安全性。
OpenSea:不會托管用戶NFT,因其限制用戶并損害安全性:7月28日消息,OpenSea表示,近看到很多關于Solana市場托管NFT的討論。對此,OpenSea認為,市場不應要求擁有用戶NFT的所有權才能將其掛單出售。這種做法在Solana NFT中更為常見。雖然一些市場要求賣家托管他們掛單的NFT,但OpenSea沒有這樣做。托管用戶NFT的市場限制了選擇和實用性,并損害了安全性。當用戶必須將NFT托管給市場時,用戶被迫放棄所有權。NFT離開用戶的錢包,即在用戶的物品售出之前,用戶無法再從所有權中受益。這種做法也限制了用戶的安全選擇,NFT離開用戶錢包,由市場的智能合約持有。因此,用戶失去了選擇如何或在何處保護NFT的能力。甚至如果市場出現問題,用戶將再無法訪問其NFT。OpenSea最后表示,因此在其開發Solana NFT市場時,不會托管用戶NFT。[2022/7/28 2:42:12]
信任假設
代碼質保
安全特性
前兩者將討論:跨鏈橋在信任層和源代碼這兩個層面上是否充分考慮了其脆弱性 / 漏洞的根源。最后一點涉及到,一個協議是否承認,不管多么仔細地編碼與審計,漏洞不可避免,并且能相應地建立了額外的保障措施,以盡可能減少用戶的潛在損失。
為了保持完全透明,在深入討論之前,我們承認 Jump Crypto 確是 Wormhole 項目的運營監護人,并且是 Wormhole 的核心貢獻者之一,但我們在這篇文章中將盡可能客觀評估,我們歡迎和接受任何關于如何改進這篇文章的反饋,以展現跨鏈橋之間差異的詳細情況。
從其核心構成,跨鏈橋可以被分解成 3 個組成部分:
智能合約(Smart contract):發出 / 接收每條區塊鏈信息
預言機(Oracle):驗證信息是否來自原始鏈
中繼器(Relayer):將消息提交給目標鏈
在實踐中,跨鏈橋在預言機上實現共識(圍繞信息是否有效)這一方面可能存在很大差異,這也進一步影響中繼器。
在我們深入研究之前,這里是對該領域一些最流行的橋接器所使用的共識機制的一個快速介紹。
Axelar
Axelar 在基于 Cosmos PoS 網絡上運行,驗證者由 Token 持有者選舉產生,并按比例獲得投票權,投票權重由委托權益加權計算得出。Axelar 網絡通過 (t,n) 閾值簽名方案來驗證跨鏈信息,其中簽名者的投票權,權重歸一化為 n,n 必須大于 t,即協議閾值,才能簽署一個信息。Axelar 網絡目前最多有 50 個驗證者,并且必須獲得超過 66.67% 的多數投票才能簽署消息(這兩個變量都可以通過治理投票進行修改)。
聲音 | Coinbase首席執行官:Coinbase自雇間諜測試系統安全性:據decryptmedia報道,Coinbase首席執行官Brian Armstrong今天在共識大會期間向華爾街日報記者透露,Coinbase雇傭了大多數工作人員都不知情的間諜,他們會來申請工作、試圖滲透到交易所的辦公室并破壞網絡。通常情況下,只有安全負責人才知道這是一次演習。Armstrong表示,如果運氣好的話,他們可能會破壞一兩層安全保障。Armstrong稱,Coinbase客戶的資金存儲在地理位置分散的數據庫中,并且該交易所正在構建其“第四代”冷庫系統。[2019/5/16]
理論上,驗證者的數量可以無限大,但在實踐中,因為驗證者不需要為每條區塊鏈運行節點,投票權會出現傾斜。在 Axelar 目前的驗證者名單中共有 47 個驗證者,但只有 20 個擁有實際有效的投票權。在某條特定區塊鏈上,這一數字更小。例如,如果我們只考慮驗證 Aurora 上的信息,只需要 8 個節點就可以成功發送一條消息,只需要 4 個節點審查這一消息。
LayerZero
LayerZero 是一個跨鏈互操作協議,它將區塊鏈之間的無需信任通信問題簡化為預言機(Oracle)和中繼器(Relayer)這兩個實體之間的獨立性問題。預言機將區塊頭轉發給目標鏈,而中繼器將交易證明轉發給目標鏈,兩者共同證明消息是有效的,且信息確實提交到原始鏈上。用戶應用程序(UA)可以自由使用 LayerZero 的默認預言機和中繼器,也可以創建和運行自己的預言機和中繼器。
默認的預言機是一個 Chainlink 去中心化預言機網絡(DON),它在三個參與者(FTX、Polygon 和 Sequoia)之間使用閾值簽名方案(Threshold signature)。在撰寫本文時,由于 LayerZero 代碼庫的閉源性質,筆者對其執行情況缺乏了解。關于特定應用版本的預言機,LayerZero 自己的 Ackee 審計指出,對創建和運行自己的預言機和中繼器的應用來說,成功提交一個無效的交易證明和區塊頭并不困難。不過,這種模塊化確實提供了好處,如果未來出現任何漏洞,都將僅作用于那些使用受影響的預言機 - 中繼器對的應用程序。
LayerZero 的信任假設取決于兩個實體的行為——只要預言機和中繼者彼此獨立運行,就不可能成功發送無效消息。但反過來而言,因為這一系統要求預言機和中繼者均正常運行才得以驗證信息,兩者中任何一方都可以任意刪除信息數據。
動態 | 開發者發布一款BCH錢包 偽裝成相冊應用程序以增加安全性:據Bitcoin.com消息,3月27日,一名開發者發布了一款名為Bchgallery的比特幣現金應用程序,這是一款安卓BCH錢包,偽裝成一個普通的相冊應用程序。該錢包旨在通過充當一個誘餌應用程序,通過隱藏來提高其安全性。[2019/4/1]
Multichain
Multichain 是一個跨鏈信息傳遞協議,源自之前的 Anyswap。Multichain 使用安全多方計算(SMPC)來運行閾值簽名方案,創建公鑰并簽署鏈與鏈之間傳遞的消息。這些節點以無需信任的方式控制用戶賬戶(EOA),錢包地址與拆分的私鑰一一對應。這些帳戶用于存儲資產并將資產轉移到目標鏈,目標鏈只需檢查發件人的地址是否可信,無需驗證消息本身。
Multichain 網絡目前由 24 個 SMPC 節點組成,由不同的機構運行,并且需要大多數節點(「大多數」的量化標準似乎并不公開)來共同驗證消息。因此,該協議的安全性依賴于 SMPC 節點的聲譽安全,它假設所有節點中誠實的節點占半數以上。跨鏈發送數據需要 13 個簽名者,審查消息需要 12 個節點。
Nomad
Nomad 是一個以 EVM 為重點的跨鏈信息傳遞協議,采用 optimistic 機制來驗證消息,其中消息被添加到 Merkle 樹中,并被哈希加密到一個新的根中,由更新者(Updater)發布到原始鏈上。更新者必須交納保證金,從而激勵他們發布有效的證明并盡量減少停機時間。然后,觀察者(Watcher)會有時間對新根進行爭議懷疑并提交欺詐證明。一旦超過時間范圍,這一 Merkle 根就被認為是有效的,并被轉發到目標鏈進行發布,使得原始消息(因為 Merkle 根只是消息的一個「化身代表」)被發布到目標鏈上。
這種 optimistic 模型只需要一個誠實的觀察者來驗證是否發布了一個無效的更新。這種安全模型的代價是,觀察者有大約 30 分鐘的時間來提交欺詐證明,這就使消息的傳輸也被延遲了 30 分鐘。因為觀察者可以通過向目標合約發送虛假欺詐證明來阻止消息被處理,所以 Nomad 使用一組由應用程序指定、經過許可的觀察者。協議的安全性基于至少有一個誠實觀察者存在的可能性,以及因惡意行為而削減更新者的經濟安全性。
聲音 | 江卓爾:預共識Avalanche將提高0確認安全性:今日,江卓爾發微博稱,0確認不夠安全,目前只能用于小額交易(最好還是發貨時間長的交易),而BCH開發中的預共識Avalanche,將顯著提高0確認安全性,有助于交易所等應用場景也接受0確認。[2018/12/12]
Nomad 智能合約可以通過多簽治理模式進行升級,5 個簽名者中需要有 3 個來執行治理變更和處理恢復管理。
應指出的是,最近的 Nomad 黑客事件與其共識機制的安全性無關;它是一個不幸的合約配置錯誤,導致智能合約終端出現惡意行為。
Wormhole
Wormhole 利用權威證明(PoA)守護者網絡作為預言機,并利用無需許可的中繼器網絡來跨鏈傳輸消息。19 個守護者中的每一個都為 Wormhole 支持的每一條鏈運行完整節點,并監聽每個鏈上 Wormhole 核心合約發出的消息。這些守護者驗證并簽署這些消息,然后在 P2P 網絡上互相傳遞。一旦一個消息收到 2/3 以上守護者(至少 13 個)的簽名,它就會被轉發到目標鏈上。這一設計的副產品是,它允許一個完全無需信任的中繼器網絡將消息發布目標鏈上,因為這些信息是由守護者簽名的,所以消息內容既不可能被改變也不可能被審查,因為任何人都可以運行一個中繼器來提交任何信息。
協議的安全保障來自于守護者的聲譽權威。在 Wormhole 案例中,這是一個由?Web3 中 19 個最大的質押和基礎設施供應商組成的團體。簽署假消息需要 13 個守護者,審查消息需要 7 個守護者。此外,現有的守護者有能力投票移除或替換其他守護者。
代碼質保
代碼質保是指在鏈上部署代碼之前需要完成的工作。這可能涉及到以下幾個方面:
審計:對已公開的核心功能和新功能進行多次、獨立的質量審計
賞金:包括為漏洞披露者們提供具有吸引力的獎勵,以及能夠爽快支付大額賞金的行業口碑
測試:在每一次代碼更改上測試盡可能多的協議棧,從而在不斷增長的軟件生態中進行回歸測試
部署安全:在公開環境下進行開發、合并代碼之前需要審查、合約字節碼驗證、升級之前進行模擬測試
下表總結了五個跨鏈橋協議在這四個方面的表現。
金色財經現場報道 ?EOS聯盟吳郎:區塊鏈無法同時擁有高效、安全性、多中心化等優勢:今日,在澳門舉行的Huobi x 三點鐘Supernode party上,EOS聯盟吳郎表示:目前, 我們將EOS定位為區塊鏈3.0,以太坊網絡十分擁堵,沒有可擴展性,EOS是一個更為實用的區塊鏈。區塊鏈無法同時擁有高效、安全性、多中心化等優勢,如果一味的追求高性能、安全,又會影響多中心化的問題。通過DPOS機制,可以在三者中間找到平衡點,EOS是多中心化的區塊鏈項目,要想基于區塊鏈實現真正的商業化應用,就必須滿足高性能的百萬級計算要求,否則就不能在區塊鏈上產生一個微信或者支付寶,區塊鏈技術也將永遠是一項技術,而不能衍生應用。[2018/4/24]
Axelar 有多次公開且信譽良好的審計,并運行一個相當強大(盡管近幾個月活躍度下降)的測試套件:持續集成(CI)和持續交付(CD)運行、bash 構建腳本以及校驗和(checksum)驗證。Axelar 與 Immunefi 合作設立了漏洞賞金計劃,對嚴重漏洞披露者給予高達 100 萬美元的賞金,但其他級別的賞金額度相對較小。Axelar repo 有貢獻者定期提交代碼,Pull Request 需要至少 1 個審查者批準。
LayerZero 在代碼部署方面似乎有些不透明。雖然有來自頂級審核員的幾次公開審計,但卻缺乏公開的持續集成(CI)和持續交付(CD)流程。代碼似乎是一次性公開發布,不是一個敏捷的開發流程。進行的測試似乎相對過時,并僅限于 JavaScript 測試。Pull Request 看起來缺乏一個強制性的同行評審步驟。LayerZero 確實在 4 月份宣布了一個與 Immunefi 合作的 1500 萬美元漏洞賞金計劃。然而,迄今為止還沒有公開發布相關項目,也沒有關于如何提交漏洞獲得賞金的說明。
Multichain 進行了多次公開審計,并與 Immunefi 有一個高達 200 萬美元的賞金計劃。Multichain 進行的測試看起來停滯不前,似乎僅限于一般的 ABI 和簡單的轉移測試。雖然有持續集成(CI)和持續交付(CD)運行以及有限的單元和集成測試,但部署過程看起來主要是手動的。Multichain 的 repo 有貢獻者定期提交代碼,但看起來只需要一方合并代碼(原始開發者能夠合并他們自己的代碼)。
Nomad 最近接受了 Quantstamp 的公開審計,并有一個 Immunefi 的漏洞賞金計劃,賞金最高達 100 萬美元。Nomad 的測試套件包括一些圍繞利用 Foundry 進行路由和消息傳遞的測試,也和 Axelar 一樣有 bash 構建腳本來構建和驗證字節碼。Nomad 的 Repo 有貢獻者定期提交代碼,它的 Pull Request 需要至少兩方合并代碼(原始開發者加 1 個獨立審查者)。
Wormhole 的安全頁面突顯了他們已完成和正在進行的來自業界領先的審計公司的審計。Wormhole 在 Immunefi 上有一個 1000 萬美元的賞金計劃。自 2 月份遭受黑客攻擊以來,Wormhole 已支付了 1100 多萬美元以上的漏洞賞金,包括 5 月份支付給一個白帽黑客的 1000 萬美元。Wormhole 的 repo 使用混合單元和集成測試,有一個可擴展的持續集成(CI)和持續交付(CD)套件,并運行了一系列模擬測試,以驗證升級的向后兼容性和未來的升級能力。此外,Wormhole 通過積極的提交和貢獻者提交公開建設,讓透明的代碼審查和負責任的披露可以實現。Wormhole 的 Pull Request 需要至少三方合并代碼(原始開發者加 2 個獨立審查者)。
注意,協議的代碼質保方式在經歷了嚴重的安全事件后會有很大的改善。例如,在遭受黑客攻擊后,Wormhole 的代碼質保方式迅速得到改善。同樣,在本周的攻擊事件之后,Nomad 協議很可能會在不久的將來采用更多的代碼質保方式。顯然最好在事件發生之前就采用這些做法,可惜它們并不總在優先列表上。
安全功能
如上所述,跨鏈橋一旦發生安全問題,代價極其高昂。上面的代碼質保措施對跨鏈橋供應商的安全計劃至關重要。本節我們將仔細研究每個跨鏈橋正在開發或部署的協議內安全功能,以了解在核心信任假設和代碼質保根本不足的情況下,這些跨鏈橋是如何實現多層防御的。
在白皮書中,Axelar 描述了一個由網絡分配的資金池,作為治理控制的保障和備用機制,以便在 Axelar 中斷的情況下為用戶提供恢復治理的指導。在這樣的危機中,由閾值合約(Axelar 驗證者管理)存放的「緊急解鎖鑰匙」將與輔助恢復用戶集共享。如果需要,這個隊列可能擴展到成千上萬的個人和機構,他們可以集體控制網絡以:
為可以轉入 / 轉出某一特定鏈的資金量設定速率限制
決定鏈上原生資產的包裝形式的情況
這些功能看起來是專有的,目前還沒開源。此外,這些提議的功能不提供被動安全性來限制風險,而是在生死存亡關頭被激活。
LayerZero 的橋接模型包括交易應用程序選擇目標鏈上的中繼器的要求。因此,在這個模型中,協議內安全功能的關鍵之處在中繼器。
4 月份,LayerZero 團隊介紹了他們的協議內安全功能的方法,稱為「穹頂(the dome)」和「預犯罪(pre-crime)」。關于穹頂功能的公開信息很少,但博客文章中提供了關于預犯罪是如何運作的線索。預犯罪模型基本上允許用戶應用程序(UA)定義一組特定的狀態,中繼器必須根據這些狀態進行驗證。如果這些狀態沒有得到驗證,中繼器就不會中繼交易。
注意,這些功能看起來是專有的,目前還沒開源。雖然概念上很強大,但很難獨立評估其有效性。
Multichain 在最近的一篇文章中,披露了他們的一些安全措施,包括提及他們的橋接配置的一些安全功能:
交易量限制和總交易額限制:這一功能允許交易量較大的區塊鏈被限制在一個特定的上限。另外,對于交易量較低的區塊鏈,則采用總交易額限制的方式。
鏈上監控:這種模式涉及監控軟件和鏈上看門狗,以檢測異常行為并觸發突發事件響應行為。
產品暫停:這一功能允許暫停所有產品,并在實施突發事件響應行為時有效將所有產品暫停。
安全基金:這實際上是一個保障基金,拿出所有跨鏈費用的 10% 補償用戶在特殊情況下的財產損失。
Nomad 利用 optimistic verification model,即消息在原始鏈上簽名,并有一個內置的時間窗口會在目標鏈上強制執行。在某種程度上,我們可以觀察到這類似于「不早于這個時間打開這封信」。這段時間對于實施「自動斷路器」和在 Merkle 根被認為有效之前停止轉移資產是有用的。這在 Nomad 文檔中已作為一個概念出現,開發似乎正在進行中。
Wormhole 的消息傳遞模型是群播(multi-cast)的,即消息由守護者 / 預言機網絡從原始鏈進行公證,并且不信任將該消息帶到目標鏈的中繼器。這種模式基本上需要一個非常強大的預言機網絡,協議內安全功能有賴于此。
Wormhole 項目有三個主要的協議內安全功能正在開發中:監管、會計和緊急關閉。這些功能是在公開可見的情況下開發的,這讓我們能夠深入了解它們最終會如何運作。這些功能正在等待開發完成并被守護者采用。
監管:這一功能在守護者 / 預言機中實現,允許守護者在一個時間窗口內監控來自任何受監管鏈的價值流動的名義金額。守護者可以為每條鏈設定一個可接受的上限,一旦達到這個上限,就會阻止這條鏈超出的資產流動。
會計:這一功能在守護者 / 預言機中實現,允許守護者維護他們自己的區塊鏈(又稱「wormchain」),它們可以作為不同鏈之間的跨鏈賬本。這個賬本不僅可以讓守護者擔任鏈上的驗證者,還充當了一個會計插件。守護者可以拒絕原始鏈沒有足夠的資金(驗證獨立于智能合約邏輯之外)的跨鏈交易。
關閉:這一功能在鏈上實施,允許守護者在意識到跨鏈橋存在的威脅后,達成共識暫時停止跨鏈橋上的資產流動。目前的實施方案允許通過擬議的實施方案中的鏈上函數調用來實現。
結語
在未來幾個月或幾年里,我們相信安全將成為跨鏈橋之間拉大差距的地方。那些優先考慮安全問題的跨鏈橋更可能度過危機,不這么做的跨鏈橋則很可能挺不過去。安全性可能曾經只是競爭優勢的一個來源,然而,現在它必須成為每條跨鏈橋都應優先考慮的首要功能。我們希望所有跨鏈橋團結起來,共同提升跨鏈橋安全技術水平。
Unitimes
個人專欄
閱讀更多
金色早8點
Bress
PANews
鏈捕手
財經法學
成都鏈安
Odaily星球日報
區塊律動BlockBeats
撰文:老白,《萬字長文——我眼中區塊鏈各個賽道正在演進的技術趨勢》說下近期各個板塊看到的正在發生的,以及未來 6-12 個月可能出現的趨勢整體會分為公鏈,DeFi(Dex,借貸.
1900/1/1 0:00:00來源:老雅痞 Web3背后的概念可以從根本上改變我們的數字生活,但要解析那些凝聚成Web3的誘人技術背后的模糊承諾和零碎想法是很困難的.
1900/1/1 0:00:00DID和社交網絡中的零知識證明作者:Ishanee,IOSG Ventures首先解釋一下文中會使用到的詞語的含義:去中心化身份 (DID) 或個人主權身份 (SSI) :是一個基于開放標準的框.
1900/1/1 0:00:00對外面的世界一無所知的人可能都知道,游戲產業一直處于飛速發展之中。它是從新冠疫情大流行中受益的行業之一.
1900/1/1 0:00:00最近,Contora 團隊做了一個有意思的調查和研究,那就是調查 web3/crypto 領域的創始人們.
1900/1/1 0:00:00在8月8日美國對Tronado Cash實施制裁后,沖擊波席卷了整個加密貨幣領域。Tornado Cash 是以太坊區塊鏈 ( 或其他 EVM 兼容網絡 ) 上的去中心化、點對點數字現金協議,允.
1900/1/1 0:00:00