比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > 酷幣 > Info

前沿:TEE 在跨鏈橋中的應用_TWO

Author:

Time:1900/1/1 0:00:00

作者:Middle.X

感謝Ronnie@BoolNetwork、Aki@Darwinia參與本文內容的探討,本文部分內容原載于《?PAKA跨鏈研究報告?》,點擊查看完整報告。

在眾多的跨鏈安全事故中,私鑰泄露是其中一個重要類型。典型的案例是今年3月份AxieInfinity官方橋RoninBridge遭遇的情況和6月份Harmony官方橋HorizenBridge遭遇的情況,二者都因為跨鏈橋的驗證人節點私鑰泄露而導致重大損失。

由于驗證人節點需要用程序來對跨鏈事件執行簽名,這使得私鑰不得不暴露在網絡中,極易成為黑客攻擊的目標。然而這樣的問題,其實通過用TEE來管理節點私鑰就可以很大程度上避免。TEE還能以多種方式被應用于跨鏈橋,能夠在優化跨鏈橋的安全性和性能上都發揮積極作用。

TEE全稱為可信執行環境,它對于我們的日常生活而言并不陌生,手機上的指紋驗證就是在TEE中運行的。

TEE是在給定設備上運行的與主操作系統隔離的計算環境,就像一塊飛地。這種隔離是通過硬件強制實現的。在TEE中運行程序的過程是隱蔽的,外界不可感知,這減少了TEE遭受黑客攻擊的可能性。程序在TEE中運行完成后,輸出的計算結果會被附上一個由設備生成的簽名,該簽名將被設備供應商遠程驗證,并生成遠程驗證證明。遠程驗證證明能夠向外界證實該程序在TEE中被完整的執行,沒有被篡改和干預。正因為如此,TEE可以運行具有高安全性要求的應用程序,例如加密密鑰管理、生物特征認證、安全支付處理等。

我們將結合pNetwork、Avalanche、BoolNetwork、LCP的案例來說明TEE在跨鏈橋中的具體應用。

pNetwork

pNetwork是有ProvableThings團隊開發的一個跨鏈橋,于2020年3月推出,是一座Wrap橋,Wrap資產被稱為pTokens。

Wrap橋的基本模型是Lock-Mint和Burn-Unlock,pNetwork通過一個TEE節點組成的網絡來負責驗證源鏈上的Lock和Burn行為,并在目標鏈上執行Mint和Unlock。

任意擁有TEE設備的主體可以質押200$PNT,即可成為pNetwork的TEE節點。pNetwork中的TEE節點網絡將負責對跨鏈消息進行共識簽名。在初始化時,TEE節點集需要共同參與秘鑰的計算,以生成公鑰和私鑰碎片,其中公鑰只有一個,處于公開狀態,私鑰碎片則是在本地生成后,存入TEE中“密封”。即便是TEE節點的運行者也無法知道私鑰碎片。

廣東:支持人工智能、區塊鏈等前沿領域加強研發布局:6月16日消息,據科創板日報報道,近日,廣東省委、省政府印發《廣東省質量強省建設綱要》提出,提升產業集群質量引領力。加強先進技術應用、質量創新、質量基礎設施升級,培育發展一批引領性強的戰略性產業集群。同時要增強 5G、超高清顯示等領域產業技術優勢,支持人工智能、區塊鏈、量子信息、生命健康、生物育種等前沿領域加強研發布局,支持量子通信、信息光子、太赫茲、新材料、生命健康等領域努力搶占未來發展制高點。[2023/6/16 21:42:03]

TEE節點除了需要運行Enclave內的程序,還需在Enclave外運行接入鏈的全節點,以便于Encalve內的輕節點查詢區塊頭。

pTokens之旅

從Token到pToken的過程如下:

用戶調用源鏈智能合約的Lock函數,發起Lock交易T,將Token存入源鏈托管地址,在交易備注字段中提供他們想要收款的目標鏈地址;

TEE節點監聽到交易后,進一步獲取交易T所在區塊的區塊頭N的所有Lock交易,向Enclave中傳入,同時也會將區塊頭N及這些Lock交易的默克爾路徑傳入;

Enclave中的輕節點程序首先驗證區塊頭N,然后用區塊頭N驗證所有Lock交易;

一旦通過驗證,Enclave就會簽名一批Mint交易,為所有目標地址Mint對應數量的pToken;

各Enclave相互進行加密通訊,以合成完整的簽名,并提交這些Mint交易;

交易被廣播到目標鏈,被目標鏈確認后,用戶的目標地址就獲得了pToken。

