跨鏈技術是什么?
跨鏈技術可以被理解為一種協議,解決兩個或多個不同鏈上的資產以及功能狀態不能互相傳遞、轉移、交換的問題。也就是說,跨鏈技術能夠增加區塊鏈的可拓展性,能夠從根本上解決不同公鏈/側鏈之間交易困難產生的”數據孤島“問題。
跨鏈技術的難點
跨鏈技術從 Blockstream 提出側鏈概念以來,一直是區塊鏈技術的重點攻關方向。目前并沒有被普遍認可的跨鏈機制,原因在于各個公鏈之間的底層技術實現差異巨大給跨鏈技術帶來了不小的障礙。
跨鏈需要解決的幾個難點問題:
· 保證跨鏈信息真實可信
原鏈上的交易信息對于另一條鏈來說是一個外部信息,如何保證這個外部信息進入另一條鏈時是正確的,是整個跨鏈機制的重要環節。如果要考慮到使用 POW 機制的區塊鏈上沒有終局狀態(始終存在分叉的情況,只是隨著確認塊的增加,概率逐漸變小),這個問題的復雜度會更高。
· 跨鏈交易要確保原鏈上的 Token 總量不會因為跨鏈而減少或增多
跨鏈技術很重要的一個應用方向就是數字資產的跨鏈轉移,如何保證不同鏈上的數字資產能夠安全地從一條鏈轉移到其他鏈,又可以從其他區塊鏈安全地返回主鏈是亟待解決的問題之一。對于數字資產的跨鏈轉移來說,原鏈上 Token 總量減少的后果是當 Token 需要跨回原鏈時,原鏈無法產生新的 Token ,也就是只能單向跨鏈。原鏈 Token 增多是名義上的增多,實際上是本來已經跨鏈至另一個賬本的 Token 在原鏈上被雙重支付了,這種情況違背了精確記賬的原則,是在任何時候都無法接受的。因此當 Token 跨出原鏈時,原鏈上的 Token 必然需要進入“鎖定”的狀態,當 Token 跨回原鏈時,這些 Token 需要被解鎖。如何通過去中心化的管理機制完成“鎖定”、“解鎖“的過程就成為了跨鏈的關鍵。
· 保證整個跨鏈交易的原子性
交易的原子性,簡單來說是指交易處理的某個環節停止,整個交易能夠撤銷,而不會存在部分成功,部分失敗的情況,無法保證原子性會造成雙重支付。在跨鏈技術中保證原子性的難點在于,跨鏈雙方是兩條獨立的鏈,可能具有不同的共識機制、數據結構、交易處理邏輯等等,造成交易最終沒有被執行的原因也千差萬別。
現有的跨鏈技術方案
目前主流的區塊鏈跨鏈技術有公證人機制(Notary schemes)、側鏈/中繼(Sidechains/relays)、哈希鎖定(Hash-locking)。
上表列出了各種跨鏈技術的基本區別,早期跨鏈技術包括以瑞波和BTC Relay為代表,它們更多關注的是資產轉移;現有跨鏈技術以Polkadot和Cosmos為代表更多關注的是跨鏈基礎設施;新出現的FUSION實現了多幣種智能合約,是一種很有應用價值的公有鏈,在其上可以產生豐富的的跨鏈金融應用。
公證人機制
公證人技術的代表就是瑞波 Interledger 協議。2012年,瑞波實驗室提出 Interledger 協議,旨在連接不同賬本并實現它們之間的協同。Interledger 協議適用于所有記賬系統、能夠包容所有記賬系統的差異性,該協議的目標是要打造全球統一支付標準,創建統一的網絡金融傳輸的協議。
Interledger 協議使兩個不同的記賬系統可以通過第三方“連接器”或“驗證器”互相自由地傳輸通證。記賬系統無需信任“連接器”,因為該協議采用密碼算法用連接器為這兩個記賬系統創建資金托管,當所有參與方對交易達成共識時,便可相互交易。
側鏈
側鏈是以錨定某種原鏈上的通證為基礎的新型區塊鏈,正如美金錨定到黃金。側鏈是連接各種鏈,其它區塊鏈則可以獨立存在。
側鏈技術的代表是 BTC Relay。它被認為是區塊鏈上的第一個側鏈。BTC Relay 把以太坊網絡與比特幣網絡通過使用以太坊的智能合約連接起來,可以使用戶在以太坊上驗證比特幣交易。它通過以太坊智能合約創建一種小型版本的比特幣區塊鏈,但智能合約需要獲取比特幣網絡數據,因此實現去中心化比較困難。BTC Relay 進行了跨區塊鏈通信的有意義的嘗試,打開了不同區塊鏈交流的通道。
中繼技術
中繼技術的代表是 Polkadot。Polkadot 是由原以太坊主要核心開發者推出的公有鏈。它主要解決當今兩大難題:即時拓展性和可擴展性。Polkadot 計劃將私有鏈/聯盟鏈融入到公有鏈的共識網絡中,同時又能保有私有鏈/聯盟鏈的原有的數據隱私和許可使用的特性。它可以將多個區塊鏈互相連接。
Polkadot的提出者 Gavin Wood 希望用一條中繼鏈(Relay-chain)來實現其他所有鏈的交易的驗證工作, 再通過平行鏈的創建實現與原鏈的交易與通信。
Polkadot目前還是以以太坊為主,實現其與私鏈的互連,并以其他公有鏈網絡為升級目標,最終讓以太坊直接與任何鏈進行通訊。
哈希鎖定技術
哈希鎖定技術的代表是閃電網絡。閃電網絡底層運用了 HTLC 技術和 RSMC 技術,構建了一個個鏈下支付通道。這些通道合在一起成為一個網絡。交易雙方的數目比較小的微支付可以通過一系列的鏈下協議完成,從而拓展比特幣的性能。
閃電網絡的關鍵技術是HTLC哈希鎖定技術,基本原理如下:Alice和Bob可以達成這樣一個協議:協議將鎖定Alice的0.1 BTC,在時刻T到來之前(T以未來的某個區塊鏈高度表述),如果Bob能夠向Alice出示一個適當的R(稱為秘密),使得R的哈希值等于事先約定的值H(R),Bob就能獲得這0.1 BTC;如果直到時刻T過去Bob仍然未能提供一個正確的R,這0.1 BTC將自動解凍并歸還Alice。
閃電網絡并不試圖解決單次支付的問題,其假設是單次支付的金額足夠小,即使一方違約另一方的損失也非常小,風險可以承受。因此使用時必須注意“微支付”這個前提。
分布式私鑰控制技術
私密資產通過分布式私鑰生成與控制技術被映射到基于協議的內置資產模板的區塊鏈上,根據跨鏈交易信息部署新的智能合約、創建新的資產。當一種已注冊資產由原有鏈轉移到跨鏈上時,跨鏈節點會為用戶在已有合約中發放相應等值代幣。為確保原有鏈資產在跨鏈上仍然可以相互交易流通,實現和解除分布式控制權管理的操作稱為:鎖入(Lock-in)和解鎖(Lock-out)。鎖入是對所有通過密鑰控制的數字資產實現分布式控制權管理和資產映射的過程。這時需要委托去中心化的網絡掌管用戶的私鑰,用戶自己掌握跨鏈上那部分代理資產的私鑰。當解鎖時再將數字資產的控制權交還給所有者。
雖然中心化的網絡掌握用戶部分私鑰,但用戶并沒有失去對這筆資產的控制權,擁有私鑰才是擁有對這筆資產的控制權。
FIBOS 的跨鏈思考
哈希鎖定作為 FIBOS 跨鏈技術的選型并不理想。一方面哈希鎖定無法保證數據來源的可信度;另一方面,它還需要用戶在一定時間窗口完成操作,用戶本身也成為了跨鏈的一部分,提升了用戶使用門檻。
公證人機制天然比較契合 FIBOS 的生態,因為 FIBOS 中 BP 節點(Block Producer)恰好可以作為公證人。但這也帶來了一定的問題,首先,BP 節點由投票產生,其變動速度較快,公證人列表需要不斷的更新,需要考慮如何去中心化的同步公證人列表、以及公證人列表和 FIBOS BP 不一致所帶來的數據同步問題;其次,因為 BP節點 是由 FIBOS 選出,其他鏈是否完全認同這一結果還未可知;最后,公證人機制本身存在數據重復發送的問題,降低了效率。并且,得到的數據依靠“多簽”機制來判斷能否執行,不能在數學層面上驗證,這也會產生風險。
側鏈技術對于 FIBOS 跨鏈技術有一定的可取性。由于其區塊狀態在合約內同步進行,所以會產生不必要的 CPU,RAM 等資源消耗。同時帶來的問題是,由于 FIBOS 出塊速度較快(0.5s),在 FIBOS 側鏈進行多塊的狀態同步,容易產生超時問題。使用側鏈來解決數據的可信度是一個很好的方案,可是不應該將其放在合約內進行。
中繼方案看起來更為可取,因為中繼鏈的存在,不會因同步狀態消耗額外資源在原鏈上。同時,異構鏈的數據結構不同問題,可以在中繼鏈內進行數據轉換解決。這使得中繼方案不僅比較經濟,而且能在異構鏈之間進行轉賬。唯一的問題在于鎖定資產賬戶由誰來控制,以及狀態和數據同步由誰進行,這一點在上述的中繼技術方案里并沒有給出答案。
對于 FIBOS 生態來說,解決跨鏈問題是一個戰略性地挑戰,尤其在談到和 EOS 之間的跨鏈轉賬問題時,跨鏈技術是必須要攻克的難關之一。對此,融合公證人機制和中繼的方案有著較高的可行性。資產鎖定賬號由公證人共同掌握,公證人同時負責區塊狀態的初始化和給出一個同步地址。當出現跨鏈轉賬操作時,首先由見證人執行多簽對跨鏈資產進行轉出,然后進入中繼鏈,進行數據驗證。驗證成功后,再由多簽操作轉入目標鏈。這使得公證人機制能夠在數學層面上被驗證,同時使得中繼鏈的數據來源較為可信。
區塊鏈從技術上來說是P2P網絡、加密技術和分布式賬本,從經濟上來說,它是價值網絡。而目前,由于不同鏈之間通信壁壘的存在,導致了區塊鏈的價值網絡呈割裂狀態。區塊鏈作為價值網絡的基礎設施部分,不應該局限于一個個“價值孤島”,更不能僅僅將價值圈定于一個個小的生態中。因此需要跨鏈技術將不同的鏈之間進行鏈接和拓展,構建價值網絡的高速公路。隨著區塊鏈技術的高效迭代和創新,相信跨鏈技術會越來越成熟,區塊鏈價值網絡的高速公路也終將會把一個個“孤島”連接起來。
評論