解讀區(qū)塊鏈,跨鏈技術(shù)
隨著區(qū)塊鏈技術(shù)的發(fā)展,現(xiàn)在越來越多的鏈,包括公有鏈、聯(lián)盟鏈、私有鏈都開始層出不窮,那么鏈與鏈之間的互聯(lián)操作,越來越被重視,跨鏈的需求就由此而來,其實(shí)目前有不少成功的跨鏈平臺(tái),如:rootstack、BTC relay等。筆者參考網(wǎng)上大神講解和以下這些資料,有興趣的可以參考下:http://www.8btc.com/tan90d84 rootstock根鏈平臺(tái) 白皮書
http://ethfans.org/posts/chain-interoperability-report Chain_Interoperability.pdf論文
http://www.doc88.com/p-4621318186080.html 側(cè)鏈白皮書
這里根據(jù)自己理解簡(jiǎn)單對(duì)跨鏈技術(shù)做個(gè)介紹。
跨鏈技術(shù)理解成鏈之間聯(lián)通的橋梁。
在區(qū)塊鏈的世界中,大多數(shù)鏈其實(shí)都不是不知道鏈外的世界,不具備天然的跨鏈能力,跨鏈?zhǔn)且粋€(gè)復(fù)雜的過程,既需要對(duì)鏈中節(jié)點(diǎn)要有單獨(dú)的驗(yàn)證能力,需要去中心化的輸入,更需要對(duì)鏈外世界的信息的獲取和驗(yàn)證。
目前主要的三種跨鏈技術(shù):
公證人機(jī)制(Notary schemes)、側(cè)鏈/中繼(Sidechains/relays)、哈希鎖定(Hash-locking)
http://ethfans.org/posts/chain-interoperability-report
公證人機(jī)制(Notary schemes):三種方式中最為簡(jiǎn)單,目前使用的也是比較多的一種方式,舉下例子:PBFT協(xié)議中,每個(gè)節(jié)點(diǎn)都是一個(gè)公證人,那么你從節(jié)點(diǎn)中獲得超過三分之二的節(jié)點(diǎn)簽名,那么就表示這個(gè)公證是有效的?;蛘撸趯?shí)現(xiàn)錨錠側(cè)鏈的時(shí)候,主鏈發(fā)送交易到側(cè)鏈時(shí)候所擁有的一個(gè)多重簽名地址,然后需要花費(fèi)這個(gè)交易的時(shí)候必須同時(shí)提供8-of-10的multisig的簽名才是有效?,F(xiàn)在使用公證技術(shù)的有:字節(jié)雪球的witness、ZCASH的6參數(shù)生成過程,rootstacke中的semi-trust-free-sidechains(公證方案)。這種方式優(yōu)點(diǎn)就是簡(jiǎn)單,整個(gè)過程就是對(duì)公證節(jié)點(diǎn)的信任,缺點(diǎn)就是你需要去信任一或多個(gè)實(shí)體節(jié)點(diǎn)。
側(cè)鏈/中繼(Sidechains/relays):有些人把這個(gè)兩個(gè)技術(shù)分開來說明,這里就放一塊解釋了。首先有個(gè)概念普及下,主鏈?zhǔn)遣恢纻?cè)鏈的存在,側(cè)鏈則知道主鏈的存在(其實(shí)這個(gè)是廢話,不知道他怎么做側(cè)鏈),側(cè)鏈的概念就是一個(gè)鏈能去讀懂另外一個(gè)鏈,用白皮書的定義:sidechain is a blockchain that validates data from other blockchains。側(cè)鏈存在的條件,一般來說主鏈通常支持SPV(參考筆者前文比特幣架構(gòu)),主鏈向側(cè)鏈提供SPV proof來驗(yàn)證主鏈中發(fā)生的事件(這個(gè)事件理解為區(qū)塊的產(chǎn)生,交易的生成等一系列主鏈狀態(tài)的變化)。側(cè)鏈其實(shí)是以錨定比特幣為基礎(chǔ)的新型區(qū)塊鏈,以融合的方式實(shí)現(xiàn)加密貨幣金融生態(tài)的目標(biāo),而不是像其它加密貨幣一樣排斥現(xiàn)有的系統(tǒng)。中繼技術(shù),在A.B兩個(gè)鏈中,存在第三方數(shù)據(jù)結(jié)構(gòu)C,那么這個(gè)C就是A和B的中繼,如果C也是區(qū)塊鏈結(jié)構(gòu),那么就稱relay-chain。舉個(gè)例子:著名的比特幣側(cè)鏈BTC Relay,一種基于以太坊的智能合約,將以太坊和比特幣網(wǎng)絡(luò)以一種安全去中心化的方式連接起來。
BTC Relay通過通過以太坊的智能合約允許用戶在以太坊區(qū)塊鏈上驗(yàn)證比特幣的交易,使用區(qū)塊頭創(chuàng)建一種小型版本的比特幣區(qū)塊鏈,以太坊DApp開發(fā)者可以從智能合約向BTC Relay進(jìn)行API調(diào)用來驗(yàn)證比特幣網(wǎng)絡(luò)活動(dòng),從而實(shí)現(xiàn)了區(qū)塊鏈之間的交互。BTC-relay既是中繼又是側(cè)鏈。
再舉個(gè)上面也有的例子,RootStock 是一個(gè)建立在比特幣區(qū)塊鏈上的智能合約分布式平臺(tái)。它的目標(biāo)是,將復(fù)雜的智能合約實(shí)施為一個(gè)側(cè)鏈,為核心比特幣網(wǎng)絡(luò)增加價(jià)值和功能。RootStock實(shí)現(xiàn)了以太坊虛擬機(jī)的一個(gè)改進(jìn)版本,它將作為比特幣的一個(gè)側(cè)鏈,使用了一種可轉(zhuǎn)換為比特幣的代幣作為智能合約的“燃料”。在rootstack程序中,把比特幣的相關(guān)信息寫入sidechain,不斷產(chǎn)生的區(qū)塊信息寫入(spv)同時(shí)寫入側(cè)鏈,在比特幣中任何區(qū)塊產(chǎn)生變化都有相應(yīng)的反應(yīng),同時(shí)rootstack也有自己的代幣。
哈希鎖定(Hash-locking):哈希鎖定起源于閃電網(wǎng)絡(luò)的HTLC,這個(gè)可以參看筆者前文閃電網(wǎng)絡(luò),哈希鎖定通過鎖定一段時(shí)間猜hash原來的值來兌現(xiàn)支付的一種機(jī)制,哈希鎖定,產(chǎn)生一個(gè)隨機(jī)數(shù),三人或者多人之間去信息交互方式,配合閃電網(wǎng)絡(luò)通過技術(shù)加密方式轉(zhuǎn)賬在安全方式下進(jìn)行。舉個(gè)例子:A和B進(jìn)行比特幣和以太幣的交易,那么A首先在比特幣中轉(zhuǎn)賬給B,A生成一個(gè)隨機(jī)數(shù)值,然后哈希運(yùn)算后發(fā)給B,A生成HTLC,設(shè)置一個(gè)超時(shí)時(shí)間,如果B猜測(cè)出來那個(gè)隨機(jī)數(shù)值,那么就轉(zhuǎn)賬,然后B在以太坊里部署了智能合約,如果在一個(gè)超時(shí)時(shí)間內(nèi)有人能提供一個(gè)隨機(jī)數(shù),這個(gè)隨機(jī)數(shù)就是之前A在比特幣中提供的在哈希運(yùn)算前的原來的值,那么提供這個(gè)數(shù)值的人可以取得B在以太坊中提供的一定數(shù)量的以太幣,A調(diào)用B的智能合約,取走B的以太幣,B得知了A的隨機(jī)數(shù)值,在超時(shí)時(shí)間內(nèi)可以取走A的比特幣。交易就完成了。
跨鏈技術(shù)的主要作用:
資產(chǎn)轉(zhuǎn)換,atomic swap原子交換(適用于交易所),cross-chain-oracles 區(qū)塊鏈中內(nèi)部信息互通,但是到外面世界就難以知道,獲取外部信息,不同鏈之間的信息交互。asset encumbrance 資產(chǎn)質(zhì)押:兩種資產(chǎn)之間的交互,鎖定資產(chǎn),釋放資金。
目前跨鏈的項(xiàng)目還是很多的,借用http://www.docin.com/p-1957161951.html這組PPT詳細(xì)介紹了跨鏈技術(shù),同時(shí)也有視頻講解,http://www.8btc.com/elwingao-blockchain-8這里對(duì)幾個(gè)技術(shù)有詳細(xì)文字說明。
筆者初學(xué)區(qū)塊鏈,很多東西也是慢慢摸索,之所以寫下這些基本概念一方面作為自己學(xué)習(xí)的整理,另一方面也希望更多交流學(xué)習(xí)的機(jī)會(huì)。如有興趣可以直接給我留言或者加筆者微信。
聯(lián)系客服