1.區(qū)塊鏈跨鏈技術(shù)誕生背景及發(fā)展歷程
1.1 什么是跨鏈?
區(qū)塊鏈技術(shù)經(jīng)過10來年演進(jìn),已經(jīng)被認(rèn)為是可以參與未來可信社會(huì)構(gòu)建的重要基礎(chǔ)設(shè)施。但是現(xiàn)實(shí)的社會(huì)中包括許多行業(yè)和不同的經(jīng)濟(jì)領(lǐng)域。把整個(gè)現(xiàn)實(shí)世界中的各個(gè)行業(yè)都套用區(qū)塊鏈?zhǔn)遣滑F(xiàn)實(shí)的,也是不合適的。不同行業(yè)、不同經(jīng)濟(jì)領(lǐng)域的商品可以通過市場實(shí)現(xiàn)價(jià)值交換。每個(gè)區(qū)塊鏈系統(tǒng)都是一個(gè)獨(dú)立的價(jià)值經(jīng)濟(jì)體系。區(qū)塊鏈跨鏈技術(shù)是連接獨(dú)立區(qū)塊鏈的樞紐,承載著不同價(jià)值體系的區(qū)塊鏈之間的交換功能。價(jià)格是交換貨物的前提,價(jià)格由商品本身的價(jià)值決定,受供需關(guān)系的影響,供需關(guān)系又建立在市場之上。為了實(shí)現(xiàn)不同區(qū)塊鏈上的價(jià)值交換,區(qū)塊鏈通過跨鏈為每個(gè)獨(dú)立區(qū)塊鏈中的價(jià)值交易市場提供跨鏈契約服務(wù)。每個(gè)區(qū)塊鏈?zhǔn)且粋€(gè)獨(dú)立的賬本,兩個(gè)不同的區(qū)塊鏈對應(yīng)兩個(gè)不同的獨(dú)立賬本,兩個(gè)賬本之間沒有關(guān)聯(lián)關(guān)系??珂溸@個(gè)技術(shù),打通不同賬本之間的障礙,允許價(jià)值跨越不同區(qū)塊鏈進(jìn)行流轉(zhuǎn)。本質(zhì)上,價(jià)值不能在賬間轉(zhuǎn)移。但是對于一個(gè)特定的用戶來說,一個(gè)區(qū)塊鏈中存儲的價(jià)值可以轉(zhuǎn)化為另一個(gè)區(qū)塊鏈價(jià)值,從而實(shí)現(xiàn)了價(jià)值的循環(huán)。
1.2 誕生的背景及發(fā)展歷程
隨著2008年比特幣誕生以來,區(qū)塊鏈技術(shù)已經(jīng)有了非常廣泛的發(fā)展,截止目前世界各國至少有上千種區(qū)塊鏈項(xiàng)目。區(qū)塊鏈給人們提供了解決數(shù)據(jù)孤島,傳遞信任價(jià)值等能力,但是一個(gè)個(gè)不同生態(tài)的區(qū)塊鏈項(xiàng)目建立之后,人們發(fā)現(xiàn)這些區(qū)塊鏈又變成了新的數(shù)據(jù)孤島。不同的區(qū)塊鏈基于不同的共識算法,數(shù)據(jù)結(jié)構(gòu),安全算法,賬本類型導(dǎo)致其不存在互通的能力。這時(shí)候不可避免的會(huì)提出一個(gè)新的問題:鏈與鏈之間怎么進(jìn)行價(jià)值交換?跨鏈互通后能否在無第三方的情況下繼續(xù)維持資產(chǎn)的原子交換,并且保證數(shù)據(jù)的一致性及全流程可信呢?那為了解決上面碰到的問題,跨鏈技術(shù)就應(yīng)運(yùn)而生了。
首先回顧下區(qū)塊鏈跨鏈技術(shù)發(fā)展歷史,以及其發(fā)展的幾個(gè)重要階段。從技術(shù)上來說跨鏈主要包括下面三種模式,哈希鎖定技術(shù),公證人技術(shù)以及中繼鏈。這幾種技術(shù)的主要發(fā)展歷史如下圖1所示。
圖1 跨鏈技術(shù)發(fā)展歷史年表
2008年Nakamoto發(fā)表了《Bitcoin:a peer-to-peer electronic cash system》報(bào)告,通常被當(dāng)做區(qū)塊鏈技術(shù)發(fā)展的起源事件,從此在相當(dāng)長的一段歷史時(shí)期,區(qū)塊鏈都是基于單鏈發(fā)展的。慢慢的,單鏈出現(xiàn)多種形態(tài)和類型,同時(shí)出現(xiàn)不少受限于出塊時(shí)間,區(qū)塊大小限制及無法用智能合約解決的實(shí)際問題。在2012年瑞波實(shí)驗(yàn)室提出了一個(gè)叫做InterLedger的協(xié)議來解決不同區(qū)塊鏈系統(tǒng)之間交互和協(xié)作問題,Interledger作為最初公證人機(jī)制的代表。2013年5月,Herlihy在BitcoinTalk論壇上提出atomic swap這一概念,也就是針對跨鏈交易過程中,其子交易要么同時(shí)發(fā)生,要么不發(fā)生,不會(huì)有第三種狀態(tài)存在。這也就演進(jìn)成了一種主要跨鏈技術(shù),hash鎖定。2014年10月,BlockStream首次提出了側(cè)鏈的概念,利用雙向錨定機(jī)制實(shí)現(xiàn)加密資產(chǎn)按照某種匯率在主鏈和側(cè)鏈之間轉(zhuǎn)移,側(cè)鏈?zhǔn)鞘讉€(gè)產(chǎn)生較大影響力的跨鏈技術(shù)。2015年,比特幣提出閃電網(wǎng)絡(luò),利用哈希時(shí)間鎖定技術(shù),通過鏈下交易渠道,提高其交易速率。2016年,Vitalik發(fā)表了區(qū)塊鏈互操作相關(guān)報(bào)告,對互操作問題進(jìn)行了深入的分析。2017年,Cosmos和Polkadot提出了跨鏈平臺的方案,通過其平臺支持兼容所有區(qū)塊鏈應(yīng)用。
2. 跨鏈的目的及相關(guān)名詞解釋
2.1 目的
區(qū)塊鏈的跨鏈技術(shù)是區(qū)塊鏈實(shí)現(xiàn)互聯(lián)互通,提高其可擴(kuò)展性的重要技術(shù)手段??珂湹哪康囊约跋胍鉀Q的問題主要包括下面幾點(diǎn):
?突破公鏈目前性能和功能瓶頸
通過上面跨鏈演進(jìn)的歷史不難看出,整個(gè)跨鏈出現(xiàn)最早的原因就是為了解決比特幣,或者其它涉及代幣的價(jià)值交換以及流通的問題。區(qū)塊鏈的可擴(kuò)展性三難題法則表明,其只能兼顧去中心性,可擴(kuò)展性和安全性的其中兩項(xiàng)。并且隨著技術(shù)的發(fā)展,其交易速度和性能已經(jīng)很難滿足當(dāng)前的需求,盡管諸如EOS等項(xiàng)目稱其TPS可達(dá)百萬級,但是都是通過部分中心化節(jié)點(diǎn)進(jìn)行驗(yàn)證,跨鏈可以為其架構(gòu)提供更優(yōu)化的選擇和更高的可擴(kuò)展性。
?實(shí)現(xiàn)不同區(qū)塊鏈間資產(chǎn)的轉(zhuǎn)移
單一的區(qū)塊鏈系統(tǒng)無法獲取外部數(shù)據(jù),使不同鏈之間或者鏈外可信數(shù)據(jù)上鏈,但是隨著技術(shù)的發(fā)展,場景越來越多的需要鏈間互操作的能力。雖然說可以通過第三方部分平臺來完成一定交互,但是又會(huì)引入新的中心化節(jié)點(diǎn),帶來新的不可信及安全性問題,跨鏈希望的是通過技術(shù)而不是機(jī)構(gòu)或人來提供可信,可靠和高效的保障。這里需要的跨鏈互操作場景包括但不限于跨鏈支付結(jié)算,去中心化交易所,跨鏈信息交互等。
?實(shí)現(xiàn)區(qū)塊鏈上鏈資產(chǎn)的凍結(jié)鎖定
在一些金融場景中需要基于特定鏈上的信息對某些鏈上的數(shù)據(jù)提供凍結(jié)鎖定的能力,同時(shí)還可以設(shè)定某個(gè)資產(chǎn)的鎖定條件和其解鎖條件也與其他鏈的事件或者行為進(jìn)行關(guān)聯(lián);
?讀取和驗(yàn)證其他鏈的狀態(tài)或值.
不同類型的聯(lián)盟鏈在不同生態(tài)下構(gòu)建起來,很多場景下需要在某些聯(lián)盟鏈中讀取數(shù)據(jù)用于自己當(dāng)前的鏈中,例如,司法應(yīng)用中跨鏈的可信取證?;蛟诋?dāng)前區(qū)塊鏈上部署的智能合約,需要依賴于其他鏈的信息和數(shù)據(jù)才可以觸發(fā)其執(zhí)行的條件,跨鏈讀在類似的場景中具有典型應(yīng)用價(jià)值;
2.2相關(guān)名詞解釋
?分布式賬本技術(shù)
分布式賬本系統(tǒng)是一種只做附加操作的,特殊類型分布式數(shù)據(jù)庫系統(tǒng),適用于不可信的環(huán)境中使用。分布式賬本技術(shù)允許出現(xiàn)拜占庭錯(cuò)誤,包括節(jié)點(diǎn)崩潰,或者無法訪問,網(wǎng)絡(luò)延遲或者節(jié)點(diǎn)的惡意行為存在。在分布式賬本系統(tǒng)中,新的數(shù)據(jù)通過事務(wù)的方式附加到每個(gè)節(jié)點(diǎn)的本地副本,并通過一定加密機(jī)制,保障賬本中的數(shù)據(jù)不能被隨意刪除或更改。
為了在分布式賬本系統(tǒng)中達(dá)到數(shù)據(jù)在各個(gè)節(jié)點(diǎn)中的一致性,每個(gè)分布式賬本系統(tǒng)都會(huì)使用共識機(jī)制。共識機(jī)制是在分布式賬本的不同節(jié)點(diǎn)之間協(xié)商其當(dāng)前賬本有效狀態(tài)的算法。由于分布式系統(tǒng)中要達(dá)到共識,安全以及一致性方面的一些權(quán)衡,共識要么達(dá)到最終一致性,要么達(dá)到概率的最終一致性。如果所有的節(jié)點(diǎn)都能成功落塊,并且都存儲同樣的賬本副本,就說明系統(tǒng)達(dá)到了最終一致性。
通常來說,我們基于分布式賬本層次結(jié)構(gòu)上不同設(shè)計(jì)把它分成兩類:公有鏈和聯(lián)盟鏈。在公有鏈中,任何人都可以加入分布式賬本系統(tǒng),擁有對分布式賬本的的讀寫權(quán)限。相反,聯(lián)盟鏈的分布式賬本設(shè)計(jì)將節(jié)點(diǎn)排除在操作(例如,事務(wù)驗(yàn)證、加入分布式分類帳)之外,因?yàn)樗鼈兪褂脵?quán)限模型。為了在聯(lián)盟鏈中加強(qiáng)易用性,性能等充分權(quán)衡了分布式系統(tǒng)相關(guān)的特性,使得這種許可模型強(qiáng)烈影響了共識機(jī)制的適用性,例如:公有鏈設(shè)計(jì)主要采用僅達(dá)到概率最終性的共識機(jī)制。相比之下,大多數(shù)聯(lián)盟鏈設(shè)計(jì)的共識機(jī)制要求完全最終一致性,因此,不分叉或只分叉短時(shí)間,導(dǎo)致只有有限數(shù)量的節(jié)點(diǎn)納入共識發(fā)現(xiàn)。
?智能合約
分布式賬本的設(shè)計(jì)支持了自定義軟件的部署和執(zhí)行,這種自定義的程序被叫做智能合約。智能合約允許程序代碼中通過定義規(guī)范的表達(dá)式來進(jìn)行觸發(fā)交易。最初,智能合約僅限于解鎖存儲在分布式賬本上的資產(chǎn)(例如,使用hash鎖,時(shí)間鎖,和多重簽名)。為了增加開發(fā)人員的能動(dòng)性來實(shí)現(xiàn)更富有表達(dá)力的智能合約,開發(fā)了一個(gè)圖靈完備的智能合約的執(zhí)行環(huán)境。今天,智能合約可以存儲資產(chǎn),一旦滿足合約約定的條件,就可以進(jìn)行交易。這些條件與存儲在統(tǒng)一分布式賬本中的數(shù)據(jù)及來自外部(鏈下)的數(shù)據(jù)有關(guān)。智能合約對于實(shí)現(xiàn)不同分布式賬本之間的原子通信也至關(guān)重要,從而實(shí)現(xiàn)跨鏈的互操作能力。
?跨鏈技術(shù)
分布式賬本之前的互操作性是指它從外部系統(tǒng)檢索數(shù)據(jù)或與外部系統(tǒng)交換數(shù)據(jù)的能力??珂溝到y(tǒng)通過實(shí)現(xiàn)不同分布式賬本與外部系統(tǒng)之間實(shí)現(xiàn)數(shù)據(jù)交換,幫助實(shí)現(xiàn)互操作性的能力。通過與外部系統(tǒng)的數(shù)據(jù)交換可以提高分布式賬本的靈活性,克服本身限制所帶來的性能問題,并提高分布式賬本的安全性??珂溄M件的實(shí)現(xiàn)包含幾種關(guān)鍵技術(shù),例如哈希鎖定,公證人,側(cè)鏈等,并且基于這些技術(shù)抽象成了一些實(shí)現(xiàn)模式,這些模式是對指定功能的抽象描述。
3. 跨鏈的幾種關(guān)鍵技術(shù)
3.1 跨鏈技術(shù)存在的難點(diǎn)
目前,實(shí)現(xiàn)跨鏈技術(shù)面臨的主要難點(diǎn)有如下 4 點(diǎn)。
?如何確??珂溄灰椎脑有?/p>
跨鏈交易原子性保證是跨鏈互操作的一個(gè)重點(diǎn),一筆跨鏈交易在發(fā)起之后只有成功或是失敗兩種狀態(tài),不能停留在任何中間態(tài),但是整個(gè)流程是由多個(gè)不同區(qū)塊鏈交易組成,分別運(yùn)行在不同的區(qū)塊鏈系統(tǒng)中,彼此都是獨(dú)立的。原子性就是保證在這一筆跨鏈交易執(zhí)行成功后,其后續(xù)跨鏈交易或費(fèi)跨鏈交易都能執(zhí)行成功,如果失敗的話,當(dāng)前交易可以回滾或是撤銷,不影響后續(xù)交易,整個(gè)跨鏈系統(tǒng)要保證一致性。
?如何用分布式方式驗(yàn)證不同鏈的結(jié)果和狀態(tài)
跨鏈體系對于交易結(jié)果的驗(yàn)證貫穿于整個(gè)跨鏈的流程中,主要包含兩個(gè)方面,一是發(fā)起跨鏈交易時(shí)寫入賬本并滿足最終確定性和真實(shí)性,另一種是在跨鏈交互過程中,跨鏈的雙方可以驗(yàn)證彼此交易來源,真實(shí)性,合法性和有效性。區(qū)塊鏈需要在數(shù)學(xué)及邏輯上保證其安全可靠,至少也是全流程可信及可追溯,單個(gè)區(qū)塊鏈作為一個(gè)封閉的系統(tǒng)如何確認(rèn)另一條鏈上的交易合法性是跨鏈的一個(gè)難點(diǎn)。
?如何保證互操作的鏈資產(chǎn)總和不變且獨(dú)立安全
跨鏈操作中一個(gè)很重要的點(diǎn)就是保證整個(gè)跨鏈交易結(jié)束后不同鏈之間的全局事務(wù)一致性,本質(zhì)上來講,在這種資產(chǎn)交互場景,跨鏈操作也沒有讓這兩條鏈進(jìn)行實(shí)質(zhì)性的交換,因此這種交換不會(huì)影響單個(gè)鏈的資產(chǎn)總量。在資產(chǎn)轉(zhuǎn)移中,需要減少某個(gè)鏈上面的資產(chǎn),相應(yīng)的在對應(yīng)鏈上增加資產(chǎn),這種轉(zhuǎn)移使各條鏈的資產(chǎn)發(fā)生了變化,因此要保障總和,需要保障跨鏈交易的原子性,要么同時(shí)記賬,要么都不去記賬。還要考慮的資產(chǎn)轉(zhuǎn)移過程中的安全性,如何驗(yàn)證資產(chǎn)轉(zhuǎn)移過程是沒有被篡改的,中間流程是不是可以被審計(jì),安全問題是關(guān)系到跨鏈網(wǎng)絡(luò)的一個(gè)非常重要的問題,也就是將跨鏈流程進(jìn)行可信閉環(huán)。
4)如何實(shí)現(xiàn)一個(gè)可信的跨鏈信息路由
跨鏈系統(tǒng)交互的過程需要跨鏈發(fā)起方A將其跨鏈交易發(fā)給鏈B,對于A如何找到B這個(gè)過程也是業(yè)界正在完善的區(qū)塊鏈路由系統(tǒng),提供統(tǒng)一標(biāo)準(zhǔn)協(xié)議,支持各個(gè)鏈的注冊查詢能力
5)如何實(shí)現(xiàn)一個(gè)混合跨鏈平臺
目前,業(yè)界已經(jīng)有一些跨鏈項(xiàng)目在研究中,例如Cosmos、Polkadot 等項(xiàng)目。目前的 跨鏈研究仍處于初期階段,要達(dá)到為真正的商業(yè)應(yīng)用 提供一個(gè)基于同構(gòu)和異構(gòu)的適用于各種混合場景的互操作平臺也是一個(gè)需要解決的問題。
3.2 跨鏈涉及的關(guān)鍵技術(shù)
區(qū)塊鏈之間的價(jià)值分配存在天然的障礙??珂?zhǔn)且粋€(gè)復(fù)雜的過程。它不僅要求區(qū)塊鏈中的節(jié)點(diǎn)具有單獨(dú)的驗(yàn)證能力,而且要求去中心化的輸入,以及區(qū)塊鏈外部信息的獲取和驗(yàn)證。目前,跨鏈技術(shù)主要包括:公證方案、側(cè)鏈/中繼和哈希鎖定。
?公證人
引入一方或多方可信實(shí)體做信用背書的跨鏈機(jī)制都稱為公證人機(jī)制,公證人機(jī)制是技術(shù)上可實(shí)現(xiàn)的、最簡單的跨鏈機(jī)制。在公證模式下,一個(gè)受信任的個(gè)人或組被用來向區(qū)塊鏈聲明另一個(gè)區(qū)塊鏈發(fā)生了一些事情,或確保來源正確。這些組既可以自動(dòng)偵聽和響應(yīng)事件,也可以在請求時(shí)偵聽和響應(yīng)事件。假設(shè)Alice和Bob不能相互信任,那么Alice和Bob都可以信任的第三方就是公證人的中間人。這樣就建立了Alice和Bob之間的間接信任機(jī)制。代表辦法是Interledger,它本身不是區(qū)塊鏈系統(tǒng),不尋求任何共識。它提供了一個(gè)頂級的加密托管系統(tǒng),稱為“連接器”,借助這個(gè)中介,允許資金在不同區(qū)塊鏈系統(tǒng)之間流動(dòng)。
?側(cè)鏈/中繼
BlockStream 在 2014 年發(fā)表了側(cè)鏈白皮書,定義了側(cè)鏈?zhǔn)且粭l能夠驗(yàn)證其他區(qū)塊鏈數(shù)據(jù)的鏈。側(cè)鏈不是專門指某一條區(qū)塊鏈,而是指符合側(cè)鏈協(xié)議的所有區(qū)塊鏈,是相對于比特幣主鏈的概念。側(cè)鏈協(xié)議是允許比特幣安全傳輸?shù)膮f(xié)議。從比特幣主鏈到其他區(qū)塊鏈,并且可以安全地從其他區(qū)塊鏈轉(zhuǎn)回比特幣主鏈。側(cè)鏈協(xié)議的目的是實(shí)現(xiàn)雙向掛鉤,以便比特幣可以傳輸。在主鏈和側(cè)鏈之間。側(cè)鏈協(xié)議意味著比特幣不僅可以在比特幣區(qū)塊鏈上流通,也可以在其他區(qū)塊鏈上流通。側(cè)鏈/中繼的本質(zhì)特征是關(guān)注不同區(qū)塊鏈之間達(dá)成一致共識。一般而言,單一側(cè)鏈模式下,主鏈不知道側(cè)鏈的存在,但側(cè)鏈必須知道主鏈的存在;中繼模式下,多鏈鏈不知道中繼的存在,但中繼必須知道多鏈的存在。
?哈希鎖定
哈希鎖定是一種依托于哈希函數(shù)的單向性與低碰撞性,同時(shí)利用區(qū)塊鏈中交易可以延時(shí)執(zhí)行的特點(diǎn)而產(chǎn)生的機(jī)制。哈希鎖定是通過對不同區(qū)塊鏈之間互操作設(shè)置不同的觸發(fā)器,通常是公開隨機(jī)數(shù)的哈希值,它起源于比特幣的閃電網(wǎng)絡(luò),其關(guān)鍵技術(shù)是RSMC(可撤銷序列到期合同)和HTLC(哈希時(shí)間鎖定合同)。有下面這么一個(gè)場景,Alice和Bob可以達(dá)成一個(gè)協(xié)議:該協(xié)議將鎖定Alice BTC。在T時(shí)刻之前,如果Bob能夠向Alice顯示一個(gè)合適的R,使R的哈希值等于之前約定的值H(R), Bob就可以得到這個(gè)BTC;如果在T時(shí)刻Bob不能提供正確的R然后這個(gè)BTC會(huì)自動(dòng)解凍并返還給Alice。使用哈希鎖定可以實(shí)現(xiàn)跨鏈資產(chǎn)的交換,但不能實(shí)現(xiàn)跨鏈資產(chǎn)的轉(zhuǎn)移,也不能實(shí)現(xiàn)跨鏈合同,其應(yīng)用場景比較有限。
4. 跨鏈三種技術(shù)模型
?手動(dòng)資產(chǎn)交換
手動(dòng)資產(chǎn)交換模型是最簡單的跨鏈技術(shù)模式。手動(dòng)資產(chǎn)交換模型遵循典型的財(cái)務(wù)交易生命周期:結(jié)算、訂單匹配、清理。
第一階段,A使用某種秘密(例如,哈希值的預(yù)映像、賬戶的私鑰)鎖定相應(yīng)的分布式賬簿上的資產(chǎn),從而結(jié)算新的資產(chǎn)交換訂單;
第二階段, A必須找到對應(yīng)的交易伙伴B,最終就各自訂單的資產(chǎn)匯率達(dá)成一致(如32.5 Ether贈(zèng)送1 Bitcoin),在人工資產(chǎn)交換模型中,這種訂單匹配是在鏈下進(jìn)行的,例如:由第三方或通過個(gè)人互動(dòng)。A和B同意交換后,B將資產(chǎn)鎖定在對應(yīng)的區(qū)塊鏈賬本上。
第三階段,訂單清零,實(shí)際資產(chǎn)交換發(fā)生。
因此,用戶A和用戶B分別交換自己的秘密,解鎖被鎖定的資產(chǎn)。手動(dòng)資產(chǎn)交換模型存在一定缺陷,只能用于資產(chǎn)交換(不同于其他模式),通常手動(dòng)資產(chǎn)交換模型不采用自動(dòng)訂單匹配,不需要制品,因?yàn)橘Y產(chǎn)交換可以完全基于當(dāng)事人的個(gè)人協(xié)議。然而,手動(dòng)資產(chǎn)交換模型容易受到欺詐。如果A先收到B的機(jī)密,而沒有機(jī)制來反鎖A的機(jī)密,那么A可以利用B的機(jī)密來解鎖B的資產(chǎn),而不需要將自己的資產(chǎn)轉(zhuǎn)移給B,A將不能正確完成交換。為了防止交易所伙伴進(jìn)行可能導(dǎo)致財(cái)務(wù)損失的欺詐活動(dòng),原子性對資產(chǎn)交換至關(guān)重要。
?公證人模式
在公證人模式中,由可信的第三方建立不同區(qū)塊鏈之間的連接。公證人方案提供基礎(chǔ)設(shè)施和相關(guān)服務(wù)以利于資產(chǎn)轉(zhuǎn)移或類似行為(例如,執(zhí)行智能合同)。在對區(qū)塊鏈執(zhí)行操作之前,公證人必須首先同意某個(gè)操作(例如,交易承諾)在另一個(gè)已區(qū)塊鏈上執(zhí)行。例如,加密貨幣交換的情況,公證員在向區(qū)塊鏈B開出相應(yīng)的交易之前,必須首先驗(yàn)證區(qū)塊鏈A的交易是否成功完成,這樣,區(qū)塊鏈之間的數(shù)據(jù)交換完全由公證員管理。公證方案采用集中式架構(gòu)實(shí)現(xiàn)跨鏈互操作。
公證模式可以對應(yīng)一個(gè)公證員(集中公證計(jì)劃或集中交換),也可以對應(yīng)一個(gè)公證聯(lián)盟(分布式公證節(jié)點(diǎn))。單個(gè)公證員可以設(shè)置并操作每個(gè)連接的分布式賬本節(jié)點(diǎn)。例如,當(dāng)公證員決定將資產(chǎn)從比特幣轉(zhuǎn)移至Ethereum時(shí),公證員會(huì)設(shè)置比特幣和Ethereum節(jié)點(diǎn),管理兩個(gè)已分發(fā)賬本的交易接收和發(fā)行。公證員單獨(dú)確認(rèn)事件是否發(fā)生(如交易接收),并觸發(fā)相應(yīng)的操作,為了使公證員對事件的確認(rèn)民主化,增加透明度,可信第三方通常共享例如分布式私鑰或使用多簽名錢包。只有當(dāng)一定數(shù)量的公證員確認(rèn)該事件(例如,鎖定分布式賬本A上的資產(chǎn))時(shí),相應(yīng)的操作才會(huì)執(zhí)行(例如,解鎖分布式賬本B上的資產(chǎn))。
?側(cè)鏈中繼模式
側(cè)鏈/中繼,一般是連接主鏈的下級分布式賬本,如Bitcoin、Ethereum等。側(cè)鏈在技術(shù)上獨(dú)立于主鏈,因此,可以有自己的共識機(jī)制等。最初,開發(fā)側(cè)鏈?zhǔn)菫榱送ㄟ^資產(chǎn)轉(zhuǎn)移增強(qiáng)現(xiàn)有分布式賬本的可擴(kuò)展性。側(cè)鏈可以從主鏈讀取和驗(yàn)證數(shù)據(jù),例如,將資產(chǎn)從主鏈轉(zhuǎn)移到側(cè)鏈,在這種資產(chǎn)轉(zhuǎn)移中,若干資產(chǎn)被鎖在主鏈條上;資產(chǎn)鎖定由目標(biāo)側(cè)鏈的驗(yàn)證機(jī)制確認(rèn),最終解鎖(或生成)相應(yīng)數(shù)量的本機(jī)token。為了能夠?qū)①Y產(chǎn)轉(zhuǎn)移回主鏈或另一側(cè)鏈,主鏈還必須能夠驗(yàn)證中繼上的數(shù)據(jù)。
?混合解決方案
除了單一的跨鏈模式,也存在混合解決方案,它結(jié)合了前面解釋的幾種模式的某些方面。例如,通過混合解決方案有助于建立雙向追溯的側(cè)鏈,假設(shè)其中一種區(qū)塊鏈設(shè)計(jì)不支持適當(dāng)?shù)尿?yàn)證機(jī)制(例如,簡單支付驗(yàn)證(SPV)),在這種情況下,集成公證方案取代了特定中繼識別和驗(yàn)證它的交易的能力,并讓可信的公證人提供此信息。還有一些設(shè)計(jì),例如華為跨鏈平臺,是在中繼跨鏈方案中集成了哈希鎖定技術(shù),并融合分布式公證人技術(shù),把幾種主要模式混入在一起,實(shí)現(xiàn)一種復(fù)雜跨鏈解決方案,構(gòu)建多異構(gòu)鏈可以集成交互的場景,并保證全流程交易的原子性和一致性。
5. 跨鏈相關(guān)實(shí)現(xiàn)
目前,在跨鏈階段的區(qū)塊鏈已經(jīng)慢慢完成初步探索,開始落地一些標(biāo)準(zhǔn)規(guī)范,有一些比較好的項(xiàng)目已經(jīng)發(fā)布,這里我們重點(diǎn)偏重描述四個(gè)典型跨鏈實(shí)現(xiàn)。
?Corda
第一個(gè)說的是Corda這個(gè)項(xiàng)目,它是一個(gè)商業(yè)化的區(qū)塊鏈平臺。它通過直接的業(yè)務(wù)交換消除了商業(yè)交易之間的障礙。Corda實(shí)現(xiàn)了一個(gè)協(xié)作、開放的網(wǎng)絡(luò),使公司能夠更強(qiáng)地相互協(xié)作、相互交流和直接交換價(jià)值。Corda使用交易形成其分布式賬本,其分發(fā)的賬本中存儲金融或商業(yè)合同所涉各方的交易信息。這些信息存儲在Corda Vault中。同時(shí),Corda還存儲所有交易歷史,跟蹤記錄事件的歷史并獨(dú)立核實(shí)。Corda并不是跨鏈項(xiàng)目,而是一個(gè)分布式賬本實(shí)現(xiàn),第一個(gè)提它主要是它的實(shí)現(xiàn)中存在跨鏈關(guān)鍵技術(shù)所包含的公證人的典型應(yīng)用。Corda的交易只在參與者和公證人之間進(jìn)行。公證人由交易各方共同選定,具有高度可信度。公證人負(fù)責(zé)驗(yàn)證數(shù)據(jù)的有效性和數(shù)據(jù)的唯一性。使用者可以簡單地為不同的分布式帳本選擇分叉,或強(qiáng)制它們指向相同的驗(yàn)證器并同步它們的賬本,來安全地驗(yàn)證分叉交易消息。
?Polkadot
Polkadot是一種支持異構(gòu)鏈并能進(jìn)行多鏈鏈接的技術(shù)架構(gòu)。它由許多具有潛在不同特征的副鏈組成,這可以更容易地實(shí)現(xiàn)隱私保護(hù)或形式化驗(yàn)證。交易可以分布在各個(gè)鏈上,允許在同一時(shí)間段內(nèi)處理更多的交易。Polkadot確保每個(gè)區(qū)塊鏈安全,并確保它們之間的任何交易都得到可信執(zhí)行。它內(nèi)部一種特別的子鏈被稱為橋,通過它可以創(chuàng)建連接打通每個(gè)獨(dú)立的區(qū)塊鏈。Polkadot具有使每一個(gè)獨(dú)立的區(qū)塊鏈都可以與其他鏈交換信息的協(xié)議。Polkadot的區(qū)塊鏈協(xié)議不同于互聯(lián)網(wǎng)消息傳遞的協(xié)議(例如TCP/IP),它需要確保鏈間消息的順序和有效性。這種互操作性能力通過為多個(gè)狀態(tài)機(jī)創(chuàng)建通用環(huán)境來獲得可伸縮性等。
?Cosmos
Cosmos是一個(gè)分布式的獨(dú)立并行區(qū)塊鏈網(wǎng)絡(luò),每個(gè)區(qū)塊鏈都由經(jīng)典的BFT共識算法Tendermint進(jìn)行共識。Cosmos是一個(gè)非許可的網(wǎng)絡(luò),這意味著任何人都可以在其上構(gòu)建區(qū)塊鏈。Cosmos中心通過一個(gè)新的區(qū)塊鏈通信協(xié)議連接許多其他區(qū)塊鏈。該中心可以跟蹤許多token類型,并記錄每個(gè)連接空間的token總數(shù)。Token可以安全、快速地從一個(gè)空間轉(zhuǎn)移到另一個(gè)空間,而無需表現(xiàn)出兩個(gè)空間之間的交換流動(dòng)性,因?yàn)樗锌臻g之間的token傳輸都經(jīng)過Cosmos中心。Cosmos不只是單一的分布式張本系統(tǒng),Cosmos中心也不是一個(gè)封閉的花園或交互中心。而是在為分布式賬本的開放網(wǎng)絡(luò)設(shè)計(jì)一個(gè)協(xié)議。該協(xié)議將基于加密、經(jīng)濟(jì)學(xué)、共識理論、透明度和問責(zé)制等原則,成為未來金融體系的新基礎(chǔ)。
4.4 Huawei跨鏈服務(wù)
華為跨鏈服務(wù)提供了一個(gè)基于跨鏈的混合方案,不僅僅包含一個(gè)通用的跨鏈協(xié)議,它的中繼側(cè)還有一個(gè)分布式賬本,記錄了跨鏈和鏈內(nèi)交易,在不同區(qū)塊鏈賬本之間以分布式的方式連接和交換價(jià)值。它利用最新的密碼學(xué)理論,構(gòu)建了一個(gè)非專有的跨鏈協(xié)議和一個(gè)記錄跨鏈和鏈內(nèi)交易的分布式系統(tǒng)。任何區(qū)塊鏈網(wǎng)絡(luò),無論是公共鏈、私有鏈還是財(cái)團(tuán)鏈,都可以與華為跨鏈服務(wù)集成,建立不同分不是賬本間的連接,實(shí)現(xiàn)低成本的分布式賬本間資產(chǎn)轉(zhuǎn)移。
表1 跨鏈各個(gè)模式對比
6 總結(jié)與分析
跨鏈技術(shù)在這兩年開始被廣泛的關(guān)注,并被寄予厚望,人們期待它可以解決目前區(qū)塊鏈存在的種種問題,并成為萬鏈互聯(lián)的基石。目前我們看到業(yè)界中各個(gè)廠商實(shí)現(xiàn)的區(qū)塊鏈項(xiàng)目目方面出現(xiàn)很多新的跨鏈技術(shù),從形態(tài)上來看,很多事在已有基礎(chǔ)上進(jìn)行改進(jìn);有些是提出一系列新的跨鏈協(xié)議,實(shí)現(xiàn)區(qū)塊鏈之間的互通。但是主流的都是通過中繼鏈實(shí)現(xiàn)的,有些特定的跨鏈實(shí)現(xiàn)在公鏈及代幣領(lǐng)域應(yīng)用偏多。雖然目前跨鏈的幾個(gè)關(guān)鍵技術(shù)解決一些問題,但是其方案還遠(yuǎn)遠(yuǎn)沒有成熟,或多或少都有一些瑕疵:
?公證人機(jī)制:公證人實(shí)現(xiàn)的跨鏈在一定程度上違反了區(qū)塊鏈去中心化的特性,通過可信的第三方中介完成跨鏈交互,支持中介將交易打包發(fā)到不同鏈上的方案,存在中心化的風(fēng)險(xiǎn),也就是公證人作惡有修改跨鏈信息的可能。
?哈希鎖定:最早起源于比特幣閃電網(wǎng)絡(luò)的 哈希鎖定技術(shù)主要利用原子交換實(shí)現(xiàn)跨鏈。優(yōu)點(diǎn) 是通過對交換信息進(jìn)行哈希運(yùn)算并鎖定,可以保證交 換信息的真實(shí)性;缺點(diǎn)在于哈希鎖定只能做到交換, 而不能做到信息或資產(chǎn)的跨鏈轉(zhuǎn)移,使用場景受到很 大限制?;诠fi定的資產(chǎn)轉(zhuǎn)移實(shí)現(xiàn)有一個(gè)窗口 期,窗口期內(nèi)的匯率波動(dòng)需要考慮;此外,使用哈希 鎖定需要構(gòu)建多筆交易,操作復(fù)雜。
?側(cè)鏈:側(cè)鏈?zhǔn)且粋€(gè)和主鏈相對獨(dú)立運(yùn)行的區(qū) 塊鏈,其運(yùn)行依賴于主鏈。側(cè)鏈實(shí)現(xiàn)的技術(shù)基礎(chǔ)是 雙向錨定(two-way peg),通過在側(cè)鏈和主鏈中鎖 定資產(chǎn),并提供有效驗(yàn)證方式,從而在其主鏈或側(cè) 鏈上生成或釋放等價(jià)值的資產(chǎn)。優(yōu)點(diǎn)是這種跨鏈實(shí) 現(xiàn)方式簡單,側(cè)鏈相對于哈希鎖定技術(shù)能提供更多 的實(shí)現(xiàn)場景;缺點(diǎn)是側(cè)鏈的實(shí)現(xiàn)通常需要利用智能 合約,隨著交易量的增多,智能合約內(nèi)部的數(shù)據(jù)存 儲存在膨脹問題,可能會(huì)造成交易處理速度慢,甚 至出現(xiàn)交易堵塞的情況。
?中繼鏈:我們可以把中繼鏈看成是側(cè)聯(lián)和公證人機(jī)制的融合以及擴(kuò)展,它能提供一個(gè)跨鏈交互的平臺或者一條中繼鏈,各種不同類型的鏈對接上中繼鏈,基于中繼鏈實(shí)現(xiàn)跨鏈交互,提高實(shí)用性和擴(kuò)展性。但是其實(shí)現(xiàn)復(fù)雜,開發(fā)難度大,需要定制一套跨鏈協(xié)議來保障各個(gè)異構(gòu)鏈可以順利接入,缺乏統(tǒng)一的跨鏈協(xié)議也是目前跨鏈面臨的很重要的問題。
基于上面的介紹,以及在表3中詳細(xì)對集中模式進(jìn)行的分析比較,區(qū)塊鏈跨鏈技術(shù)還在發(fā)展時(shí)期,需要更加廣泛的推廣和各大廠商及業(yè)界達(dá)成共識。華為的區(qū)塊鏈系統(tǒng)采用的混合模式,規(guī)避了上面提到的缺點(diǎn),集成了一套統(tǒng)一的跨鏈平臺,支持各種異構(gòu)鏈的對接。希望可以打破私有鏈,公有鏈,聯(lián)盟鏈之間的節(jié)點(diǎn),拓展區(qū)塊鏈的使用場景和應(yīng)用便捷,使區(qū)塊鏈未來可以演進(jìn)為支撐更廣泛應(yīng)用的網(wǎng)絡(luò)基礎(chǔ)設(shè)施。
審核編輯:湯梓紅
-
存儲
+關(guān)注
關(guān)注
13文章
4226瀏覽量
85578 -
區(qū)塊鏈
+關(guān)注
關(guān)注
110文章
15559瀏覽量
105592
發(fā)布評論請先 登錄
相關(guān)推薦
評論