輿論是個(gè)很有意思的東西。去年年底到今年年初,我們聽到了那么多關(guān)于區(qū)塊鏈技術(shù)的贊美,現(xiàn)在,我們又聽到人們對(duì)這項(xiàng)技術(shù)的各種全盤否定。最近我在不同地方看到了不同文章,獲得了不少點(diǎn)擊數(shù),并被人們大量轉(zhuǎn)發(fā),這些火熱的文章都是一個(gè)主題,強(qiáng)調(diào)區(qū)塊鏈技術(shù)無用論調(diào),并切列舉了各種與區(qū)塊鏈技術(shù)相關(guān)的騙局。
其實(shí)這也很正常。市場(chǎng)研究公司 Gartner 早在九十年代就總結(jié)出一個(gè)叫做「技術(shù)循環(huán)曲線 The Hype Cycle」的模型,來總結(jié)一項(xiàng)全新科技如何在各種熱炒冷貶和人們的希望與失望之中,成熟演變的過程。
Gartner 技術(shù)循環(huán)曲線的基本周期,揭示了新技術(shù)所經(jīng)歷的周期:誕生的促動(dòng)期-過高期望的峰值-泡沫化的底谷期-穩(wěn)步爬升的光明期-實(shí)質(zhì)生產(chǎn) (Image Credit: https://www.gartner.com/en/research/methodologies/gartner-hype-cycle)
Gartner 在 2018 年更新的技術(shù)循環(huán)曲線最新狀態(tài),列出區(qū)塊鏈技術(shù)正在從「過高期望的峰值」步入「泡沫化的底谷期」( Image Credit: https://www.gartner.com/smarterwithgartner/5-trends-emerge-in-gartner-hype-cycle-for-emerging-technologies-2018/ )
對(duì)于一個(gè)非資深技術(shù)背景的人,在技術(shù)早期發(fā)展階段,要從蕪雜的市場(chǎng)表現(xiàn)中理清技術(shù)價(jià)值的本質(zhì),實(shí)屬難上加難。越是基礎(chǔ)層面的技術(shù)發(fā)展,越會(huì)造成嚴(yán)重的信息不對(duì)稱,越是容易被人利用來構(gòu)造騙局,越是需要深入探究,透過現(xiàn)象看清其本質(zhì),同樣的局面在互聯(lián)網(wǎng)早期一樣出現(xiàn)過。
作為計(jì)算機(jī)科學(xué)的PhD, 這個(gè)過程我花了近十年,才略見端倪。我看到了區(qū)塊鏈技術(shù)本質(zhì)上帶來了什么,有什么是現(xiàn)有技術(shù)和基礎(chǔ)設(shè)施及其組合無法實(shí)現(xiàn)的。正值中本聰發(fā)表關(guān)于比特幣的論文十周年之際,我想把自己在區(qū)塊鏈這個(gè)領(lǐng)域內(nèi)的經(jīng)歷,以及為什么我相信區(qū)塊鏈技術(shù)是一項(xiàng)了不起的技術(shù)梳理一下,通過這篇文章分享給大家。
第一個(gè)十年
記得 2009 年,我還在微軟亞洲研究院(MSRA)趕論文,投ACM SIGGRAPH 年會(huì) (一個(gè)計(jì)算機(jī)圖形學(xué)領(lǐng)域的頂會(huì)) 的年代,無意看到了中本聰關(guān)于比特幣的論文,覺得很有意思,安利了身邊的朋友一起去挖礦。當(dāng)然,幾周之后也就忘記了。
當(dāng)時(shí)我還沒有開始從事分布式系統(tǒng)方向的研究,沒有意識(shí)到這全網(wǎng)發(fā)生的premissionless共識(shí)協(xié)議有多么偉大,甩了拜占庭容錯(cuò)(BFT)算法幾條街,也沒有意識(shí)到這個(gè)東西在若干年之后會(huì)改變了自己的財(cái)務(wù)軌跡,更沒有意識(shí)到這項(xiàng)工作是一個(gè)全新世界的開端。
我非常慶幸自己經(jīng)歷過的這10年,雖然大部分時(shí)候,只是作為一個(gè)看客。
不少朋友問我,區(qū)塊鏈這個(gè)東西是個(gè)什么技術(shù),靠譜嗎?這里先給結(jié)論。對(duì)于問題的前半部分, 我的回答是:區(qū)塊鏈?zhǔn)且粋€(gè)獨(dú)特的技術(shù),并且實(shí)現(xiàn)了全所未有的能力,這個(gè)能力無法用既有技術(shù)的組合實(shí)現(xiàn)。對(duì)于問題的后半部分,在這里我不作任何投資建議,但是我的回答是肯定的:區(qū)塊鏈技術(shù)一定有切實(shí)落地的場(chǎng)景,可以滿足之前無法滿足的需求,從前所未有的角度帶來效益的提升。但是,我必須指出,在我看來,區(qū)塊鏈技術(shù)靠譜的場(chǎng)景,極大概率不是大家眼下看到的這些,也不是對(duì)現(xiàn)有解決方案的改進(jìn),而是全新的范式下新的業(yè)務(wù)模型、新的盈利模式。評(píng)估一項(xiàng)技術(shù)本身的正確性是相對(duì)容易的,而要評(píng)估一項(xiàng)技術(shù)能產(chǎn)生的社會(huì)影響力以及經(jīng)濟(jì)價(jià)值,卻是難上加難。越是帶來根本上變化的技術(shù),其發(fā)展軌跡就越是難以琢磨。區(qū)塊鏈就是一個(gè)例子。
2013年,那時(shí)我在微軟總部主導(dǎo)了一個(gè)基于GPU集群的機(jī)器學(xué)習(xí)計(jì)算平臺(tái)的設(shè)計(jì)和研發(fā)工作。我用這個(gè)架構(gòu)在自己家里挖了一段時(shí)間的萊特幣(LTC)。現(xiàn)在來看,那是我首次「脫貧」,摘掉了「no-coiner」的帽子。而后,我也入坑交易所,作為一名新韭菜入場(chǎng)了。然后在若干次被割之后,痛定思痛,最后開啟了量化交易的職業(yè)支線。在這個(gè)過程中,對(duì)技術(shù)的認(rèn)可并沒有幫助我對(duì)加密貨幣的幣價(jià)有任何有效的認(rèn)知。一個(gè)沒有切實(shí)落地的技術(shù),價(jià)值何來?只用量化程序去發(fā)掘短線的價(jià)格趨勢(shì)就好了。當(dāng)時(shí)我沒有看明白,區(qū)塊鏈到底帶來了什么。2017年,我來創(chuàng)新工場(chǎng)做EIR(駐場(chǎng)企業(yè)家)兼投資人,看了無數(shù)區(qū)塊鏈的商業(yè)計(jì)劃書,各種花式白皮書,從底層技術(shù)到上層應(yīng)用,各種漏洞百出的技術(shù)架構(gòu),自說自話的經(jīng)濟(jì)模型,荒誕鬼扯的應(yīng)用場(chǎng)景,簡(jiǎn)直百花齊放。還好這一年里面,我們投了比特大陸,稍微正色履行了一下我這個(gè)投資人的角色。礦機(jī)業(yè)務(wù)確實(shí)賺錢,交易所也很賺錢,但這一切都是建立在對(duì)數(shù)字貨幣未來期許的基礎(chǔ)上,而不是基于任何當(dāng)下區(qū)塊鏈的切實(shí)業(yè)務(wù)。
這一場(chǎng)曠日持久的擊鼓傳花還可以走多遠(yuǎn)?如果始終沒有大體量的切實(shí)落地的業(yè)務(wù)頂上,相信總有落幕的那天。不過誰知道呢,就像2016年的那場(chǎng)以太幣的傳銷始終沒有崩盤,而是被2017年那場(chǎng)更大規(guī)模的ICO續(xù)上命了。不過在這個(gè)時(shí)期,市場(chǎng)上的DApp給了我一些提示。
核心技術(shù)價(jià)值
我相信,區(qū)塊鏈技術(shù)帶來了一些特別的東西,前所未有的東西。
時(shí)間到了2018年,7月份出現(xiàn)了一個(gè)游戲,玩家眾多,又一次嚴(yán)重阻塞了以太坊網(wǎng)絡(luò)。Fomo3D,一個(gè)典型的資金盤游戲,玩家以遞增的價(jià)格買鑰匙,如果一段時(shí)間內(nèi)無人買鑰匙則游戲停止,最后一個(gè)鑰匙買家贏得沉淀資金的一半,另一半資金均價(jià)回購(gòu)所有的鑰匙。
這是一個(gè)設(shè)計(jì)的還不錯(cuò)的龐氏游戲,首輪結(jié)束時(shí)瓜分了價(jià)值180萬美元等值的以太幣。有意思的倒不是這個(gè)游戲本身,而是這個(gè)游戲執(zhí)行的方式。這個(gè)資金盤沒有任何的價(jià)值包裝,只是赤裸裸地描述規(guī)則,項(xiàng)目方也是完全匿名,沒有任何背景可查,分分鐘準(zhǔn)備跑路的樣子。但是游戲就在這樣一個(gè)完全沒有信任背書的情況下,開盤了,無數(shù)玩家竟然都信了,都沖進(jìn)去了。然后一切都如期發(fā)生了,之前約定的規(guī)則都被嚴(yán)格執(zhí)行了,沒有任何意外。通常龐氏總是和騙局連在一起,不過這個(gè)游戲是一場(chǎng)「龐氏」,但卻不是一場(chǎng)「騙局」。
這是我想說的區(qū)塊鏈技術(shù)的核心價(jià)值(也許是之一),是前所未有的能力,是之前任何信息技術(shù)無法實(shí)現(xiàn)的:
在業(yè)務(wù)全部信息可形式化的范疇內(nèi),讓這個(gè)計(jì)算系統(tǒng)可以自證清白。
回到前面講到的游戲,正是因?yàn)檫\(yùn)行在以太坊上面,區(qū)塊鏈技術(shù)實(shí)現(xiàn)了規(guī)則一旦被制定、被部署,就無法被修改,連運(yùn)營(yíng)者開發(fā)者都也無法修改。只要以太坊沒有因?yàn)楸?1%攻擊而摧毀,這些預(yù)設(shè)的規(guī)則就會(huì)被嚴(yán)格執(zhí)行,不受任何人的干擾和控制。規(guī)則將以開源的方式部署,任何人都可以查看并確信規(guī)則的每一個(gè)細(xì)節(jié)。即使最初的開發(fā)者突然人間蒸發(fā),也不會(huì)影響游戲的正常運(yùn)行。這樣的一個(gè)游戲系統(tǒng),自證清白,一切會(huì)按照預(yù)設(shè)的方式發(fā)生,而不會(huì)有任何意外。所有玩家不需要信任游戲的開發(fā)者不會(huì)作惡,也不用擔(dān)心相信游戲的運(yùn)營(yíng)過程會(huì)有任何的貓膩。如果信息服務(wù)系統(tǒng)可以自證清白,那么其所承載的業(yè)務(wù)就可以贏得所有人的信賴。這個(gè)情形其實(shí)并不是建立了信任,而是業(yè)務(wù)的運(yùn)行不需要信任了(trustless)。同時(shí)大家也可以很簡(jiǎn)單地認(rèn)同這樣的業(yè)務(wù)所傳遞的價(jià)值,不需要各種前置的信任建立過程,省去了大量的時(shí)間和精力,這就是共識(shí)的價(jià)值。
但是區(qū)塊鏈技術(shù)不是萬能的,能夠自證清白地運(yùn)行是有前提的:
1. 相關(guān)業(yè)務(wù)的信息必須能夠被形式化并體現(xiàn)在系統(tǒng)內(nèi)部。所以比特幣的儲(chǔ)值、支付、發(fā)行過程是有保障的、不需要信任的,但是比特幣對(duì)法幣的價(jià)格不在系統(tǒng)內(nèi)部,系統(tǒng)本身無法保障這個(gè)事情,完全依賴外部的信任(或者說信仰。..)
2. 系統(tǒng)的物理計(jì)算設(shè)備必須是去中心化的,并且參與系統(tǒng)的過程可以有壁壘,但是必須沒有授權(quán)控制方(premissionless)。較之傳統(tǒng)的支付接入,比特幣作為支付系統(tǒng),任何接入方無需申請(qǐng),也不需要和任何方簽訂協(xié)議,也不會(huì)被費(fèi)率歧視或者擔(dān)心哪天會(huì)被吊銷。
3. 系統(tǒng)承載的業(yè)務(wù)邏輯的代碼必須開源,并且可以證明實(shí)際系統(tǒng)中運(yùn)行的代碼就是源碼公開的那一份。結(jié)合上一條,這意味著,系統(tǒng)的運(yùn)營(yíng)也將不再屬于任何一方。所有人在這個(gè)系統(tǒng)中都沒有既定規(guī)則以外凌駕于其他人之上的特殊優(yōu)勢(shì),包括開發(fā)者。
脫離特定物理計(jì)算設(shè)備的圖靈機(jī)
1936年艾倫·圖靈提出了圖靈機(jī)這個(gè)高度抽象的計(jì)算模型,開啟了計(jì)算機(jī)科學(xué)時(shí)代篇章。1945年,馮·諾伊曼在圖靈機(jī)的基礎(chǔ)上給出了工程上可以實(shí)現(xiàn)馮·諾伊曼架構(gòu),直到現(xiàn)在,大多數(shù)的計(jì)算機(jī)從CPU到GPU,從Intel到ARM都是遵從這一架構(gòu),并藉由半導(dǎo)體技術(shù)將其的規(guī)模、速度以及性能-功耗比提高到了當(dāng)年不可想象的高度。但是其基本原理始終是下圖的結(jié)構(gòu)。
如果我們用計(jì)算機(jī)體系結(jié)構(gòu)的視角去看待區(qū)塊鏈,他是一個(gè)馮·諾伊曼架構(gòu)的延伸。
在區(qū)塊鏈中,「輸入」是未定序未確認(rèn)的交易,「輸出」是有序的經(jīng)過確認(rèn)的交易,而「內(nèi)存」中則是賬簿的狀態(tài)。其中央處理器執(zhí)行的是硬編碼(hardcoded)在區(qū)塊鏈節(jié)點(diǎn)軟件中的交易邏輯,或者是第三方部署的智能合約。
我這里從這個(gè)視角展現(xiàn)區(qū)塊鏈,是為了用最簡(jiǎn)潔的方式介紹區(qū)塊鏈的工作原理,并不是想說區(qū)塊鏈本身也是一個(gè)通用計(jì)算機(jī),或者說世界大計(jì)算機(jī)。
馮·諾伊曼架構(gòu)最初是在一個(gè)完全中心化的設(shè)定下給出的,現(xiàn)在的計(jì)算機(jī)單機(jī)、大型機(jī)乃至集群和云服務(wù),本質(zhì)上都是這樣的一個(gè)模型。他們關(guān)心的是高效地完成計(jì)算,是狀態(tài)被正確更新,得出預(yù)期的輸出。整個(gè)系統(tǒng)的輸入、執(zhí)行邏輯和原始狀態(tài)都被可信的單一方控制。
而區(qū)塊鏈?zhǔn)窃谝粋€(gè)去中心化的設(shè)定下給出的,整個(gè)計(jì)算系統(tǒng)不被任何一方長(zhǎng)期控制。區(qū)塊鏈關(guān)心的是這個(gè)計(jì)算是如何完成的,系統(tǒng)的輸入是否合法,執(zhí)行邏輯是不是被篡改。至于其承載的實(shí)際計(jì)算量,用一臺(tái)單機(jī)就可以分分鐘計(jì)算完這十年的所有歷史交易。現(xiàn)有的馮·諾伊曼架構(gòu)的計(jì)算系統(tǒng),其計(jì)算過程始終在一個(gè)固定的物理計(jì)算設(shè)備上完成,并且這個(gè)計(jì)算設(shè)備有單一的控制方。可能是一個(gè)手機(jī),一臺(tái)電腦,甚至一個(gè)數(shù)據(jù)中心。對(duì)于這個(gè)系統(tǒng)的控制者,只要防好黑客,他是可以相信這個(gè)計(jì)算系統(tǒng)的。而其他人則沒有信任的依據(jù),系統(tǒng)的控制者也無法向第三方證明系統(tǒng)是可信的,即使開源了也不行,即使用上了SGX技術(shù)也沒什么幫助。
而這正是區(qū)塊鏈所攻克的問題。區(qū)塊鏈將馮·諾伊曼架構(gòu)的計(jì)算架構(gòu)進(jìn)一步拓展,使其同特定的物理計(jì)算設(shè)備分離,才能從根本上避免計(jì)算過程被單一的控制方掌控,讓所有人都可以信賴這個(gè)計(jì)算系統(tǒng)。無論是工作量證明(PoW)、權(quán)益證明(PoS)或者拜占庭容錯(cuò)(BFT)等共識(shí)機(jī)制,上述計(jì)算過程的實(shí)際步驟在全球不同的物理基礎(chǔ)(節(jié)點(diǎn))上完成。而不同共識(shí)算法的本質(zhì)就是給出一個(gè)依次選擇這些物理基礎(chǔ)的方案,保證其公允,保證其安全。同時(shí)在數(shù)據(jù)傳遞層面(提交輸入,獲取輸出),藉由既有的點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)技術(shù),使得通訊沒有一個(gè)固定的接入點(diǎn),不依賴于特定的IP地址。從而使得這個(gè)計(jì)算系統(tǒng)能夠在所有人的監(jiān)督下,可信地完成計(jì)算過程,很難被篡改,也很難被阻止。
為了脫離特定的物理計(jì)算設(shè)備,區(qū)塊鏈在性能上付出了重大的代價(jià)。在不同的節(jié)點(diǎn)上間歇完成計(jì)算步驟,需要每個(gè)節(jié)點(diǎn)都準(zhǔn)備好計(jì)算所需要的上下文和輸入數(shù)據(jù)。在一個(gè)計(jì)算步驟完成之后,需要每一個(gè)節(jié)點(diǎn)都獲取到最新的輸出數(shù)據(jù),并更新上下文。期間涉及到大量的冗余的信息傳遞和存儲(chǔ)以及相應(yīng)的計(jì)算。當(dāng)然后續(xù)有非常多的優(yōu)秀團(tuán)隊(duì),改進(jìn)這一設(shè)計(jì),提升其性能和容量,但無論設(shè)計(jì)如何優(yōu)化,這些冗余的通訊、存儲(chǔ)和計(jì)算是不可能徹底避免的。不過這些代價(jià)是值得的,它給馮·諾伊曼架構(gòu)賦于了全新的計(jì)算本質(zhì):一個(gè)可以脫離特定物理基礎(chǔ)的計(jì)算方式,一個(gè)可被任一第三方信賴的計(jì)算過程。
區(qū)塊鏈的計(jì)算本質(zhì)
通過剝離數(shù)字貨幣這個(gè)構(gòu)建在區(qū)塊鏈技術(shù)上的應(yīng)用,上圖給出了區(qū)塊鏈本質(zhì)上的計(jì)算模型。與常規(guī)的馮·諾伊曼架構(gòu)最大的區(qū)別,是同特定的物理計(jì)算設(shè)備分離。一旦代碼被部署,狀態(tài)被初始化,全網(wǎng)開始工作,這個(gè)計(jì)算系統(tǒng)將以不受任何控制方控制的方式開始運(yùn)行,永不停止。系統(tǒng)不斷獲取外部提交的企圖改變系統(tǒng)狀態(tài)的操作(OP),依次確認(rèn)這些操作,以有序的方式輸出這些合法的操作,并同步執(zhí)行這些操作改變系統(tǒng)的狀態(tài)。
所以:
賬簿不是區(qū)塊鏈的本質(zhì) 這個(gè)系統(tǒng)維護(hù)的狀態(tài)完全可以是賬簿之外的東西,當(dāng)然更可以不是數(shù)據(jù)庫(kù)。它可以是社交關(guān)系圖譜,可是是網(wǎng)頁(yè)的相關(guān)性及排名,也可以是每個(gè)人信用分?jǐn)?shù)和歷史等等。其規(guī)則所執(zhí)行的也可以不是交易,而是任何可以被形式化、數(shù)字化的信息。交易不可篡改不是區(qū)塊鏈的本質(zhì) 這個(gè)系統(tǒng)不可篡改的是既定的規(guī)則(代碼),以及不可篡改的初始狀態(tài)(例如比特幣的傳世區(qū)塊)。如果上層業(yè)務(wù)想要的話,我們完全可以在規(guī)則中包含翻轉(zhuǎn)或者取消交易的內(nèi)容。有序鏈?zhǔn)絽^(qū)塊打包不是區(qū)塊鏈的本質(zhì) 有序輸出數(shù)據(jù)的方式有好多種,區(qū)塊的批量打包也只是現(xiàn)在的系統(tǒng)對(duì)于性能和交易確認(rèn)延遲的一個(gè)折中。理論上一個(gè)一個(gè)出也沒問題,只要有序。輸出交易的序也可以不是嚴(yán)格的全局完整的單一線性的序,例如DAG那樣的結(jié)構(gòu)一樣是區(qū)塊鏈的可能實(shí)現(xiàn)方式,只要這個(gè)不完整的序不會(huì)對(duì)狀態(tài)重建造成混淆就行。同樣基于異步共識(shí)的分片技術(shù)也不具備全局的序,但是也不妨礙它成為高性能區(qū)塊鏈的可能解決方案。當(dāng)然,我們姑且還是可以叫:區(qū)塊鏈」這個(gè)名字。
世界計(jì)算機(jī)不是區(qū)塊鏈的本質(zhì) 區(qū)塊鏈的核心訴求在于關(guān)注計(jì)算過程的可信,而不是為了獲得計(jì)算的結(jié)果。這一點(diǎn)是與為了高效將計(jì)算完成,獲得結(jié)果的云計(jì)算本質(zhì)的區(qū)別。云計(jì)算無法實(shí)現(xiàn)向第三方證明其計(jì)算過程是可信的,區(qū)塊鏈對(duì)于計(jì)算任務(wù)本身也無法向云計(jì)算那樣的高效和低成本。
總之,區(qū)塊鏈的計(jì)算本質(zhì)是一個(gè)可以和特定計(jì)算設(shè)備分離的馮·諾伊曼架構(gòu),是可以向第三方證明的可信計(jì)算范式,目的是為了計(jì)算過程真實(shí)可信,支持上層應(yīng)用上實(shí)現(xiàn)業(yè)務(wù)邏輯的自證清白,為世界帶來可以計(jì)算的信任。
責(zé)任編輯:ct
評(píng)論
查看更多