Avalanche Bridge 的技術解讀

作者:李尼 Demmon

背景

Avalanche Bridge(簡稱AB)是 Avalanche 項目團隊設計的跨鏈機制,替代之前的 Avalanche-Ethereum Bridge(簡稱AEB)。其核心技術為 Intel SGX(小知識:什麼是 Intel SGX?2013 年,Intel 推出 SGX(software guard extensions) 指令集擴展,旨在以硬體安全為強制性保障,不依賴於硬體和軟體的安全狀態,提供用戶空間的可信執行環境,透過一組新的指令集擴展與訪問控制機制,實現不同程式間的隔離運行,保障用戶關鍵代碼和數據的機密性與完整性不受惡意軟體的破壞。不同於其他安全技術,SGX 的可信計算基 (trusted computing base, 簡稱TCB) 僅包括硬體,避免了基於軟體的 TCB 自身存在軟體安全漏洞與威脅的缺陷,極大地提升了系統安全保障 ; 此外,SGX 可保障運行時的可信執行環境,惡意代碼無法訪問與篡改其他程式運行時的保護內容,進一步增強了系統的安全性。

所以 Avalanche 的 AB 跨鏈橋主打的特點是 “快速” 和 “費用低”。目前支持 ERC20 代幣在Ethereum 和 Avalanche 之間雙向跨鏈,ETH 支持 WETH,Wrapped Token 和託管型WBTC,還有若干基於 ERC20 標準的代幣。

延伸閱讀:《【AVAX 幣】Avalanche 雪崩協議是什麼?AVAX 幣哪裡買?

跨鏈資金管理

Avalanche Bridge 技術的核心(或者說技術差異度)主要就是體現在跨鏈資金的管理機制上。區別於其他項目,雖然其跨鏈對象(即 Ethereum 和 Avalanche)支持智能合約,但 AB 並沒有使用智能合約去管理跨鏈資金,而是透過 Intel SGX 產生一個普通的 Ethereum 和 Avalanche 地址,去完成跨鏈資金的管理和 Wrapped Token 的 Mint。

具體流程如下:
(1) 在 Intel SGX Application 中,內部存在一個 Master Secret
(2) 透過 Master Secret 產生兩個私鑰 sk1 和 sk2
(3) sk1 對應於 Ethereum 上一個普通地址 Eth_Add,用於鎖定用戶跨鏈資金
(4) sk2 對應於 Avalanche 上一個普通地址 Ava_Add,用於在 Avalanche 上部署合約、在合約中 Mint Wrapped Token
(5) Master Secret 會在 Intel SGX Application 中通過 Shamir 秘密分享拆分為 4 個碎片,分別加密發送給四個 Warden
(6) 重啟 Intel SGX Application 時候,需要至少三個 Warden 將秘密碎片發送過去,以重構出 Master Secret,進而計算 sk1 和 sk2

小結:跨鏈資金是由兩個普通地址控制,而不是合約控制。而控制地址的私鑰也並不是由Warden 直接掌握,而是放在 Intel SGX 使用,但是 Warden 具備 Master Secret 的碎片,可以重啟 Intel SGX Application,在其內部計算得到私鑰。

跨鏈資訊的驗證

不同鏈上發生的事件,是由一組 Warden 透過(3/4 門檻)共識達成,即共有 4 個 Warden,3個認可同一筆交易,那麼就可以進行下一步跨鏈操作。而四個 Warden 都是項目方的合作單位,目前為 Ava Labs、Halborn、BwareLabs 和 Avascan。

跨鏈流程

方向1:Ethereum ——> Avalanche

  • Step1:用戶在 Ethereum 上發送一筆普通轉賬交易,將需要跨鏈的 ERC20 Token 發送到Eth_Add
  • Step2:四個 Warden 監控 Eth_Add,發現這筆交易後,分別將看到的交易發送給 Intel SGX Application
  • Step3:當至少有三個 Warden 發送的交易達成一致時,Intel SGX Application 利用內部的 sk2私鑰,透過控制 Ava_Add,調用 Avalanche 上對應於這個 token 的合約,為用戶 Mint 相應數量的 Wrapped Token,Avalanche 用戶地址與以太坊地址一致

方向2:Avalanche ——> Ethereum

  • Step1:用戶在 Avalanche 上發送一筆調用合約的交易,將需要跨鏈的 Wrapped Token 發送到對應的合約 Burn
  • Step2:四個 Warden 監控到這筆交易後,分別將看到的交易發送給 Intel SGX Application
  • Step3:當至少有三個 Warden 發送的交易達成一致時,Intel SGX Application 利用內部的 sk1私鑰,由 Eth_Add 向用戶地址發送一筆交易,將對應的 Token 返回用戶賬戶

跨鏈時間

Ethereum 交易確認時間:需要 35 個塊確認,一般用時約 6-7 分鐘
Avalanche 交易確認時間:幾秒鐘(解釋:與 Avalanche 的共識機制有關,其 finality 性質比較好)
總體時間:6-9分鐘

跨鏈費用

方向1:Avalanche ——> Ethereum

  • 浮動部分:以太坊交易費用,即在以太坊上從 enclave 地址提幣給用戶的交易所產生的交易費
  • 固定部分:約 5 美金

方向2:Ethereum ——> Avalanche

Min { 5% 的跨鏈 token,價值 1 美金的 token }
(解釋:因為跨鍊主要費用的產生是在 Ethereum 上,從 Ethereum 跨鏈到 Avalanche,以太坊上交易是用戶發送,因此只收取與跨鏈代幣數量相關的跨鏈交易費)
預估:根據項目方官方的說法,在以上規則下,一般情況下跨鏈成本在 1-5 美金

整體方案評估

  • 交易費用:交易費用確實低,因為任何跨鏈機制的交易費用主要在以太坊上,但是在 AB 機制中,以太坊上交易都是普通轉帳交易,不需要調用合約的交易,因此交易費必然比較低。
  • 安全性:AB 宣稱通過引入 Intel SGX 去增強安全性,但是我個人認為有點多此一舉的感覺,因為雖然關鍵賬戶的私鑰確實是在可信環境中保持,不過需要指出 Master Secret 仍然透過Shamir 秘密分享的方式,以碎片的形式被 Warden 掌握。那麼一旦碎片洩露或者 Warden 合謀,理論上是有可能計算得到帳戶私鑰呢。不過由於前期的 Warden 都是可靠受控的管理者,其風險應該相比別的多籤或者單簽機制要好得多。
  • 去中心化程度:跨鏈機制的去中心化就是看跨鏈資訊的驗證方式和跨鏈資金的管理方式,分析AB 的機制,其實無論是跨鏈資金的管理還是跨鏈訊息的驗證,都是由 4 個 Warden 決定,實現效果和四個節點的多簽基本相同。不過 Avalanche 是很明確清晰的告訴了社群這個幾個 warden都是誰,所以相比市面上大多數的項目都透明了很多,這點要點個贊!相信後期 Avalanche 官方肯定會開放更多的 Warden 名單,往著去中心化的目標繼續推進!

總結

Avalanche 的 AB 以太坊跨鏈橋機制的設計很有創新,引入了 Intel SGX 這樣一個內置的可信執行環境,加上白名單 Warden 作為密鑰分享的管理者,兼顧了效率,費用和安全性三點,應該是以太坊很多跨鏈橋/機制中不錯的一個可應用型的設計和產品!

資料來源


關於 Avalanche

Avalanche 雪崩協議是新一代的、革命性的共識協議;Avalanche 雪崩公鏈正是基於雪崩共識打造的、對開發者最為友好的、可定制化的、高速安全可靠的高性能公鏈。

Avalanche 鏈上交易完成速度飛快、擁有最多數量的驗證節點,同時糅合了 PoS 共識的優點,保證所有鏈上活動的安全性。雪崩協議具有極速、低費用和綠色環保的特點。支持智能合約的應用如果想超越對手,都可通過部署在雪崩協議上獲得卓越競爭力。不可置信?現在就試用一下雪崩協議上的應用吧。

雪崩官網:https://avax.network
雪崩繁中群:https://t.me/avalanche_tw
雪崩中文 Facebook 專頁:https://www.facebook.com/Avalanche.TW
雪崩中文 Medium:https://medium.com/@avaxtw
更多生態項目:https://twitter.com/AVATAR_AVAX

加密貨幣屬於高風險投資,本網站內容均不構成任何投資建議與責任。

掌握虛擬貨幣、區塊鏈大小事