布比可擴充套件的同構/異構跨鏈互操作|商用區塊鏈BubiChain詳解(六)

買賣虛擬貨幣
區塊鏈技術逐漸從小眾的極客圈子走向規模化商用。從整體來看,區塊鏈技術的規模化商用還處在相對初期的階段,企業對區塊鏈技術效能、易用程度的較高需求,與區塊鏈技術本身的可拓展性瓶頸及較低的執行效率構成了當前限制行業發展的主要矛盾。基於自身大量的商業實踐和對區塊鏈商用的探索與創新,布比打造了完全自主智慧財產權、高效能可擴充套件、產品化成熟的商用級區塊鏈底層平臺BubiChain。商用級區塊鏈底層平臺BubiChain取得底層技術關鍵突破:應用開發友好的智慧合約、安全高效的共識演算法、可靠的隱私保護、並行快速的多鏈,以及可擴充套件的跨鏈技術等創新;實現了產品化重要突破:應用可快速構建、視覺化運維、技術合規及資金賬戶體系等,形成完整的產品服務能力。本文為商用區塊鏈BubiChain詳解系列文章的第六篇——可擴充套件的同構/異構跨鏈互操作,以下為正文內容。

布比區塊鏈跨鏈技術提出互聯鏈體系結構,提供多種模式的跨鏈技術。布比鏈的跨鏈協議支援“基於多公證人機制”和“基於可信硬體機制”的主流模式。開發者可以先建立一條Relay Chain,利用SPV技術適配其他業務鏈,其次按照業務需求搭建平行鏈,平行鏈將按照預設的跨鏈協議對接到Relay Chain,從而與其他鏈進行互聯互通,這樣不僅可降低跨鏈架構複雜度,而且更靈活、更契合實際業務場景,布比區塊鏈支援同構及異構跨鏈,不僅支援數字資產的跨鏈轉賬,也支援智慧合約、分散式應用之間的跨鏈操作。

從布比跨鏈技術架構圖可以看出,架構主要包括RelayChain(中繼鏈)、Parallel Chain(平行鏈)、可插拔元件。中繼鏈由多個驗證節點組成,驗證節點負責維護整個區塊鏈安全穩定的執行,使用較高TPS的共識演算法有效提高跨鏈的效率,滿足平行鏈跨鏈對效能的不同要求。平行鏈是所有參與接入跨鏈生態的同構/異構區塊鏈,可以是各種公鏈、聯盟鏈、私鏈等。可插拔元件是中繼鏈和平行鏈的橋樑,實現平行鏈/中繼鏈與平行鏈互聯互通跨鏈通訊。

布比跨鏈技術是以高效能共識的中繼鏈為核心的跨鏈網路結構以及平行鏈動態接入機制,使用可插拔元件作為跨鏈的橋接器,保證跨鏈技術的高效性、擴充套件性和安全性。

中繼鏈跨鏈平臺設計了安全的序號產生器制,保證註冊的平行鏈是可控有效的。首先任一條想加入跨鏈平臺接入中繼鏈的平行鏈,都需要透過抵押的方式在中繼鏈的註冊合約中發起註冊提案,共識完成後會給該平行鏈分配唯一的鏈ID標識。中繼鏈也可以透過多個節點投票的方式登出惡意註冊的資訊,拒絕所有該惡意平行鏈資訊的跨鏈請求。

可插拔元件使用了兩種跨鏈方式公證人模式和可信硬體模式。兩條平行鏈可以透過公證人元件進行跨鏈跨鏈操作,如果需要與更多平行鏈進行跨鏈操作使用中繼平臺是最好的選擇。使用可信硬體元件+中繼鏈的跨鏈元件能最大提高跨鏈的靈活性、安全性,可信硬體元件包含中繼節點程式和SGX部分,負責跨鏈交易的可信計算簽名和鏈間資訊的轉發。

1. 平行鏈註冊

