中本聰在2009年1月3日于赫爾辛基的某服務(wù)器挖出了比特幣。我認(rèn)為,比特幣最為神奇之處即在于其共識(shí)機(jī)制,因?yàn)楣沧R(shí)的存在,人類可以完成大規(guī)模的協(xié)作,取得超越個(gè)人的成果和影響力。
分布式系統(tǒng)或者說(shuō)P2P網(wǎng)絡(luò)中的節(jié)點(diǎn),可以用一盤散沙來(lái)形容,在這種節(jié)點(diǎn)非常分散的情況下極需解決信息傳遞過(guò)程中的可信性問(wèn)題。如何判定他人發(fā)給我的信息,是真實(shí)準(zhǔn)確的信息,而非某個(gè)惡意節(jié)點(diǎn)篡改過(guò)的信息?如何保障輸入的信息與輸出的結(jié)果是相匹配的,這是計(jì)算機(jī)領(lǐng)域存在多年的問(wèn)題,也即”拜占庭將軍問(wèn)題“。
為了解決“拜占庭將軍問(wèn)題”,各種共識(shí)機(jī)制應(yīng)運(yùn)而生:
選擇不同的共識(shí)算法,會(huì)對(duì)區(qū)塊鏈上應(yīng)用有較大的影響。不同的區(qū)塊鏈技術(shù),一般會(huì)選擇不同的共識(shí)機(jī)制,這跟區(qū)塊鏈技術(shù)本身的價(jià)值主張也有關(guān)系。有的區(qū)塊鏈應(yīng)用可能就是要做公有鏈,面向公開網(wǎng)絡(luò);有的區(qū)塊鏈應(yīng)用做的是聯(lián)盟鏈,有限節(jié)點(diǎn),追求高性能、高吞吐量,它們選用的共識(shí)算法一定是不同的。讓我們先從最為基礎(chǔ)的共識(shí)機(jī)制說(shuō)起:
一、POW
POW是最早的共識(shí)機(jī)制,其代表當(dāng)然是比特幣。我想中本聰設(shè)計(jì)POW的初衷,肯定是希望每個(gè)人都有平等獲得比特幣的權(quán)利,完成的最大限度的民主和去中心化,雖然其中依據(jù)人性的逐利性設(shè)計(jì)了挖礦和記賬的獎(jiǎng)勵(lì)機(jī)制,但是他也遠(yuǎn)遠(yuǎn)未曾想到,水能載舟亦能覆舟,逐利的本性一旦被激發(fā),將一發(fā)不可收拾,為了獲得更大的收益,人們開始建立日趨中心化的礦池、礦場(chǎng)采取聯(lián)合挖礦的方式來(lái)獲取收益,某種程度上背離了比特幣的初衷。另外,中心化的礦場(chǎng)也意味著更加容易受到監(jiān)管者和政府機(jī)構(gòu)的控制。
POW的工作原理我覺得說(shuō)的最為清楚的一個(gè)人是湯強(qiáng),無(wú)私推薦兩篇他的文章:
概念和名詞這種東西,就是越少越好,越簡(jiǎn)單越好。否則,無(wú)端的增加認(rèn)知門檻。
挖礦,我的理解就是幫助比特幣網(wǎng)絡(luò)記錄數(shù)據(jù)的動(dòng)作;礦機(jī)的發(fā)展歷史經(jīng)歷了CPU/GPU/ASIC芯片時(shí)代。這一系列的迭代,無(wú)非是為了更加高效地挖出比特幣。
CPU(中央處理單元)是計(jì)算機(jī)的主要執(zhí)行器件,根據(jù)程序代碼來(lái)控制其他所有元件的運(yùn)作,CPU能進(jìn)行所有種類的數(shù)學(xué)運(yùn)算,同樣非常適于快速的任務(wù)切換與邏輯判斷。
最初中本聰?shù)臉?gòu)想是一CPU一算力,因?yàn)閭€(gè)人電腦的普及,絕大多數(shù)人都可以參與到挖礦的行列中,幫助維護(hù)一個(gè)共同的賬本。
GPU(圖形處理單元)是計(jì)算機(jī)視頻渲染系統(tǒng)的一部分。GPU類似于勞工,GPU雖然也能做數(shù)學(xué)運(yùn)算,但是它最主要的設(shè)計(jì)用途是進(jìn)行視覺圖形處理而不是執(zhí)行者的角色。圖形處理是大量的重復(fù)任務(wù),因?yàn)樗话才艑?duì)屏幕上大量的像素進(jìn)行處理,為了更有效率的運(yùn)算,圖形處理器的巨大優(yōu)勢(shì)在于執(zhí)行大量重復(fù)勞動(dòng),而不是快速的任務(wù)切換。
一個(gè)形象的比喻是CPU如同一小組快速執(zhí)行任務(wù)的精兵良將,GPU如同一大群相對(duì)遲緩的笨人,他們單個(gè)看上去并不那么精干快捷,但是被訓(xùn)練去做大量的重復(fù)勞動(dòng),而在整體的角度上可能就會(huì)更有效率。
后來(lái)人們還是不滿足于GPU的算力,開始投入更多的人力、物力、財(cái)力,投入到一場(chǎng)”軍備競(jìng)賽“中。ASIC芯片上場(chǎng)了,它是一種為專門目的而設(shè)計(jì)的集成電路。相當(dāng)于一支訓(xùn)練精良的特種部隊(duì),每個(gè)環(huán)節(jié)都經(jīng)過(guò)精心的設(shè)計(jì),只為追求最大的產(chǎn)出效能。
這場(chǎng)”軍備競(jìng)賽“到底是為了什么?天下熙熙皆為利來(lái),挖礦的回報(bào)又是什么呢?
挖礦收益,分為兩種類型:
- 區(qū)塊獎(jiǎng)勵(lì)
區(qū)塊獎(jiǎng)勵(lì),是指對(duì)礦工記錄一個(gè)新區(qū)塊的獎(jiǎng)勵(lì)。只有實(shí)際記賬的礦工才能獲得獎(jiǎng)勵(lì),但是誰(shuí)有記賬權(quán)呢?
這要根據(jù)算力而定,計(jì)算能力越強(qiáng),越有機(jī)會(huì)在十分鐘一次的“相撲”比賽中拔得頭籌,獲得記賬權(quán)。每挖21萬(wàn)個(gè)區(qū)塊(約4年)后獎(jiǎng)勵(lì)減半,從2009年的創(chuàng)世區(qū)塊到今天,區(qū)塊獎(jiǎng)勵(lì)已經(jīng)從50個(gè)降到12.5個(gè)(2013年第一次減半,2017年第二次減半)。
- 記賬手續(xù)費(fèi)
針對(duì)現(xiàn)已存在的比特幣,其每一筆交易,都需要消耗一定數(shù)量的比特幣作為GAS(燃料費(fèi)),這筆燃料費(fèi)就是發(fā)給礦工的小費(fèi),感謝他們辛勤的勞作,維護(hù)賬本。
每一種共識(shí)機(jī)制的產(chǎn)生都有其特定的歷史環(huán)境和特定的需求,POW是共識(shí)機(jī)制的鼻祖,在2008年全球金融危機(jī)的背景下應(yīng)運(yùn)而生,致力于解決中央銀行不可避免地濫用權(quán)力,造成法幣超發(fā),和通貨膨脹的問(wèn)題。但是歷經(jīng)九年的發(fā)展,我們也看到了POW機(jī)制下的弊?。?/p>
- 需要消耗大量的電能
摩根士丹利分析師此前在報(bào)告中表示,虛擬貨幣挖礦在2018年可能會(huì)消耗140太瓦時(shí)的電力,約占全球電力需求的0.6%??雌饋?lái)可能不是很多,但這意味著比特幣挖礦所使用的電量已經(jīng)超過(guò)了世界上至少159個(gè)國(guó)家的年度用電了。
中國(guó)曾占全網(wǎng)算力資源的80%,很大一部分原因在于,中國(guó)擁有價(jià)格低廉的電力資源,甚至早年間一些礦場(chǎng)會(huì)偷電來(lái)挖礦。國(guó)內(nèi)的礦場(chǎng),大多分布在新疆、內(nèi)蒙、山西、四川一帶,那里有價(jià)格低廉的火電和水電。隨著國(guó)家監(jiān)管的趨緊,國(guó)內(nèi)大量礦工遠(yuǎn)走他鄉(xiāng),開始在加拿大、冰島、俄羅斯等地開始設(shè)立礦場(chǎng)。
- 處理效率
現(xiàn)在鏈圈的創(chuàng)業(yè)團(tuán)隊(duì)總是大呼TPS,TPS到底是什么?
TPS也稱—— Transaction Per Second,每秒事務(wù)處理量,假如TPS每秒并發(fā)太低,很容易造成網(wǎng)絡(luò)擁堵嚴(yán)重,從而使得區(qū)塊鏈在高價(jià)值的高并發(fā)業(yè)務(wù)領(lǐng)域無(wú)法落地。
比特幣的TPS=7,也就是每秒鐘只能處理7筆交易。另外,比特幣是每十分鐘生成一個(gè)區(qū)塊,也就是一次轉(zhuǎn)帳的確認(rèn)時(shí)間要花十分鐘。而一般連續(xù)生成 6 個(gè)區(qū)塊,也就是大概 1 個(gè)小時(shí)的時(shí)間,我們才認(rèn)為你的這次轉(zhuǎn)賬已經(jīng)在鏈上比較穩(wěn)定,不太容易被篡改了。十分鐘的時(shí)間,如果是跨國(guó)支付,這相比于傳統(tǒng) T+2、 T+3 的到賬時(shí)間已經(jīng)大大縮短了。但是如果做一些面向消費(fèi)者的應(yīng)用,則遠(yuǎn)遠(yuǎn)無(wú)法滿足高頻消費(fèi)的需求。當(dāng)然目前在比特幣上也有很多像微支付通道、閃電網(wǎng)絡(luò)、隔離見證這樣的技術(shù)去改善比特幣的吞吐量和交易確認(rèn)時(shí)間的問(wèn)題。
- 愈發(fā)中心化
比特幣是解決”拜占庭將軍“問(wèn)題很好的解決方案,但是在POW的共識(shí)機(jī)制中,有一個(gè)前提條件,那就是大部分的節(jié)點(diǎn),至少是51%的節(jié)點(diǎn)應(yīng)該是”好人“。否則會(huì)出現(xiàn)51%的算力攻擊。事實(shí)上,現(xiàn)在已經(jīng)存在了這樣的風(fēng)險(xiǎn),BTC.COM,Antpool,ViaBTC前三大礦池,已經(jīng)占到了全網(wǎng)52.4%的算力水平。如果他們想聯(lián)合起來(lái),篡改數(shù)據(jù)或者對(duì)比特幣進(jìn)行分叉,則會(huì)影響到比特幣系統(tǒng)的穩(wěn)定性。
二、POS
POS共識(shí)機(jī)制則誕生于人們對(duì)于POW日趨中心化的算力分布心懷忌憚之際。虛擬貨幣愛好者開始研究另一種共識(shí)機(jī)制——POS(Proof of Stake):權(quán)益證明機(jī)制。
對(duì)于驗(yàn)證人/節(jié)點(diǎn)的獎(jiǎng)勵(lì),不是通過(guò)算力挖礦,而是通過(guò)持幣而產(chǎn)生利息,這里就要引入一個(gè)概念叫做---幣齡,幣齡=幣量x持有天數(shù)。這是根據(jù)你持有貨幣的量和時(shí)間,給你發(fā)利息的一個(gè)制度。當(dāng)你獲得了利息以后,你的所有幣齡將被清空,你的持幣時(shí)間將從0重新算起。
黑幣是歷史上第一個(gè)純POS數(shù)字貨幣,首創(chuàng)快速挖礦+低股息發(fā)行模式,發(fā)行前7天采用Scrypt算法挖礦,第八天開始進(jìn)入純POS階段。ETH目前也在根據(jù)這一思路進(jìn)行POW到POS的轉(zhuǎn)換過(guò)程。
PoS 挖礦和 PoW 礦機(jī)挖礦一樣,都可以維護(hù)區(qū)塊鏈的增長(zhǎng)和安全。
POW共識(shí)同樣可以理解為是一個(gè)下注機(jī)制:礦工選擇一個(gè)塊基于它進(jìn)行挖礦,也就是賭這個(gè)塊會(huì)成為主鏈的一部分;如果賭對(duì)了,他可以收到獎(jiǎng)勵(lì),而如果賭錯(cuò)了,他會(huì)損失電費(fèi)。只要所有的礦工都將他們的算力下注到同一條鏈上,使這條鏈擁有最多的工作量,共識(shí)就是安全的。
以以太坊為例,Casper協(xié)議下的POS共識(shí)機(jī)制可以解決早期POS無(wú)懲罰機(jī)制的問(wèn)題。因?yàn)镃asper協(xié)議要求驗(yàn)證人需通過(guò)抵押保證金(ETH)對(duì)共識(shí)結(jié)果進(jìn)行下注。而共識(shí)結(jié)果又通過(guò)驗(yàn)證人的下注情況形成:驗(yàn)證人必須猜測(cè)其他人會(huì)賭哪個(gè)塊勝出,同時(shí)也下注這個(gè)塊。如果賭對(duì)了,他們就可以拿回保證金外加交易費(fèi)用,也許還會(huì)有一些新發(fā)的貨幣;如果下注沒(méi)有迅速達(dá)成一致,他們只能拿回一部分保證金。因此數(shù)個(gè)回合之后驗(yàn)證人的下注分布就會(huì)收斂。
三、DPOS
可以說(shuō)DPOS是POS共識(shí)機(jī)制理念的一個(gè)變種,之所以單獨(dú)拿出來(lái)說(shuō)明,主要是因?yàn)槟壳皯?yīng)用DPOS共識(shí)機(jī)制的明星項(xiàng)目太多了。大名鼎鼎的當(dāng)屬BM的EOS了,這位大神之前的兩個(gè)項(xiàng)目,Bitshares和Steem也同樣使用了這一機(jī)制。
DPOS讓每一個(gè)持有代幣的人都有權(quán)利通過(guò)投票給驗(yàn)證人的方式行使自己的權(quán)利,利用科技的手段實(shí)現(xiàn)民主治理。當(dāng)然我們會(huì)不可避免的遇到“選民冷漠”的難題,但相信通過(guò)將利益分配給每個(gè)選民,讓每個(gè)代幣的持有人獲得系統(tǒng)良好發(fā)展所帶來(lái)的紅利,一定會(huì)刺激人們積極地參與“治理”。相比于POW機(jī)制下,靠算力比“誰(shuí)力氣大”的方式,將比特幣礦工群體與社區(qū)漸行漸遠(yuǎn),DPOS在很大程度上將權(quán)利重又附于給了每個(gè)社區(qū)成員,也即真正關(guān)心項(xiàng)目的人。
最近EOS正在如火如荼地進(jìn)行全球超級(jí)節(jié)點(diǎn)的選舉,EOSGO上可以看到節(jié)點(diǎn)競(jìng)選的相關(guān)信息,想要了解或者參與競(jìng)選的朋友們,可以看看這篇文章。
能夠見證、伴隨、參與一個(gè)項(xiàng)目的發(fā)展真是件有趣的事情,長(zhǎng)這么大第一次對(duì)民主選舉有了親身體驗(yàn)。(下圖是按照國(guó)家統(tǒng)計(jì)的EOS超級(jí)節(jié)點(diǎn)競(jìng)選團(tuán)隊(duì)的情況)