從pToken到Token的過程如下:

用戶調用源鏈智能合約,發起Burn交易T,將pToken發送到銷毀地址,備注字段中寫明目標鏈上的收款地址;

TEE節點監聽到交易后,進一步獲取交易T所在區塊的區塊頭N的所有Burn交易,向Enclave傳入,同時也會將區塊頭N及這些Burn交易的默克爾路徑傳入;

Enclave中的輕節點程序首先驗證區塊頭N,并用區塊頭N驗證這些Burn交易;

浙江:在區塊鏈等重點前沿科技領域超前布局:12月22日,浙江省政府新聞辦舉行浙江省國家數字經濟創新發展試驗區建設新聞發布會,介紹相關情況并回答記者提問。發布會現場,發言人表示,下一步浙江將發展壯大一批數字產業。做強云計算等新興產業,壯大集成電路等基礎產業,在區塊鏈等重點前沿科技領域超前布局,打造集成電路等標志性產業鏈,建設3-5個世界級產業集群,數字經濟核心產業增加值年均增長12%以上。(浙江發布)[2020/12/22 16:05:18]

一旦驗證通過,Enclave就會簽名一批Unlock交易,從托管地址中向所有目標地址轉出對應數量的Token;

各Enclave相互進行加密通訊,以合成完整的簽名,并提交這些Unlock交易;

交易被廣播到目標鏈,被目標鏈確認后,用戶的目標地址就獲得了Token。

由于私鑰在Enclave中保管,且驗證和簽名的過程也在Enclave中進行,惡意攻擊者攻擊網絡在經濟上和實踐上都不方便。此外,pTokenNetwork還鼓勵TEE節點采用不同廠商的設備,不同廠商的TEE設備的具體原理可能是不同的,多元化廠商的TEE節點將進一步提高攻擊者的攻擊難度,因為攻擊者需要攻破多個廠商的TEE設備才有可能實施攻擊。

因此,采用TEE節點組成的MPC網絡,相比非TEE節點組成的MPC網絡,增加了一層安全保護。此外,pNetwork選擇將代碼開源,開源代碼明確了Encalve當中進行的每個過程,而遠程證明中包含程序的哈希根,任何人都可以驗證Enclave中執行的代碼與pNetwork公開的代碼的一致性,這是進一步的安全聲明,因為排除了程序編寫者作惡的可能性。

2021年10月,pNetworkV2發布,該版本將pNetwork拓展為了一座AMB橋。

pNetworkV2延續了V1的核心特性,依舊使用TEE節點組成的MPC網絡來驗證跨鏈消息,但V2版本將不局限于資產跨鏈相關的消息。

AvalancheBridge

AvalancheBridge(AB)是Avalanche的官方跨鏈橋,目前支持AvalancheC鏈與Ethereum之間的跨鏈資產傳遞。

鏈上ChainUP Joy:ChainUP始終走在行業前沿,目前已支持全系DeFi幣種:9月17日,鏈上ChainUP深圳負責人Joy做客《考拉情報局》,一起探討“頂尖技術服務商如何在DeFi賽道發力”。關于鏈上ChainUP在DeFi的布局,Joy表示,隨著資產和用戶的不斷涌入,DeFi已經成為區塊鏈行業最熱名詞。

作為領先的區塊鏈技術服務商,鏈上ChainUP早在2018年就開始布局DEX,因此在今年DeFi進入一個爆發點時,能快速地切入市場,推出自身的DEX產品Chainswap,并支持各種主鏈開發改造DAPP,助力客戶布局去中心化賽道,同時鏈上ChainUP也已經支持全系DeFi幣種。[2020/9/17]

與pNetwork相同,AvalancheBridge用TEE節點組成的MPC網絡來驗證跨鏈事件,AvalancheBridge的TEE節點被稱為Warden。為了追求更低的費率和更快的速度,AvalancheBridge在設計上做了些許優化。

首先,為了加快驗證效率,AvalancheBridge直接在TEE內運行全節點,并在Enclave內建立索引來查詢交易,而不像pNetwork的TEE節點在Enclave外運行全節點,在Enclave內運行輕節點。當然,pNetwork現在支持9條鏈的資產傳遞,未來可能支持更多,如果這么做,Enclave的存儲空間可能會構成挑戰。

其次,AvalancheBridge使用普通地址,而非合約地址來托管鎖定資產。這避免了一部分合約調用的費用。

初始化的時候,Warden之間相互加密通信,創建一個托管地址,并將私鑰碎片密封在各自的Enclave中,該托管地址是一個0x開頭的EOA地址,既可以用于以太坊,也可以用于AvalancheC鏈。

