跨鏈交互:區塊鏈技術發展的新趨勢

跨鏈 區塊鏈 北京之北90程序猿 2018-07-25

在區塊鏈所面臨的諸多問題中,網絡孤立性阻礙了不同區塊鏈之間的協同操作,極大程度的限制了區塊鏈的發揮空間。

作者:北京之北90程序猿

關於不同區塊鏈協同操作的探討早已有之,我們對此也並不陌生,如以BTC-Relay、元素鏈為代表的側鏈、Factom等的一些探索。不過,受制於區塊鏈自身發展階段和大眾認知的影響,這些項目所引起的關注遠遠不夠。近年來,隨著區塊鏈技術的逐漸發展,打破不同區塊鏈間通信壁壘的需求呼之欲出,區塊鏈間協同操作的需求越發強烈,使解決區塊鏈網絡互通問題成為了區塊鏈技術發展的的新趨勢。

打破網絡孤島

對於區塊鏈通信的孤島狀態,目前已經出現了一些大膽的概念驗證並取得了實質性的進展。

早期跨鏈技術包括以Blockstream為代表的側鏈技術(Sidechain)和以BTC-Relay為代表的中繼技術(Relay)。早期的跨鏈技術更多關注的是資產轉移,現有項目更多關注的是鏈狀態的轉移。

Ethereum

以太坊可擴展性計劃經常被提到,它更多的是建立在一套以太坊網絡協議之上,形成多個片區,即分片,嚴格來講這還不是跨鏈技術。此計劃要在Casper1.0之後才會實施,通過實現一種稱為超二次分片的方法指數級地提高每秒的網絡吞吐量,但指數級的增長勢必會帶來一些網絡不穩定的因素,需要進行大量測試。

但以太坊的分片理念也受到一些群體的詬病,因為分片技術需要幾次甚至多次的硬分叉才能完成,這給已有應用和用戶帶來很多不便。此外理論上講隨著分片數的增加吞吐量最多線性增加,超二次分片的方法也有待證明。

Interledger

早在2012年,Ripple Labs就提出了一種偏離比特幣共識的替代性賬本,並創造了他們自己的代幣瑞波幣(XRP)。Ripple的初衷是建立一套適用於所有記賬系統,能夠包容所有記賬系統的差異性協議,從而建立一個全球統一的支付標準。這一倡議從一開始就得到了微軟(Microsoft)和萬維網(World Wide Web)的支持。畢竟,人們已經為這個目標奮鬥了長達十幾年,我們稱之為“an Internet for money”(“一個可以發送錢的互聯網”)。

然而銀行不喜歡用別人的機器來驗證他們的交易,簡單來說就是不喜歡公開的處理方式,而半公開的處理方式,他們也不喜歡。因為這兩種方式都可能會給外人窺視他們內部數據的機會。因此,目前為止仍然沒有主流銀行接受Ripple協議。於是Ripple 開發了“InterLedger”協議,可以說這是一個更實際的辦法——將所有我們目前正在使用的記賬系統連接在一起。

Interledger協議創建了一個這樣的系統,在這個系統中,兩個不同的記賬系統可以通過第三方“連接器”或“驗證”機器來互相自由地傳輸貨幣。記賬系統無需去信任“連接器”,因為該協議採用密碼算法為這兩個記賬系統和連接器創建資金託管,當所有參與方對資金量達成共識時,便可相互交易。並且只有參與交易的記賬系統才可以跟蹤交易,交易的詳情可隱藏起來,“驗證器”是通過加密算法來運行,因此不會直接看到交易的詳情。

理論上,Interledger可以兼容任何在線記賬系統,而銀行現有的記賬系統只需小小的改變就能使用該協議。

Polkadot

如果你熟悉以太坊,就一定知道以太坊客戶端的開發者Ethcore,Polkadot項目便是Ethcore公司在跨鏈通信領域的一個嶄新嘗試。它被稱為第三代公開無需授權的區塊鏈科技,設計核心理念為解決當今兩大阻止區塊鏈技術傳播和接受的難題:即時拓展性和延伸性。

Polkadot目前還是以以太坊為主,實現其與私鏈的互連,並以其他公有鏈網絡為升級目標,最終讓以太坊直接與任何鏈進行通訊。

Melonport 開發的軟件Melon將是運行於多鏈網絡(multi-chain network)Polkadot之上的第一款Dapp。Melon的定位是成為跨鏈框架上的數字資產管理平臺,現有數字代幣或資產達700 多種,分佈於多個互不相連的平臺,其數字資產市場價值約150億美元,並在持續增長中。

