V神:区块链跨链技术大规模应用将在一到两年内爆发
2019獨角獸企業重金招聘Python工程師標準>>>
近日,以太坊創始人Vitalik Buterin在接受Fintech媒體采訪時表示:
不同區塊鏈之間共通的應用一定會出現。因為區塊鏈是一個開放的系統,其中的一切都是加密認證的,開發出使一個區塊鏈上發生的事件聯動另一個區塊鏈發生變化的應用其實是很容易的。很多方法可以實現這樣的效果,比如哈希鎖定和中繼。過去的幾年已經有很多嘗試跨鏈加密貨幣交易的實驗了。我覺得這一技術也能應用到其他領域。目前最大的挑戰仍然是寥寥無幾的區塊鏈實際應用和使用人群,現在除了個別領域外,還沒到開始實施跨鏈應用的時機。但我覺得在一兩年內,肯定可以看到這方面應用的大規模增長。
1
什么是跨鏈技術?
跨鏈技術可以理解為連接各區塊鏈的橋梁,其主要應用是實現各區塊鏈之間的原子交易、資產轉換、區塊鏈內部信息互通,或解決Oracle的問題等。
當今的區塊鏈技術紛繁蕪雜,各成一派,彼此之間無法進行價值和數據的交換。雖然很多區塊鏈擁護者聲稱區塊鏈是下一代互聯網,但是由于每個鏈都是獨立的、垂直的封閉體系,當前的「互聯網」只是由許多彼此割裂開來的區塊鏈「孤島」構成,或者說,當前的區塊鏈看起來更像是內聯網。
比如,比特幣和以太坊是基于全網共識的、蠻力解法的信任機制。這種驗證通過同步全網區塊,由每個節點來做驗證。但是,那些采用了去中心化賬本技術的區塊鏈(DLT,Distributed Ledger Technology),如瑞波幣和IOTA,則同樣處于互相隔離的狀態。更令人難以接受的是,聲稱去中心化的區塊鏈之間的價值互換卻主要依靠中心化的交易所來完成,鏈上的資產價值不能得到合理的評估。
由于區塊鏈之間互不連通、資產價值的大幅波動大大制約了區塊鏈技術的應用和發展。所以鏈與鏈之間的互聯操作越來越被重視,跨鏈的需求就由此而來。但是,跨鏈是一個復雜的過程,既需要對鏈中節點要有單獨的驗證能力,也需要去中心化的輸入,更需要對鏈外世界的信息進行獲取和驗證。目前,跨****鏈技術主要有三種實現模式:
1)公證人模式(Notary Schemes);
2)側鏈(Sidechains)/中繼(Relays);
3)哈希鎖定(Hash-locking)。
2
跨鏈技術的應用
2.1 公證人模式
**鏈與鏈之間互操作最簡單的方法是使用公證人模式。**在公證人模式中,使用受信任的一個或者一組團體向鏈X聲明鏈Y上發生了某事件,或者確定該聲明是正確的。這些團體既可以自動地監聽和響應事件,也可以在被請求的時候進行監聽和響應事件。
公證人模式在許可分賬領域受到很多關注,因為其既可以提供靈活共識的主要競爭者,也無需進行昂貴的工作證明或關于利益機制的復雜證明。公證人模式的代表項目有Corda。
Corda
**Corda是R3聯盟推出的金融聯盟「類區塊鏈」技術架構。**Corda中同樣是用交易組成賬本,但并沒有區塊,這個和傳統區塊鏈結構相比有很大不同。**交易僅在參與方和公證人間傳播。**公證人是交易雙方共同選擇出來的,具有高度可信的特征。公證人負責驗證數據的有效性和數據的唯一性。
由于Corda選擇了最高安全性的公證人模式,因此在跨賬本消息處理上,變得較為簡單:僅需選取不同賬本的交叉公證人或者強行指向同一個公證人且讓其對賬本進行同步即可安全的驗證跨賬本消息。
2.2中繼/側鏈模式
**如果一個鏈B能擁有另外一個鏈A的所有功能,則稱鏈B為鏈A的側鏈,鏈A為鏈B的主鏈。**其中主鏈A并不知道側鏈B的存在,側鏈B知道有主鏈A的存在。
假設區塊鏈擁有區塊Header和Body,Header中擁有Merkle等證明信息,可以將鏈A的區塊鏈頭,寫入鏈B的塊中,鏈B使用和鏈A一樣的共識驗證方法,比如PoW驗證難度和長度,PBFT驗證投票等。等待鏈A的區塊頭序列之后,鏈B就可以通過Merkle分支的證明信息來證明鏈A的數據和操作。
鏈A、B不能直接驗證對方塊的狀態,因為這樣會形成循環,但相互只包含輕節點是可行的,這個區塊鏈驗證的邏輯可以由鏈協議本身或應用合約實現。上述該過程如下圖1所示。
圖1 中繼/側鏈模式資產轉移流程
圖2 中繼/側鏈模式下事件的發送和接收接口
圖2中代碼需要在使用中繼/側鏈模式的兩條鏈上同時存在,但同時需要兩條鏈上的幣或物是可以無限量發行的,這樣才可以保證驗證過程沒有錯誤,從而來達到資產轉移操作。中繼/側鏈模式的代表項目有BTC-Relay、RootStock、Polkadot、Cosmos等。下面將依次對各項目進行介紹。
BTC-Relay
BTC-Relay是一種基于以太坊區塊鏈的智能合約,把以太坊網絡與比特幣網絡以一種安全去中心化的方式連接起來。BTC-Relay通過使用以太坊的智能合約功能可以允許用戶在以太坊區塊鏈上驗證比特幣交易。
BTC-Relay使用區塊Header創建一種小型版本的比特幣區塊鏈,以太坊DApp開發者可以從智能合約向BTC-Relay進行API調用來驗證比特幣網絡活動。BTC-Relay進行了跨區塊鏈通信的有意義的嘗試,打開了不同區塊鏈交流的通道。BTCRelay的認證過程如下圖3所示。
圖3 BTC Relay交易認證過程
其中,BTC Relay社區成員,被稱為Relayers。所有人都可以加入以太坊網絡并成為一名Relayer,并且無需花費硬件或者電力
RootStock
**RootStock 是一個建立在比特幣區塊鏈上的智能合約分布式平臺。RootStock采用了「混合」安全模式,同時包含了PoW機制和私人網絡模式,基于聯合的門限簽名方案實現的安全聯合工作量證明挖礦機制。**它的目標是將復雜的智能合約實施為一個側鏈,為核心比特幣網絡增加價值和功能。
RootStock實現了根鏈虛擬機(RVM),是以太坊虛擬機的一個改進版本,它將作為比特幣的一個側鏈,使用了一種可轉換為比特幣的代幣(根幣,RTC)作為智能合約的「燃料」。RootStock與比特幣之間采用的是雙向錨定機制。RootStock的交易認證過程如下圖4所示。
圖4 RootSock交易認證過程
Polkadot
**Polkadot是Web3基金會的跨鏈協議開源項目。**由Parity團隊的Gavin Wood主導開發。**Polkadot宣稱是未來Web3.0時代的基礎設施之一,是一個未來「區塊鏈互聯網」的基礎協議。**Polkadot協議強調解決當前區塊鏈技術的伸縮性和隔離性問題,以提供眾多異構區塊鏈系統之間去信任、去中心化的通用的互訪問性、互操作性為目標。
Polkadot的核心思想是區分交易方發起和執行交易的方式以及交易方統一記錄的方式。Polkadot提供基礎的中繼鏈(relay-chain),很多可驗證的、全球動態同步的數據架構都建立在這個基礎上,這些數據架構為平行鏈或者側鏈。區塊鏈應用可以將以太坊分叉,按照各自需求調整,通過Polkadot與以太坊公有鏈連接,或者給不同的鏈設置不同的功能,實現更好的擴展性和效率。Polkadot的原理圖如下圖所示。
圖5 Polkadot的原理圖
圖5所示流程大致如下:收集人收集并且廣播用戶的交易,也廣播候選區塊給釣魚人和驗證人。用戶提交一個交易,先轉移到平行鏈外部,然后通過中繼鏈再轉移到另一條平行鏈,成為一個可以被平行鏈上賬戶執行的交易。
Cosmos
Cosmos是Interchain Foundation的跨鏈開源項目。Cosmos是專****注于解決跨鏈資產轉移的區塊鏈網絡。
該網絡主要由兩部分組成:Cosmos Hub和若干個Zone。
每個Zone可以看作是單獨的區塊鏈空間。每個Zone會和Hub保持狀態同步。Hub通過去中心化的驗證人組來保證安全性,驗證人組有罰金托管機制,它是唯一的多資產中心賬本,并負責保證各類資產在不同Zone轉移的同時,資產總量不變。
Hub既是中繼鏈。Zone之間的跨鏈通信主要是通過與Hub之間的IBC協議來實現。Zone1向Zone2做跨鏈消息時,Zone1先生成消息包,并將其證明發布在Hub上,接下來Hub會生成Zone1的跨鏈消息包已在Hub上的存在證明的證明發布于Zone2,接下來Zone2收妥消息包,并給出證明發布于Hub上,最后,Hub再給出Zone2的收妥證明的證明發布于Zone2,完成整個跨鏈消息傳遞。
上述Cosmos的區塊鏈間通信如下圖6所示。
圖6 Cosmos的區塊鏈間通信
2.3哈希鎖定模式
哈希鎖定模式的設計是希望鏈A與鏈B之間盡可能少的了解彼此,并作為消除公證人信任的手段,該模式的基本流程如下圖7所示。
圖7 哈希鎖定模式流程圖
圖7所示基本流程如下:
-
1)A生成隨機數S,并發送hash(S)給B。
-
2)A在鏈LA上鎖定幣,并設定條件:如果在(當前時間+2X=TA)時間內鏈LA收到S,則轉賬給B,否則退回給A。
-
3)B收到hash(S),并看見A的鎖定和時間設定后,在鏈LB上鎖定幣,并設定條件:如果在TA-X時間內鏈LB收到S,則轉賬給A,否則退回給B。
-
4)A看見B的鎖定后,在TA-X時間內發送S給鏈LB,得到鏈LB的幣。
-
5)B收到S后,在TA時間內發送S到鏈LA,得到鏈LA的幣
哈希鎖定模式的代表項目有Interledger、閃電網絡等。
Interledger
Interledger是由Ripple公司主導發起的跨賬本價值傳輸開放協議。Interledger不是區塊鏈,它是連接各類賬本的支付標準、統一協議。Interledger專注于跨賬本間資金流動領域。
**Interledger本身并不是一個賬本,它并不尋求任何的共識。****相反,它提供了一個頂層加密托管系統,在稱之為「連接者」**的中介機構的幫助下,可以讓資金在各賬本之間進行流動。此外,Interledger也沒有原生代幣,因此,操作該協議的個體賬本,仍然可以使用它們自己的原生代幣,這種互操作性解決了特定支付網絡的問題。Interledger的加密第三方與交易發送者和接收者的關系如下圖8所示。
圖8 Interledger的加密第三方與交易發送者和接收者的關系
閃電網絡
閃電網絡的目的是實現安全地進行鏈下交易,其本質上是使用了哈希時間鎖定智能合約來安全地進行0確認交易的一種機制,通過設置巧妙的「智能合約」,使得用戶在閃電網絡上進行未確認的交易和黃金一樣安全(或者和比特幣一樣安全)。
使用閃電網絡第一步需要在用戶A和用戶B之間開啟雙向支付通道。這個通道是在主鏈之外,如下圖9所示。
圖9 閃電網絡結構圖
交易雙方在開啟閃電交易功能之前,會首先將開啟狀態所需的數據寫入主區塊鏈中建立閃電交易合約,例如鎖定期限,合約規則等數據。
當閃電網絡出現故障時,將按照合約規則和舉證方的數據,在主區塊鏈上進行處理。每一個狀態通道建立,類似于一個多重簽名系統構建,保證了交易雙方守信原則,它比多重簽名多了合約的處理。對不守信,將會在主網絡受到處罰。處罰在期限內可以得到申訴,例如1000個區塊期,而這種申訴是算法進行維護,不以人為因素為標準。
在通道內是雙方私匙簽名的區塊鏈數據流,雙方所有交易細節均在這個數據流得到體現,并以獨立鏈的形式存儲,它是證明一個通道是否合乎算法規則。當一個狀態通道結束后,雙方按照閃電網絡輸出的最終狀態數據來兌現合約,這相當于是一個交易帳本,帳本記錄了參與方交易結果,進而實現財產重新分配。
3
Pallet的誕生
上文中提到的各個跨鏈項目,他們本質上還是一條鏈,其本身很難再擴展,不太具備通用性。他們都是用一個新鏈做跨鏈的工作,需要鏈與鏈之間進行錨定。例如,Polkadot借鑒了很多其它項目的架構,所以他的設計和其他項目是很不一樣。但是,Polkadot是個異構的多鏈框架,一條中繼鏈連接多條平行鏈的系統。雖然可以掛接多個鏈,但是Polkadot本身還是一個鏈。
而Pallet是在做協議——多利益關聯方的共識協議,所有的鏈都可以是參與方,不需要「鏈與鏈」之間的錨定。Pallet協議和體系不產生獨立的鏈,而是采用陪審團制度隨機選取陪審員,所有的陪審員節點再去對接各底層鏈實現存證,最大化利用現有的鏈和資源。
Pallet可以將應用掛在多個鏈上,避免網絡擁塞,用戶選擇性大,使得各種DApp應用可以部署在不同的鏈上,可以形成良性競爭,更多用戶可以參與,開發者在開發應用時可以根據業務需求更靈活的選擇已有的鏈,或者方便的從已有經部署的鏈上遷移到更好、更新的鏈上,從而使已有的應用生態突破原來部署區塊鏈的自身架構局限、性能局限或者功能局限。
4
Pallet跨鏈體系
Pallet可以水平地與不同底層區塊鏈進行對接,如下圖10所示。Pallet不對底層鏈進行完全復制,而是使用參與者機制,是一種輕量級協議。
圖10 Pallet跨鏈體系
Pallet在區塊鏈或DLT(Distributed Ledger Technology,分布式賬本技術)之上構建了可擴展的「元層」,并在元層中實現「互操作」。元層就是Pallet努力實現的、互鏈層的IP協議。
Pallet根據不同應用的智能合約選出一個陪審團,由該陪審團來驗證智能合約的執行。Pallet將Pallet通證(Token)作為支付給陪審團的激勵。陪審團在Pallet中的角色相當于其他鏈上的礦工。Pallet還增加了懲罰機制,普通節點想成為注冊的陪審員,需要自己的一部分資金進行抵押,如果一旦發現陪審員作惡,則Pallet將會沒收其抵押資金。
5
Pallet與跨鏈技術應用場景比較
Pallet作為跨鏈協議起到了將鏈與鏈連通的效果。Pallet與其他跨鏈技術在應用場景方面的是有一定的區別,具體區別如下表所示。
由于Pallet不是鏈,是通過特定的函數和庫與底層鏈溝通,所以Pallet的應用場景相對較廣,并且實現難度上也處于中等難度。
6
Pallet與其他跨鏈項目性能比較
由于Pallet不是一條鏈,所以其智能合約執行機制、挖礦機制、獎勵機制和應用領域等與第二章中跨鏈項目有很大的區別,具體區別如下表所示。
第二章中的各個跨鏈項目的目標是解決特定區塊鏈之間的信息交換,或者針對不同應用領域而設計,所以這些跨鏈項目的通用性不是很高。但是Pallet由于是協議,所以他能做到萬鏈互聯,多利益關聯方互利共贏,從而助推「價值互鏈網」的實現。
7
總結及參考文獻
小結
現有的區塊鏈從應用、智能合約、共同賬本、共識網絡綁死,每個鏈形成了獨立的垂直的封閉體系,當一個應用綁死在一個鏈上的時候,難以采用新技術,難以帶著原有數據和資產遷移到新的鏈上。
Pallet是一個分布式的、包容的交易執行環境,而不是另一種加密貨幣。Pallet和底層區塊鏈、合約編寫語言和執行平臺都是解耦的,允許用戶同時進行鏈上和鏈下的資產交易。
因此,它可以在不同平臺的不同區塊鏈上執行不同語言編寫的智能合約。通過利用現有的LLVM和WASM工具,可以方便地使Pallet提供安全的智能合約執行,同時,Pallet的高性能也使合約隱私性加密成為可能。
參考文獻
[1] 《Chain Interoperability》
[2]?《聯盟鏈的多鏈與跨鏈的思考與實現(一)》
[3]?《?區塊鏈解讀22-跨鏈技術》
[4]?《連接不同區塊鏈的跨鏈技術介紹》
[5]?《?**【匯編2】區塊鏈的跨鏈技術》
[6]?《重磅項目波卡鏈來襲,深度解析Polkadot跨鏈技術》
[7]?《Ripple發布Interledger,欲將銀行賬本和區塊鏈連接到一起》
[8]? ?上述各項目的白皮書
本文來源:區塊鏈新訊
以下是我們的社區介紹,歡迎各種合作、交流、學習:)
轉載于:https://my.oschina.net/u/3782027/blog/1801231
總結
以上是生活随笔為你收集整理的V神:区块链跨链技术大规模应用将在一到两年内爆发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java实现在线浏览zip文件及文件下载
- 下一篇: 《流浪地球2》票房突破39亿:豆瓣、B站