平行鏈需要跨鏈首先必須在中繼鏈裡註冊。中繼鏈的RMC合約負責平行鏈註冊等管理,平行鏈的跨鏈申請者需提供平行鏈AMC資產管理合約地址、已在中繼鏈部署的平行鏈SPV合約地址、平行鏈描述資訊等。流程如下:

1) 平行鏈申請者在中繼鏈中建立平行鏈的Proof合約,獲取合約地址。
2) 申請者在平行鏈上建立AMC合約用於跨鏈交易處理。
3) 申請者向中繼鏈的註冊合約提交註冊資訊,包括AMC合約地址資訊和Proof合約地址資訊等。
4) 中繼鏈共識完成後生成唯一的鏈ID分配給此平行鏈。

2. 公證人模式

在布比區塊鏈中,使用公證人模式的可插拔元件可以看到,鏈間是透過公證人來監聽交易的。公證人賬戶首先需要向平行鏈的AMC合約進行註冊,平行鏈合約管理員授權公證人的接入承擔跨鏈訊息的轉發。跨鏈交易產生之後,所有公證人都會監聽並獲取相關的跨鏈資訊,分析並驗證交易的正確性。之後公證人便將跨鏈資料進行簽名併傳送交易到另一條鏈的相關跨鏈合約中。多個公證人轉發訊息後,合約內部我們使用BFT(Byzantine Fault Tolerance)的演算法共識跨鏈提案資訊,只有達到一定公證人簽名數量後跨鏈交易的合法性才會被確認。透過BFT演算法保證了提案的正確性,即使少數公證人被攻擊或者作惡都不會影響跨鏈系統的正常執行。

3. 可信硬體模式

布比跨鏈技術可插拔元件藉助於因特爾處理器的SGX技術,英特爾® Software Guard Extensions(英特爾® SGX)是一組指令,該組指令增強應用程式程式碼和資料的安全性,為它們提供更強的保護以防洩漏或修改。開發人員可將敏感資訊分割槽進入Enclave中,Enclave是記憶體中具有更強安全保護的執行區域。

閘道器節點-可信硬體模式透過遠端認證可以驗證釋出的軟體正常執行在一個SGX平臺上,並且保證軟體沒有經過篡改。如此我們就可以相信SGX會按照正確的跨鏈過程執行,猶如一個合約一樣。

閘道器節點需要在平行鏈的AMC合約中抵押並進行註冊,平行鏈跨鏈管理稽覈完閘道器節點的註冊後一旦抵押資產達到開啟跨鏈的閾值要求,閘道器節點就開始進行跨鏈工作。

我們將閘道器節點分為兩個部分:SGX程式和中繼程式,

· SGX程式主要平行鏈SPV驗證和跨鏈交易的簽名。
· 中繼程式用於中繼鏈的資料轉發和跨鏈交易轉發。

4. 雜湊時間鎖模式

跨鏈的過程必須要保持狀態的一致,保持跨鏈事務的原子性。這是跨鏈交易的基本要求也是必須解決的問題。布比跨鏈技術透過使用雜湊時間鎖定(HTLC)的方式來保證交易的原子性。如下圖所示:

從上圖可以看出我們的跨鏈流程中,ChainA中發生一筆跨鏈交易,合約透過計算關鍵跨鏈資料生成hash值並儲存此次跨鏈交易,初始化交易狀態。透過中繼鏈轉發到ChainB鏈後,會觸發ChainB生成一個資產接收的證據,產生一個關鍵hash存證。閘道器節點監控到跨鏈交易成功資料後繼續將跨鏈交易反饋資料,返回到ChainA中,直到跨鏈交易更新狀態為已成功的狀態。在一個長固定時間內,若沒有受到關鍵字hash的跨鏈交易的反饋資料,則使用者Alice可以向跨鏈合約申請退回跨鏈交易發起的資金,避免資金的損失。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;