我們以ERC20資產的跨鏈為例,來闡述AvalancheBridge處理資產跨鏈的步驟:

Wrap:Ethereum->Avalanche

用戶在以太坊上發起存款交易,將需要跨鏈的ERC20資產轉入托管地址;

每個Warden監控該地址,以發現這筆存款交易;

Warden將交易傳入Enclave,Enclave進行驗證;

聲音 | 中歐陸家嘴國際金融研究院院長:金融科技發展要重視區塊鏈等前沿領域研發和應用:日前,在“智薈中歐2018”第四屆歐洲論壇上,中歐陸家嘴國際金融研究院院長、中國工商銀行原董事長姜建清演講時表示,當前,以區塊鏈和人工智能等為代表的金融科技風起云涌,金融創新呈現出蓬勃生機,進入了金融和科技深度融合的新階段。金融科技發展不能只看到前端的應用,更要重視基礎研究,重視人工智能、大數據、區塊鏈等前沿領域的研發和應用,努力夯實基礎、儲備長遠。[2018/7/21]

驗證通過后,Warden會用各自的私鑰碎片簽署一筆Mint交易,并相互進行加密通訊以合成完整簽名。

Warden向AvalancheC鏈提交Mint交易,使得托管地址調用Mint合約,為用戶鑄造Wrap資產(為了安全考慮,AvalancheBridge僅支持資產跨鏈至與發起地址相同的目標地址)。

Unwrap:Avalanche->Ethereum

用戶在AvalancheC鏈上調用橋合約中的Burn函數,發起一筆銷毀交易,將需要跨鏈的Wrapped資產發送到指定的銷毀地址;

Warden監控到這筆交易后,將交易傳入Enclave;

Enclave各自對這筆交易進行驗證;

驗證通過后,Enclave各自用自己的私鑰碎片簽名一筆Unlock交易,以將托管地址中對應數量的原生資產發送給用戶的Ethereum地址;

Enclave相互進行加密通訊以合成完成簽名,并將Unlock交易提交到Ethereum,交易被確認后,用戶將在以太坊上收到托管地址的轉賬。

我們發現AvalancheBridge的資產跨鏈流程中,只有Mint交易和Burn交易需要調用合約,而Lock和Unlock交易只是普通的轉賬,不需要調用合約。這樣的設計降低了Gas消耗,從而降低了用戶端的跨鏈手續費。

無論是pNetwork和AvalancheBridge,都充分利用了TEE的特性,讓私鑰被外部攻擊者竊取的可能性大幅降低。但我們要注意到,這依舊不能阻止TEE節點的內部串謀。

如果TEE節點之間合謀,可以試圖合成私鑰、替換Enclave里的程序,或者通過分叉源鏈制造虛假事件騙取Enclave的簽名。

聲音 | 谷歌聯合創始人:谷歌未能站在區塊鏈最前沿:據CNBC報道,谷歌聯合創始人Sergey Brin上周末在摩洛哥舉行的區塊鏈會議上表示,谷歌錯過了成為區塊鏈技術前沿公司的機會。盡管谷歌可能錯過了對分布式賬本技術的早期采用,但Brin稱谷歌半公開的研究部門正在研究區塊鏈。[2018/7/10]

而我們下文要講的BoolNetwork,則可以做到“外防攻擊,內防串謀”。

BoolNetwork

BoolNetwork也是一個采用TEE節點網絡作為外部驗證者的跨鏈橋項目。BoolNetwork做了進一步的創新——增加了TEE節點的輪值機制和匿名機制。

BoolNetwork被設計為了一個任意消息跨鏈橋,支持任意第三方在其上構建跨鏈應用。BoolNetwork參考CosmosIBC,引入了Channel的概念,部署在不同鏈上的兩個應用程序之間可以建立Channel,以實現二者之間消息的有序傳遞。每個Channel都會對應至少一個MPC委員會。該委員會在當前Epoch內負責對該Channel內的跨鏈消息進行共識簽名。這個MPC委員會是輪值的,任期只有1個Epcoh,每個Epcoh都會重新選舉。

BoolNetwork目前會為每個Channel分配兩個委員會,互為備份,以提高服務可用性。

任何人都可以通過質押$BOL成為候選的TEE節點。每個Epoch開始前,BoolNetwork會通過RingVRF算法,為每個Channel選舉MPC委員會。被選為MPC委員會成員的節點會獲得一個用于通訊的臨時身份,用于在共識簽名過程中與同一委員會中的其他TEE節點通訊。當一個Epoch結束時,所有的臨時身份都會失效,然后網絡將重新進行節點選舉,選出新的輪值MPC委員會,賦予他們新的臨時身份。

