掃碼下載
BTC $77,396.89 +2.97%
ETH $2,430.21 +3.19%
BNB $641.41 +1.08%
XRP $1.48 +1.72%
SOL $89.11 -0.46%
TRX $0.3273 +0.08%
DOGE $0.1004 +1.94%
ADA $0.2609 +1.02%
BCH $455.03 +1.91%
LINK $9.66 +1.19%
HYPE $44.63 +2.22%
AAVE $116.63 +0.20%
SUI $1.01 +2.27%
XLM $0.1749 +4.18%
ZEC $325.75 -5.00%
BTC $77,396.89 +2.97%
ETH $2,430.21 +3.19%
BNB $641.41 +1.08%
XRP $1.48 +1.72%
SOL $89.11 -0.46%
TRX $0.3273 +0.08%
DOGE $0.1004 +1.94%
ADA $0.2609 +1.02%
BCH $455.03 +1.91%
LINK $9.66 +1.19%
HYPE $44.63 +2.22%
AAVE $116.63 +0.20%
SUI $1.01 +2.27%
XLM $0.1749 +4.18%
ZEC $325.75 -5.00%

一文解析 Tokenbridge 價值傳輸

Summary: tokenbridge作為主鏈和側鏈之間的橋樑,對於資產和數據的轉移起到了決定性的作用。
IOBC Capital
2022-04-11 17:57:11
收藏
tokenbridge作為主鏈和側鏈之間的橋樑,對於資產和數據的轉移起到了決定性的作用。

作者: IOBC Capital

前段時間,Axie Infinity的底層區塊鏈網絡Ronin Network失竊6億美金,直到用戶無法從跨鏈橋Ronin Bridge提款後盜竊案才被發現。跨鏈橋的資產安全問題再次引發熱議。

事後,Sky Mavis COO Alexsander Larsen表示,"Ronin Bridge被攻擊不是因為智能合約存在漏洞,而與社會工程和人為錯誤有關"。Axie Infinity的投資方Animoca Brands聯合創始人Yat Siu曾在採訪中提到,"如果一座橋樑能夠鑄造代幣,那它就像鑄造機一樣……橋樑是權威,但如果它們設計不當或存在漏洞,就會對生態系統構成巨大風險。"

本文我們具體聊聊Tokenbridge的工作原理以及如何保證可靠性和安全性。

一、Tokenbridge的特性和模型

在ethereum生態中,tokenbridge允許用戶在兩條鏈上傳輸數據,並且提供了快速和安全的鏈接。tokenbridge作為主鏈和側鏈之間的橋樑,對於資產和數據的轉移起到了決定性的作用。

1. 鏈與網絡的定義

Native(Home):本地鏈(側鏈)是一個快速並且便宜的網絡,所有收集validator的bridge操作都在native這一側執行。

Foregin(主鏈):這邊可以是任何鏈,但通常是指以太坊的主網。

ERC20:在ERC20-ERC20bridge模式中,ERC667作為ERC20的實現可以在NativeSide端被創建和銷毀。

2. Bridge Modes

bridge可以被配置成多種網絡方式。目前支持的方式包括Native-to-ERC20模式,ERC20-to-ERC20模式,ERC20-to-Native模式和AMB(arbitrary message bridge)模式。

ERC20 to ERC20 : 兼容的ERC20 token被鎖在foreign network,同時在native邊創建erc20token(erc677 token);當從navtive向foregin轉移時,erc677token被銷毀,erc20token(foregin)被unlock。

ERC20 to Native :coins被鎖在foregin邊,同時在native邊創建erc20token。xDai用的是這種模式。

AMB Bridge :在兩個鏈之間可以傳遞任意的數據。例如,允許傳輸nft token以及它們的metadata。

3. Bridge Components

bridge也包括一些組件,內容如下:

tokenbridge:監聽事件,發送交易去授權資產傳輸;

bridge ui application:在鏈之間傳輸tokens和coins的dapp gui工具;

bridge monitor: 檢查餘額和未處理的events的工具;

bridge deployment playbooks:可選的playbook。對於遠程部署,可以管理token bridge的配置;

bridge smart contract:管理bridge的validator,收集簽名和確認資產傳遞和丟棄。

為了方便理解,我們看一個user case:

image

