區(qū)塊鏈跨鏈技術進展研究_第1頁
區(qū)塊鏈跨鏈技術進展研究_第2頁
區(qū)塊鏈跨鏈技術進展研究_第3頁
區(qū)塊鏈跨鏈技術進展研究_第4頁
區(qū)塊鏈跨鏈技術進展研究_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

軟件學報ISSN1000-9825,CODENRUXUEWJournalofSoftware,2019,30(6):1649?1660[doi:10.13328/ki.jos.005741]?中國科學院軟件研究所版權所有.E-mail:jos@http://www.jos.org.cnTel:+86-10-62562563*區(qū)塊鏈跨鏈技術進展研究*(中國科學院合肥物質科學研究院,安徽合肥230031)通訊作者:趙赫,E-mail:zhaoh@摘要:隨著區(qū)塊鏈技術的發(fā)展,各種具有不同特點、適用于不同應用場景的區(qū)塊鏈如比特幣、以太坊等公有鏈的數(shù)據(jù)通信、價值轉移仍面臨挑戰(zhàn),價值孤島現(xiàn)象逐漸顯現(xiàn).區(qū)塊鏈的跨鏈技術是區(qū)塊鏈實現(xiàn)互聯(lián)互通、提升可擴展性的重要技術手段.對跨鏈技術領域的成果進行了系統(tǒng)總結:首先,分析了跨鏈技術的需求及面臨的技術難點;其次,總結了正在發(fā)展的跨鏈技術,并介紹了24種主流跨鏈技術的原理與實現(xiàn)思路;然后,綜合分析了跨鏈技術存在的安全性風險,并列舉了12項主要問題;最后,總結探討了跨鏈技術的未來發(fā)展趨勢.據(jù)轉移中圖法分類號:TP309中文引用格式:李芳,李卓然,趙赫.區(qū)塊鏈跨鏈技術進展研究.軟件學報,2019,30(6):1649?1660./1000-9825/5741.htm英文引用格式英文引用格式:LiF,LiZR,ZhaoH.Researchontheprogressincross-chaintechnologyofblockchains.RuanJianXueBao/JournalofSoftware,2019,30(6):1649?1660(inChinese)./1000-9825/5741.htmResearchontheProgressinCross-chainTechnologyofBlockchainsLIFang,LIZhuo-Ran,ZHAOHe(HefeiInstitutesofPhysicalScience,ChineseAcademyofSciences,Hefei230031,China)Abstract:Withthedevelopmentofblockchaintechnology,variousblockchainswithdifferentcharacteristicsandapplicationssuchasBitcoin,Ethereum,otherpublicchains,aswellasprivateandconsortiumchainscoexistinlargenumbers.Duetotheindependenceofblockchains,thedatacommunicationandvaluetransferbetweenexistingblockchainsarestillfacingchallenges,andtheproblemofvalueisolationgraduallyemerges.Thecross-chaintechnologyisanimportanttechnicalmeansforblockchainstorealizeinteroperabilityandenhancescalability.Thisarticlesystematicallysummarizestheachievementsinthecross-chaintechnologyfield.Firstly,therequirementsofcross-chaintechnologiesandthetechnicaldifficultiestheyfaceareanalyzed.Secondly,thecross-chaintechnologiesthoseareunderdevelopmentaresummarizedandthemechanismsandimplementationsof24mainstreamcross-chaintechnologiesareintroduced.Then,thesecurityrisksofcross-chaintechnologyareanalyzed,and12majorissuesarelisted.Finally,thetrendoffuturedevelopmentofcross-chaintechnologyissummarizedanddiscussed.Keywords:blockchain;cross-chainprotocol;consensusalgorithm;valuetransfer;datatransfer區(qū)塊鏈(blockchain)[1]是一種去中心化(decentralized)、無需信任(trustless)的分布式數(shù)據(jù)賬本,它通過密碼學方法讓網(wǎng)絡中的所有節(jié)點共同擁有、管理和監(jiān)督數(shù)據(jù),系統(tǒng)的運轉不接受任何單一節(jié)點的控制,從而具有不可*基金項目:國家自然科學基金(61602435);安徽省自然科學基金(1708085QF153)Foundationitem:NationalNaturalScienceFoundationofChina(61602435);NaturalScienceFoundationofAnhuiProvince(1708085QF153)本文由區(qū)塊鏈與數(shù)字貨幣技術專題特約編輯斯雪明教授和陳文光教授推薦.收稿時間:2018-06-25;修改時間:2018-10-12;采用時間:2018-12-18;jos在線出版時間:2019-03-27CNKI網(wǎng)絡優(yōu)先出版:2019-03-2716:40:31,/kcms/detail/11.2560.TP.20190327.1640.007.htmlJournalofSoftware軟件學報Vol.30,No.6,June2019偽造、不可篡改、可追溯等特點.區(qū)塊鏈通過技術構造全新的信任體系,具有改變人類社會價值傳遞方式的潛力,并支持與行業(yè)應用深度融合,引起信息技術、金融、保險等多個領域的廣泛關注.以比特幣(Bitcoin,簡稱BTC)[1]白皮書發(fā)布作為區(qū)塊鏈技術發(fā)展的起始點,在近10年期間,世界各國出現(xiàn)了眾多區(qū)塊鏈項目,它們有些是基于比特幣代碼集成了一些局部優(yōu)化,有些是為適應特定應用場景而做出了功能改進,亦或為提升區(qū)塊鏈性能與開發(fā)友好性等提出了重大創(chuàng)新.比特幣設計中融合的非對稱加密、工作量證明(proof-of-work)、鏈式結構(chain)、時間戳(timestamps)、Merkle樹(MerkleTree)等相關算法、協(xié)議、機制構成了區(qū)塊鏈技術架構的基礎.但由于比特幣的初衷是實現(xiàn)一種基于點對點技術的電子現(xiàn)金系統(tǒng),并沒有過多地考慮區(qū)塊鏈在更廣泛范圍應用時所需的圖靈完備、可擴展性、安全性等要求,其區(qū)塊容量、區(qū)塊分叉、二次開發(fā)等也面臨一定的問題.人們意識到單個區(qū)塊鏈無法解決所有技術問題,也并不能覆蓋所有應用場景,各類區(qū)塊鏈項目應運而生.通過在共識算法、區(qū)塊結構、擴展協(xié)議等方面的不斷創(chuàng)新,區(qū)塊鏈領域目前已形成多類項目共存的景象.以太坊(Ethereum,簡稱ETH)[2]致力于將區(qū)塊鏈拓展應用于數(shù)字貨幣以外的領域,并為開發(fā)者提供一個能夠快速創(chuàng)建智能合約以及開發(fā)去中心化應用的成熟開發(fā)平臺;瑞波(Ripple)[3]采用了一種新的共識算法,通過網(wǎng)絡中有限數(shù)量的可信任節(jié)點實現(xiàn)共識,以減少交易確認時間;比特現(xiàn)金(bitcoincash)[4]將區(qū)塊大小的限制提升至8MB甚至更大容量的區(qū)塊,在一定程度上實現(xiàn)了鏈上擴容;EOS[5]提出一種支持分布式應用開發(fā)的區(qū)塊鏈底層平臺,并計劃采用并行鏈和委任權益證明(delegatedproofofstake,簡稱DPOS)實現(xiàn)高系統(tǒng)性能;IOTA[6]和Byteball[7]等采用非線性鏈式結構的有向無環(huán)圖(directedacyclicgraph,簡稱DAG)[8]實現(xiàn)分布式賬本,提高系統(tǒng)的交易效率.據(jù)德勤于2017年11月出具的報告[9]顯示,Github上區(qū)塊鏈代碼項目總數(shù)約9萬個,并呈現(xiàn)逐年增加的趨勢,足見區(qū)塊鏈領域的創(chuàng)新發(fā)展態(tài)勢.區(qū)塊鏈項目的蓬勃發(fā)展,不可避免地引出了一個問題:鏈與鏈之間如何實現(xiàn)互聯(lián)互通?鏈聯(lián)網(wǎng)(Internetofblockchains)能否成為繼互聯(lián)網(wǎng)、物聯(lián)網(wǎng)的下一個基礎網(wǎng)絡架構?隨著區(qū)塊鏈項目數(shù)量越來越多,價值孤島現(xiàn)象也更加嚴重.區(qū)塊鏈資產是否能夠實現(xiàn)無需第三方參與的原子交換(atomicswap)?基于跨鏈的區(qū)塊鏈下(off-chain)擴容技術方案存在哪些爭議?區(qū)塊鏈智能合約的應用過程中,區(qū)塊鏈又如何與傳統(tǒng)互聯(lián)網(wǎng)系統(tǒng)實現(xiàn)可信任的數(shù)據(jù)交換?等等.上述問題引發(fā)了業(yè)界對跨鏈技術的探索實驗.本課題組在國內較早啟動了區(qū)塊鏈技術相關研究[10,11],并長期關注跨鏈技術研究,通過本文的系統(tǒng)性梳理,期望對跨鏈技術的創(chuàng)新發(fā)展提供參考.本文第1節(jié)對區(qū)塊鏈跨鏈存在的問題、需求以及技術難點進行分析概述.第2節(jié)介紹區(qū)塊鏈發(fā)展不同階段的跨鏈技術演進.第3節(jié)重點分析跨鏈技術設計與應用將面對的安全性問題.最后,在第4節(jié)總結跨鏈技術的發(fā)展和研究趨勢.1區(qū)塊鏈的跨鏈需求及技術難點區(qū)塊鏈技術自比特幣區(qū)塊鏈于2008年[1]誕生以來,已逐步發(fā)展出上千種區(qū)塊鏈項目.根據(jù)區(qū)塊鏈的應用場景、節(jié)點準入條件及去中心化程度,區(qū)塊鏈被分為公有鏈(publicblockchain)、私有鏈(privateblockchain)以及聯(lián)盟鏈(consortiumblockchain)這3大類[12].其中,公有鏈具有高度去中心化特點,節(jié)點可自由加入或退出,并擁有讀取數(shù)據(jù)、競爭記賬權、實施交易等平等權限,以比特幣[1]、以太坊[2]等為代表;私有鏈由第三方控制系統(tǒng)的各項權限,節(jié)點的加入、數(shù)據(jù)的讀寫均有一定條件限制,如摩根大通的Quorum[13]等;聯(lián)盟鏈由多個機構或組織共同管理,各節(jié)點通常對應不同的實體機構或組織,通過準入機制加入、退出網(wǎng)絡,如Corda[14],Hyperledger[15]等.區(qū)塊鏈的跨鏈技術是區(qū)塊鏈實現(xiàn)互聯(lián)互通(interoperability)、提升可擴展性(scalability)的重要技術手段.在網(wǎng)絡形態(tài)上,區(qū)塊鏈不同于互聯(lián)網(wǎng),后者支持一張網(wǎng)接入全球的節(jié)點,前者則形成了多個相互隔絕的平行網(wǎng)絡.除了公有鏈的廣泛共存,私有鏈和聯(lián)盟鏈則支持讓不同組織擁有各自的區(qū)塊鏈,甚至讓同一個組織內部同時運行多個區(qū)塊鏈.全球區(qū)塊鏈的數(shù)量在不斷增多,而不同區(qū)塊鏈網(wǎng)絡的相互隔絕,導致鏈之間無法有效進行數(shù)字資產轉移、跨鏈通信等操作.近年來,隨著區(qū)塊鏈應用場景的不斷豐富和復雜化,越來越多的區(qū)塊鏈項目提出跨鏈的需求與解決方案,跨鏈技術逐步得到發(fā)展.1651根據(jù)目前主流跨鏈技術的設計研發(fā),跨鏈的目的以及要解決的問題主要包括以下幾點.(1)不同區(qū)塊鏈之間的資產轉移.盡管第三方交易平臺能夠提供不同區(qū)塊鏈項目資產的轉移與交換,但第三方交易平臺的引入帶來了新的中心化節(jié)點,不可避免地存在資產安全性、可信任性等問題.跨鏈確保了是用技術而非機構或人來提供安全、可靠、高效的鏈上資產轉移途徑;(2)實現(xiàn)區(qū)塊鏈資產的留置[16].類似于金融和法律領域的財產留置,區(qū)塊鏈資產能夠實現(xiàn)鏈上鎖定凍結,并設定某個區(qū)塊鏈上的資產鎖定條件、解鎖條件,還可以與其他鏈的特定事件/行為進行關聯(lián);(3)讀取和驗證其他鏈的狀態(tài)或事件.自以太坊區(qū)塊鏈[2]問世以來,基于區(qū)塊鏈的智能合約[17]得到快速發(fā)展.在某個區(qū)塊鏈上部署的智能合約,觸發(fā)其執(zhí)行的條件可能需要依賴于其他鏈的信息和數(shù)據(jù),跨鏈數(shù)據(jù)訪問在該應用場景中具有關鍵作用;(4)提升區(qū)塊鏈交易處理能力.區(qū)塊鏈的可擴展性三難題基本法則[18]表明,區(qū)塊鏈只能兼顧去中心性、可擴展性和安全性中的兩項.區(qū)塊鏈的吞吐量和可擴展性一直被認為是重要的瓶頸,盡管諸如EOS[5]等區(qū)塊鏈項目聲稱其TPS(每秒處理事務數(shù))可達百萬量級,但均以設立少量驗證節(jié)點為前提,降低了系統(tǒng)的去中心化特性.跨鏈通信是提供更高擴展性的技術路線之一.區(qū)塊鏈應用場景的不斷拓展以及區(qū)塊鏈互聯(lián)互通的潛在需求,促進了跨鏈技術的持續(xù)創(chuàng)新和進步.根據(jù)跨鏈技術的演進和實現(xiàn)方式,以太坊的創(chuàng)始人Buterin曾經總結了3類跨鏈技術[16]——公證人機制(notaryschemes)、側鏈/中繼(sidechains/relays)、哈希鎖定(Hash-locking).(1)公證人機制.通過選舉一個或多個組織作為公證人,對鏈A的事件進行自動或請求式監(jiān)聽,并在指定事件發(fā)生后,在鏈B執(zhí)行相應動作,實現(xiàn)對事件的響應.公證人群體通過特定的共識算法,對事件是否發(fā)生達成共識.公證人機制又分為中心化公證人機制(centralizednotaryschemes)和多重簽名公證人機制(multisignotaryschemes),區(qū)別在于后者利用密碼學技術,在每次交易驗證時從公證人群體中隨機選出一部分公證人,共同完成簽名的簽發(fā),從而降低對公證人可靠性的依賴程度;(2)側鏈/中繼.側鏈/中繼以輕客戶端驗證技術為基礎,即:在鏈B上執(zhí)行類似區(qū)塊鏈輕客戶端功能的智能合約,通過驗證鏈A的加密哈希樹(cryptographichashtree)以及區(qū)塊頭(blockheader)來驗證鏈A的某項特定交易、事件或狀態(tài)信息是否發(fā)生;(3)哈希鎖定.通過在兩條鏈上運行特定的智能合約,實現(xiàn)跨鏈交易與信息交互.用戶A生成隨機數(shù)s,并計算出該隨機數(shù)的哈希值h=hash(s)發(fā)送給用戶B;A和B通過智能合約先后鎖定各自的資產;如果B在XsB將轉移給A,否則退回給B;如果A在2X時間內收到隨機數(shù)s,A的資產將自動轉移給B,否則退回給A.跨鏈可以分為區(qū)塊鏈內部各個子鏈/主鏈之間以及不同區(qū)塊鏈系統(tǒng)之間的互操作.從更廣義的概念層面,跨鏈進一步涉及區(qū)塊鏈與傳統(tǒng)系統(tǒng)和協(xié)議的交互.目前,跨鏈技術尚未實現(xiàn)廣泛應用,表明了跨鏈面臨的問題復雜性.鑒于大多數(shù)區(qū)塊鏈系統(tǒng)在誕生之初就缺乏互操作特性,跨鏈技術在設計與實現(xiàn)時需要重點解決如何適配各類區(qū)塊鏈,并確??珂湶僮鞯母咝屎透甙踩?2跨鏈關鍵技術區(qū)塊鏈技術自誕生以來一直具有較強的金融色彩,在早期的絕大部分時間里,比特幣長期占有全球區(qū)塊鏈項目總市值80%以上的市場份額,處于一枝獨秀的狀態(tài).隨著區(qū)塊鏈技術逐漸進入更廣泛的學術界和產業(yè)界視野,越來越多的人才參與到區(qū)塊鏈行業(yè)的創(chuàng)新研發(fā).2017年5月17日,比特幣市值占比首次低于50%[19];2017年8月14日,以太坊交易量首次超過比特幣[20].公有鏈、私有鏈、聯(lián)盟鏈的數(shù)量不斷增多,區(qū)塊鏈的應用場景愈加豐富,行業(yè)對跨鏈的需求也更加明顯.本文以2017年5月為分界線,分為比特幣區(qū)塊鏈時代與后比特幣區(qū)塊鏈時代兩個時期,對跨鏈技術的發(fā)展情況分別進行介紹.2.1比特幣區(qū)塊鏈時代的跨鏈技術2013年5月,Nolan在BitcoinTalk論壇提出了原子轉移(atomictransfers)思路[21],構成了實現(xiàn)原子式跨鏈數(shù)JournalofSoftware軟件學報Vol.30,No.6,June2019字資產交易的最初基礎技術方案.原子轉移也稱原子交換(atomicswap),其概念類似于傳統(tǒng)證券結算系統(tǒng)的貨銀對付(deliveryversuspayment,簡稱DVP)或外匯交易系統(tǒng)的交易同步交收(paymentversuspayment,簡稱PvP),在區(qū)塊鏈領域,即指雙方交易同時發(fā)生或同時不發(fā)生,二者不可分割.該方案通過讓交易雙方分別在比特幣區(qū)塊鏈和其他數(shù)字貨幣區(qū)塊鏈上設定合約腳本,并利用是否獲知某個哈希值的原像(preimage)作為合約觸發(fā)條件.該原像由交易一方在交易之前隨機產生,并結合方案設計的一系列合約鎖定、解鎖流程,實現(xiàn)跨鏈交易的原子性.Nolan的技術方案經過改進升級后被稱為哈希鎖定,并成為跨鏈的一種主要技術手段.在用于BTC鏈下交易擴容方案的閃電網(wǎng)絡(lightningnetwork)中也運用了類似的哈希時間鎖定合約(Hashedtimelockcontract,簡稱HTLC).側鏈則是首個產生較大影響力的跨鏈技術.比特幣核心開發(fā)者加入的Blockstream公司在2014年10月發(fā)布的白皮書中提出了楔入式側鏈(peggedsidechains)[22]的概念,其目的是實現(xiàn)不同區(qū)塊鏈資產的跨鏈轉移,以及可以在不影響主鏈的情況下,實施更多的技術創(chuàng)新與金融創(chuàng)新.雙向楔入(two-waypeg)作為側鏈的核心技術基礎,定義為不同鏈資產的等值轉換機制,并分為對稱式雙向楔入與非對稱式雙向楔入.2016年12月,Blockstream公司進一步提出強聯(lián)邦側鏈(sidechainswithstrongfederations)的概念[23],在資產交換中引入由多方控制的多重簽名地址,以減少延遲并提升互操作性.業(yè)界在探索區(qū)塊鏈間的跨鏈同時,針對BTC本身的擴容問題發(fā)展出鏈下交易技術.Poon于2015年2月發(fā)布了閃電網(wǎng)絡(lightningnetwork)白皮書[24],該技術是通過設計一種新的支付渠道網(wǎng)絡實現(xiàn)可擴展的連鎖即時支付.閃電網(wǎng)絡利用鏈下支付提高交易處理效率,可以被認為是區(qū)塊鏈內部的跨鏈操作.隨著閃電網(wǎng)絡的實現(xiàn)及升級,2017年11月,閃電網(wǎng)絡在鏈下首次實現(xiàn)了測試網(wǎng)中BTC和LTC的跨鏈原子交易.Ripple公司在2015年11月發(fā)布的Interledger白皮書[25]中提出了一種用于不同支付網(wǎng)絡或賬本系統(tǒng)交互的協(xié)議,并計劃覆蓋至區(qū)塊鏈賬本及各類傳統(tǒng)支付系統(tǒng).Interledger通過連接者(connector)傳遞跨系統(tǒng)的交易,在最終接收者收到資金前,傳遞線路上各個支持Interledger協(xié)議的系統(tǒng)會對各環(huán)節(jié)發(fā)送者的資金進行托管鎖定.Interledger協(xié)議的交易托管與執(zhí)行分為兩種方式,其中,原子模式是由參與者選出一組公證人來協(xié)調交易;通用模式無需公證人,通過參與者給予激勵以及反向執(zhí)行指令來確保安全支付.Interledger最初作為公證人機制的跨鏈代表,在協(xié)議發(fā)展過程中,也開始逐步融入哈希鎖定的理念.2016年5月,美國區(qū)塊鏈軟件技術公司ConsenSys設計了BTCRelay[26],實現(xiàn)了以太坊對比特幣區(qū)塊鏈數(shù)據(jù)的跨鏈訪問.BTCRelay實質是在以太坊網(wǎng)絡上實現(xiàn)的一個智能合約,通過不斷接收網(wǎng)絡中各個Relayer節(jié)點推送的BTC區(qū)塊頭,實現(xiàn)BTC區(qū)塊頭在智能合約里的存儲和實時更新.由于BTC區(qū)塊鏈的交易信息主要以Merkletree的形式存儲在區(qū)塊頭中,在不依賴第三方中介的情況下,BTCRelay以一種去中心化的方式實現(xiàn)了以太坊智能合約對BTC區(qū)塊鏈的數(shù)據(jù)訪問.盡管BTCRelay的原理和實現(xiàn)并不是非常復雜,但該系統(tǒng)使得用戶能夠創(chuàng)建各種觸發(fā)條件依賴于BTC區(qū)塊鏈事件或信息的以太坊智能合約,提高了智能合約的可用性.不過,BTCRelay僅支持ETH和BTC之間的跨鏈,而且并不能讓BTC同時也能讀取ETH區(qū)塊鏈的信息,在這種跨鏈方式下,通信是單向的,具有一定局限性.2016年6月,Kwon提出了一種支持各種區(qū)塊鏈接入與互操作的網(wǎng)絡架構Cosmos[27].基于建立區(qū)塊鏈的互聯(lián)網(wǎng)構想,Cosmos網(wǎng)絡設計為由樞紐(hub)和分區(qū)(zones)組成,其中,分區(qū)由Tendermint[28]經典拜占庭容錯共識算法引擎支持運行,可接入不同區(qū)塊鏈,并支持分區(qū)數(shù)量的擴展.分區(qū)載入?yún)^(qū)塊鏈后,各分區(qū)之間通信必須經由樞紐,并且遵照鏈間通信技術規(guī)范(interblockchaincommunicationprotocol,簡稱IBC)[27].Cosmos架構的關鍵在于Tendermint共識引擎和IBC協(xié)議:Tendermint是2014年Castro和Liskov基于實用拜占庭容錯(PBFT)[29]算法提出的權益證明PoS(proof-of-stake)[30]共識算法改編版,通過驗證者(validator)對交易區(qū)塊進行多輪投票達到共識;IBC協(xié)議則定義了區(qū)塊鏈注冊、數(shù)據(jù)包格式、交易類型、數(shù)據(jù)包交付確認流程等內容.2016年11月,Wood在Polkadot白皮書[31]中介紹了一種異構的多鏈架構,支持不同共識系統(tǒng)去中心化、去信任(trustless)地進行交互操作、訪問.Polkadot通過解耦共識機制和狀態(tài)轉移機制兩種組件來解決伸縮性問題,并將容納的不同區(qū)塊鏈定義為平行鏈.Polkadot的參與方包括收集者(collator)、漁夫(fisherman)、提名者1653(nominator)和驗證者(validator)這4種角色,分別承擔運行平行鏈全節(jié)點、舉報及證明非法行為、擁有權益并委托資產、區(qū)塊封裝等工作.在跨鏈通信方面,Polkadot采用中繼鏈的方式轉發(fā)各平行鏈的交易,同時,平行鏈的區(qū)塊頭也會被包含進中繼鏈的區(qū)塊中,以避免雙花的發(fā)生.通過設計參與方角色、激勵模型,Polkadot成為可自發(fā)擴展、兼容已有區(qū)塊鏈的異構多鏈網(wǎng)絡.以太坊的鏈上擴容分片技術Sharding[18]也備受關注.2016年11月發(fā)布的Sharding技術文檔中,計劃在以太坊轉為權益證明(proofofstake,簡稱POS)后,以太坊區(qū)塊鏈升級為由主鏈(mainchain)和分片鏈(shardchain)構成的網(wǎng)絡結構.方案中,以太坊將首先形成約100個分片鏈,賬戶和交易信息均存儲在分片鏈上,每個分片鏈再與主鏈進行通信連接.分片鏈主要處理交易以及存儲賬戶與合約的狀態(tài),并支持跨分片鏈的消息交互;主鏈主要是維護驗證節(jié)點的狀態(tài)以及跟蹤分片鏈區(qū)塊狀態(tài).通過分片技術實現(xiàn)交易的并行確認,將直接提高以太坊的交易吞吐量.除了以上介紹的幾種跨鏈技術以外,RootStock[32]在比特幣區(qū)塊鏈上構建智能合約系統(tǒng),作為比特幣區(qū)塊鏈的側鏈實現(xiàn)功能增強;Elements[33]通過雙向錨定,提供與BTC的互轉以及智能合約、私密交易證據(jù)分離等功能;Lisk[34]構建的分布式應用開發(fā)平臺為每個應用提供一個單獨的Lisk側鏈;Factom[35]通過整合比特幣和以太坊區(qū)塊鏈,提供不可變更的數(shù)據(jù)存證功能;Corda[36]通過交易雙方選擇出的共同公證人作為交叉驗證人,對交易數(shù)據(jù)進行驗證.2.2后比特幣區(qū)塊鏈時代的跨鏈技術以太坊創(chuàng)始人Buterin與閃電網(wǎng)絡發(fā)明人Poon于2017年8月11日提出了Plasma[37]區(qū)塊鏈擴展設計模式.Plasma設計了一種區(qū)塊鏈樹形框架,將主鏈作為樹根、不同區(qū)塊鏈作為主鏈的獨立樹形分支,并通過構建智能合約激勵執(zhí)行與強制執(zhí)行框架,實現(xiàn)區(qū)塊鏈的擴容計算.Plasma包括激勵層、樹形鏈組織結構、MapReduce計算框架、依賴于根鏈的共識機制和bitmap-UTXO結構這5個組件,協(xié)作實現(xiàn)合約持續(xù)計算、創(chuàng)建狀態(tài)轉移的欺詐證明、網(wǎng)絡形態(tài)組織等功能.通過借鑒大數(shù)據(jù)并行計算模型MapReduce以及構建持續(xù)運作機制,Plasma預期可使區(qū)塊鏈擴容至支持每秒10億量級的狀態(tài)更新.2018年1月,Vitalik在Plasma基礎上提出了最小可行的Plasma實現(xiàn)(minimalviableplasma,簡稱MVP).MVP[38]在處罰欺詐、子鏈依賴以及處理無效交易等方面進行了限定.2018年3月,Vitalik又提出修改版PlasmaCash[39],在Plasma基礎上進行了以下變更:區(qū)塊鏈資產基本單位無法分割及合并;交易不再按照txindex順序存儲于Merkle樹中,而是存儲在稀疏簡單的Merkle樹或Patricia樹中.Plasma的跨鏈框架得到業(yè)界廣泛關注,如OmiseGO[40]計劃使用Plasma支持可擴展的去中心化交易與支付平臺、Lucidity[41]利用Plasma構建數(shù)字廣告區(qū)塊鏈協(xié)議等.盡管以太坊因其開發(fā)友好性以及智能合約的高應用性,開發(fā)者與用戶數(shù)量、市場份額均不斷提升,但仍面臨區(qū)塊鏈擴展性問題,并曾因承載一款引發(fā)流行的CryptoKitties區(qū)塊鏈游戲[42]出現(xiàn)交易嚴重阻塞[43].在此背景下,2017年11月,Loom項目[44]基于以太坊構建了一套支持開發(fā)、運行大型去中心化應用DApp的基礎設施平臺,并計劃采用Plasma與以太坊實現(xiàn)資產轉移,在保障資產安全的同時提升系統(tǒng)吞吐量.Loom為開發(fā)者提供了可快速構建區(qū)塊鏈的SDK,并讓開發(fā)的分布式應用DApp都單獨運行在以太坊的不同側鏈上,稱為DAppChain.該設計的特點在于每條DAppChain均可以由開發(fā)者根據(jù)需求采用不同的共識規(guī)則,具有一定的靈活性.2017年8月,Aion項目[45]定義了一種多層次的區(qū)塊鏈網(wǎng)絡結構,為不同區(qū)塊鏈系統(tǒng)的接入提供通信協(xié)議和標準.在Aion網(wǎng)絡中,定義了“橋梁”實現(xiàn)區(qū)塊鏈之間的連接和通信,橋梁也有自己獨特的驗證者網(wǎng)絡.Aion通過采用基于輕量級BFT[46]的算法達成共識,并具有注冊、競爭、交易獎勵分配等功能.Aion規(guī)定了包括發(fā)起網(wǎng)絡、目的網(wǎng)絡、路由信息、路由費用、Merkle證明等在內的跨鏈交易格式,還設計了Aion虛擬機(AVM)提供對區(qū)塊連邏輯的抽象以及提供運行應用程序的環(huán)境.2017年8月29日,Eykholt等人在Rchain白皮書中[47]設計提出了一種并行的區(qū)塊鏈多鏈網(wǎng)絡,期望實現(xiàn)具有高擴展性的企業(yè)級區(qū)塊鏈平臺.Rchain采用RhoVM虛擬機作為智能合約并發(fā)執(zhí)行引擎,并通過定義命名空間(namespace),使RhoVM每個實例可以在命名空間中的獨立區(qū)塊鏈上并發(fā)執(zhí)行智能合約.Rchain的每個命名空JournalofSoftware軟件學報Vol.30,No.6,June2019間相互獨立并可相互通信,實現(xiàn)多鏈網(wǎng)絡結構.2017年11月,BlockCollider項目[48]構建了基于多個不同區(qū)塊鏈的分布式賬本.在區(qū)塊生成上,BlockCollider的區(qū)塊由所接入的各個區(qū)塊鏈的區(qū)塊頭組合而成,并基于中本聰共識設計了一種ProofofDistance的共識算法來提高計算效率.通過對不同區(qū)塊鏈的集成,BlockCollider可提供跨鏈交易、跨鏈智能合約、交易加速等特性.BlockCollider發(fā)布時計劃首先支持BTC,ETH等6種區(qū)塊鏈的接入,并預留了擴展性,其他區(qū)塊鏈的項目將通過投票的形式確定是否接入.2017年11月24日,Nano[49]技術白皮書介紹了一種基于區(qū)塊晶格(block-lattice)結構的加密貨幣,其特色在于每個賬戶都有自己的區(qū)塊鏈(賬戶鏈)來記錄本賬戶的交易與余額歷史,從而構成多鏈網(wǎng)絡結構.Nano的技術架構可認為是區(qū)塊鏈的內部跨鏈,賬戶鏈之間通過收發(fā)交易以及異步確認形成網(wǎng)狀區(qū)塊晶格形態(tài).與傳統(tǒng)區(qū)塊鏈采用線性增長的區(qū)塊鏈式結構不同,Nano實現(xiàn)了交易的異步更新,具有較小的數(shù)據(jù)庫賬本容量以及較高的交易吞吐量.Zcash(ZEC)團隊開發(fā)出XCAT(交叉鏈原子交易)工具[50],實現(xiàn)了ZEC和BTC之間的跨鏈原子交易;Bancor[51]基于智能合約構建了一套跨鏈的去中心化流動性(liquidity)網(wǎng)絡,實現(xiàn)沒有對手方的區(qū)塊鏈資產的自動估值和兌換;OneLedger[52]提供一套企業(yè)系統(tǒng)與區(qū)塊鏈系統(tǒng)聯(lián)通的解決方案,通過側鏈接入各類私有鏈、聯(lián)盟鏈和公有鏈,并通過中間協(xié)議層與企業(yè)級系統(tǒng)通信.2.3跨鏈技術的總結總體而言,跨鏈技術還處于發(fā)展過程中,部分跨鏈技術目前僅公布了技術思路構想,并正在研發(fā)或在區(qū)塊鏈測試網(wǎng)中開展局部實驗階段,還沒有完全實現(xiàn)方案中所列出的各項功能指標和技術特性,因此對跨鏈技術的安全性、效率、性能、資源消耗等方面開展橫向評估較困難.從公開的白皮書或技術報告來看,上述跨鏈技術有些為基礎協(xié)議型,有些為開發(fā)設計模式,有些是某區(qū)塊鏈的側鏈,或僅用于有限個區(qū)塊鏈之間互聯(lián)等,各跨鏈技術不適于通過同一維度進行分類.表1匯總了各跨鏈技術的提出時間,并從該跨鏈技術是“基于BTC區(qū)塊鏈/ETH區(qū)塊鏈/自有鏈”、跨鏈機制“公證人機制/側鏈(中繼)/哈希鎖定/通信協(xié)議簇”、跨鏈范圍“系統(tǒng)內部跨鏈/系統(tǒng)間跨鏈”這3個維度對跨鏈技術進行總結.基于BTC區(qū)塊鏈是指該跨鏈技術在BTC基礎上提出或開發(fā)(如peggedsidechains)、或屬于BTC區(qū)塊鏈的側鏈(如rootstock,elements)、或是BTC區(qū)塊鏈特性的一部分(如lightningnetwork);基于ETH區(qū)塊鏈與之類似;自有鏈指該跨鏈技術基于或屬于非BTC/ETH的其他區(qū)塊鏈.基于BTC區(qū)塊鏈和ETH區(qū)塊鏈的跨鏈項目數(shù)量相當,表明公有鏈中這二者具有更廣泛的應用基礎以及更迫切的跨鏈需求.以自有鏈形式構建的跨鏈項目,主要以構建具有跨鏈特性的區(qū)塊鏈作為項目特色,并致力于尋求實現(xiàn)通用的、標準化的區(qū)塊鏈接入模型.公證人機制/側鏈(中繼)/哈希鎖定根據(jù)VitalikButerin的分類定義[16];通信協(xié)議簇指該跨鏈技術主要通過規(guī)定一系列通信數(shù)據(jù)格式與協(xié)議規(guī)范等實現(xiàn)區(qū)塊鏈接入.基于公證人機制的項目中,Interledger早期版本以公證人機制為主實現(xiàn)不同類型賬本的連接;Corda的特色在于提供更安全的公證人選擇(交易參與方共同指定)和操作模式(運行共識機制).基于側鏈(中繼)的項目占比較高,其中,PeggedSidechains是側鏈最初的技術原型,提出了雙向楔入的概念;RootStock,Elements基于BTC側鏈提供增強式智能合約功能;BTCRelay與Loom均為基于ETH區(qū)塊鏈的側鏈,前者提供跨BTC與ETH的資產交換及智能合約應用,后者側重構建基于ETH的分布式應用DApp開發(fā)部署環(huán)境;Lisk則是通過搭建自有鏈提供DApp開發(fā)平臺;Plasma及其變種MinimalViablePlasma,PlasmaCash設計了集成主鏈與側鏈的樹形分層網(wǎng)絡框架;Polkadot和Cosmos則分別設計了Relaychain-Bridges-Parachains結構和Hub-Zone結構的跨鏈網(wǎng)絡基礎平臺.基于哈希鎖定機制的項目中,Nolan’satomictransfers為哈希鎖定的技術原型;ZcashXCAT已成功演示了ZEC和BTC的跨鏈交易;LightningNetwork致力于成為BTC主流鏈下擴容方案,上線版本已運行上千個主網(wǎng)節(jié)點和上萬個通道,驗證了技術的可行性.通信協(xié)議簇類跨鏈技術由于以定義系統(tǒng)結構、通信協(xié)議、數(shù)據(jù)格式、工作流程等各類標準規(guī)范為主,未來能否成為主流的跨鏈方案,主要取決于區(qū)塊鏈產業(yè)界各方對該協(xié)議規(guī)范的接受度以及在協(xié)議實現(xiàn)層面能夠獲得多大范圍的支持.1655Table1Summaryofcross-chaintechnology跨鏈技術匯總表稱基于BTC區(qū)塊鏈/基于ETH區(qū)塊鏈/自有鏈公證人機制/側鏈(中繼)/哈希鎖定/通信協(xié)議簇跨鏈作用Nolan’s“atomictransfers”2013BTC哈希鎖定系統(tǒng)間PeggedSidechains2014BTC側鏈系統(tǒng)間LightningNetwork2015BTC哈希鎖定系統(tǒng)間Interledger2015公證人機制、哈希鎖定系統(tǒng)間BTCRelay2016ETH側鏈系統(tǒng)間Cosmos2016中繼、通信協(xié)議簇系統(tǒng)間Polkadot2016系統(tǒng)間Sharding2016ETH?系統(tǒng)內部RootStock2015BTC側鏈系統(tǒng)間Elements2016BTC側鏈系統(tǒng)間Lisk2017側鏈系統(tǒng)間Factom2014BTC?系統(tǒng)間Corda2016公證人機制系統(tǒng)間Plasma2017ETH側鏈系統(tǒng)間MinimalViablePlasma2018ETH側鏈系統(tǒng)間PlasmaCash2018ETH側鏈系統(tǒng)間Loom2017ETH側鏈系統(tǒng)間Aion2017通信協(xié)議簇系統(tǒng)間Rchain2017?系統(tǒng)內部BlockCollider2017通信協(xié)議簇系統(tǒng)間Nano2017?系統(tǒng)內部ZcashXCAT2017哈希鎖定系統(tǒng)間Bancor2018ETH?系統(tǒng)間OneLedger2018通信協(xié)議簇系統(tǒng)間系統(tǒng)內部跨鏈指跨鏈技術支持在區(qū)塊鏈系統(tǒng)內部的子鏈(如nano區(qū)塊鏈內部的賬戶鏈、ETH區(qū)塊鏈內部的sharding鏈、rchain中在不同命名空間運行的獨立區(qū)塊鏈)跨鏈;系統(tǒng)間跨鏈指支持不同區(qū)塊鏈項目之間的跨moscosmos用范圍目前以區(qū)塊鏈內部以及不同區(qū)塊鏈之間為主,提供區(qū)塊鏈與傳統(tǒng)系統(tǒng)或協(xié)議之間交互的跨鏈項目較少(interledger支持分布式和傳統(tǒng)中心化賬本互聯(lián)).跨鏈技術在不同時期也呈現(xiàn)出各自的特點.比特幣區(qū)塊鏈時代期間,主要提出了跨鏈的幾種技術原型,并重點針對BTC區(qū)塊鏈容量限制及交易手續(xù)費高等問題,發(fā)展出閃電網(wǎng)絡、PeggedSidechains等項目或技術;后比特幣區(qū)塊鏈時代時期,側重于面向更多種應用場景,例如實現(xiàn)鏈上資產互換(去中心化交易所)、增強區(qū)塊鏈系統(tǒng)的互操作性和可升級性、提供小型區(qū)塊鏈系統(tǒng)(包括私有鏈、聯(lián)盟鏈)的安全保障和價值傳遞等,探索具有更強擴展性的通用跨鏈技術.3跨鏈安全性分析跨鏈技術的重要性已被業(yè)界認可,盡管近幾年跨鏈技術得到較迅速的發(fā)展,但目前,現(xiàn)有的跨鏈技術還沒有得到大規(guī)模應用.跨鏈的重要應用之一原子交換尚局限在個別區(qū)塊鏈資產之間,或處于在測試鏈上試用的階段,如BTC與LTC[53]、LTC與DCR[54]、ZEC與BTC[55]等的原子交換實驗;區(qū)塊鏈資產的跨類別交易仍以中心化形態(tài)為主,去中心化交易平臺Bitshares,EtherDelta等承載的交易量相對占比極低,小于總區(qū)塊鏈資產交易量的千分之一[56];支持跨鏈數(shù)據(jù)通信的各類跨鏈協(xié)議大部分處于研發(fā)狀態(tài),暫未獲得廣泛的認可和共識.跨鏈技術面臨的問題在于:一方面,區(qū)塊鏈技術本身日新月異的發(fā)展速度,使得區(qū)塊鏈種類、技術復雜性、應用場景多樣性都在不斷提升,造成對跨鏈技術的更新迭代提出更高的要求;另一方面,由于區(qū)塊鏈的某些固有特性,跨鏈技術目前還存在一些安全性層面的難點有待攻克.從來源與影響因素方面分析,跨鏈技術的安全性可以包括以下兩個類別.JournalofSoftware軟件學報Vol.30,No.6,June2019(1)跨鏈的技術原理與實現(xiàn)機制本身存在的安全性缺陷.伴隨著區(qū)塊鏈技術的快速發(fā)展,跨鏈技術仍處于演進過程中,在設計與實現(xiàn)上還存在信任依賴、惡意交易等安全性問題;(2)區(qū)塊鏈系統(tǒng)的結構及特點對跨鏈安全性造成的影響.由于區(qū)塊鏈的分布式賬本架構與傳統(tǒng)軟件系統(tǒng)具有顯著差異,相比于一般信息系統(tǒng)之間的互聯(lián)互通,現(xiàn)有各類跨鏈技術還將面臨一些共性的安全性挑戰(zhàn).以下分析總結了12種主要的跨鏈安全性問題(其中,1~3項屬于第1類別,4~12項屬于第2類別),以期為相關領域學者研究現(xiàn)有跨鏈技術以及設計新的跨鏈技術提供一些參考.(1)公證人信任問題.公證人機制由于引入了第三方機構或組織,盡管有成熟的選舉策略,但價值轉移或信息交換主要依賴于公證人的誠實性,因此中心化程度較高.公證人多重簽名通過隨機選擇在一定程度上增強了安全性,但并未完全消除相關依賴,仍然存在共謀風險.基于公證人機制的一些跨鏈項目也在尋求與其他技術的結合,如公證人機制的代表——Interledger項目,在其最新協(xié)議中融合了哈希鎖定機制,以提供更完備的安全保障;(2)側鏈/中繼的安全性問題.由于側鏈/中繼機制主要通過讀取區(qū)塊頭來實現(xiàn)對事件或支付的驗證,無法像主鏈全節(jié)點獲知網(wǎng)絡上所有交易的全貌,因此難以實現(xiàn)交易的全面驗證,如追溯所有歷史交易的UTXO(unspenttransactionoutput)數(shù)據(jù)、判斷是否存在雙重支付等.側鏈/中繼機制依賴于礦工的誠實性,在鏈失效(chainfail)或51%攻擊情況下,將導致跨鏈系統(tǒng)無法正常工作;(3)哈希鎖定的安全性問題.根據(jù)哈希鎖定的設計原理,其技術安全性主要與資金鎖定機制以及鎖定時間超時相關.例如,基于哈希鎖定的閃電網(wǎng)絡在系統(tǒng)設計時就預見到如下安全風險[24]:惡意參與者創(chuàng)建大量交易通道并讓所有通道同時超時,導致垃圾交易信息在網(wǎng)絡中廣播并造成阻塞,從而影響正常交易;交易通道開啟階段必須保證定量的資金處于鎖定狀態(tài),即用戶需要采用“熱錢包”保持較長時間連接到區(qū)塊鏈網(wǎng)絡以便能簽名交易,而非“冷錢包”或離線存儲等更安全的方式,因而將增加黑客盜取用戶私鑰的風險;交易一方如果發(fā)生數(shù)據(jù)丟失或者沒有在正確的時間內廣播交易,將可能存在被另一方盜取資金的風險;(4)孤塊(orphanblock)問題.在采用工作量證明(PoW)[1]為共識算法的區(qū)塊鏈網(wǎng)絡中,不同礦工可能在相近時間內挖出了兩個或多個區(qū)塊,它們均符合區(qū)塊鏈基礎協(xié)議且工作量足夠,因此都屬于合法區(qū)塊.但由于網(wǎng)絡傳輸?shù)葐栴},網(wǎng)絡中的各個節(jié)點可能會以不同的順序接受這些區(qū)塊,并在最早接收的區(qū)塊基礎上繼續(xù)計算下一個區(qū)塊.最終,這些區(qū)塊中只有一個存在于最長鏈中,其他區(qū)塊則被丟棄成為孤塊.因此,當跨鏈網(wǎng)絡讀取所接入?yún)^(qū)塊鏈的最新區(qū)塊信息后,會出現(xiàn)包含相關交易數(shù)據(jù)的區(qū)塊先被確認有效,隨后又成為孤塊的情況,從而導致跨鏈網(wǎng)絡實際傳遞了錯誤的區(qū)塊信息(該區(qū)塊內的交易和相關數(shù)據(jù)均已被原始區(qū)塊鏈丟棄);(5)長距離攻擊(longrangeattack).在采用權益證明(PoS)[30]共識算法的區(qū)塊鏈網(wǎng)絡中,惡意的節(jié)點可能會預先計算出大量區(qū)塊再一次性放出,導致對應的原始區(qū)塊鏈出現(xiàn)重組(blockreorganization).基于替換前的區(qū)塊完成的跨鏈交易將均被撤銷,跨鏈網(wǎng)絡中的交易因此會被雙花(double-spend),智能合約則可能出現(xiàn)滿足觸發(fā)條件并執(zhí)行結束,但隨后觸發(fā)條件被回滾的情況.應對此類攻擊較好的方法之一是設立確定性檢查點[57];(6)阻塞超時問題.某些跨鏈技術通過設置延遲時間以確??珂溄灰谆蚪换?shù)據(jù)得到區(qū)塊鏈的確認,這在一定程度上可以避免孤塊和長距離攻擊問題.鑒于區(qū)塊鏈目前有限的交易處理速度,垃圾交易(spamtransactions)或短期內過多的交易數(shù)量會導致區(qū)塊鏈網(wǎng)絡阻塞.在當前影響力最大的公有鏈系統(tǒng)比特幣和以太坊中,均出現(xiàn)過多次交易阻塞超過數(shù)小時甚至幾天未被確認的情況.跨鏈形成的鏈聯(lián)網(wǎng),可能會因為跨鏈網(wǎng)絡一側的區(qū)塊鏈阻塞而導致跨鏈交易超時且無法及時取消,甚至存在大面積跨鏈交互阻塞的風險;(7)競爭條件攻擊(raceconditionattack).在原子交換類的跨鏈系統(tǒng)中,尤其容易遭受此類攻擊[16].舉例來1657A個BTC給合約規(guī)定的地址,B此時也發(fā)送同樣數(shù)量的BTC到相同地址,并且試圖取回自己的10個ETH.這兩筆交易均有一定概率被先確認,從而導致B同時得到A的BTC并取回自己的ETH而A一無所獲的情況;(8)日蝕攻擊(eclipseattack).區(qū)塊鏈以及跨鏈網(wǎng)絡均是以P2P網(wǎng)絡為基礎,由于P2P網(wǎng)絡單個節(jié)點連接至其他節(jié)點數(shù)量受TCP連接限制,攻擊者通過控制足夠多的地址,可以屏蔽受害節(jié)點的所有輸入和輸出節(jié)點,從而使受害節(jié)點無法獲得真實的網(wǎng)絡信息.相較于節(jié)點全球分散、數(shù)量龐大的大型公有鏈區(qū)塊鏈網(wǎng)絡,組成跨鏈網(wǎng)絡的節(jié)點數(shù)相對更少,更易遭受類似的日蝕攻擊;(9)區(qū)塊腫脹(blockbloat)問題.通過存儲跨鏈交易相關區(qū)塊鏈的區(qū)塊頭實現(xiàn)數(shù)據(jù)訪問是跨鏈技術的一種主流做法,由于區(qū)塊鏈交易記錄的不斷累積,截至本文撰寫時(2018年10月),比特幣區(qū)塊鏈大小已達220GB,以太坊區(qū)塊鏈為108GB(fastsync模式),并在繼續(xù)快速增長中.盡管區(qū)塊頭的容量占比較低,但跨鏈接入的區(qū)塊鏈越多,需要存儲的容量也會相應增多,使得跨鏈也會面臨相同的區(qū)塊膨脹問題;(10)失效蔓延問題.跨鏈形成的鏈聯(lián)網(wǎng)結構中,如果其中一部分區(qū)塊鏈因共識失敗或51%攻擊[1]成功等,使這些區(qū)塊鏈被惡意勢力掌控或完全無法正常運轉,鏈聯(lián)網(wǎng)中錯綜復雜的跨鏈通信則會因為部分死鏈導致連鎖式的交互失敗,從而使跨鏈失效在鏈聯(lián)網(wǎng)中大面積蔓延.2018年以來,有BTG,Verge等多種區(qū)塊鏈遭受了51%攻擊[58],造成重大的區(qū)塊鏈資產雙花問題,如跨鏈系統(tǒng)連接了這類區(qū)塊鏈網(wǎng)絡且未采取相應的安全防護措施,可能導致與它們相聯(lián)的其他區(qū)塊鏈網(wǎng)絡受到影響,并造成經濟損失等后果;(11)跨鏈重放攻擊(cross-chainreplayattacks).區(qū)塊鏈網(wǎng)絡發(fā)生硬分叉(hardfork)后,由于原始鏈和分叉鏈的交易地址、交易格式、密鑰算法等均可能完全相同,其中一條鏈上的交易被惡意傳送到另外一條或多條鏈重新廣播,該交易也可能得到確認,即重放攻擊(replayattacks).硬分叉是區(qū)塊鏈中并不少見,一般出現(xiàn)在區(qū)塊鏈系統(tǒng)升級、共識失敗,或開發(fā)人員將代碼進行一定程度修改后另行啟動新的區(qū)塊鏈系統(tǒng).跨鏈重放攻擊會導致跨鏈交易在分叉的區(qū)塊鏈同時成立,造成用戶區(qū)塊鏈資產的損失;(12)升級兼容性問題.大多數(shù)區(qū)塊鏈項目在上線后均會通過持續(xù)升級更新特性,特別是大版本升級時會影響一些關鍵特性,如區(qū)塊大小、共識算法切換、新增功能等.當跨鏈接入眾多區(qū)塊鏈時,各鏈版本升級后對跨鏈協(xié)議、跨鏈機制的兼容,以及跨鏈如何應對與自適應,都是需要關注的問題.綜上,當多個區(qū)塊鏈系統(tǒng)通過跨鏈系統(tǒng)相互連接后,系統(tǒng)的整體復雜度將大幅增加,特別是跨鏈系統(tǒng)所對接的多條區(qū)塊鏈,在設計之初一般并未考慮跨鏈應用的場景,并缺乏對應的保護機制,由此引入的安全性問題需要跨鏈系統(tǒng)的設計者謹慎分析和應對.4總結與展望跨鏈技術被認為是區(qū)塊鏈領域發(fā)展的圣杯[59],是實現(xiàn)鏈聯(lián)網(wǎng)的核心關鍵技術.本文對目前主流的跨鏈技術進行了系統(tǒng)性的介紹和對比.由于區(qū)塊鏈領域的發(fā)展日新月異,一些新的跨鏈技術也在不斷涌現(xiàn).現(xiàn)有的跨鏈技術從形態(tài)上來看,有些是在已有區(qū)塊鏈項目基礎上的改進,實現(xiàn)有限的數(shù)據(jù)互聯(lián);有些是提出了一套通信協(xié)議,實現(xiàn)區(qū)塊鏈間的通信;有些是提出了新的系統(tǒng)架構和運行模式,支持不同區(qū)塊鏈的接入.總的來看,跨鏈技術仍處于初期發(fā)展過程中,跨鏈的推廣應用需要達成更廣泛的共識.基于區(qū)塊鏈的分布式賬本技術通過區(qū)塊封裝、共識算法、時間戳等機制,提供了去中心化、不可篡改、無需信任等優(yōu)秀特性,并結合行業(yè)需求逐步開展了各類應用開發(fā)[60];同時,系統(tǒng)容量、資源消耗、運行效率等技術指標也在不斷提升[61,62],為實現(xiàn)無處不在的價值流通與交換提供了可能.跨鏈是實現(xiàn)無界價值互聯(lián)的關鍵,其技術突破將有助于推動跨鏈資產轉移/抵押、跨鏈數(shù)據(jù)共享、中心化資產交易平臺、分布式應用DApp的跨平臺開發(fā)/部署/配置、跨鏈智能合約應用、垂直行業(yè)私有鏈價值交互等應用領域的發(fā)展.開放的公有鏈與訪問受限的私有鏈、聯(lián)盟鏈之間,區(qū)塊鏈與傳統(tǒng)軟件系統(tǒng)之間,也存在價值拓展和交換的應用需求,未來跨鏈技術有可能演變?yōu)橹胃鼜V泛應用的網(wǎng)絡基礎設施.JournalofSoftware軟件學報Vol.30,No.6,June2019跨鏈的初衷在于構建鏈聯(lián)網(wǎng)、實現(xiàn)各個區(qū)塊鏈的無縫互聯(lián),但基于區(qū)塊鏈的本質特性以及面對愈加豐富的應用形態(tài)時,未來也可能并不會統(tǒng)一成一種通用的跨鏈技術來滿足各類需求.可以預見:隨著跨鏈技術研究的深入和應用的普及,將發(fā)展出類似當前互聯(lián)網(wǎng)中標準化的數(shù)據(jù)接口通訊技術,各種不同的區(qū)塊鏈系統(tǒng)將盡可能地提供出多種標準跨鏈通信接口,并抽象出典型的互操作服務供其他系統(tǒng)調用.在區(qū)塊鏈系統(tǒng)的內部,不同的分片、子鏈,或支鏈之間,也將通過系統(tǒng)內部高速跨鏈機制實現(xiàn)局部信息與全局信息之間的同步與更新.除了各類線性鏈式區(qū)塊結構,業(yè)界還發(fā)展出有向無環(huán)圖(directedacyclicgraph,簡稱DAG)[6?8]、哈希圖(Hashgraph)[63]等結構的分布式賬本系統(tǒng),跨鏈技術面臨的場景更加復雜.跨鏈技術最終能否形成鏈聯(lián)網(wǎng)的TCP/IP協(xié)議、實現(xiàn)全球區(qū)塊鏈的廣泛互聯(lián),亦或成為多種跨鏈技術長期共存、實現(xiàn)不同層次的數(shù)據(jù)連接,將與區(qū)塊鏈自身的技術形態(tài)、應用模式發(fā)展密切相關,也有待跨鏈技術研究者持續(xù)探索實踐.References:[1]NakamotoS.Bitcoin:Apeer-to-peerelectroniccashsystem./bitcoin.pdf[2]ButerinV.Anext-generationsmartcontractanddecentralizedapplicationplatform./ethereum/wiki/wiki/White-Paper[3]SchwartzD,YoungsN,BrittoA.TheRippleprotocolconsensusalgorithm./files/ripple_consensus_whitepaper.pdf[4]BitcoincashFAQ./faq.html[5]LarimerD.EOS.IOtechnicalwhitepaper./EOSIO/Documentation/blob/master/TechnicalWhitePaper.md[6]PopovS.Thetangle./IOTA_Whitepaper.pdf[7]ChuryumovA.Byteball:Adecentralizedsystemforstorageandtransferofvalue./Byteball.pdf[8]ArumugamS,BrandstadtA,NishizekiT.HandbookofGraphTheory,CombinatorialOptimization,andAlgorithms.1sted.NewYork:ChapmanandHall,2016.[9]TrujilloJL,FromhartS,SrinivasV.Evolutionofblockchaintechnology./insights/us/en/industry/financial-services/evolution-of-blockchain-github-platform.html[10]LiXF,ZhaoH,LiF,TanHB,SunYN,LiuB.Electronicdocumentanti-tamperingmethod.ChinesePatentZL201410436231.7,2014-08-29(inChinese).[11]ZhaoH,LiXF,ZhanLQ,WuZC.Dataintegrityprotectionmethodformicroorganismsamplingrobotsbasedonblockchaintechnology.JournalofHuazhongUniversityofScienceandTechnology(NaturalScienceEdition),2015,43(s1):216?219(inChinesewithEnglishabstract).[doi:10.13245/j.hust.15S1052][12]ButerinV.Onpublicandprivateblockchains./2015/08/07/on-public-and-private-blockchains[13]JPMorganChase&Co.Quorumwhitepaper./jpmorganchase/quorum-docs/blob/master/Quorum%20Whitepaper%20v0.2.pdf[14]BrownRG,CarlyleJ,GriggI,Hearn,M.Corda:Anintroduction./_static/corda-introductory-whitepaper.pdf[15]CachinC.Architectureofthehyperledgerblockchainfabric.In:Proc.oftheWorkshoponDistributedCryptocurrenciesandConsensusLedgers.2016.[16]ButerinV.Chaininteroperability./download/chain-interoperability[17]SzaboN.Smartcontracts:Buildingblocksfordigitalmarkets./DBpdfs/BlockChain/Nick-Szabo-Smart-Contracts-Building-Blocks-for-Digital-Markets-1996-14591.pdf[18]ButerinV.ShardingFAQ./ethereum/wiki/wiki/Sharding-FAQs[19]CoinMarketCap.Percentageoftotalmarketcapitalization(dominance)./charts[20]BjoroyTV.Ethereumsetsnewtransactionrecord,outperformingBitcoin./2017/08/15/ethereum-sets-new-transaction-record-outperforms-bitcoin[21]NolanT.Altchainsandatomictransfers./index.php?topic=193281.0[22]BackA,CoralloM,DashjrL,FriedenbachM,MaxwellG,MillerA,PoelstraA,TimónJ,WuilleP.Enablingblockchaininnovationswithpeggedsidechains./sidechains.pdf1659[23]JohnnyD,AndrewP,JonathanW,MartaP,BenG,MarkF.Strongfederations:Aninteroperableblockchainsolutiontocentralizedthirdpartyrisks./pdf/1612.05491.pdf[24]PoonJ,DryjaT.TheBitcoinlightningnetwork:Scalableoff-chaininstantpayments.work/lightning-network-paper.pdf[25]ThomasS,SchwartzE.Aprotocolforinterledgerpayments./interledger.pdf[26]ConsenSys.BTCRelay’sdocumentation.http://btc-relay.readthedocs.io/en/latest/[27]KwonJ,BuchmanE.Cosmos:Anetworkofdistributedledgers./cosmos/cosmos/blob/master/WHITEPAPER.md[28]KwonJ.Tendermint:Consensuswithoutmining./static/docs/tendermint.pdf[29]CastroM,LiskovB.PracticalByzantinefaulttoleranceandproactiverecovery.ACMTrans.onComputerSystems,2002,20(4):398?461.[doi:10.1145/571637.571640][30]KingS.PPCoin:Peer-to-peercrypto-currencywithproof-of-stake./assets/paper/peercoin-paper.pdf[31]WoodG.Polkadot:Visionforaheterogeneousmulti-chainframework./polkadot-io/polkadotpaper/raw/master/PolkaDotPaper.pdf[32]LernerSD.RSKwhitepaperoverview./assets/Whitepapers/RootstockWhitePaperv9-Overview.pdf[33]HowElementsworksandtherolesofnetworkparticipants./how-it-works[34]LiskDeveloperHub.Lisk’sconsensusalgorithm.https://lisk.io/documentation/the-lisk-protocol/consensus[35]SnowP,DeeryB,LuJ,JohnstonD,KirbyP.Factom:Businessprocessessecuredbyimmutableaudittrailsontheblockchain./devs/docs/guide/factom-white-paper-1-0[36]HearnM.Corda:Adistributedledger./_static/corda-technical-whitepaper.pdf[37]PoonJ,ButerinV.Plasma:Scalableautonomoussmartcontracts.https://plasma.io/plasma.pdf[38]ButerinV.Minimalviableplasma.https://ethresear.ch/t/minimal-viable-plasma/426[39]ButerinV.Plasmacash:Plasmawithmuchlessper-userdatachecking.https://ethresear.ch/t/plasma-cash-plasma-with-much-less-per-user-data-checking/1298[40]OmiseGOofficialguide.https://cdn.omise.co/omg/officialguide.pdf[41]Lucidity:Theblockchainadvertisingprotocolforcompletedatatransparency.https://lucidity.tech/wp-content/uploads/2018/06/Lucidity-Whitepaper-v1.2-060618.pdf[42]CryptoKitties:Collectibleandbreedablecatsempoweredbyblockchaintechnology./uploads/doc/file/25583a966d374e30a24262dc5b4c45cd.pdf?_upd=CryptoKitties_WhitePapurr_V2.pdf[43]CryptoKittiescrazeslowsdowntransactionsonEthereum./news/technology-42237162[44]DuffyJM.Everythingyouneedtoknowaboutloomnetwork./loom-network/everything-you-need-to-know-about-loom-network-all-in-one-place-updated-regularly-64742bd839fe[45]SpokeM,NucoEngineeringTeam.Aion:EnablingthedecentralizedInternet.work/media/en-aion-network-technical-introduction.pdf[46]MillerA,XiaY,CromanK,ShiE,SongD.ThehoneybadgerofBFTprotocol.In:WeipplE,ed.Proc.ofthe2016ACMSIGSACConf.onComputerandCommunicationsSecurity(CCS2016).NewYork:ACMPress,2016.31?42.[doi:10.1145/2976749.2978399][47]EykholtE,MeredithLG,DenmanJ.RChainarchitecturedocumentation./pdf/rchain-architecture/stable/rchain-architecture.pdf[48]BlockColliderTeam.Blockcolliderwhitepaper./bc_whitepaper_zh.pdf[49]LeMahieuC.Nano:Afeelessdistributedcryptocurrencynetwork./en/whitepaper[50]

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論