盡管每個候選的TEE節點在注冊的時候,需要提供永久身份信息,但節點在通訊時使用的臨時身份并不會暴露永久身份信息。換句話說,節點在通訊時是相互匿名的。如果候選節點有100個,那么你只能知道與你通訊的節點是這100個當中的1個,而不知道具體是哪一個。

每個Channel的MPC委員會需要多少個TEE節點,簽名的門限是多少,是由Channel創建人自定義的。常用的門限數值有15-of-21、13-of-19、5-of-9。

同一個Epoch內,不同Channel的MPC委員會成員可能會有重疊,也有可能有部分候選節點沒有被選入任何一個委員會,而出現閑置的狀態。這些情況都是正常的。

我們發現,BoolNetwork通過TEE、輪值機制、匿名機制的組合,構建了一個牢不可破的黑箱。由于簽名程序運行在匿名節點的TEE中,而且它們之間的通訊內容是加密的,當處于工作狀態時,TEE節點的運行者本人無從知曉自己被選入哪個Channel的MPC委員會,與哪些節點進行了共識通訊,簽名了哪些消息,連“自知”都做不到,更談不上“知人”。這基本上讓節點串謀變的不可能。

從外部攻擊者的角度,如果要攻擊某個特定的Channel,攻擊者無從知曉當前的MPC委員會背后是哪些設備、哪些主體,也無法從通訊中截獲這些信息。無論是內部串謀,還是外部攻擊,都只能選擇攻破所有候選節點中的大多數,才有可能攻擊成功,這無疑代價是巨大的。

BoolNetwork是一個仍在開發中的項目,還有些技術細節沒有完全確定。

LCP

LCP的全稱是LightClientProxy,是Datachain提出的一個將TEE用于跨鏈橋的新范式,本文撰寫時,LCP尚處于概念階段,沒有代碼實現。LCP與前述三者完全不同。pNetwork、AvalancheBridge、BoolNetwork的思路都是用TEE來管理私鑰、驗證消息、執行簽名。LCP的思路則是用TEE來運行輕客戶端。

LCP的思路或多或少借鑒了LayerZero,LayerZero用外部預言機網絡來運行超輕客戶端,但這個“超輕客戶端”并不會像一個真正的鏈節點那樣對新獲取的區塊頭進行驗證,而是通過預言機網絡的節點們共識簽名來確認區塊頭的有效性。LCP則希望在TEE內運行貨真價實的輕客戶端。

我們知道,輕客戶端跨鏈橋是安全性最高的跨鏈橋技術類型,它通過在目標鏈上部署源鏈的輕客戶端來使得目標鏈對源鏈的交易有驗證能力。但其缺點非常顯著:

鏈上的存儲和計算資源緊張,鏈上的輕客戶端在同步和驗證區塊頭的過程中會消耗較多的Gas,這會使得鏈上輕客戶端很昂貴,有些情況下甚至不具備經濟可行性。盡管有一些方案,可以構建相對輕量級的鏈上輕客戶端,但這些方案又會增加開發難度和代碼復雜度。

將輕客戶端放到鏈下執行可以有效解決上述問題,但我們需要鏈上對鏈下輕客戶端的運行狀態進行驗證,這點可以通過TEE的遠程證明實現。理論上,LCP僅需一個TEE節點,并不需要多個節點對交易的真實性進行共識確認。但為了保證可用性,安排一定的冗余還是有必要的。

當有交易T需要驗證時:

交易T會首先被提交給TEE節點;

TEE節點將交易T、交易T所在區塊高度N、交易T的默克爾路徑傳入Enclave

Enclave中的輕客戶端運行更新程序,更新到的區塊高度N,并用高度為N的區塊頭對交易T執行SPV驗證。

Enclave在驗證完成之后,通過遠程認證,生成遠程認證證明

TEE節點將交易T的驗證結果及遠程認證證明提交到目標鏈

目標鏈上的校驗程序檢查遠程認證證明的有效性,確認程序的確是在TEE中運行的,以及運行的程序是正確的輕客戶端程序。

需要辨明的是,盡管pNetwork的TEE節點也會在運行輕客戶端,但該輕客戶端在驗證交易之后會觸發本地私鑰碎片對交易的簽名,鏈上最終驗證的是簽名,而非TEE內運行的程序本身,因此pNetwork依舊屬于外部驗證的范疇。LCP則是向鏈上提交遠程認證證明,這當中會包含程序哈希以供鏈上檢查TEE中運行了正確的輕客戶端程序,用「原生驗證的擴展」來歸類LCP會更為恰當。