這個ERC20-to-ERC20模式的token bridge,展現了用戶如何在主鏈和側鏈直接相互轉帳。具體流程如下:

  1. 用戶通過交易所購買了需要的tokens;

  2. 用戶把購買的token 鎖在 foregin bridge的智能合約裡面,同時這個event會通過 token bridge進行傳遞,在native bridge contract中會創建erc677標準的token,同時發送到用戶賬號上;

  3. 用戶通過sidechain提供的dapp,使用dapp;

  4. 用戶想把sidechain的資產轉移回主鏈,通過燃燒erc677 的token,token bridge把消息傳遞到foreign bridge contract,智能合約解鎖token;

  5. 用戶把解鎖後的token,通過交易所賣掉。

token bridge的基本定義,概念,流程都介紹完成了,那麼如何去管理一個token bridge呢?包括對於token bridge的升級,維護,配置等等。這裡就需要介紹token bridge中的角色。

二、Token Bridge Roles

tokenbridge上的管理員負責bridge的安全,升級和智能合約的部署。管理員的操作都是通過多簽名來確保安全的。

Administrative Groups and Roles

管理員負責管理bridge的智能合約,並負責validator的管理。管理員分為以下三個組:

  1. Group A - 負責管理validator的集合
  • 添加或者刪除validators;

  • 對於validators設置最小所需要的簽名數量。

  1. Group B - 負責管理bridge的參數
  • 對於user和validators設置每日限制;

  • 設置每個transaction的min和max的限制;

  • 設置gas price的fallback;

  • 設置終止閾值。

  1. Group C - 管理升級
  • 智能合約的升級;

  • 解鎖funds。

Validators Roles

提供100%的正常時間用於傳遞transactions;

  • 在native side監聽UserRequestForSignatures的事件,並簽署一個批准對於傳遞的資產在foreign side;

  • 在native side監聽CollectedSignatures。一旦收集到了足夠的簽名,傳輸所有收集到簽名給foregin side;

  • 在foreign side監聽UserRequestForAffirmation or Transfer事件並對於資產從foregin到native,發送一個准許給native side。

validator的主要作用一方面是監聽兩邊的時間,另外一方面對於交易的傳遞做校驗和傳遞。

Ronin被盜事件中,攻擊者就是通過控制驗證節點的方式盜取資產。Ronin鏈有9個驗證節點,存、取加密資產需要9個驗證者簽名中的5個。攻擊者設法控制了Sky Mavis的4個Ronin驗證器,另一個被控制的是由Axie DAO運行的第三方驗證器。Sky Mavis是Axie Infinity的開發商。

了解了跨鏈橋的工作機制後,對於如何規避Ronin事件類似的跨鏈橋安全問題的再度發生,從社會工程的角度,我們有以下幾點思考:

  1. 跨鏈橋項目要關注簽名驗證節點的安全性,確保敏感信息安全存儲;

  2. 如果跨鏈橋項目的簽名是在線下進行的,網絡必須更新簽名的安全策略,關閉相關的服務模型,同時要考慮簽名賬戶地址被洩漏的風險;

  3. 驗證簽名不僅要採取多重簽名的方式,還要確保多簽事實上屬於執行隔離,簽名內容的驗證過程必須獨立進行。

User Roles

這裡就不做過多解釋了,主要就是在主鏈和側鏈之間發起資產傳遞的請求。

三、Component - Monitor

token bridge monitor的主要作用是識別tokenbridge oracle過程中出現的數據不一致和異常情況。monitor從tokenbridge contract 獲取數據以及bridge中的transation,分析它們的健康狀態,並通過Json的數據格式展現出來。

四、總結

我們從另外一個視角分享了sidechain和mainchain的關係,在兩條鏈中資產和數據的傳輸是通過token bridge來保證的:

  • tokenbridge通過權限角色模型並借助多簽的方式,管理bridge的角色和配置;

  • validators負責兩邊transaction的確認和傳輸;

  • monitor負責監控數據的一致性和異常情況。

但是這也暴露了一個問題,tokenbridge的管理權限在admin手中,而admin使用是通過多簽的方式保證安全的,是一種弱中心化的管理方式。所以,對於admin私鑰安全性的管理就成為整個tokenbridge最核心的安全問題。

warnning 風險提示
app_icon
ChainCatcher 與創新者共建Web3世界