夏末麋鹿發情,鹿老大對天鳴叫,向附近的同類宣告它的地位。雖然正值壯年,但總有挑戰者,老大必須接受挑戰,以證明自己。

大家把角掏出來頂來頂去,突然鹿老大戳中挑戰者的脖子,要了對方的命,同時也領到獎賞——和所有雌鹿交配的資格。

麋鹿間頂得你死我活,只爲搞清一件事:哪隻雄鹿最強,勝出者拿下基因傳遞權,因爲這種基因最能讓種羣繁衍。

動物世界的角鬥,映射到區塊鏈世界,就是我們熟悉的共識算法:工作量證明(POW,戳此複習)。

全世界比特幣礦工血拼體力,系統把記賬權交給第一個算出隨機數的人,其他人空手而歸,同時開啓下一場爭鬥,每十分鐘開一輪相撲大賽,無休無止。

POW 是共識算法的鼻祖,守護比特幣至今,但至少有三個被廣爲詬病的地方:

首先是浪費電

圖 1 比特幣挖礦耗電量:一年翻三倍

挖比特幣的耗電量已超過世界上的 159 個國家的國民用電(世界上一共也就 195 個主權國家),耗這些電的結果只是算出一個隨機數,全世界的街坊領居都搖着頭說不值。

第二是效率低,明明只有 2000 多筆交易,偏偏要 10 分鐘才能記好。馬雲看後也搖頭說我們家二寶每秒能抗 20 萬筆交易,你這樣有點磨嘰了。

第三是不安全,一旦有人擁有超過一半的算力,理論上就可以按照他的意願記賬,系統永遠存在被 51% 攻擊 的不確定性。

去中心化的初衷最後聚攏成中心化的算力隱患,確實是 POW 的尷尬。

POW 是禽獸爭霸,不講道理,誰力氣大記賬權歸誰。甚至可以只拿獎勵不記賬,比如,空區塊攻擊:

圖 2 空區塊攻擊實例

來源:https://blockchain.info/block-height/504830

你看,這名礦工連手續費都不要了,不打包任何交易,唯一一筆是比特幣系統給他的挖塊獎勵,獎勵他算出隨機數(Nonce)。不僅野蠻,而且任性,但是全世界都拿他沒辦法。

於是,有人提出了一種改進的共識算法:POS。

一、什麼是 POS?

POS (Proof of Stake):權益證明。

和 POW 一樣,POS 也是達成節點間共識的算法,最終解決的是認哪一本賬的問題。

果 POW 是野獸間的撕咬,POS 則是文明人間的投票。

你用自己持有的數字貨幣投票,選出你認爲對的區塊,得票最多的區塊最終上了鏈,如果你投了這個區塊的票,就能按比例分享獎賞,這獎賞相當於比特幣系統裏的挖塊獎勵(Block Reward)。

權益證明的共識算法(POS)有兩個關鍵點:

第一,沒有礦工,只有交易驗證者。

POW 中的礦工要做三件事:驗證交易、打包交易和算隨機數,而 POS 中的驗證者只做驗證交易一件事。

第二,只有持幣者才能驗證交易。

1 個幣就是 1 張選票,大家各自選出自己認爲正確的區塊,所以不持幣的人對於系統賬務沒有影響。

於是,我們能看出 POS 的兩大優勢:

第一,出塊速度更快。因爲全網不用費力算隨機數,只專注驗證賬務,所以 POS 遠快於 POW。

第二,排除利益無關者(非持幣者)對賬務的干擾。總體來看,參與記賬者的利益是一致的,大家都在爲自己的利益維護整個系統的安全。

看起來一團和氣,可 POS 難道就沒有軟肋麼?你一定看出來了,我這麼問就代表肯定有。

如果我把票投給惡意節點做的假區塊,圖謀這些區塊上鍊,以抹去我支付給他人的交易。一旦發生這樣的雙重支付,那我會受到什麼樣的懲罰?

答案是沒有懲罰,這是普通的 POS 的硬不起來的地方,即:沒有利害關係(Nothing at Stake)。但用一樣東西正在改進傳統 POS 算法,它就是尾隨比特幣兩三年的虛擬貨幣家族二寶:

二、以太坊

以太坊這名字乍聽起來很奇怪,念着也拗口,據說來歷是這樣的:

聲音的傳播需要空氣,漣漪的傳播需要水,那能在真空裏跑的光傳播需要什麼?物理學家給這種想象中的物質一個名字,叫“以太”——Ether [ \’iː θə ]

以太坊 Ethereum [ i\’θi: riəm ] 由此得名,因爲它致力於打造一個智能系統,讓一切約定之事脫離人的控制、自動跑起來。

以太坊的招牌是智能合約,聽着很高大上,其實就是把事務交給程序完成。看起來來也沒什麼特別,但關鍵在於價值能在這套程序裏按約定規則傳輸,代表以太坊系統中價值的是 Ether——以太幣(ETH)。

能自動運行,能交換價值,於是,自然就有了去中心化自治公司(DAC Decentralized Autonomous Corporation)的概念——很難想象將來,幾頁代碼就是一家公司,能夠執行你所能想到的一切任務。

以太坊的創始人 Vitalik Buterin,在熟練掌握俄語和英語之外,居然還能說中文。比他掌握語言數量還多的,是他的臉上的青春痘,這位 1994 年出生、智商 180+、俄加雙重國籍的程序員,國內粉絲尊其爲 V 神。

圖 3 Vitalik Buterin 以太坊創始人

V 神和我們一樣也在年輕時關注了比特幣,在家把白皮書嚼了三個月,所以以太坊最初的共識算法也是 POW,但他難以忍受費電低效不安全,於是計劃轉向 POS。

