現(xiàn)在區(qū)塊鏈領(lǐng)域發(fā)展迅速,但總體還在初級階段。從底層的公鏈,到真正能實(shí)現(xiàn)各個(gè) Dapp 們 “顛覆谷歌”、“顛覆Facebook” 的雄心壯志,中間還有不少的路要走。
而這 “不少的路”,指的其實(shí)就是中間層。
如何定義中間層
中間層是什么?目前并沒有公認(rèn)定義。不過,我們可以和傳統(tǒng)互聯(lián)網(wǎng)對比。
如果我們把傳統(tǒng)互聯(lián)網(wǎng)的結(jié)構(gòu)分成五層的話,則有:
那么相對應(yīng)地,區(qū)塊鏈也可以分為五層:
硬件即挖礦與礦機(jī),之前在中有介紹;例如比特幣、以太坊、EOS 等,負(fù)責(zé)搭建基礎(chǔ)設(shè)施。而區(qū)塊鏈與 C 端的結(jié)合 —— 比如游戲、物流等 —— 則是最上層的 DApp(Decentralized Application,分布式應(yīng)用)應(yīng)用層。
因此我們也可以說,中間層要解決的問題,就是如何成為底層基礎(chǔ)設(shè)施和上層 DApp 之間的橋梁,讓區(qū)塊鏈技術(shù)能被真正運(yùn)用到生活中。
在這個(gè)基礎(chǔ)上,我們又把中間層進(jìn)一步分成了兩部分:面向公鏈的下層中間層,和面向 DApp 的上層中間層。這篇文章主要討論面向公鏈的下層中間層。
中間層在解決的問題很多,此處我們主要探討下目前最熱門、最急需解決的三大問題:
擴(kuò)容
區(qū)塊鏈下計(jì)算和存儲(chǔ)
下面,我們就結(jié)合每個(gè)領(lǐng)域有代表性的項(xiàng)目,說說這三部分的目前的發(fā)展趨勢。
擴(kuò)容:區(qū)塊鏈技術(shù)落地最關(guān)鍵一步
我們這里討論的擴(kuò)容定義如下:如何在 DApp 增加的情況下,通過提高主網(wǎng)性能(比如提高吞吐量、降低延遲等)且不影響用戶體驗(yàn)的辦法,適應(yīng)新的用戶需求。
擴(kuò)容是中間層發(fā)展里,最關(guān)鍵、最需要解決的問題。如果擴(kuò)容問題都沒解決,就開始談?wù)撚?jì)算儲(chǔ)存 oracle,那基本就是耍流氓。
說到擴(kuò)容,不少人的第一反應(yīng)都是解決比特幣擁堵問題的閃電網(wǎng)絡(luò)(Lightning Network),和其以太坊版本的雷電網(wǎng)絡(luò)(Raiden Network)。由于這兩種解決方式是對公鏈本身性能的補(bǔ)充,因此我們暫不把它們算作中間層,本文僅做簡單介紹。
我們知道,比特幣交易速度太慢一直是其致命弱點(diǎn):每秒僅能處理 7 筆交易。這個(gè)速度讓每秒能處理 2.4 萬筆交易的 VISA 笑而不語...就連 Bitcoin Cash 這種比特幣的 “山寨幣”,都有每秒 61 筆的速度。
圖自網(wǎng)絡(luò),版權(quán)屬于原作者
為解決這個(gè)問題,有人提出,我們沒必要在區(qū)塊鏈上記錄每一筆交易,可以把這筆交易搬到鏈下,這就是 “閃電網(wǎng)絡(luò)” 的思路。換句話說,閃電網(wǎng)絡(luò)在比特幣的區(qū)塊鏈上又加了一層,用戶能在這個(gè)新添加的一層上,與任意其他用戶搭建起一條專門用于支付的 “快速通道”。由于這個(gè)通道是兩個(gè)人之間的特殊管道,因此有交易速度快、交易費(fèi)用極低甚至免費(fèi)的優(yōu)點(diǎn)。
然而,主要解決支付問題的閃電網(wǎng)絡(luò)和雷電網(wǎng)絡(luò)也有它們?nèi)晕唇鉀Q的問題。這就說到了下一代意在解決擴(kuò)容問題的項(xiàng)目。
我們在這里介紹兩個(gè)比較有代表性的項(xiàng)目:
Loom Network和Celer Network。
Loom Network 是以太坊側(cè)鏈平臺(tái),意在把游戲和社交功能從擁堵的以太坊網(wǎng)絡(luò)中分離出來,分擔(dān)以太坊主網(wǎng)數(shù)據(jù)負(fù)載,以解決以太坊擁堵。
記得 CryptoKitties 嗎?Loom Network 的誕生和它還很有關(guān)系呢!
去年年底,基于以太坊開發(fā)的云擼貓游戲 CryptoKitties 突然爆火,但由于以太坊主網(wǎng)是主要為解決金融交易而誕生、且大額和小額交易并無區(qū)分,因此 CryptoKitties 爆火后帶來的大量小額交易一下就讓以太坊吃不消了,發(fā)生了極為嚴(yán)重的擁堵問題。
Vitalik “宿敵” BM:傻了吧?還是真貓好玩
為解決以太坊的擁堵問題,Loom Network 團(tuán)隊(duì)在以太坊的主鏈上開發(fā)了 Loom Network 側(cè)鏈,這一側(cè)鏈解決方案,V 神看了都說好。
圖片截取自 Vitalik 推特
之所以得到 V 神垂青,是因?yàn)?Loom Network 很可能成為以太坊應(yīng)用落地的關(guān)鍵。為什么這么說呢?
這里我們要介紹一個(gè)新概念:DAppChains。DAppChains 是一個(gè)可運(yùn)行在以太坊智能合約上、能大規(guī)模優(yōu)化數(shù)據(jù)而非僅僅是金融交易的側(cè)鏈。而 Loom 的 DApp chains 是Loom 針對以太坊主鏈單獨(dú)開發(fā)出來的側(cè)鏈,以成為以太坊網(wǎng)絡(luò)上的“游戲”和“社交”的平臺(tái)。
除了強(qiáng)大的數(shù)據(jù)處理能力、Loom Network 還推出了軟件開發(fā)工具包 SDK,讓不懂底層區(qū)塊鏈架構(gòu)的開發(fā)者也能開發(fā) DApp,降低開發(fā) DAPP 門檻;另外,Loom Network 還順手推出了 EthFiddle 和 SolidityX 兩款產(chǎn)品,讓程序員開發(fā)復(fù)雜項(xiàng)目更簡單。這些特點(diǎn)使不寫白皮書、只出產(chǎn)品的 Loom Network 被寄予厚望。Loom 的應(yīng)用領(lǐng)域是大型在線游戲以及社交應(yīng)用,也就是說,以后區(qū)塊鏈上的魔獸世界、Fortnite、臉書微博,有可能都要跑在 Loom 上面。
現(xiàn)在我們再來說說 Celer Network。和剛才的 Loom Network 線下處理游戲和社交功能不同,Celer Network 是第一個(gè)具有連貫技術(shù)和經(jīng)濟(jì)架構(gòu)的脫鏈運(yùn)營網(wǎng)絡(luò),意在讓區(qū)塊鏈有互聯(lián)網(wǎng)級別的可擴(kuò)展性。Celer Network 可橫向擴(kuò)展到每秒數(shù)十億次的交易。
Celer Network 實(shí)現(xiàn)這個(gè)目標(biāo)的方法之一,就是對鏈下擴(kuò)容的革新。這要從現(xiàn)在鏈下擴(kuò)容的趨勢談起。鏈下擴(kuò)容主要有兩個(gè)方向:狀態(tài)通道擴(kuò)容(state channels)以及側(cè)鏈擴(kuò)容,兩種方法各有利弊。
什么叫狀態(tài)通道擴(kuò)容呢?打個(gè)比方,你把一些錢從你的銀行賬戶轉(zhuǎn)到了支付寶上,以后每次你用支付寶買東西時(shí),就直接在支付寶內(nèi)加加減減,不用通知你的銀行,而你在支付寶內(nèi)的交易也不會(huì)反映在你的銀行記錄里,從銀行的角度看,就省了不少記賬的麻煩事。
這就是狀態(tài)通道的思路,在這個(gè)例子里,銀行相當(dāng)于公鏈,支付寶是每人自己的賬戶,不用每筆帳都麻煩公鏈記錄,公鏈可以做別的事情,也就相當(dāng)于給公鏈擴(kuò)容了。
不少人認(rèn)為,狀態(tài)通道存在天然的局限性,比如其更適用于固定交互雙方的高頻互動(dòng),而不適用于頻繁變動(dòng)的交互雙方的低頻交互。小探在查資料時(shí),也看到了這種說法頗為流行。
但 Celer Network 的團(tuán)隊(duì)認(rèn)為,這個(gè)論斷其實(shí)是不準(zhǔn)確的,因其并沒有考慮到“網(wǎng)絡(luò)“的作用。誠然一個(gè)多邊狀態(tài)通道的參與方相對固定,但一旦狀態(tài)通道形成網(wǎng)絡(luò),就可以非常靈活地與任意的網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行高頻或低頻的交互,且可以隨時(shí)變換交互方并同時(shí)與多方交互。這里就如同家里的電腦僅憑一根網(wǎng)線就可以任意遨游互聯(lián)網(wǎng)一樣。支持這樣的網(wǎng)絡(luò)平臺(tái)正是 Celer Network 的重點(diǎn)工作方向之一。
與狀態(tài)通道擴(kuò)容相對的是側(cè)鏈擴(kuò)容。側(cè)鏈擴(kuò)容使單個(gè)區(qū)塊的容量更多,即同時(shí)使用側(cè)鏈的人數(shù)更多,但單筆交易速度就會(huì)更慢。
而 Celer Network 則可以根據(jù)需要,自行在側(cè)鏈和狀態(tài)通道中做出選擇。
不論 Loom Network、Celer Network、或 Liquidity Network 等其他意在解決可擴(kuò)展性的項(xiàng)目,可擴(kuò)展性一直以來都是區(qū)塊鏈和加密貨幣領(lǐng)域的一個(gè)重要瓶頸。“高效” 和 “去中心化” 兩者不可兼得,而不同技術(shù)的解決方式都是在盡量平衡兩者。
解決可擴(kuò)展性難度不小,但可擴(kuò)展性是計(jì)算、存儲(chǔ)、以及 Oracle 的基礎(chǔ)。如果可擴(kuò)展性不解決,區(qū)塊鏈的大規(guī)模應(yīng)用也就遙遙無期。
計(jì)算:和 “1999年的手機(jī)一樣快”
現(xiàn)在以太坊慢到什么地步呢?以太坊創(chuàng)始人 Vitalik 曾開玩笑說以太坊速度和 “1999年的手機(jī)”一樣快。顯然,對于自稱 “世界計(jì)算機(jī)” 的以太坊來說,這個(gè)速度遠(yuǎn)遠(yuǎn)不夠。
為了提速,以太坊社區(qū)沒少想辦法:從PoS 到雷電網(wǎng)絡(luò)、從分片技術(shù)(在我們之前的公鏈文章里有提到)到狀態(tài)通道技術(shù),不一而足。而區(qū)塊鏈項(xiàng)目 TrueBit 提出來了一種新的思路:提高網(wǎng)絡(luò)本身的計(jì)算能力,而不僅僅是加快交易速度。
TrueBit 將算力移到鏈外,從而繞過以太坊運(yùn)行被燃料費(fèi)限制的這個(gè)瓶頸,以達(dá)到擴(kuò)容的目的。理論上說,不論計(jì)算任務(wù)多大,TrueBit 都可以安全完成。
但 TrueBit 依然需要驗(yàn)證一個(gè)計(jì)算是否正確。為了讓礦工能在有限帶寬下驗(yàn)證計(jì)算,TrueBit 設(shè)計(jì)了一套制度:TrueBit 對正確完成計(jì)算任務(wù)的礦工進(jìn)行獎(jiǎng)勵(lì),以此調(diào)動(dòng)積極性。但計(jì)算任務(wù)完成得正不正確,誰說了算呢?為此,TrueBit 設(shè)計(jì)了 TrueBit 合約,誰去驗(yàn)證合約,誰就能得到獎(jiǎng)勵(lì)。如果出現(xiàn)爭議,TrueBit 會(huì)以 “驗(yàn)證游戲” 的方式檢查合約中的細(xì)節(jié)。
需要注意的是,TrueBit 的這套機(jī)制不是為了找出哪些節(jié)點(diǎn)誠實(shí)可信,而是通過假設(shè)所有節(jié)點(diǎn)都想利益最大化,去獲得利益最大化的外部計(jì)算機(jī)資源,用這種方式提高計(jì)算能力。
作為以太坊智能合約的一種,其他以太坊智能合約可以把 TrueBit 作為子程序,因此 TrueBit 就能增加每一個(gè)以太坊網(wǎng)絡(luò)可以正確處理的區(qū)塊數(shù)量,以達(dá)到提升以太坊容量的目的。
Plasma 和 TrueBit 想法類似,都是通過設(shè)立獎(jiǎng)勵(lì)機(jī)制達(dá)到擴(kuò)容目的,但具體思路有不同,因?yàn)槠壒示筒辉诒疚亩嘧鼋榻B。
看來,不論用哪種方法,以太坊的擴(kuò)容問題需要解決已是社區(qū)內(nèi)的普遍觀點(diǎn)。
存儲(chǔ):應(yīng)對數(shù)據(jù)井噴,只能是去中心化存儲(chǔ)
隨著人工智能、物聯(lián)網(wǎng)等的發(fā)展,我們產(chǎn)生的數(shù)據(jù)呈幾何式增長。據(jù)估計(jì),2020 年時(shí)(也就是一年半以后...),全球聯(lián)網(wǎng)的設(shè)備數(shù)量將超過 200 億臺(tái)。此外,基于區(qū)塊鏈技術(shù)的眾多 DApp 也將使用和產(chǎn)生大量數(shù)據(jù)。
這么多數(shù)據(jù),都存放在哪兒呢?而且就算找到地方存儲(chǔ)這些數(shù)據(jù),隨著數(shù)據(jù)井噴,如果我們想找某個(gè)數(shù)據(jù),又該如何從海量數(shù)據(jù)里迅速準(zhǔn)確地再把它找出來?
目前普遍認(rèn)為,去中心化存儲(chǔ)是解決方案。類似于區(qū)塊鏈的分布式賬本技術(shù),去中心化存儲(chǔ)也可以把數(shù)據(jù)放到多個(gè)、而不是單個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)上。
與去中心化存儲(chǔ)相對應(yīng)的,當(dāng)然是中心化存儲(chǔ) —— 這也是現(xiàn)在存儲(chǔ)數(shù)據(jù)的主要方式。無論是單系統(tǒng)存儲(chǔ)、還是云端存儲(chǔ)(比如亞馬遜的 AWS),都是高度中心化的。中心化的系統(tǒng)往往脆弱而高效,而去中心化存儲(chǔ)則不會(huì)有這個(gè)問題。
但是,隨著區(qū)塊鏈交易量逐漸上漲、可擴(kuò)展性問題還沒解決,“把大量數(shù)據(jù)都存儲(chǔ)在區(qū)塊鏈上” 這種思路就越發(fā)行不通。
而 Swarming(運(yùn)用大量節(jié)點(diǎn))和 Sharding(分片),這兩項(xiàng)重要的互補(bǔ)技術(shù)提出了 “分區(qū)的集中存儲(chǔ)” 這一解決去中心化存儲(chǔ)問題的思路。在上一篇文章里,我們談到了 Sharding 技術(shù),在此就不再贅言。
那么 swarming 是什么意思呢?Swarm 在英語里是 “蜂群” 的意思,正像很多蜜蜂一起合作、有條不紊地朝著同一個(gè)目標(biāo)工作一樣,去中心化存儲(chǔ)里 swarming 這種方式也是利用龐大的節(jié)點(diǎn)組對數(shù)據(jù)進(jìn)行存儲(chǔ)和管理,而每個(gè)節(jié)點(diǎn)就叫做 swarm —— 這么看來,swarm 這個(gè)名字倒是起得很恰當(dāng)。
-
互聯(lián)網(wǎng)
+關(guān)注
關(guān)注
54文章
11187瀏覽量
103872 -
區(qū)塊鏈
+關(guān)注
關(guān)注
111文章
15563瀏覽量
106705
原文標(biāo)題:顛覆 Google、Facebook 前,區(qū)塊鏈項(xiàng)目先要解決這3個(gè)問題
文章出處:【微信號:worldofai,微信公眾號:worldofai】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論