中本聰?shù)囊巴?/h2>
在說(shuō)這個(gè)問(wèn)題之前我們還是先來(lái)理一下區(qū)塊鏈?zhǔn)鞘裁?。中本聰在白皮?shū)中通過(guò)描述區(qū)塊鏈的機(jī)制,目的是實(shí)現(xiàn)一種點(diǎn)對(duì)點(diǎn)的電子貨幣系統(tǒng)。
簡(jiǎn)單來(lái)說(shuō)就是設(shè)計(jì)出了一種賬本系統(tǒng),保證賬本系統(tǒng)內(nèi)的所有人都不能篡改賬本的共識(shí)。為了實(shí)現(xiàn)這一目的,區(qū)塊鏈?zhǔn)紫缺辉O(shè)計(jì)成了一個(gè)類似于「順序表」的系統(tǒng),只能不停往上增加數(shù)據(jù),不能在任意地方隨意插入數(shù)據(jù)。其次,引入了 PoW (Proof-of-Work) 機(jī)制,其基于哈希 (hash) 這一概念。
每一個(gè)區(qū)塊的產(chǎn)生需要計(jì)算自己所有數(shù)據(jù)和上一個(gè)區(qū)塊的哈希的哈希,同時(shí)這個(gè)哈希還必須以多少個(gè) 0 開(kāi)頭。由于我們無(wú)法反向計(jì)算一個(gè)以多少 0 開(kāi)頭的哈希數(shù)據(jù)長(zhǎng)什么樣,只能純隨機(jī)地進(jìn)行猜測(cè),但我們又很容易驗(yàn)證這個(gè)結(jié)果。最后一個(gè)需要解決的問(wèn)題是如何鼓勵(lì)人們?nèi)ギa(chǎn)生下一個(gè)區(qū)塊,也就是挖礦。給那個(gè)算出這個(gè)結(jié)果的人獎(jiǎng)勵(lì)一定的貨幣,即解決了發(fā)行問(wèn)題,也解決了共識(shí)問(wèn)題。
于是中本聰基于一個(gè)純數(shù)學(xué)的概念創(chuàng)建了一個(gè)公開(kāi)、透明、對(duì)等的賬本系統(tǒng)。再也沒(méi)有了中央銀行,人民的財(cái)產(chǎn)由人民自己保護(hù),誰(shuí)對(duì)維護(hù)社會(huì)做得貢獻(xiàn)多,誰(shuí)就能獲得更多的資產(chǎn)。
按勞分配,完美!
完美…嗎?
答案是否定的。比特幣誕生后的不久就產(chǎn)生了一個(gè)違背比特幣原則的許多發(fā)明:礦場(chǎng)、瘦錢(qián)包。
礦場(chǎng)
我們先來(lái)談礦場(chǎng)。挖礦之所以保護(hù)了所有用戶的權(quán)益基于的是其博弈的數(shù)學(xué)本質(zhì)。然而隨著比特幣的區(qū)塊難度上升,單個(gè)設(shè)備挖出礦的概率很低,雖然一旦挖出就是一筆巨款。為了降低風(fēng)險(xiǎn),礦工們選擇抱團(tuán)挖礦,這也就誕生了礦場(chǎng)。為了降低挖礦的成本,現(xiàn)在的礦機(jī)被設(shè)計(jì)得非常簡(jiǎn)單,驗(yàn)證區(qū)塊合法性這個(gè)本身被設(shè)計(jì)的挖礦目的被某個(gè)礦場(chǎng)中心所替代,所有的從機(jī)只負(fù)責(zé)算哈希。放棄義務(wù)的后果就是放棄了權(quán)力,礦工們今天已經(jīng)淪為了礦場(chǎng)的利益工具。像比特幣現(xiàn)金、比特幣鉆石、比特幣黃金這些一個(gè)比一個(gè)胡扯的東西被分叉了出來(lái)。參與分叉的礦工大多甚至都沒(méi)有意識(shí)到自己的挖礦工具突然參與這次分叉活動(dòng)。
比特幣不是共產(chǎn)主義,它不會(huì)保護(hù)產(chǎn)生有錢(qián)人。但比特幣設(shè)計(jì)基于的算力博弈,是需要保護(hù)不能產(chǎn)生一個(gè)算力巨頭的。礦場(chǎng)的誕生使得這個(gè)設(shè)計(jì)徹底破滅。
瘦錢(qián)包
瘦錢(qián)包在比特幣的白皮書(shū)中被簡(jiǎn)要提到過(guò):「不運(yùn)行完全節(jié)點(diǎn)也可驗(yàn)證支付,用戶只需要保存所有的 block header 就可以了。用戶雖然不能自己驗(yàn)證交易,但如果能夠從區(qū)塊鏈的某處找到相符的交易,他就可以知道網(wǎng)絡(luò)已經(jīng)認(rèn)可了這筆交易,而且得到了網(wǎng)絡(luò)的多少個(gè)確認(rèn)?!?/p>
這里說(shuō)的是「驗(yàn)證支付」而不是「驗(yàn)證交易」。為了驗(yàn)證交易,我們需要存儲(chǔ)了整個(gè)區(qū)塊鏈的完整節(jié)點(diǎn)。在比特幣的原始白皮書(shū)中,并沒(méi)有故意去分開(kāi)錢(qián)包和節(jié)點(diǎn)。作為一個(gè) P2P 網(wǎng)絡(luò)他們應(yīng)該是一體的。但今天我們看到有完整節(jié)點(diǎn)錢(qián)包的用戶鳳毛麟角。寫(xiě)稿的時(shí)候,全世界共有 11611 個(gè)節(jié)點(diǎn),其中中國(guó)有 827 個(gè)節(jié)點(diǎn)。這一數(shù)字已連續(xù)下降數(shù)年。
維護(hù)比特幣錢(qián)包是困難而昂貴的,節(jié)點(diǎn)消耗大量的硬盤(pán)、帶寬、電,很多用戶也沒(méi)有維護(hù)節(jié)點(diǎn)的運(yùn)維能力。如果是用完就關(guān),那更是吸血驢一般。而比特幣礦場(chǎng)、交易所們,維護(hù)了這些節(jié)點(diǎn)。他們從維護(hù)節(jié)點(diǎn)中獲取到了更大的利益。數(shù)量過(guò)少的節(jié)點(diǎn)更可能被政治沖擊、技術(shù)沖擊。
更何況,P2P 網(wǎng)絡(luò)依然需要種子連接來(lái)啟動(dòng),這并不是完全的去中心化。如果 DNS Seed 遭到劫持,理論上可以通過(guò)修改,手動(dòng)編譯來(lái)解決,但現(xiàn)在的區(qū)塊鏈用戶們,具備這樣的專業(yè)素質(zhì)嗎?
這就類似于電驢是 P2P 技術(shù),但我們可以把 VeryCD 端了啊。BT 下載是 P2P 技術(shù),我們先培養(yǎng)迅雷吸血用戶,再把迅雷一鍋端了,你到哪里去找 Peer 節(jié)點(diǎn)去?
以太坊很忙
比特幣之后,區(qū)塊鏈 2.0 的頭銜常放在以太坊身上。對(duì)于上述的問(wèn)題,以太坊一個(gè)都沒(méi)有解決。相反,以太坊引入了更多問(wèn)題。以太坊引入了一個(gè)圖靈機(jī) EVM,用于執(zhí)行合約。聽(tīng)起來(lái)好像很好,但以太坊則是從空想社會(huì)主義踏入了空想共產(chǎn)主義。以太坊引入了 gas 來(lái)評(píng)估合約運(yùn)行成本,這是一個(gè)極其粗糙的模型。以太坊無(wú)法正確評(píng)估一個(gè)合約的資源消耗,如果你要在運(yùn)行程序前知道這個(gè)程序的運(yùn)行花費(fèi),這等價(jià)于圖靈停機(jī)問(wèn)題,是理論上的無(wú)解。
加入了圖靈機(jī)并不代表可以解決所有問(wèn)題。像 Filecoin 這種在區(qū)塊鏈上存儲(chǔ)文件的模型,通過(guò) PoSt 證明了存儲(chǔ),但對(duì)于流量又無(wú)法證明。這使得所謂的萬(wàn)能應(yīng)用根本無(wú)法實(shí)現(xiàn)。更不要扯迅雷那種可以自己停機(jī)的所謂「區(qū)塊鏈項(xiàng)目」了。
更麻煩的是,gas 同時(shí)評(píng)估計(jì)算、內(nèi)存和存儲(chǔ),這使得標(biāo)準(zhǔn)非常失衡。對(duì)于某些合約定價(jià)可能過(guò)低,對(duì)于另一些則過(guò)高。在以太坊上,這種事情的發(fā)生是日常?;钴S的合約比起一個(gè)賬本實(shí)在是過(guò)于復(fù)雜了,這使得以太坊的擁塞極易發(fā)生且很難預(yù)測(cè)。
速度、安全性、規(guī)模三者不可兼得,必須舍棄一個(gè)。以太坊舍棄了規(guī)模,現(xiàn)在某些號(hào)稱自己是區(qū)塊鏈 3.0 的系統(tǒng)則是舍棄了安全性。目前根本沒(méi)有一個(gè)完美的方案來(lái)平衡這之間。
比賬本更復(fù)雜的合約也造成了很多問(wèn)題,如果合約本身簽得有問(wèn)題怎么辦?對(duì)于這個(gè)問(wèn)題,大多數(shù)以太坊合約都通過(guò)后門(mén)的形式允許發(fā)布者二次修改合約,而簽訂者毫無(wú)還手之力。這使得以太坊空空增加了這一大堆問(wèn)題,對(duì)于其想要達(dá)到的開(kāi)放、平等的合約系統(tǒng)也沒(méi)有實(shí)現(xiàn)。
代幣邪惡論
對(duì)于這些問(wèn)題,許多人仍選擇視而不見(jiàn)。而代幣的狂熱更是讓投資人的熱錢(qián)滾滾涌入,與其說(shuō)是投資,這毋庸置疑是投機(jī)。這些投資人白天在會(huì)議上吹著區(qū)塊鏈技術(shù),晚上自己連區(qū)塊鏈的實(shí)現(xiàn)原理根本不了解。做互聯(lián)網(wǎng)的、買(mǎi)房的、養(yǎng)豬的、炒股的、炒期貨現(xiàn)貨的都在把錢(qián)扔進(jìn)來(lái),有錢(qián)不賺當(dāng)傻子?還有人聲稱區(qū)塊鏈「代幣」是邪惡的,但「區(qū)塊鏈技術(shù)」本身不是,可以有巨大的應(yīng)用場(chǎng)景。醒醒吧,世界上就沒(méi)有區(qū)塊鏈技術(shù)。區(qū)塊鏈技術(shù)里的每一樣?xùn)|西都是我們學(xué)習(xí)密碼學(xué)都見(jiàn)過(guò)的。像是給企業(yè)內(nèi)部部署私有鏈,完全也是無(wú)稽之談,靠簡(jiǎn)單的公鑰私鑰就能解決的事情,非要套上區(qū)塊鏈的外殼,把事情復(fù)雜化。今天說(shuō)「代幣」是邪惡的,但「區(qū)塊鏈技術(shù)」本身不是的,說(shuō)到底是資本的既得利益者,他們要么希望讓泡沫更高,或是希望借機(jī)在其中撈一筆。
不得不說(shuō),今天的區(qū)塊鏈和 2008 年的次貸危機(jī)的前奏已經(jīng)非常像了。次貸危機(jī)之所以能危機(jī),是因?yàn)橥ㄟ^(guò)次貸,使得賬目表面上沒(méi)有那么難看,等無(wú)法收?qǐng)鰰r(shí),就已經(jīng)變成巨大的窟窿了。區(qū)塊鏈的今天也是這樣,所有的事情都在掩蓋代幣,通過(guò)一次次的 ICO 和新概念,掩蓋之前區(qū)塊鏈已有的問(wèn)題。一旦問(wèn)題爆發(fā),涉及到的資金將是空前的,甚至是遠(yuǎn)超 2008 次貸危機(jī)的。并且區(qū)塊鏈的全球化、點(diǎn)對(duì)點(diǎn)的特性會(huì)讓任何政府直接調(diào)控的難度變高,將會(huì)成為前所未有困難的金融大危機(jī)。
我不希望這一天會(huì)發(fā)生在 2008 年后 10 年的 2018。