在TEE中運行輕客戶端,事情變的簡單許多,輕客戶端不再需要考慮如何節約存儲和計算資源,不需要復雜的“瘦身”和“擴容”方案。但我們需要認識到,在TEE中運行輕客戶端,始終要比在鏈上運行輕客戶端的安全等級降低了一些。因為TEE并不是絕對安全,其技術防護手段有可能被攻破,且TEE設備的廠商也有微小的可能性作惡。不過這個問題可以通過TEE節點的冗余和設備廠商的多元化來彌合。

小結

以上我們討論了TEE被應用于跨鏈橋的幾種情況。

TEE在跨鏈橋中最直接的應用便是保管私鑰,正如我們所列舉的pNetwork、AvalancheBridge和BoolNetwork,在人們對跨鏈橋安全性憂心忡忡的當今此時,我們或許應該期待用TEE管理私鑰成為多簽類跨鏈橋的標配手段。對于防止TEE節點的串謀,BoolNetwork將節點匿名化的思路給了我們很好的啟示,而LCP的方案,為輕客戶端跨鏈橋提供了一個新的范式,它在基本保持輕客戶端橋的理論安全度的前提下,提升了輕客戶端橋的通用性和可擴展性。

跨鏈橋依舊在激烈的演化之中,TEE的運用只是其演化方向之一。我們還在觀察其他的演化方向,我們對更加安全的跨鏈橋充滿期待。

參考資料

https://hackmd.io/@phala/BJh_3bbQU

https://www.8btc.com/article/608236

https://ptokens.io/ptokens-rev5b.pdf

https://medium.com/pnetwork/introducing-pnetwork-v2-bfa7fcdcedb8

https://zhuanlan.zhihu.com/p/406818768

https://medium.com/avalancheavax/avalanche-bridge-secure-cross-chain-asset-transfers-using-intel-sgx-b04f5a4c7ad1

https://mp.weixin.qq.com/s/Hw-jW9YtyJjxtI-xo_ANUQ

https://twitter.com/TigerVCDAO/status/1588215376235462656

https://docs.lcp.network/

Tags:WORORKTWOETWLuxurious Pro Network TokenN*N Plus NetworkferrumnetworkETW幣

酷幣
Mythical Games 指控前高管利用公司機密為其私人項目籌集 1.5 億美元_MYT

鏈游工作室MythicalGames提起訴訟,指控三名前高管利用公司機密為其離開公司后創立的新項目FenixGames籌集1.5億美元資金,違反了他們的信托義務.

1900/1/1 0:00:00
Hooked 發布空投公告:共計 6 期,單用戶至多可獲得 100 枚 HOOK Token_OBI

Web3社交網絡HookedProtocol發布空投公告,將向現有HookedPartyPassNFT持有者進行總計6期的HOOK空投活動,每名用戶最多可獲得100枚HOOKToken.

1900/1/1 0:00:00
深度解析 zkEVM:工作原理、構建難度、重要性以及開發進展等_ROLL

原文標題:《zkEVM知識問答--Alchemy》原文來源:Alchemy零知識以太坊虛擬機是一種生成零知識證明來驗證程序正確性的虛擬機。ZkEVM?旨在以支持零知識技術的方式執行智能合約.

1900/1/1 0:00:00
馬紹爾群島共和國通過《2022 年去中心化自治組織法》,承認 DAO 為有限責任公司_區塊鏈

馬紹爾群島共和國通過了《2022年去中心化自治組織法》,延長了DAO的合法性。今年早些時候,馬紹爾群島成為第一個承認DAO為法人實體的國家.

1900/1/1 0:00:00
Cardano NFT 賽道起風,CNFT 會是下一個風口么?_CARD

作者:Adaverse 熱度漸起的CardanoNFT背后,如何擁有一枚CNFT?最近伴隨著整個加密市場悲觀情緒的蔓延,NFT賽道也開始經受考驗,尤其是ETH在二級市場的萎靡.

1900/1/1 0:00:00
晚報 | Animoca Brands 擬推出 20 億美元規模元宇宙基金;X2Y2 已幾乎確定千萬美金的融資_OIN

整理:西昻翔,鏈捕手 “過去24小時都發生了哪些重要事件”?1、AnimocaBrands擬推出20億美元規模元宇宙基金據Nikkei報道.

1900/1/1 0:00:00
ads