Aeternity

計算機科學家Yanislav Malahov和風險資本家Andreas Kohl於去年創建了一家名為Aeternity的軟件公司,Malahov 稱自己為以太坊的“教父”。 Aternity項目是一種以太坊智能合約在側鏈運行的一種實現,致力於重塑當今智能合約的基礎。Aeternity的白皮書發佈於2016年12月。

以太坊的智能合約剛問世的時候,的確給人以一種煥然一新的感覺。然而,隨著各方試圖將以太坊運用到實際商業應用中,智能合約諸如效率低下、功能缺失,特別是過於封閉不易與外部世界通信的弊端漸漸顯露。

Aeternity呈現了一個高度可擴容的區塊鏈架構,以及一個可以被用來檢視預言機(oracle)的共識機制。這將使得預言機變得非常高效且廉價,因為它將避免共識機制重疊使用的情況。狀態通道將得到整合,從而提升隱私性和可擴容性。通道中的代幣可以用完全可靠的、可以訪問預言機答案的智能合約來進行傳輸。合約代碼或狀態將不會在鏈上儲存,使智能合約更容易分析,處理速度加快,而實際功能性並不會遭受顯著損失,由此可以高效地在全球規模上進行部署自創資產和預測市場這樣的應用。

Pointnity Network

Pointnity Network同樣看到了單一區塊鏈在許多應用場景中無法解決複雜問題以及在性能上相對於傳統中心化系統所呈現的瓶頸,由此提出並發展了稱為“恩特鏈”的區塊鏈跨鏈網絡。

在Pointnity Network區塊鏈網絡中,“母鏈”構成了信息主幹道,不同的母鏈之間通過鏈路由協議交換信息。同時,一個母鏈上承載著不同的子鏈,事實上也可以是任何一種分佈式賬本實現,子鏈間的通信則由跨鏈通信協議與跨通道協議負責。另外還支持外部的功能性合約分層跨鏈,保證了功能性跨鏈的要求,同時分層可以帶來更加優良的系統體驗性,整個系統是一個內外結合治理的綜合承載跨鏈系統。

跨鏈架構具體實現和細節

面對區塊鏈技術本身存在的侷限性,我們需要打破常規思維推動區塊鏈的改進與創新。早期使用到的跨鏈技術如比特幣中的雙向錨定和以太鏈中的跨鏈智能合約,在現有項目中仍然有被使用到。而當下跨鏈技術除了沿用早期類質押的思想外,還豐富了區塊鏈裡節點角色的分工、狀態通道、信任傳遞等新的思想。

各有千秋

在區塊鏈跨鏈通信方面有顯著進展的幾個項目中,它們創新性地引入了概念模型來重構區塊鏈的價值交換網絡,給區塊鏈技術帶來了新的生命力,而同時這幾個項目又在功能上存在著很大的差異。

事務類別

從幾種系統處理的事務類別上來看,除了Interledger專注於實現不同賬本間的資產轉移之外,其餘系統都可用來處理一般事務,當然,其中也包括了資產的轉移。相比之下,雖然可以處理一般事務的幾個系統實現的邏輯更為複雜,但是Interledger則更容易保證其事務處理(轉賬)的原子性。

在處理事務的過程中,無論是一般資產還是數字資產,都可以通過抵押的方式保證其原子性。但是,對涉及了跨鏈協同操作,特別是通過智能合約來實現的事務,若在等待另一條鏈返回處理結果的過程中,將智能合約的狀態封存,也就意味著在等待的過程中,該智能合約被一併封存,無法執行其他請求,這也是保證區塊鏈上一般事務原子性的難點所在。目前來說,幾個跨鏈通信的項目都沒有很好的解決這個問題,給出的方案一般也是在與應用中間加一層中間件,由其來擔當統一協調事務的職責。

跨異構系統

無論是同構還是異構的區塊鏈系統,Polkadot可以為其跨鏈通信提供支持;相比之下,Interledger作為針對賬本間資產轉移的協議,其支持通信的對象不僅包括了區塊鏈,還包括了各類賬本(通常為各個銀行的內部賬本系統);Aeternity使用了狀態通道技術,其本質是將人與人之間的事務執行結果記錄在區塊鏈上,並不涉及跨鏈通信。

通信手段

