區(qū)塊鏈的三個(gè)“天然缺陷”區(qū)塊鏈
而成功度過每一次危機(jī),都能讓這項(xiàng)技術(shù)浴火重生、鳳凰涅槃。
區(qū)塊鏈技術(shù)并不完美。
事實(shí)上,任何新技術(shù)誕生之初都會(huì)存在“先天缺陷”。缺陷會(huì)隨著技術(shù)進(jìn)步而被完善,然后在新的技術(shù)背景下,再面臨新的“缺陷”。
比如飛機(jī)這個(gè)航空技術(shù)。1903年12月,萊特兄弟進(jìn)行了人類歷史上首次試飛,但是并不受美國政府重視,同時(shí)受限于材料,空氣動(dòng)力學(xué),飛機(jī)發(fā)展也相當(dāng)緩慢。直到兩次世界大戰(zhàn),才推動(dòng)了飛機(jī)在軍事領(lǐng)域的應(yīng)用。
區(qū)塊鏈技術(shù)發(fā)展也不會(huì)例外。
時(shí)間回到2010年,彼時(shí)比特幣剛滿1周歲,由于核心代碼漏洞,有人利用該漏洞憑空造出了1840億個(gè)比特幣。
慶幸的是,在社群努力下,迅速修復(fù)了這個(gè)漏洞。而比特幣核心代碼組的開發(fā)者們,也在夜以繼日地為比特幣核心代碼庫做貢獻(xiàn),以修補(bǔ)瑕疵,這才有了區(qū)塊鏈行業(yè)的今天。
我們總是會(huì)把區(qū)塊鏈技術(shù)“完美化”,殊不知,在經(jīng)濟(jì)學(xué)家、密碼學(xué)家、計(jì)算機(jī)科學(xué)家眼中,區(qū)塊鏈技術(shù)還有很多需要改進(jìn)的地方。
例如《區(qū)塊鏈核心技術(shù)開發(fā)與應(yīng)用》就認(rèn)為目前區(qū)塊鏈技術(shù)在數(shù)學(xué)工具、博弈論、密碼學(xué)、代碼存在局限性的情況下,還有很大的改進(jìn)空間。換言之區(qū)塊鏈技術(shù)要想被大規(guī)模商用,還有很長的路要走。
那么,目前的區(qū)塊鏈還存在什么不完美的地方呢?
1
完美代碼的錯(cuò)覺
如果將比特幣網(wǎng)絡(luò)系統(tǒng)比作一個(gè)大型軟件,那么計(jì)算機(jī)技術(shù)與編程則為這項(xiàng)技術(shù)的落地提供了載體。
但是目前編程語言卻明顯存在一些不完美之處。
首先,語言種類繁多,沒有哪種語言能夠“一統(tǒng)江湖”。不同項(xiàng)目使用完全不同的編程語言,屢見不鮮:
(1)比特幣與瑞波幣使用了C ;(2)以太坊則使用了四種專用語言:Serpent(受 Python啟發(fā))、 Solidity(受 Javascript啟發(fā))、Mutan(受Go啟發(fā))和LLL(受Lisp啟發(fā)),都是為面向合約編程而從底層開始設(shè)計(jì)的語言。專用語言意味著這種語言只在開發(fā)以太坊相關(guān)應(yīng)用時(shí)才應(yīng)用;(3)很多基于區(qū)塊鏈的DApps和Tools都是用的Go語言;(4)2017年著名的ICO明星項(xiàng)目Teos則使用了極其小眾的 Michelson 與 OCaml 作為編程語言,等等。
數(shù)量眾多的開發(fā)語言
世界上編程語言多達(dá)上五十多種,但尷尬的是,沒有哪一種語言能夠占據(jù)絕對(duì)優(yōu)勢(shì)。
國內(nèi)著名經(jīng)濟(jì)學(xué)家朱嘉明認(rèn)為,在現(xiàn)實(shí)中,很可能發(fā)生因?yàn)槿魏我环N編程語言自身不足,以及不同的編程語言不足的迭加,對(duì)現(xiàn)有區(qū)塊鏈造成本源性的傷害。
其次,區(qū)塊鏈編程語言主要依賴C 、Java、Go等幾種 “高階語言”,而這些所謂的高階語言目前還存在諸多不完善之處。
以Go為例,創(chuàng)建時(shí)間是2009年,距今只有10年,其“錯(cuò)誤處理機(jī)制”、“垃圾回收器”與“編譯器”等邏輯功能,還需要逐步完善,才能滿足未來區(qū)塊鏈開發(fā)需要。
同時(shí),朱嘉明還認(rèn)為:現(xiàn)有的計(jì)算機(jī)語言正在面臨與其它新技術(shù)的融合,進(jìn)而影響區(qū)塊鏈的技術(shù)體系。例如,人工智能技術(shù)和計(jì)算機(jī)語言的融合,很可能引發(fā)計(jì)算機(jī)語言系統(tǒng)的變革。
軟件失效的邏輯
最后,由鄒均等編寫的《區(qū)塊鏈核心技術(shù)與應(yīng)用》這本書中還提到了編程人員的自覺和非自覺的錯(cuò)誤。
編程人員的錯(cuò)誤,會(huì)導(dǎo)致軟件缺陷,而軟件缺陷又會(huì)導(dǎo)致軟件故障。軟件故障是指軟件在運(yùn)行過程中導(dǎo)致不希望出現(xiàn)的錯(cuò)誤,如果不加以適當(dāng)處理,就會(huì)導(dǎo)致軟件失效。
區(qū)塊鏈技術(shù)一般運(yùn)行在相對(duì)不可信的公開環(huán)境,沒有專門的維護(hù)人員,更不可能做到像一般軟件那樣24小時(shí)公開維護(hù),因此就要求軟件要有高度的穩(wěn)健性,但是現(xiàn)實(shí)情況卻往往不是這樣的。
人為導(dǎo)致的漏洞,也會(huì)讓區(qū)塊鏈資產(chǎn)化為烏有,這種案例也屢見不鮮。
4月22日中午,有黑客利用以太坊 ERC-20智能合約中BatchOverFlow漏洞攻擊BEC(美鏈的代幣“美蜜”)智能合約,成功向兩個(gè)地址轉(zhuǎn)出了天量級(jí)別的 BEC代幣,導(dǎo)致市場(chǎng)上海量BEC被拋售。此事使得當(dāng)日BEC的價(jià)值幾乎歸零。
4月22日當(dāng)天,BEC價(jià)格從0.32美金跌到0.02美金
4月25日,僅僅三天后,另一個(gè)智能合約SmartMesh(SMT)曝出漏洞,交易所表示,因SMT出現(xiàn)異常交易,各交易平臺(tái)暫停SMT的充提和交易。
現(xiàn)實(shí)世界里,財(cái)物失竊尚能夠通過立案?jìng)刹樽坊負(fù)p失。但是在互聯(lián)網(wǎng)的世界里,盡管數(shù)字貨幣“錢途”無量,一旦被黑卻血本無歸。
因此,代碼進(jìn)步十分重要,但是程序員素養(yǎng),對(duì)行業(yè)進(jìn)步更為重要。
2
博弈論的局限
中本聰在白皮書中提到,比特幣是一種點(diǎn)對(duì)點(diǎn)的電子現(xiàn)金系統(tǒng)。實(shí)際上比特幣背后的共識(shí)機(jī)制也是點(diǎn)對(duì)點(diǎn)進(jìn)行的,一臺(tái)臺(tái)礦機(jī)合作變成礦場(chǎng),礦場(chǎng)之間通過礦池連接起來,在互相博弈中,形成一種平衡狀態(tài)。
這種博弈狀態(tài)的平衡,在朱嘉明看來,建立在“博弈論”基礎(chǔ)上的“納什均衡”最接近反映區(qū)塊鏈共識(shí)系統(tǒng)的狀態(tài)。
納什均衡是博弈論中的一種情況
“納什均衡”是指,在一個(gè)博弈過程中,博弈雙方都沒有改變自己策略的動(dòng)力,因?yàn)槿魏螁畏矫娓淖冏约旱牟呗裕紩?huì)導(dǎo)致自己的收益減少。舉個(gè)例子,以即將來臨的雙十一為例,淘寶上兩家旗艦店都在打價(jià)格戰(zhàn),任何一方在活動(dòng)期間都不敢隨便漲價(jià),因?yàn)槿魏螡q價(jià)行為都會(huì)導(dǎo)致自己一方失去優(yōu)勢(shì)。
無論是比特幣點(diǎn)對(duì)點(diǎn)的支付系統(tǒng),還是礦工之間的挖礦競(jìng)爭,都無法擺脫一個(gè)問題,在轉(zhuǎn)帳、挖礦過程中每個(gè)節(jié)點(diǎn)都存在競(jìng)爭,競(jìng)爭的結(jié)果就是誰付出的礦工費(fèi)用越高,誰的交易越快完成。
但是實(shí)際上,朱嘉明認(rèn)為,這種“納什均衡”狀態(tài)下的博弈,是當(dāng)年諾伊曼和納什研究的是有限“節(jié)點(diǎn)”下的小規(guī)模博弈,早已經(jīng)不足以面對(duì)“由幾十億節(jié)點(diǎn)的龐大對(duì)象構(gòu)成的社會(huì)、經(jīng)濟(jì)等復(fù)雜行為”。
當(dāng)然也無法支持目前比特幣、區(qū)塊鏈系統(tǒng)節(jié)點(diǎn)“幾何級(jí)數(shù)”的發(fā)展規(guī)模。
比特幣全網(wǎng)算力是47073540.92 TH/s
目前,比特幣全網(wǎng)算力是47073540.92 TH/s,市面上最常見的礦機(jī)是比特大陸的螞蟻S9礦機(jī),官方給出的這臺(tái)礦機(jī)的額定算力時(shí)14.5TH/s,簡單算個(gè)除法,結(jié)果就是全球比特幣網(wǎng)絡(luò)運(yùn)行著324.6萬臺(tái)螞蟻S9。
螞蟻S9參數(shù)
但是實(shí)際上,目前比特幣礦場(chǎng)中還運(yùn)行著很多算力低于S9的礦機(jī),這就意味著全球比特幣礦機(jī)數(shù)量遠(yuǎn)大于324.9萬臺(tái)。
在數(shù)百萬的規(guī)模上實(shí)現(xiàn)礦機(jī)、礦場(chǎng)、礦池之間的博弈平衡,絕對(duì)不是個(gè)簡單的算術(shù)問題。實(shí)際上,比特幣全網(wǎng)算力還處于不斷增長中,這種指數(shù)級(jí)別的增長,正面臨“失控”著狀態(tài)。目前比特幣礦業(yè)消耗電力已經(jīng)超過整個(gè)大英帝國的用電量。
研究機(jī)構(gòu)曾做出過這樣的統(tǒng)計(jì):如果按照去年11月份“比特幣挖礦耗電量”增長速度來計(jì)算,到2019年7月,比特幣挖礦耗電量將超過如今美國全國的用電量。
2010年以來,比特幣全網(wǎng)算力增長趨勢(shì)
同時(shí)隨著全球比特幣用戶增長,比特幣轉(zhuǎn)賬也正在消耗越來越多的“手續(xù)費(fèi)”,網(wǎng)絡(luò)擁堵就像懸在每個(gè)礦工、用戶頭上的“達(dá)摩克利斯之劍”,隨時(shí)都有可能造成巨大的負(fù)面影響。
顯然,“納什均衡”狀態(tài)下的博弈論已經(jīng)無法支撐以比特幣為代表的區(qū)塊鏈技術(shù)的前行。亟待進(jìn)行一場(chǎng)新的基礎(chǔ)科學(xué)的變革。
3
哈希算法的掣肘
“區(qū)塊鏈技術(shù)的核心其實(shí)是密碼學(xué),密碼學(xué)的重點(diǎn)則是哈希函數(shù)。”《區(qū)塊鏈核心應(yīng)用與開發(fā)》這本書提到。
你在區(qū)塊鏈上的每一筆轉(zhuǎn)賬、挖礦、應(yīng)用開發(fā)等等,只要涉及鏈上數(shù)據(jù)處理,都會(huì)涉及哈希函數(shù)。而素?cái)?shù)與數(shù)論則與哈希函數(shù)聯(lián)系緊密。
我們經(jīng)常說的比特幣POW算法本質(zhì)是一個(gè)哈希函數(shù)。
事實(shí)上,已經(jīng)有很多哈希函數(shù)被設(shè)計(jì)出來并廣泛應(yīng)用,支付寶、微信、銀行的加密無不使用哈希函數(shù)。不過Hash函數(shù)一般安全壽命都不長,被認(rèn)為安全的算法往往沒能使用多久就被成功攻擊,新的更安全的算法相繼被設(shè)計(jì)出來,而每一個(gè)被公認(rèn)為安全可靠的算法都有及其嚴(yán)格的審計(jì)過程。
SHA256對(duì)“哈希”加密
加密算法SHA家族的更迭史最能說明這個(gè)問題,從1993年SHA0被發(fā)明,在不斷被破解與重新發(fā)明的較量中,目前已經(jīng)發(fā)展到第五代SHA-512。
在幣圈中我們經(jīng)常說某某幣發(fā)明了某種算法,其實(shí)主要都是使用那些被認(rèn)證過的安全算法,或是單獨(dú)使用,或是排列組合使用。
而哈希函數(shù)與數(shù)學(xué)問題關(guān)系十分緊密,具體是指數(shù)論與素?cái)?shù)問題。
《區(qū)塊鏈核心應(yīng)用于開發(fā)》這本書認(rèn)為,目前數(shù)論還處于發(fā)展?fàn)顟B(tài),哈希函數(shù)當(dāng)然也處于發(fā)展?fàn)顟B(tài),這就決定了區(qū)塊鏈技術(shù)還存在諸多算法不當(dāng),進(jìn)而導(dǎo)致區(qū)塊鏈技術(shù)性能不足。
比特幣的不可擴(kuò)展性、效率低下、升級(jí)困難,很大程度上就是該邏輯導(dǎo)致。因?yàn)閿U(kuò)展性問題,導(dǎo)致了比特幣在2017年被迫分叉。總的來說,區(qū)塊鏈技術(shù)的效率低下問題,在一定程度上還是數(shù)學(xué)問題。
有人可能會(huì)問,數(shù)論是什么?素?cái)?shù)又是什么?
通俗理解,一切數(shù)學(xué)問題都可以歸結(jié)為數(shù)論問題,因此素?cái)?shù)問題也屬于數(shù)論問題。
早在公元前300年歐幾里得就證明了有無窮多個(gè)素?cái)?shù),在隨后接近2000年的時(shí)間內(nèi),主要內(nèi)容是以尋找素?cái)?shù)通項(xiàng)公式為主要思想。這方面主要的代表人物有德國數(shù)學(xué)家高斯,英國著名數(shù)論學(xué)家哈代、李特伍德、拉馬努金等等。
今年9月20日,與證明“黎曼猜想”相關(guān)的新聞,在網(wǎng)絡(luò)上鬧得沸沸揚(yáng)揚(yáng)。知名數(shù)學(xué)家邁克爾· 阿蒂亞爵士宣布將會(huì)證明黎曼猜想,這引起了區(qū)塊鏈行業(yè)從業(yè)者的關(guān)注。為什么?
“一旦黎曼猜想被證實(shí),就意味著素?cái)?shù)出現(xiàn)規(guī)律就能找到,基于此的加密可能也就不安全了。”從事數(shù)學(xué)研究的阿嵐認(rèn)為。
因此,博弈論、代碼語言進(jìn)步、數(shù)學(xué)理論發(fā)展,對(duì)區(qū)塊鏈技術(shù)進(jìn)步都有著不可小覷的影響。
比特幣誕生至今,10年過去了,期間被死亡200多次,被分叉20多次,但是任何一次危機(jī)都沒能成功“殺死”比特幣。
比特幣背后的區(qū)塊鏈技術(shù),雖然面臨數(shù)學(xué)問題、博弈論問題、代碼漏洞問題,但是這些也沒能阻擋區(qū)塊鏈行業(yè)的從無到有,從落魄到發(fā)榮的歷史進(jìn)程。
而成功度過每一次危機(jī),都能讓這項(xiàng)技術(shù)浴火重生、鳳凰涅槃。
雖然目前區(qū)塊鏈技術(shù)并不成熟、加密貨幣還沒有完全被主流認(rèn)可,但是時(shí)間會(huì)對(duì)這些問題做最好的注腳。
正如思想家阿卜·法拉茲所言:“暫時(shí)的失利,比暫時(shí)的勝利好得多。”
1.TMT觀察網(wǎng)遵循行業(yè)規(guī)范,任何轉(zhuǎn)載的稿件都會(huì)明確標(biāo)注作者和來源;
2.TMT觀察網(wǎng)的原創(chuàng)文章,請(qǐng)轉(zhuǎn)載時(shí)務(wù)必注明文章作者和"來源:TMT觀察網(wǎng)",不尊重原創(chuàng)的行為TMT觀察網(wǎng)或?qū)⒆肪控?zé)任;
3.作者投稿可能會(huì)經(jīng)TMT觀察網(wǎng)編輯修改或補(bǔ)充。