1. 引言
加密世界的終極愿景是去中心,下一代價(jià)值互聯(lián)網(wǎng)是否可能取得成功?區(qū)塊鏈本身是否存在泡沫?
區(qū)塊鏈1.0首次提出了點(diǎn)對(duì)點(diǎn)的電子支付,只知道地址,越過(guò)中間機(jī)構(gòu),全球任意兩個(gè)人之間快速支付成為可能。這是人類歷史上第一次使用技術(shù)手段讓私有化財(cái)產(chǎn)神圣不可侵犯。
pow的本質(zhì)是時(shí)鐘,pow的工作量證明錨定了交易順序。非圖靈完備的腳本語(yǔ)言初步奠定了智能合約的核心思想,滿足什么條件進(jìn)行支付。然而,比特幣的腳本引擎是非圖靈完備的。由此誕生了區(qū)跨鏈2.0,以太坊的愿景是做世界計(jì)算機(jī),以太坊抽象了世界的狀態(tài),每一筆交易改變了當(dāng)前世界的狀態(tài),通過(guò)建立圖靈完備的編程語(yǔ)言,使得任何人都能夠創(chuàng)建合約和去中心化應(yīng)用,從而實(shí)現(xiàn)了圖靈完備和價(jià)值知曉,屬于智能合約的時(shí)代開(kāi)始爆發(fā)。
而當(dāng)前區(qū)塊鏈實(shí)在太慢了,比特幣十分鐘左右挖出一個(gè)區(qū)塊,一筆交易需要一個(gè)小時(shí)得到確認(rèn),遠(yuǎn)遠(yuǎn)不能滿足b2b小額支付的要求。以太坊幾乎每時(shí)每刻都在阻塞,加密貓等以太坊上的dapp一次次讓整個(gè)以太坊網(wǎng)絡(luò)癱瘓。加密世界存在不可能三角,加密貨幣無(wú)法擴(kuò)展,在交易的吞吐量和驗(yàn)證者的去中心化上存在矛盾,因此出現(xiàn)了諸多解決方案。從鏈上擴(kuò)容、鏈下擴(kuò)容方案,以及eos等所代表的dpos共識(shí)通過(guò)減少驗(yàn)證節(jié)點(diǎn)提高tps犧牲一定程度的冗余,tps的提高不可避免的帶來(lái)了中心化和賄選問(wèn)題。
圍繞著“中本聰愿景”,鏈上擴(kuò)容誕生了以bchabc和bchsv大區(qū)塊的解決方案,大區(qū)塊增大了區(qū)塊體積,從而提高了網(wǎng)絡(luò)的吞吐量,然而大區(qū)塊也造成了挖礦的中心化。十倍區(qū)塊體積,增大近乎十倍區(qū)塊傳播時(shí)間,區(qū)塊鏈網(wǎng)絡(luò)更容易出現(xiàn)分叉和孤塊,并且中心化問(wèn)題更加嚴(yán)重。另外圍繞著鏈上擴(kuò)容產(chǎn)生的隔離見(jiàn)證及schnorr簽名算法等通過(guò)減小簽名體積較少區(qū)塊大小,但不能解決擴(kuò)展性的根本問(wèn)題。絕對(duì)的小體積和絕對(duì)的大體積都會(huì)使網(wǎng)絡(luò)崩潰掉。以比特幣為首的加密貨幣通過(guò)支付通道技術(shù)技術(shù)及哈希時(shí)間鎖建立了閃電網(wǎng)絡(luò),閃電網(wǎng)絡(luò)通過(guò)鏈下交易鏈上結(jié)算的方式以及閃電網(wǎng)絡(luò)之間的互聯(lián),使得通過(guò)閃電網(wǎng)絡(luò)任意兩個(gè)用戶之間能夠高速交易,使得tps值超越vsa,大規(guī)模小額支付成為可能。那么更近一步呢? 區(qū)塊鏈大規(guī)模應(yīng)用的限制在哪里?
TCP/IP等互聯(lián)網(wǎng)協(xié)議誕生使得大規(guī)模信息交換成為可能,信息的自由流轉(zhuǎn)帶來(lái)了互聯(lián)網(wǎng)網(wǎng)的蓬勃發(fā)展,從而帶來(lái)了信息化的革命。
從互聯(lián)網(wǎng)到區(qū)塊鏈,作為web3.0的核心技術(shù)區(qū)塊鏈技術(shù)將爆發(fā)巨大的生命力,從而引領(lǐng)從信息互聯(lián)網(wǎng)到價(jià)值互聯(lián)網(wǎng)的范式轉(zhuǎn)化。而我們看到當(dāng)下目前區(qū)塊鏈間呈現(xiàn)出來(lái)的是孤島效應(yīng),價(jià)值無(wú)法自由快速流通,生態(tài)無(wú)法對(duì)接,體系無(wú)法增長(zhǎng)。這種孤島的現(xiàn)狀不利于區(qū)塊鏈行業(yè)的整體發(fā)展。想要形成一個(gè)真正的價(jià)值互聯(lián)網(wǎng),就必須解決鏈與鏈之間價(jià)值流通的障礙,這就需要打破鏈間孤島的跨鏈技術(shù)。
2. 從互聯(lián)網(wǎng)到跨鏈的意義
為了理解區(qū)塊鏈未來(lái)的發(fā)展以及跨鏈技術(shù)將會(huì)帶來(lái)的巨大影響力,我們回顧下互聯(lián)網(wǎng)的發(fā)展史。從1996年到如今,互聯(lián)網(wǎng)經(jīng)歷了兩個(gè)完整的階段性變遷,分別是從Web1.0到Web.2.0,Web2.0至Web3.0。
2.1 從 web1.0 到 web2.0: 互聯(lián)網(wǎng)演進(jìn)史
互聯(lián)網(wǎng)從誕生之初,就是為了連接你我,從而在交互中產(chǎn)生巨大的價(jià)值。
web 1.0 時(shí)代
社交網(wǎng)絡(luò)和在線視頻流出現(xiàn)之前,互聯(lián)網(wǎng)就已經(jīng)存在了。Web1.0甚至在20世紀(jì)90年代谷歌出現(xiàn)之前就已經(jīng)存在了。當(dāng)時(shí)的互聯(lián)網(wǎng)是由AltaVista和網(wǎng)景公司主導(dǎo)的。網(wǎng)頁(yè)是“只讀的”,用戶只能搜索信息,瀏覽信息。
Web 2.0 時(shí)代
在Web 1.0之后,互聯(lián)網(wǎng)的第二次迭代被稱作Web 2.0,也就是“可讀寫”網(wǎng)絡(luò)。到了2.0時(shí)代,用戶不僅僅局限于瀏覽,他們還可以自己創(chuàng)建內(nèi)容并上傳到網(wǎng)頁(yè)上。
在這個(gè)時(shí)代,誕生了問(wèn)答式的、交互式的門戶,諸如博客,WIKI百科,最明顯的變化是信息變得不再是從官方到個(gè)人了,而是拓展出來(lái)交互式的內(nèi)容產(chǎn)生,信息從個(gè)人到平臺(tái)再到個(gè)人,需求的滿足也變得不再困難。
Web 2.0的主要目標(biāo)是使互聯(lián)網(wǎng)更加民主,并使其盡可能地方便用戶訪問(wèn)。Web 2.0使得社交互動(dòng)和在線經(jīng)濟(jì)大放異彩。當(dāng)然,Web2.0也開(kāi)始信息過(guò)載。根據(jù)聯(lián)合國(guó)的數(shù)據(jù),互聯(lián)網(wǎng)用戶的數(shù)量從最近的7.38億增加到32億,龐大的用戶量和指數(shù)級(jí)增長(zhǎng)的數(shù)據(jù)引發(fā)了挑戰(zhàn)和危機(jī)。
2.2 為什么需要web3.0
傳統(tǒng)的網(wǎng)絡(luò)價(jià)值基于用戶交互,比如電話、社交網(wǎng)絡(luò)。這里引入一個(gè)衡量網(wǎng)絡(luò)價(jià)值的公式,梅特卡夫定律(Metcalfe‘s Law):網(wǎng)絡(luò)價(jià)值與網(wǎng)絡(luò)節(jié)點(diǎn)(用戶)的平方成正比。這種關(guān)系基于所謂的「網(wǎng)絡(luò)效應(yīng)」,即網(wǎng)絡(luò)參與的用戶越多,網(wǎng)絡(luò)價(jià)值越大。
Chris Dixon說(shuō),依賴網(wǎng)絡(luò)效應(yīng)的技術(shù)平臺(tái)其增長(zhǎng)遵循“S型曲線”。在產(chǎn)品發(fā)布的最初幾天,平臺(tái)增長(zhǎng)取決于用戶的數(shù)量。隨著公司的成長(zhǎng)和越來(lái)越多的用戶加入這個(gè)平臺(tái)當(dāng)中,增長(zhǎng)曲線開(kāi)始變的平緩。在公司發(fā)展的后期,它只專注于創(chuàng)造更多的利潤(rùn),追求從網(wǎng)絡(luò)用戶那里獲得最大的利益。
當(dāng)公司達(dá)到S曲線頂端時(shí),他們與網(wǎng)絡(luò)參與者的關(guān)系從正和變成了零和。平臺(tái)繼續(xù)增長(zhǎng)的最簡(jiǎn)單方法是從用戶那里獲得數(shù)據(jù),并且還要與競(jìng)爭(zhēng)對(duì)手競(jìng)爭(zhēng)用戶和利潤(rùn)。平臺(tái)跟開(kāi)發(fā)者、內(nèi)容創(chuàng)造者和商戶之間,也從合作逐步走向競(jìng)爭(zhēng)。壟斷帶來(lái)了對(duì)用戶的損害,以及中心化平臺(tái)的作惡,比如百度獲取用戶的信息,百度廣泛聯(lián)系各家公司,讓大家把信息提交給他,方便用戶搜索。現(xiàn)在如果不交錢,公司的官網(wǎng)在百度上就搜不到。百度為了賺錢,把病患導(dǎo)流給莆田系醫(yī)院,以及搜索引擎上排名靠前的數(shù)不勝數(shù)的詐騙,對(duì)用戶的財(cái)產(chǎn)及生命安全構(gòu)成了巨大的損害。
而去中心化區(qū)塊鏈可以改變互聯(lián)網(wǎng)平臺(tái)壟斷的局面。因?yàn)閰^(qū)塊鏈?zhǔn)侨ブ行幕?,靠公開(kāi)透明的共識(shí)維持的經(jīng)濟(jì)體。網(wǎng)絡(luò)的參與者貢獻(xiàn)越大,相應(yīng)的權(quán)利也就越大,但是沒(méi)有個(gè)體能控制全局。
關(guān)于這點(diǎn),Gavin Wood曾經(jīng)發(fā)表一篇著名演講,對(duì)web3.0 做了以下展望。
Web 3.0將創(chuàng)造一個(gè)新的全球數(shù)字經(jīng)濟(jì),創(chuàng)造新的商業(yè)模式和市場(chǎng),與谷歌和Facebook一起破壞平臺(tái)壟斷,并產(chǎn)生大量自下而上的創(chuàng)新。廉價(jià)政府對(duì)我們的隱私和自由的攻擊,如廣泛的數(shù)據(jù)拖網(wǎng),審查和宣傳,將變得更加困難。
web3.0將從以下幾個(gè)方面來(lái)重塑互聯(lián)網(wǎng)。
web 3.0 將采用“蜂窩”結(jié)構(gòu),實(shí)現(xiàn)p2p經(jīng)濟(jì)
由以上分析我們看到,當(dāng)前互聯(lián)網(wǎng)是過(guò)度集中化的,因此導(dǎo)致出現(xiàn)了很多問(wèn)題,比如尋租、權(quán)力爛用、輿論影響。亞馬遜和微軟控制著超過(guò) 60% 的網(wǎng)絡(luò)存儲(chǔ)容量,這兩家公司還控制著大多數(shù)身份登陸信息。這些壟斷寡頭利用了互聯(lián)網(wǎng)技術(shù)紅利,并且不斷為自己的企業(yè)積累財(cái)富。
web3.0 的P2P架構(gòu)引領(lǐng)了第四次工業(yè)革命,因?yàn)樯a(chǎn)資料得到了簡(jiǎn)化,人們自己通過(guò)自由職業(yè)(音樂(lè)、視頻、新聞行業(yè)都能滿足自由職業(yè)需求)來(lái)提供服務(wù)、或是通過(guò) 3D 打印自己生產(chǎn)商品。實(shí)際上,如今人們生產(chǎn)額外產(chǎn)品的邊際成本正在變得越來(lái)越低、對(duì)于創(chuàng)意經(jīng)濟(jì)生產(chǎn)者來(lái)說(shuō),他們的大部分勞動(dòng)也會(huì)得到相應(yīng)的回報(bào),藝術(shù)家和記者甚至可能成為改變游戲規(guī)則的關(guān)鍵要素。
比如在知乎,貼吧等內(nèi)容平臺(tái)上的寫作,在當(dāng)前互聯(lián)網(wǎng)模式下,個(gè)人的勞動(dòng)是沒(méi)辦法直接轉(zhuǎn)化為經(jīng)濟(jì)激勵(lì),甚至誕生了內(nèi)容的版權(quán)屬于平臺(tái)方等霸王條款。去中心化內(nèi)容寫作等web3技術(shù)應(yīng)用的流行,將使得個(gè)人勞動(dòng)成果直接轉(zhuǎn)化為經(jīng)濟(jì)價(jià)值。
web3.0 帶來(lái)更民主的互聯(lián)網(wǎng)治理
web3 把治理權(quán)力交給了用戶,而不是那些中心化的寡頭。由于強(qiáng)大的加密功能,用戶再也不需要“中介”了。而隨著 Web3 有效防止數(shù)字資產(chǎn)雙重花費(fèi)風(fēng)險(xiǎn)之后,我們可以放心地與陌生人交換價(jià)值,簽訂合約、投票、交換價(jià)值等交易的信任程度也會(huì)得到大幅提升。當(dāng)全世界都使用一個(gè)數(shù)字系統(tǒng)的時(shí)候,信任也會(huì)不斷增加。
去中心化身份系統(tǒng)允許人們對(duì)身份信息進(jìn)行自我管理
當(dāng)前如谷歌、facebook等壟斷寡頭控制著互聯(lián)網(wǎng)上的用戶身份信息,互聯(lián)網(wǎng)寡頭可以在未經(jīng)用戶允許的情況下控制數(shù)據(jù),關(guān)鍵是還經(jīng)常出現(xiàn)數(shù)據(jù)泄露事件,而web3.0去中心化的身份系統(tǒng)允許人們對(duì)身份信息的自我管理,決定哪些可以授權(quán),從而解決無(wú)處不在的隱私泄露等信息。
智能合約和加密貨幣帶來(lái)了快速、無(wú)縫的交易體驗(yàn)
前互聯(lián)網(wǎng)缺乏貨幣結(jié)構(gòu)。在數(shù)字領(lǐng)域里,如今的互聯(lián)網(wǎng)在處理傳統(tǒng)“法定貨幣”資金方面仍然存在巨大的摩擦。把真實(shí)世界里的貨幣“搬到”數(shù)字領(lǐng)域里的成本依然非常高。比如,信用卡交易手續(xù)費(fèi)比例高達(dá) 5%,而根據(jù)世界銀行的數(shù)據(jù)顯示,跨境交易成本也不低(平均費(fèi)率為 7%),而國(guó)際匯款的時(shí)間成本和費(fèi)用甚至更高。自從二十世紀(jì)七十年代以來(lái),銀行間轉(zhuǎn)賬就一直依賴環(huán)球同業(yè)銀行金融電訊協(xié)會(huì)的電子結(jié)算系統(tǒng)SWIFT,而且至今都沒(méi)有過(guò)變化。
Web3 基礎(chǔ)設(shè)施上的支付代幣可以幫助新用戶擺脫當(dāng)前的銀行閉環(huán)束縛,并且鼓勵(lì)開(kāi)發(fā)創(chuàng)新的區(qū)塊鏈服務(wù),比如利用基于區(qū)塊鏈和加密模式的信貸產(chǎn)品提供貸款。支付代幣會(huì)大幅降低交易費(fèi)用,甚至消除透支問(wèn)題,因?yàn)閰^(qū)塊鏈上不可能提供超額資金。
2.3 跨鏈技術(shù)未來(lái)的地位
web3.0就是跨鏈技術(shù)成熟之后的區(qū)塊鏈?zhǔn)澜?,依托于跨鏈技術(shù),多鏈之間無(wú)阻隔進(jìn)行融合,打破信息孤島,實(shí)現(xiàn)真正的價(jià)值交換與萬(wàn)物互聯(lián),重塑當(dāng)前互聯(lián)網(wǎng)的形態(tài),解決互聯(lián)網(wǎng)2.0時(shí)代的一系列問(wèn)題。
3. 詳解跨鏈
跨鏈最基本的意義就是要實(shí)現(xiàn)價(jià)值的流通,解決不同鏈之間的價(jià)值孤島問(wèn)題??珂溂夹g(shù)如能落地,不僅能實(shí)現(xiàn)不同鏈之間資產(chǎn)的自由流通,更重要的是能夠釋放不同鏈的潛力,讓更多的用戶參與,使更多的鏈可以連通,最終形成一個(gè)真正的大生態(tài),一個(gè)真正的價(jià)值互聯(lián)網(wǎng)。
在公鏈領(lǐng)域,不同的項(xiàng)目在安全、隱私性、高效性、靈活性、復(fù)雜度、易用性、甚至政治價(jià)值等方面做出了不同的折衷權(quán)衡。在私有鏈和聯(lián)盟鏈領(lǐng)域,在不同的行業(yè)會(huì)有不同的鏈,甚至同一行業(yè)內(nèi)也會(huì)有多條鏈。在這樣的一個(gè)世界里,自然會(huì)出現(xiàn)一個(gè)問(wèn)題:這些鏈相互之間如何互操作?
對(duì)于互聯(lián)網(wǎng)的中心化應(yīng)用,平臺(tái)之間的連接本質(zhì)是信息的流通,中心化應(yīng)用通過(guò)彼此開(kāi)放API,實(shí)現(xiàn)了互聯(lián)網(wǎng)應(yīng)用之間的“跨鏈” 。與互聯(lián)網(wǎng)的信息流通不同,跨鏈不是簡(jiǎn)單的信息傳遞,它要把價(jià)值從一個(gè)鏈轉(zhuǎn)移到另外一個(gè)鏈??珂溚ㄟ^(guò)連接相對(duì)獨(dú)立的區(qū)塊鏈系統(tǒng),實(shí)現(xiàn)資產(chǎn)、數(shù)據(jù)等的價(jià)值互操作。
3.1 跨鏈目前的研究
跨鏈當(dāng)前的落地場(chǎng)景
跨鏈資產(chǎn)轉(zhuǎn)移
以太坊誕生之前,區(qū)塊鏈很少談及“合約”,當(dāng)時(shí)只談幣。
資產(chǎn)兌換:A想用X鏈的幣(Token)兌換Y鏈的幣(token),B想用Y鏈的幣兌換X 鏈的幣,經(jīng)系統(tǒng)撮合,兩者互相兌換成功。
資產(chǎn)轉(zhuǎn)移:A想把X鏈的資產(chǎn)(幣token)轉(zhuǎn)移到其他區(qū)塊鏈上,在x鏈上鎖定,在新的鏈上重新鑄造等量等值的幣。
資產(chǎn)跨產(chǎn)交換是指將一條鏈上的資產(chǎn)兌換成等值的另一條鏈上的資產(chǎn),每條鏈上的資產(chǎn)總量保持不變??珂溬Y產(chǎn)互。這就是幣的跨鏈。本質(zhì)上幣的跨鏈并沒(méi)有真實(shí)的幣從一條鏈跑到另外一條鏈,只是幣在各自鏈上相互糾纏一樣鎖定和解鎖的狀態(tài)。
基于資產(chǎn)的跨鏈做去中心化的交易所。依賴幣可以跨鏈,支持用戶掛單,通過(guò)跨鏈合約來(lái)提供撮合,撮合成交后使用幣的跨鏈來(lái)完成幣的轉(zhuǎn)移,可以做到完成不依賴于特定的服務(wù)器的。
智能合約的跨鏈調(diào)用
智能合約本質(zhì)上就是代碼,這些代碼可以依據(jù)區(qū)塊鏈上的特定數(shù)據(jù)來(lái)觸發(fā)執(zhí)行。
智能合約我們可以簡(jiǎn)化理解成為一個(gè)函數(shù),輸入特定的參數(shù),代碼就會(huì)自動(dòng)觸發(fā)執(zhí)行,就能得出特定的結(jié)果,并且給出穩(wěn)定的輸出結(jié)果。智能合約不能自己主動(dòng)觸發(fā),需要外部源的觸發(fā)。比如以太坊上的智能合約,代碼是在以太坊區(qū)塊鏈上,要激活合約也需要在以太坊區(qū)塊鏈上發(fā)送交易。
假如在一條鏈上發(fā)布一個(gè)智能合約,然后依據(jù)另外一條鏈上的特定信息,來(lái)觸發(fā)這個(gè)智能合約執(zhí)行特定的操作,這就是智能合約(調(diào)用)的跨鏈。
跨鏈技術(shù)的未來(lái)展望
由于跨鏈技術(shù)的復(fù)雜度,當(dāng)前鏈接資產(chǎn)轉(zhuǎn)移,鏈的互聯(lián)互通仍然存在諸多問(wèn)題沒(méi)有達(dá)到完全成熟,仍然處于探索階段。目前的區(qū)塊鏈?zhǔn)澜缇秃帽?0年代的單機(jī)時(shí)代,鏈與鏈之間高度異構(gòu)化,彼此難以互通,所有的數(shù)據(jù)和服務(wù)都局限于孤島式的區(qū)塊鏈中。若是未來(lái),所有的區(qū)塊鏈系統(tǒng)能通過(guò)某一標(biāo)準(zhǔn)化跨鏈協(xié)議鏈接起來(lái),那眾多的區(qū)塊鏈系統(tǒng)就能協(xié)同工作,為更多的用戶、更多的服務(wù)提供支撐。跨鏈技術(shù)的成熟與普及或?qū)⒁瑓^(qū)塊鏈網(wǎng)絡(luò)的繁榮。不同的是:互聯(lián)網(wǎng)是信息自由流通的網(wǎng)絡(luò),而區(qū)塊鏈跨鏈網(wǎng)絡(luò)則是價(jià)值自由流通的網(wǎng)絡(luò)。
獨(dú)立的區(qū)塊鏈網(wǎng)絡(luò)終究要走向互聯(lián)互通的未來(lái),也就是web3.0時(shí)代,如何將已有的的和未來(lái)將要開(kāi)發(fā)區(qū)塊鏈網(wǎng)絡(luò)都聯(lián)系起來(lái)成為統(tǒng)一的整體,即萬(wàn)物互聯(lián)是未來(lái)跨鏈網(wǎng)絡(luò)最重要的問(wèn)題。
3.2 跨鏈技術(shù)面臨的難點(diǎn)
各個(gè)公鏈之間的底層技術(shù)實(shí)現(xiàn)差異給跨鏈技術(shù)帶來(lái)了不小的障礙,跨鏈需要解決幾個(gè)難點(diǎn)問(wèn)題:
保證跨鏈信息真實(shí)可靠
原鏈上的交易信息對(duì)于另外一條鏈來(lái)說(shuō)是一個(gè)外部信息,如何保證這個(gè)外部信息進(jìn)入另一條鏈?zhǔn)钦_的,是整個(gè)跨鏈機(jī)制的重要環(huán)節(jié)。例如,pow機(jī)制的區(qū)塊鏈上沒(méi)有最終性,因?yàn)閜ow機(jī)制整個(gè)網(wǎng)絡(luò)始終存在分叉,只是隨著確認(rèn)快的增加,概率逐漸變小。
由于區(qū)塊鏈可能分叉,交易的多個(gè)部分被打包進(jìn)區(qū)塊,鏈可以進(jìn)行重組,塊也可以變種孤塊,這種情況下可能導(dǎo)致跨鏈交易的部分成功,部分失敗,也就是說(shuō)不真實(shí)的交易進(jìn)入了鏈。
跨鏈交易的原子性
區(qū)塊鏈的可以看做事分布式共識(shí)維護(hù)的狀態(tài)機(jī),狀態(tài)機(jī)通過(guò)交易執(zhí)行完成狀態(tài)轉(zhuǎn)移??珂湹幕ゲ僮鲬?yīng)該引發(fā)雙發(fā)的狀態(tài)轉(zhuǎn)移,也就是兩個(gè)互操作的鏈都執(zhí)行了交易,而交易執(zhí)行之后的狀態(tài)具有一致性。一個(gè)跨鏈交易要引起兩條鏈乃至更多鏈的狀態(tài)改變,而這些改變要么成功要么不成功,這就是原子性。
比如跨鏈交易的雙重支付問(wèn)題,當(dāng)交易處理的某個(gè)環(huán)節(jié)停止了,整個(gè)交易能夠撤銷,而不會(huì)存在某個(gè)部分失敗,部分成功。部分失敗的情況,就是無(wú)法保證原子性而造成了雙重支付問(wèn)題。
在跨鏈技術(shù)中如何保證原子性的難點(diǎn)在于跨鏈雙方是兩條獨(dú)立的鏈,可能具有不同的共識(shí)機(jī)制、數(shù)據(jù)結(jié)構(gòu)、交易處理等邏輯,造成了交易沒(méi)有被最終執(zhí)行。
3.3 跨鏈技術(shù)的發(fā)展
從技術(shù)的角度講,鏈間互操作有三大類策略:
中心化或者多簽的公證人機(jī)制:一方或者多方同意在鏈B上采取某行動(dòng),如果在鏈A上發(fā)生了某事件。
見(jiàn)證人機(jī)制是最簡(jiǎn)單的實(shí)現(xiàn)跨鏈操作的方法。在見(jiàn)證人機(jī)制中,一個(gè)可信的實(shí)體,或者多個(gè)實(shí)體所組成的團(tuán)隊(duì),被用來(lái)向原鏈X聲明鏈Y發(fā)生了某個(gè)事件,或者聲明關(guān)于鏈Y上的某個(gè)斷言為真。這些實(shí)體可以是活動(dòng)的,不斷監(jiān)聽(tīng)鏈Y上的事件,當(dāng)發(fā)生某事件之后,自動(dòng)的做出相應(yīng);也可以是響應(yīng)式的,只有收到請(qǐng)求的時(shí)候,才會(huì)對(duì)某些消息進(jìn)行簽名。
側(cè)鏈/中繼:一條鏈的內(nèi)部系統(tǒng)可以驗(yàn)證和讀取其它鏈上的事件或狀態(tài),也就是輕節(jié)點(diǎn)跨鏈方案。
中繼是實(shí)現(xiàn)互操作性的更加直接的方法,它不再依賴可信的中間人來(lái)提供關(guān)于其他鏈的信息,而是讓鏈本身接管了這一任務(wù)。大體的方法是這樣:假定鏈B上的智能合約希望了解鏈A上是否發(fā)生了特定的事件,或者在鏈A的某個(gè)狀態(tài)上,某個(gè)對(duì)象擁有某個(gè)特定的值;假定鏈A被設(shè)計(jì)得像Bitcoin或者以太坊那樣有“區(qū)塊”和“區(qū)塊頭”的概念,而且在區(qū)塊頭是一個(gè)區(qū)塊(以及當(dāng)前狀態(tài))的壓縮的表示(此壓縮的表示基于密碼學(xué)的一些構(gòu)造,例如Merkle樹(shù))。
這時(shí),我們就能在鏈B上創(chuàng)建一個(gè)智能合約,它以鏈A的區(qū)塊頭為輸入,使用鏈A上的共識(shí)算法所確定的標(biāo)準(zhǔn)驗(yàn)證流程來(lái)驗(yàn)證這個(gè)區(qū)塊頭。
這就是輕節(jié)點(diǎn)跨鏈方案,一個(gè)鏈B上的智能合約希望驗(yàn)證鏈A上的某個(gè)特定的交易、事件或狀態(tài),它會(huì)以一種非常類似請(qǐng)客戶端驗(yàn)證的方式,通過(guò)Merkle Proof的方式來(lái)驗(yàn)證。由于區(qū)塊鏈?zhǔn)亲园系沫h(huán)境,并沒(méi)有自然的訪問(wèn)接口可以感知外部世界,鏈A上的數(shù)據(jù)實(shí)質(zhì)上是被某個(gè)用戶提交到鏈B上的,但是由于這些數(shù)據(jù)時(shí)密碼學(xué)上可以驗(yàn)證的,因此無(wú)需相信這個(gè)提交數(shù)據(jù)的用戶。
哈希鎖:在鏈A和鏈B各自設(shè)置一個(gè)操作,這兩個(gè)操作有相同的觸發(fā)條件,通常這個(gè)條件是揭示某個(gè)哈希值的原像(即由怎樣的原始數(shù)據(jù)可以哈希得到此哈希值)
在跨鏈原子交換的場(chǎng)景下,哈希鎖的機(jī)制可以簡(jiǎn)單地描述如下:
1. A生成一個(gè)秘密的隨機(jī)數(shù)s,然后計(jì)算其哈希值hash(s)=h,之后A把h送給B。
2. A和B都將自己的資產(chǎn)鎖定在一個(gè)智能合約中,A先進(jìn)行鎖定,B看到A的鎖定操作成功之后,再進(jìn)行鎖定。智能合約的邏輯是:在A一側(cè),如果在2X秒之內(nèi),秘密的隨機(jī)數(shù)s被提供了出來(lái),那么資產(chǎn)就轉(zhuǎn)移給B,超時(shí)則資產(chǎn)傳回給A;在B一側(cè),如果在X秒之內(nèi)s被提供了出來(lái),那么這筆資產(chǎn)就轉(zhuǎn)移給A,超時(shí)則資產(chǎn)傳回給B。
3. A為了獲得B的合約中鎖定的資產(chǎn),會(huì)在X秒之內(nèi)揭示s;同時(shí),這也保證了B可以在鏈上觀察到s,從而獲得A的合約中鎖定的資產(chǎn)。
3.4 ChainX 對(duì)跨鏈的實(shí)現(xiàn)
BTC 建立了最大范圍共識(shí),卻交易效率低下;ZEC 建立了隱私功能,卻沒(méi)有智能合約能力;ETH建立了智能合約,卻無(wú)法遷移至 PoS 系統(tǒng);ChainX 通過(guò)去中心化的的方式將鏈間資產(chǎn)進(jìn)行統(tǒng)一轉(zhuǎn)化,任何鏈只要建立與 ChainX 的連接,就可以與所有鏈進(jìn)行資產(chǎn)互通。
ChainX 采用輕節(jié)點(diǎn)的模式進(jìn)行跨鏈,其中用戶通過(guò)把資產(chǎn)在原鏈上鎖定,之后在目標(biāo)鏈上發(fā)行映射資產(chǎn),同時(shí)可以在目標(biāo)鏈上申請(qǐng)?zhí)岈F(xiàn),最后在原鏈上解鎖的過(guò)程。
資產(chǎn)在原鏈上并沒(méi)有消失,而是轉(zhuǎn)由輕節(jié)點(diǎn)協(xié)議去中心化托管,或由單獨(dú)的個(gè)人或多人中心化托管。資產(chǎn)跨鏈映射一般分為見(jiàn)證人、哈希鎖定和輕節(jié)點(diǎn)中繼模式。見(jiàn)證人系統(tǒng)需半中心化信任這些擔(dān)保機(jī)構(gòu);哈希鎖定直接轉(zhuǎn)移資產(chǎn)所有權(quán),無(wú)法進(jìn)行跨鏈映射,交易可能中斷。而如果原鏈集成不了目標(biāo)鏈的輕節(jié)點(diǎn),那原鏈資產(chǎn)只能由個(gè)人或多簽托管,如果可以,則由目標(biāo)鏈在原鏈上的輕節(jié)點(diǎn)協(xié)議托管。對(duì)于擁有高效輕節(jié)點(diǎn)的鏈,ChainX 將采用輕節(jié)點(diǎn)協(xié)議完成往 ChainX 鏈的資產(chǎn)映射,但現(xiàn)有主流鏈一般無(wú)法集成 ChainX 鏈的輕節(jié)點(diǎn),所以只能采用多簽地址或多簽合約聯(lián)合托管用戶的原鏈資產(chǎn)。每屆信托節(jié)點(diǎn)的選舉周期為 10 天,將從共識(shí)節(jié)點(diǎn)中根據(jù)總得票數(shù)選舉產(chǎn)生前 15 人的信托節(jié)點(diǎn),自動(dòng)生成冷熱兩個(gè)多簽地址或合約,每次換屆后,老地址的資金會(huì)轉(zhuǎn)入新地址用戶可以實(shí)時(shí)查看系統(tǒng)的跨鏈資產(chǎn)發(fā)行和儲(chǔ)備量,沒(méi)有任何信托節(jié)點(diǎn)可以單方挪用。
依托于跨鏈技術(shù)的實(shí)現(xiàn),ChainX將建立史上最大的BTC二層網(wǎng)絡(luò),從而實(shí)現(xiàn)真正的去中心化跨鏈資產(chǎn)樞紐。
4.預(yù)言機(jī)
跨鏈必然涉及鏈內(nèi)和鏈外世界的數(shù)據(jù)交互,在這個(gè)交互過(guò)程中,如何驗(yàn)證鏈外數(shù)據(jù)至關(guān)重要。
4.1 預(yù)言機(jī)的基礎(chǔ)原理
預(yù)言機(jī)(Oracle)的基礎(chǔ)原理非常簡(jiǎn)單,Oracle的原理是這樣,我們知道智能合約是跑在鏈上的,智能合約的本質(zhì)是程序。舉個(gè)簡(jiǎn)單例子,對(duì)于個(gè)競(jìng)猜的Dapp,我們賭明天的天氣,假如明天12點(diǎn)天氣晴, A方贏,假如明天12點(diǎn)下雨, B方贏。在這個(gè)場(chǎng)景下,合約怎么知道12點(diǎn)是否下雨。對(duì)于普通的程序而言,只需要調(diào)用外部數(shù)據(jù),比如到12點(diǎn)的時(shí)候調(diào)用氣象局的API.而對(duì)于智能合約而言,是沒(méi)辦法主動(dòng)調(diào)用api,因此需要預(yù)言機(jī)去觸發(fā)。
4.2 為何預(yù)言機(jī)是必要的
區(qū)塊鏈?zhǔn)且粋€(gè)確定性的、封閉的系統(tǒng)環(huán)境,目前區(qū)塊鏈只能獲取到鏈內(nèi)的數(shù)據(jù),而不能獲取到鏈外真實(shí)世界的數(shù)據(jù),區(qū)塊鏈與現(xiàn)實(shí)世界是割裂的。
當(dāng)前智能合約走向真正的商業(yè)應(yīng)用仍存在相當(dāng)?shù)木嚯x。
1. 原有的智能合約主要依靠區(qū)塊鏈的原生資產(chǎn)(如以太坊)作為一般等價(jià)物,數(shù)字資產(chǎn)波動(dòng)巨大,缺乏穩(wěn)定性,法律定位不清。
2. 公有鏈本身缺乏身份認(rèn)證系統(tǒng),區(qū)塊鏈本身的設(shè)計(jì)有著“只認(rèn)私鑰不認(rèn)人”的特性,而現(xiàn)實(shí)世界的主體需要明確的身份,區(qū)塊鏈系統(tǒng)的使用者難以與現(xiàn)實(shí)世界直接勾連。從法律角度看,“私鑰”與持有者的“弱關(guān)聯(lián)”極大的限制了智能合約的商用。
3. 公有鏈智能合約離走向真正的商業(yè)生態(tài)存在一個(gè)難以跨越的邏輯難題即“預(yù)言機(jī)”問(wèn)題。
從現(xiàn)實(shí)的數(shù)據(jù)上看,當(dāng)前在以太坊上,絕大部分的智能合約都無(wú)法掛接現(xiàn)實(shí)世界,無(wú)法起到推進(jìn)實(shí)際產(chǎn)業(yè)的“去信任化”,降低信用成本,智能合約在實(shí)際的產(chǎn)業(yè)生態(tài)中遭遇困境。
以上可得,所謂預(yù)言機(jī),本質(zhì)上與外界聯(lián)通的通道,也就是鏈下數(shù)據(jù)的上鏈問(wèn)題。預(yù)言機(jī)的功能是將外界信息寫入到區(qū)塊鏈內(nèi),完成區(qū)塊鏈與現(xiàn)實(shí)世界的數(shù)據(jù)互通。當(dāng)智能合約的觸發(fā)條件是外部信息(鏈外),就必須需要預(yù)言機(jī)來(lái)將現(xiàn)實(shí)世界的數(shù)據(jù)輸入到區(qū)塊鏈上,因此預(yù)言機(jī)是必要的。
如果沒(méi)有預(yù)言機(jī),區(qū)塊鏈的發(fā)展就局限在只能使用鏈上的那一點(diǎn)點(diǎn)資產(chǎn)數(shù)據(jù)的范圍內(nèi),這顯然不符合我們對(duì)它的期待。假如用互聯(lián)網(wǎng)與區(qū)塊鏈進(jìn)行類比?;ヂ?lián)網(wǎng)的數(shù)據(jù)來(lái)源也機(jī)會(huì)只有網(wǎng)外(對(duì)應(yīng)鏈外),它同樣有數(shù)據(jù)的“上網(wǎng)”,對(duì)應(yīng)鏈內(nèi),為何互聯(lián)網(wǎng)沒(méi)有預(yù)言機(jī)問(wèn)題?原因在于,互聯(lián)網(wǎng)的運(yùn)用可以從網(wǎng)外讀取數(shù)據(jù),而區(qū)塊鏈的應(yīng)用基于共識(shí)需求,必須通過(guò)預(yù)言機(jī)來(lái)讀入一個(gè)一致的鏈外的數(shù)據(jù)。
4.3 預(yù)言機(jī)使用場(chǎng)景
預(yù)言機(jī)作為區(qū)塊鏈與現(xiàn)實(shí)世界進(jìn)行數(shù)據(jù)交互的橋梁,應(yīng)用場(chǎng)景非常多,可以說(shuō)一切需要與鏈下進(jìn)行數(shù)據(jù)交互的 Dapp 都需要預(yù)言機(jī)。
由于智能合約及區(qū)塊鏈“一經(jīng)部署,難以更改”的特性,智能合約的調(diào)用條件在部署時(shí)配置,而后續(xù)觸發(fā)智能合約執(zhí)行則需要其他的條件,如果這些條件和信息是來(lái)自于區(qū)塊鏈內(nèi)部(如某人的轉(zhuǎn)賬交易、眾籌的封頂額度)則不需要“預(yù)言機(jī)”參與,而如果智能合約的觸發(fā)條件來(lái)自于外部世界,如某地的氣溫、商品貨物的流轉(zhuǎn)情況等等,則一定會(huì)涉及到外部信息上鏈。
預(yù)言機(jī)的應(yīng)用場(chǎng)景比如金融衍生品交易平臺(tái)、借貸平臺(tái)、快遞追蹤/IoT、穩(wěn)定幣、博彩游戲、保險(xiǎn)、預(yù)測(cè)市場(chǎng)等,目前最主要的場(chǎng)景就是 DeFi。
以下列舉幾個(gè)典型的預(yù)言機(jī)使用場(chǎng)景:
穩(wěn)定幣及加密貨幣衍生品
穩(wěn)定幣和加密衍生品需要頻繁獲取鏈外實(shí)時(shí)價(jià)格數(shù)據(jù),類似 DAI 這樣的穩(wěn)定幣系統(tǒng),需要獲取 ETH 的實(shí)時(shí)價(jià)格,來(lái)判斷所抵押的加密貨幣是否達(dá)到了平倉(cāng)價(jià)格進(jìn)而觸發(fā)平倉(cāng)。假設(shè)有 1000 個(gè)節(jié)點(diǎn),那就需要向交易所(比如幣安)或 CoinMarketCap 的 ETH / USDT 交易對(duì)進(jìn)行 1000 次的 API 數(shù)據(jù)請(qǐng)求,但是,由于 ETH 的價(jià)格是實(shí)時(shí)變動(dòng)的,加上網(wǎng)絡(luò)延遲、計(jì)算速度等原因,每個(gè)節(jié)點(diǎn)獲取到的價(jià)格可能都不相同,這部分?jǐn)?shù)據(jù)被輸入到智能合約后,節(jié)點(diǎn)間無(wú)法達(dá)成共識(shí),那么整個(gè)系統(tǒng)就會(huì)崩潰。
去中心化保險(xiǎn)自動(dòng)賠付
通過(guò)預(yù)言機(jī)進(jìn)行及時(shí)可靠的被投保鏈外事件的獲取,基于區(qū)塊鏈的去中心化保險(xiǎn)可以實(shí)現(xiàn)諸如航班延誤險(xiǎn)等險(xiǎn)種的自動(dòng)賠付。
去中心化Dapp
鏈上去中心化博彩等游戲等往往需要安全可靠的隨機(jī)注入,預(yù)言機(jī)介意通過(guò)提供可靠,無(wú)法預(yù)測(cè),可驗(yàn)證的隨機(jī)數(shù)。
區(qū)塊鏈計(jì)算市場(chǎng)
機(jī)器學(xué)習(xí)訓(xùn)練模型、3D渲染等商業(yè)計(jì)算需要完成多種復(fù)雜的計(jì)算任務(wù),鏈下計(jì)算市場(chǎng)提供可驗(yàn)證的、無(wú)限的鏈外計(jì)算能力。
4.4 預(yù)言機(jī)的分類及是否有必要接入
預(yù)言機(jī)的核心在于解決信任問(wèn)題,因此,預(yù)言機(jī)的分類而言,在于信任生產(chǎn)機(jī)制的不同。根據(jù)信任的不同來(lái)源,可以把如今的預(yù)言機(jī)分為以下三類:
1. 由可信的中心化機(jī)構(gòu)提供數(shù)據(jù),比如Oraclize, 它是中心化的。
2. 由分布式的節(jié)點(diǎn)提供數(shù)據(jù),比如chainlink,它是去中心的。
3. 由可信的聯(lián)盟鏈提供數(shù)據(jù),比如Maker, 它是半去中心的。
假如跨鏈項(xiàng)目需要鏈外的數(shù)據(jù),則需要預(yù)言機(jī),比如預(yù)測(cè),博彩,defi等應(yīng)用,假如跨鏈項(xiàng)目是鏈間資產(chǎn)、消息的傳遞,比如去中心化交易所,數(shù)據(jù)來(lái)源由鏈本身提供,則不需要預(yù)言機(jī)。預(yù)言機(jī)本身是一個(gè)非常大且復(fù)雜的應(yīng)用,并且要確保數(shù)據(jù)可信,跨鏈項(xiàng)目可以在可以選擇自行開(kāi)發(fā)或者接入已有的預(yù)言機(jī)系統(tǒng),在滿足需求的情況下。
從功能上看,預(yù)言機(jī)解決的是信任問(wèn)題,但從本質(zhì)上看,預(yù)言機(jī)解決的是信任問(wèn)題。用預(yù)言機(jī)上鏈數(shù)據(jù)并不難,簡(jiǎn)單的讀寫操作把一個(gè)鏈下的數(shù)據(jù)喂給鏈上的合約;但生產(chǎn)信任卻很難,如何使得自己提供的數(shù)據(jù)能夠滿足用戶對(duì)信任的需求。
結(jié)語(yǔ)
從信息互聯(lián)到價(jià)值互聯(lián),區(qū)塊鏈技術(shù)將爆發(fā)出巨大的生命力,跨鏈技術(shù)使得鏈于鏈之間價(jià)值的自由流轉(zhuǎn),預(yù)言機(jī)使得現(xiàn)實(shí)世界于區(qū)塊鏈?zhǔn)澜绲倪B接于統(tǒng)一,智能合約的自動(dòng)執(zhí)行于觸發(fā),將夠帶來(lái)商業(yè)模式的巨大變革,引領(lǐng)未來(lái)互聯(lián)網(wǎng)網(wǎng)從2.0時(shí)代到3.0的變革。
來(lái)源: ChainX社區(qū)?
評(píng)論