從通信手段來分析,Polkadot和安鏈鏈路由都使用了區塊鏈自身作為消息傳遞的媒介;不同於前兩者,Interledger不依賴區塊鏈,而是基於信任的轉移,通過賬本間的“連接者”傳遞通信消息;Aeternity則使用了狀態通道及狀態通道路由來支持通信者之間的通信。幾種方法各有優勢及不足,用區塊鏈傳遞消息,則可以不必基於信任來通信,但是由於共識機制的存在,這樣的通信速度一般會很慢;Interledger不對消息本身進行共識,而是基於一個個的彼此相鄰信任的連接者來直接進行消息互換,這樣的做法擁有較快的傳遞速度。而使用狀態通道,則可以減少鏈上的計算壓力,並有效提高鏈的吞吐量。

並行

說到事務的並行處理,無論是Polkadot、Interledger還是安鏈鏈路由,由於其對事務的處理都是基於狀態的,並行處理與狀態機在本質上是相違背的。並行處理會造成狀態的混亂,無法達到一致。例如,對於資產轉移來說,並行處理很容易導致雙花氾濫。但是,Aeternity則可以支持事務的並行處理,狀態通道吞吐量極大,其中的絕大多數交易永遠不會在區塊鏈上執行,甚至不會被記錄在區塊鏈上。此外,通道也不會在鏈上寫入任何共享的狀態,所以所有確實在區塊鏈上記錄的交易可以得到並行處理。

共識

Interledger的共識具有了兩種模式,分別是原子模式(Atomic)以及環球模式(Universal),前者使用了選定的一組“公證人”來批准資金的轉移,而後者則是一種激勵機制,可以讓無需受信的機構來填補這個角色。

Polkadot和安鏈鏈路由則使用了權益證明結合拜占庭容錯的共識方式。驗證人的投票力度與其所綁定的權益相關聯,因此,可以通過明確的賞罰制度督促驗證人對自己的投票負責。

在Aeternity中,除了就新的區塊進行共識,共識機制還負責對預言機答案和系統參數的值達成共識。 Aeternity的共識機制可以自我改變,使用一種更新的權益證明算法,再加上一小部分工作量證明機制作為補充,並儘量權衡而取其二者的精華。

性能

這幾項技術提出目的之一就是為了解決性能問題,比特幣網絡每秒7筆左右的峰值,以太坊每秒20筆左右的峰值,遠達不到應用的需求。Interleger協議實現了一筆跨境支付或跨賬本支付的只需3-5秒,遠遠提升了傳統跨境支付時間。Aeternity狀態吞吐量極大,其中絕大多數交易不會再區塊鏈上執行,此外通道不會在鏈上寫入任何共享的狀態,支持交易的併發處理,但此項目還處在驗證階段。眾安科技提出的鏈路由結構1.0版本中得到性能指標圖顯示,實驗室環境下鏈路由的性能指標將隨著子鏈數的增加成類線性增加。

挑戰與機遇並存

人類文明的發展史就是不斷地戰勝困難、打破生存狀態中存在的種種侷限,對於區塊鏈技術目前遇到的可擴展性、承載性、網絡孤立性等問題,我們還在不斷探索它們的解決渠道。通過在跨鏈通信方面的探索,打破區塊鏈的信息孤島,構建互聯、互通、互信的通信網絡,讓區塊鏈技術的潛能得到更大的釋放。

目前跨鏈技術還面臨如下一些困難與挑戰:跨鏈交易的延遲性問題,隨著網絡拓撲結構的發展,鏈路由上可能鏈接成百上千條子鏈,跨鏈交易延遲也會成指數增長;分佈式網絡裡節點之間連接狀態的強健性會直接接影響交易路徑選取的條數,也會影響交易的延遲性;跨鏈之間發起的DoS攻擊問題;跨鏈交易中目的鏈的死循環問題;母鏈出現分叉的問題;網絡拓撲結構裡激勵制度的優化;網絡拓撲結構中鏈與鏈連接處的安全問題,等等。

但是,挑戰與機遇並存,區塊鏈的發展同時將為雲計算和物聯網的發展帶來更多的想象空間。區塊鏈對數據天然的謹慎和分佈式流動,讓數據更貼近計算點,讓網絡更通暢,讓計算更及時,對傳統的雲進行瘦身,從而為雲計算裝上動力引擎,促進新一代雲計算架構的發展;區塊鏈誕生於互聯網,卻為物聯網而生。網絡屬性是區塊鏈的遺傳基因,基於跨鏈機制,與雲計算合體的區塊鏈,通過區塊鏈網絡裡對數據的加密及共識,解決物聯網裡數據和價值交換的安全和可信性問題,將進一步推動人類社會邁向萬物互聯的新時代。

相關推薦

推薦中...