側鏈協議設計難點在於,如何讓資產在主鏈和側鏈間安全流轉
微信公眾平台-徐坤 / 何渝婷編譯
2019-01-29 11:23

側鏈和中繼機制概述

 

側鏈主要針對的是兩條同構鏈,即一個區塊鏈系統能夠理解另一條區塊鏈的系統架構,實現在獲得其他區塊鏈系統提供的鎖定交易證明之後,自動釋放代幣,一般是透過雙向錨定機制實現資產轉移。但其實資產也並未真正實現轉移,只是當資產在原鏈上鎖定時,等量等價資產在另一條鏈上被釋放,而資產在另一條鏈上被鎖定後,原鏈上的資產將被釋放。側鏈相對容易實現,是最早出現的跨鏈技術,早期跨鏈項目BTCRelay、Blockstream使用的是均為側鏈機制。

 

 

 

側鏈協議的設計難點在於,如何讓資產在主鏈和側鏈之間安全流轉,即接受資產的鏈,必須確保發送資產的鏈上的幣被可靠鎖定。為此根據驗證方式不同,可分為托管模式、驅動鏈模式、SPV模式,三種模式也並不一定單獨使用,可以在主鏈、側鏈使用不同錨定技術的混合模式。

 

  • 托管模式,類似於跨鏈技術的公證人機制,即通過可信第三方確保公平交易。依據可信第三方的數量具體可分為單一托管模式、聯盟模式。單一托管模式是指將數位資產發送到一個主鏈單一托管方(類似於交易所),當單一托管方收到相關資訊後,就在側鏈上激活相應數位資產;而聯盟模式為緩解單一托管模式的過度中心化問題,選取一個可信團體作為公證人,對來往交易訊息進行確認,並將驗證結果發送給接受方,但是這並沒有從根本上解決中心化問題,側鏈安全仍然取決於公證人的誠實度。

 

  • 驅動鏈模式,類似於托管模式,但是其公證人限定於鏈上的礦工,由礦工監管被鎖定的數位資產。礦工全體投票表決交易資訊的正確與否,系統的安全性完全依賴於礦工在公證時的參與度和可信度。而且一般側鏈初建時,主鏈上的礦工加入側鏈的比例很小,很容易導致權益攻擊,嚴重危害區塊鏈安全。

 

  • SPV模式,即簡單支付驗證技術,主要原理就是驗證交易已被放在了鏈上,並且在包含該交易區塊的後面有足夠數量的區塊。具體來講,SPV是A鏈上的交易發送者將幣發到一個特殊的地址,從而將幣鎖定。這筆交易的SPV證明隨後會被發送到B鏈,B鏈上的礦工驗證SPV通過之後,就會在B鏈上解鎖對應數量的B鏈幣。

 

中繼模式(Relays)則一般適用於鏈接兩個異構或同構區塊鏈,是更為直接的實現互操作性的方式,即不完全依賴於可信第三方的驗證判斷,僅通過中間人收集兩條鏈的數據狀態,進行鏈內讀取並進行自我驗證,其驗證方式依據自身結構不同存在顯著差異。而這裡的中間人僅僅充當中繼橋梁的作用,負責數據收集工作。

 

 

無論是側鏈還是中繼,最基本的需求就是需要採集原鏈的資訊。側鏈與中繼的區別在於:

 

從屬關係上側鏈錨定從屬於主鏈,是主鏈與附屬鏈之間去信任交互的方案,且被限定在主鏈與側鏈之間,更多著眼於可拓展性而非可伸縮性,而中繼採用了中心輻射設計,不從屬於某條主鏈,更像是「調度中心」,只負責數據傳遞,不負責鏈維護。

 

執行過程看,側鏈需要同步所有的區塊頭,驗證網樂是否認可該項交易,中繼不需要下載所有的區塊頭,因此擁有更優越的速度。

 

此外,安全性方面,側鏈的安全性是建立在側鏈能有效激勵礦工進行一致性驗證交易,主鏈的安全性無法在側鏈上起作用,而中繼是由主鏈自行驗證,安全性有一定保證。

 

總體而言,側鏈/中繼模式的成本較高,效率較低,這是由於該模式下需要等待訊息上鏈,確定不會發生回滾後方可確認。

 

案例:BTC Relay

 

2016年5月,ConsenSys團隊正式推出BTC Relay,被認為是首個側鏈項目。BTC Relay錨定的是比特幣系統,透過使用以太坊的智慧合約功能允許用戶在以太坊上驗證比特幣交易,以實現以太坊和比特幣網路相連互通。

 

BTC Relay首次引入了區塊鏈側鏈概念,嘗試跨區塊鏈通訊,打開了鏈與鏈之間的通道。但其並未完成完整的中繼跨鏈技術,只是透過智慧合約主動請求比特幣原鏈系統進行資訊驗證,而不是透過側鏈中繼而來。

 

 

案例:Polkadot

 

2017年,Ethereum社群發起的Polkadot為典型採用跨鏈中繼結構的項目,其目標就在於建立一種異構的多鏈架構,透過中繼鏈(relay-chain)連接現存所有的區塊鏈,包括各種公有網路、私有網路或聯盟網路。

 

Polkadot於2018年5月份正式發布關於項目的核心部分——中繼實現理論證明。

 

即在Polkadot結構中,原鏈可保持原有的協議運行而不受影響。原鏈上發出需要中繼的交易時,中繼鏈技術將原有鏈上的資產轉入多重簽名控制的原鏈帳戶中,並對其暫時鎖定。

 

實際運作中,中繼結構中的收集人(collator)負責收集需要中繼的交易資訊,並打包成一個區塊廣播至驗證人(validator);驗證人擁有最高權限,進行簽名投票決定交易是否有效,確認交易有效後立即將原鏈中包含確認訊息的區塊頭放進中繼鏈中,以此來避免發生鏈重構或雙花。

 

同時,中繼鏈將交易訊息轉移至目標鏈,成為目標鏈可執行的交易,以此實現跨鏈通訊。此外,中繼結構中還引入釣魚人(fisherman)對交易進行監督舉報。

 

目前Polkadot仍處於開發階段,前期著重以以太坊為主,實現以太坊與私鏈的互連,後續將升級至其他公有鏈網路,實現全網跨鏈互聯互通。

 

 

 

本文為金色財經授權刊登,原文標題為「跨鏈技術——區塊鏈大航海時代的基石