而轉向 POS 面臨的第一個難題就是把如何解決沒有利害關係問題Nothing at Stake Issue)。如果不解決這個問題,惡意節點就可以毫無成本地攻擊以太坊系統。

V 神躺在牀上想來想去,想起了小時候看過的動畫片:

三、Casper

Casper 上映於上世紀 90 年代,陪伴 V 神度過了童年,主角卡斯珀(Casper)是一個可以橫穿一切牆體的透明小鬼。

圖 4 Casper 動畫原型 中文譯名《鬼馬小精靈》

你可別光看見它的可愛,V 神用它的名字命名了一段翻臉不認壞人的代碼——如果誰作惡,比如驗證了虛構的交易,這個小鬼會沒收他全部的押注金額,而這項是比特幣系統和普通 POS 算法所沒有的功能。

Casper 要求驗證者至少押上 1000 個以太幣,考慮到現在每個以太坊已價值 1000 美元,也就是說,驗證交易的起步金額已經超過 100 萬美元,很少有人願意用這筆資金當玩笑,於是,它相對普通 POS 更安全。

V 神在一次論壇上講起這個起點額:

圖 5 Vitalic Buterin 解釋以太坊的 POS 共識算法

來源 https://www.youtube.com/watch?v=eqv2CxuW-Do

扯一句題外話:Youtube 是個好東西,它能自動識別視頻裏的人話,然後打成字幕。如果不懂俄文也沒有關係,你可以打開 Google 翻譯,它會同聲傳譯中文文字。雖然翻譯得不是絕對準確,但由於你中文實力絕對強,很容易猜到八九不離十。

Casper 本身是一個智能合約,它不在乎惡意驗證者押多少保證金或算力,一旦坐實惡意的證據,馬上剝光驗證者所有的籌碼。對於正確的驗證者,會按 POS 算法給與正常的獎勵。

從這個特性往下推,我們可以得出一個推論:沒有驗證者會同時下注兩個矛盾的區塊。雙邊下注不會左右逢源,因爲有一邊是錯的,所以下場一定是被全部沒收。

事實上,Casper 在系統設計上也不允許驗證雙邊下注,以此保證系統安全,解決 Nothing at Stake 的問題。

當然,普通 POS 算法還有很多缺陷,Casper 正在一一解決,它還在醞釀期,缺陷和爭議都是一大把,比如:總是那麼一小撮持大量幣者能獲得所有新幣,其他人毫無機會,這似乎又回到了 POW 時代——只有算力最雄厚者才能獲得新幣獎勵。

從 POW 到 POS,我們發現,新發的幣從來屬於那些能維護系統安全的人,這些新幣同時也是給維護系統安全者的酬勞。

在 Casper 的 POS 相比於 POW 的優勢在於:消減了規模優勢。有很多算力或有很多幣,曾經甚至現在都是一件很牛逼的事情,但 Casper 問世之後這種優勢就會全然消解。

有錢有資源沒什麼了不起,正確才牛逼。因爲一旦仗勢欺系統,Casper 會把它們桌面上的賭注掃乾淨,相比比特幣,實行 POS 之後的以太坊更有去中心化的味道。

POS 共識算法是我們理解比特幣之外區塊鏈世界的敲門磚,以太坊正在從 POW 轉向 POS,這不是一件簡單的是,V 神已做好分兩步過渡的打算。從有 Casper 的 POS 共識算法中我們已能體會到它遠比比特幣複雜,複雜到代碼到今天還沒寫完。

不過還好,一切只是剛剛開始,不用着急。你要相信,如果一件事情真的是機會,那麼它將在未來很長時間裏都是機會。

結語

第一季中,我們掀了一下區塊鏈世界的門簾,瞄了兩眼比特幣白皮書。

好不容易在門外鋪完了基礎概念的路,但跨進門檻之後,沒想到房間裏卻是一座大山。

所以,第二季我們開始向上爬,既然是山那當然會陡,當然會累,當然會有高原反應。如果遇到陌生概念,請學會掙扎着使用 Google 和 Youtube,這些都是你攀登區塊鏈之山的裝備。

很多人對區塊鏈多有爭議,但我們這個專欄的讀者很容易理解,區塊鏈是一個比互聯網都年輕 50 歲的新東西,人類天生害怕新生事物,這是寫入我們基因深處的代碼,絕大部分人無法掙脫。

好在,這個世界給了我們一個機會:如果一件事情你認爲正確,但身邊的人卻不看好,你不用爭辯,只需默默下好自己的注,把證明過程交給時間。

區塊鏈不僅是思想趨勢,也是技術工具,但如果只把比特幣或以太坊當成發財工具,你可能會賺很多錢,但註定與這股沙塵暴的終極收益絕緣。

趨勢不是工具本身,它是我們未來跳舞的舞臺。

歷史一次次證明,越好用的工具,帶來的一定不是越平等,而是越大的不平等,燒刻出人與人之間更大的差別。

比如蒸汽機,1698 年炫酷登場時,人類文明應該馬上共同大繁榮吧?不,歷史當場被撕成了兩段,東方國家被甩到後面,連灰都看不見。

這是件極其殘忍的事情,古往今來、概莫能外:一個工具一旦出現,一定會把人羣劈成兩半,一半關注並且會用,另一半漠視之後被歷史撕遠。

我們沒有水晶球,不會看到各自五年後的命運,但是真的會與今天不同。如果多年之後你因爲踩上趨勢而登高一階,那一定不是因爲某個工具成就了你,而是你自己成就自己。