給比特幣友的“權益證明” 指南

作者:Scott Sullivan

來源:https://scottmsul.substack.com/p/a-bitcoiners-guide-to-proof-of-stake

一般來說,比特幣友都不會太關注山寨幣領域發生的事,但是,因為以太坊的“The Merge” 計劃在一個月內推出,圈內的推特頗顯得吵鬧。當然,比特幣網絡是不會受到什麼影響的,但我認為,這個“升級” 也值得關注。一旦以太坊讓自己跟“骯髒” 和“浪費” 的PoW(工作量證明)撇清了關係,我們可以預期敘事的戰爭(narrative war)即將出現,比特幣友應該準備好反擊。

學習“權益證明(PoS)” 怎麼工作,是了解它和PoW 的區別、取捨的好辦法。雖然我已經看過了許多關於PoS 的抽象論述—— PoS 有更多的准入要求、更加中心化,而且會變成寡頭政治—— 我得承認,如果不了解PoS 的細節,這些說法聽起來都有點虛無縹緲。通過深入研究PoS 算法,我們可以慢慢看出,所有這些屬性都是從其原理中自然產生出來的。所以,如果你也好奇PoS 算法是如何工作的、為什麼它的工作原理會導致它有這些屬性,那就請讀下去!

解決“重複花費” 問題

我們先快速回顧一下我們到底想解決什麼問題。假設我們有一個很多人參與的密碼貨幣網絡,希望維護一個去中心化的賬本。我們將面臨一個問題:我們的交易如何添加到每一個人的賬本中,使得每個人都能對一筆交易是否“真實(correct)” 達成共識呢? PoW 解決這個問題的辦法非常優雅:交易以區塊的形式分組,同時每一個區塊的生產(成為所有人認可的正確區塊)都需要耗費大量的計算工作。區塊生產所需的工作量會提高和降低,以保證區塊以平均每10 分鐘一個的速度生成;如此一來,在下一個區塊生成出來之前,每個區塊都有好幾分鐘的時間可以在網絡中傳播。賬本的任何不確定性,都可以通過選擇凝聚了最多區塊生產計算量的鏈來解決,重複花費也由此得到製止(在同一條鏈上,不會有兩筆交易花費同一筆資金,重複花費的交易將變成無效交易,帶有無效交易的區塊是無效的區塊),因為重複花費若要成功必須要掌握超過51% 的全局區塊生產計算力(這樣才有可能先在一條鏈上花費某筆資金,然後在分叉鏈上再次花費這筆資金並讓分叉鏈最終成為更長的鏈)。

但是,假設現在我們想拋棄中本聰的洞見(正是這種洞見讓上述解決方案成為可能)。畢竟,這些討厭的ASIC(專門用於區塊生產計算的硬件)既可恨、又吵,而且它們所消耗的能源比喬治·索羅斯、比爾·蓋茨、希拉里·克林頓的私人飛機加起來還要多。有沒有一種辦法可以讓我們只需通過交談,就能毫不含糊地同意哪些交易是“真實的(true)” 呢?

以太坊的權益證明機制使用兩個關鍵要素來解決這個問題。第一個要素是時不時地製作特殊的“檢查點區塊(checkpoint blocks)”,其目的是向網絡中的每一個人保證這個系統在不同時間的“真相”。創建一個檢查點需要以“押金(stake)” 計算的2/3 的多數同意,這樣就能保證在該時間點,絕大多數的“驗證者(validator)” 都認可一個事實。第二個要素是懲罰給網絡增加不確定性的用戶,也就是所謂的“罰沒(slashing)”。舉個例子,如果一個驗證者創建了一條分叉鏈,或者給一條更老的分叉鏈投票(類似於51% 攻擊),那麼TA 的押金就會被罰沒。驗證者也會因為不活躍而被懲罰,但力度不會那麼大。

(譯者註:我認為,將PoS 共識機制的參與者命名為“驗證者(validator)”,是不折不扣的語言污染。在原本的概念中,“出塊者” 指的是共識機制的參與者(比如礦工),而“驗證者” 指的是驗證共識結果的人(比如全節點),但使用“驗證者” 來指稱“PoS 共識的出塊者” 完全混淆了原本很清晰的分類方法。下文將該含義下的所有“validator” 都翻譯成“見證者”。)

這使我們可以得出PoS 背後的第一條原理:PoS 是基於負向激勵(懲罰)的系統。這跟比特幣和PoW 完全相反,因為PoW 是一個基於正向激勵(獎勵)的系統。在比特幣中,礦工可以嘗試打破規則—— 生產格式錯誤的區塊、打包無效的交易,等等—— 但這些區塊會被忽略掉。最壞的影響也就是浪費一點能量。礦工也可以自由在更老的分叉鏈上生成區塊,但如果沒有占到全局的51% 的區塊生產力,這些老舊的分叉鏈就永遠不可能追上當前的最長鏈,所以也只是白費力氣。任何參與這些活動的礦工,無論存心還是無意,都不擔心會損失自己此前積累的比特幣,也不用擔心損失礦機。所以比特幣礦工不會生活在恐懼之中,在採取行動、承擔風險的過程中,他們可以犯錯。

生活在以太坊大陸上的見證者可就完全不同了。他們不是靠工作努力、為網絡增加安全性而得到獎勵,他們不做實際工作(do no actual work),只是必須小心讓自己的節點不要越軌(misbehaves),以免自己的儲蓄付之東流。無論人們對網絡提出了什麼變更,見證者的第一反應都是隨大流,不然就有被罰沒的風險。這些見證者每天都是如履薄冰。

順帶說一句,根據Vitalik 的《PoS 常見問題解答》,讓出塊者活在負向激勵系統中,正是PoS 的“好處” 之一,嗯。

img

那麼,在技術層面上,罰沒機製到底是怎麼工作的呢?我們是不是先要建立一份列明所有見證者的清單,然後才能罰沒一些東西呢?沒錯,就是這樣。要想在以太坊的PoS 共識機制中擔當一位見證者,你先要把ETH 移動到一個特殊的“質押” 地址中。這不僅是為了應用罰沒機制,也是為了投票,因為檢查點區塊需要得到2/3 的多數票。

全天候維護這樣一個記載所有見證者的列表會產生一些有趣的影響。加入見證者隊伍困難嗎?能不能隨時離開?見證者是否可以投票表決其它見證者的狀態?這就使我們得出了PoS 背後的第二條原理:PoS 是一個有准入的系統。

成為見證者的第一個步驟就是把一些ETH 存入一個特殊的質押地址。需要多少ETH 呢?最少32 ETH,按現價大約50000 美元。補充一下背景,像樣的比特幣挖礦設備一般是幾千美元一台,如果你是家庭挖礦,你可以從幾百美元一台的S9 開始。公平地說,ETH PoS 共識的高門檻是有技術上的理由的,更高的門檻意味著更少見證者參與,可以降低帶寬要求。

所以,准入門檻是很高的,但是,任何人只要擁有32 ETH,不就可以想參加就參加了嗎?還真不是。如果大量的見證者在同一時間離開或進入,會有安全風險。舉個例子,如果網絡中絕大部分的見證者同時離開,那他們就能在一條(自己沒有退出的)分叉鏈上重複花費一筆資金,而且在兩邊都不會遭受懲罰。為了緩解這種風險,進入PoS 共識和離開PoS 共識都有內置的排隊機制(throuthput limit,直譯為“吞吐量限制”)。當前,這個限制被設定為每個“時段(epoch)”(大約6.4 分鐘) max(4, |V|/65536) 個見證者,進入和退出都是這個限制。換算過來,就是每10 個月可以換掉整個見證者集合。另外,雖然現在見證者可以發布一條“退出” 交易、停止參加PoS 共識,但實際取出資金的代碼還沒完成。聽起來有點像加州旅館……

img

– 你可以隨時住進來,但你再也不能離開 –

最後一點是批准新的見證者加入的經濟激勵。假設你是一個大公司的股東,而且這個公司業務穩定,每個季度都會給你分紅。你會願意無償增發股票嗎?當然不會,因為這樣會減少現在所有股東的分紅。類似的激勵結構也存在於PoS 中。因為每一個新的見證者加入都會稀釋現在所有見證者的收益。理論上來說,見證者可以直接審查所有添加新見證者的交易,但是,我認為,在現實中,這樣露骨的辦法是行不通的。這會非常明顯,而且會一夜之間摧毀以太坊的“去中心化” 形象(可能還會導致價格暴跌)。我認為,人們會使用更巧妙的辦法。比如,以“安全性” 或者“效率” 為藉口、緩慢地改變質押規則,讓參與PoS 的門檻越來越高。任何犧牲新見證者、有利於現有見證者的政策,都會得到經濟上的支持,不論有沒有在檯面上曝光。現在,我們可以看出來為什麼PoS 會變成寡頭制了。

img

Casper 算法概述

我們已經知道PoS 背後的抽象原理了,那麼,以太坊的PoS 算法到底是怎麼工作的呢?檢查點和罰沒機制背後的想法,是在一個名為“Casper” 的算法中提出的,所以我們就從Casper 開始。 Casper 自身並沒有給出生產區塊的方式,相反,它給出的是一個框架,說明瞭如何在已經存在的樹狀區塊鏈分支中添加檢查點/施行罰沒機制。

首先,選出任意常熟C 作為“檢查點間距”,該參數決定了兩個檢查點之間間隔多少區塊。舉個例子,如果C = 100,那就表示檢查點會在區塊高度0、100、200 …… 上建立。然後,所有節點也要投票下一個“合理化(justified)” 的檢查點。見證者不是一次只投票一個區塊,而是投票一對檢查點 (s, t) ,其中s 代表之前已經合理化的檢查點,稱為“來源(source)” ;t 代表見證者希望它合理化的檢查點,稱為“目標”。一旦某一對檢查點 (s, t) 獲得以押金計算的2/3 多數票同意,t 就會變成一個新的合理化的檢查點。下圖展示了一棵作為示例的檢查點樹。

img

在這個圖中, h(b) 函數表示“檢查點高度”,例如整百號的區塊。你可能會注意到,並不是每發生100 個區塊就必然得到一個合理化的檢查點,因為投票可能無法達成多數。舉個例子,假設在區塊高度200 時,兩個檢查點分別獲得了50% 的票數。因為在同一時段中投票兩次會被罰沒,所以除非某些見證者願意被罰沒,否則係統就會“卡” 在這裡。解決方案是大家“跳過” 區塊高度200 的這個檢查點,在區塊高度300 時“再次嘗試”。

一個檢查點得到了合理化,並不意味著它已經“終局化(finalized)”了。為了讓一個檢查點終局化,緊接著這個檢查點的下一個檢查點必須被合理化。舉個例子,如果檢查點0、200、400、500、700 是一脈相承的並且都得到了合理化,那麼只有檢查點400 會被認為是終局化的,因為只有它的下一個檢查點才是合理化的。

因為這裡的術語都是非常精確的,所以我們來概括一下這三個類別。 “檢查點” 指的是任何發生在區塊高度 C * n 上的區塊,所以如果C = 100,區塊高度0、100、200、300 等等上的區塊,都是檢查點。即使區塊高度200 上出現了兩個區塊,它們也都是檢查點。如果一個檢查點是高度為0 的創世塊,或者2/3 的見證者通過投票在以前的合理化檢查點和這個檢查點之間建立了聯結,這個檢查點就被“合理化”。然後,如果這個合理化的檢查點(作為來源)被聯結到下一個檢查點並且後者被合理化,這個檢查點就得到“終局化”。不是每個檢查點都會被合理化,也不是每個合理化的檢查點都會被終局化,哪怕在最終得到公認的鏈上也不必然。

Casper 罰沒規則

Capser 的罰沒規則被設計成這樣:兩條分叉上不可能有分別有一個終局化的檢查點,除非至少1/3 的見證者違反了罰沒規則。換句話來說,只有終局化的檢查點應該被視為無可爭議的“真相”。甚至兩條分叉鏈上是有可能分別出現一個合理化的檢查點的,但不會各自產生一個終局化的檢查點(除非有人被罰沒)。什麼時候會出現終局化的檢查點、在哪裡出現,也是沒有保證的;只不過,當鏈分叉發生的時候,你應該坐下來,等待一個終局化的區塊出現,出現了,你就知道那是“真實” 的鏈了。

Casper 使用兩條罰沒規則來實現這種特性:

img

第一條規則禁止任何人先後將同一高度的兩個不同區塊投票為目標檢查點(即雙重投票)。所以,假設一個見證者,在先後兩次投票時,把高度200 的兩個不同區塊作為目標檢查點,TA 就會被罰沒。這條規則的目標是防止鏈在同一個高度分裂成兩個不同的合理化檢查點,因為這將需要2/3 + 2/3 = 4/3 的總票數,也就意味著至少1/3 的見證者打破了罰沒規則。不過,如我們前面所見,合理化檢查點可以跳過某些高度。那麼,怎麼防止一條鏈分裂成兩個不同的目標檢查點呢?舉個例子,檢查點200 能不能分裂成兩條鏈,分別在高度300 和400 形成合理化檢查點,而不會有人被罰沒呢?

這就要用到第二條規則了,它的用意是防止出現一個投票“包住” 另一個投票。舉個例子,如果一個見證者給(300, 500) 和(200, 700) 投票了,TA 就會被罰沒。在鏈分裂的情形中,一旦某個分叉形成了一個終局化的檢查點,其它分叉就不可能出現終局化的檢查點,除非有1/3 的見證者打破了這第二條規則。假設現在區塊鏈分叉出來兩個合理化的檢查點(500, 800) 和(500, 900)。後來,人們在第一條分叉鏈上看到了一個終局化的檢查點(1700, 1800)。因為1700 和1800 只能在一號分叉鏈上得到合理化(假定沒有人打破第一條規則),那麼二號分叉鏈上可以看到1800 之後的合理化檢查點的唯一可能就是有些人把低於1700 的檢查點作為來源、高於1800 的檢查點作為目標。但因為這會包住(1700, 1800) 這個投票,而且合理化需要2/3 的投票(而(1700, 1800) 已經獲得了2/3 的票數),那麼,就至少有1/3 的見證者打破了第二條規則。 Casper 論文給了一個很漂亮的圖:

img

就是這樣,只要你遵守Capser 規則,你就是個好人!

img

聽起來很簡單,對不對?我們可以保證將罰沒機制只是PoS 用於維護共識的終極手段,而不是逼迫見證者以特定方式行事的勒索機制,不是嗎?

img

– “給以太坊社區提問。如果絕大多數見證者在下文中選擇了A(妥協並在協議層開展審查),你會怎麼做?X)將審查視為對以太坊的攻擊,通過社會共識燒掉他們的押金;Y)容忍審查”“我會選擇X” –

這使我們得到PoS 背後的第三條原理:PoS 沒有規則。大多數人說什麼,“規則” 就是什麼。

img

每一天,你的節點(從技術上來說)都嚴格遵循Casper 誡命,但是第二天你的儲蓄就有可能被罰沒,因為你做了別人不喜歡的事情。你是不是打包過紅隊的交易?那藍隊的大多數就會罰沒你。或者,你做了相反的事情,對紅隊的交易視而不見,那麼明天紅隊就會說你搞審查,然後罰沒你。罰沒的力量遠遠超出了OFAC(美國財政部海外資產控制辦公室)審查的權力限度。 PoS 就像永不停歇的墨西哥大逃殺,隨時都有被罰沒的威脅。

img

我完全不懷疑—— 在有爭議的硬分叉中,雙方都會硬編碼針對對方的驗證規則,以懲罰任何想加入“邪惡” 一方的人。當然,這是一個核武器按鈕,而且就像核戰爭一樣,雙方可能只會選擇以牙還牙而不是率先攻擊。我也懷疑,絕大多數個人見證者,都是“中立的”,他們比較關心財務上的自我保全,而不是在政治上自我犧牲,但如果他們意識到,“選邊站” 是一種避免被罰沒的有效方法,他們可能也會這樣做。

說到哪兒了?

現在,我們已經知道了檢查點和罰沒的基本知識,可以進入以太坊實際使用的算法“Gasper”了。這是Casper 和GHOST 的一個組合。 Casper 我們前面已經介紹過,而GHOST 是一種用以在檢查點之間選出“最優” 鏈條的策略。

理解Gasper,你要知道的第一件事情是,它將時間當成了一個主要的獨立變量。真實世界的時間被切分成了12 秒一個的“時隙(slot)”,每一個時隙最多只能包含1 個區塊。許多個時隙組成了一個“時段(epoch)”,每個時段都有一個檢查點。一個時段包含32 個時隙,所以每個時段的時長為6.4 分鐘。值得指出的是,這種範式逆轉了在PoW 中的時間與區塊生成的關係。在PoW 中,區塊產生是因為找出了一個有效的哈希值,而不是因為過了多長時間。但是在Gasper 中,區塊產生是因為現實世界走過了足夠長的時間、該到下一個時隙了。這樣的系統會遇上什麼棘手的時間問題,我只敢想像,不敢細數;尤其是,這不是運行在一台計算機上的程序,它是運行在全世界數万台嘗試同步的計算機上的系統。希望以太坊的開發者們熟悉《程序員對計算機時間的誤區》。

現在,假設你要建立一個見證者節點,你要首次同步區塊鏈。你只能看到使用了特定時間戳的特定區塊,你怎麼知道這些區塊真的是在那個時間產生的?因為區塊生產不需要做功,惡意的見證者群體不能偽造出一條從創世塊開始的假鏈嗎?而且,如果你看到了兩條相互競爭的區塊鏈,你怎麼知道哪一條是真的呢?

由此,我們得出了PoS 背後的第四條原理:PoS 依賴於主觀理解。因為沒有客觀的辦法從兩條相互競爭的鏈中選出真實的那一條,而且任何新加入網絡的節點都必須信任現有的一些節點作為事實的來源、解決不確定性。這跟比特幣完全不同,在比特幣中,凝聚了最多工作量的鏈就是那條“真實” 的鏈。幾千個節點告訴你X 鍊是真的也沒用,只要一個節點放出了Y 鏈,而且Y 鏈包含了更多的工作量,Y 就會成為真實的鏈。一個區塊的區塊頭就告訴了你它的價值,所以它可以完全消除信任需要。

img

– 這些0 表明了找出這樣一條哈希值是需要做功的 –

因為依賴於主觀理解,PoS 重新引入了信任需要。現在,我要承認,從這裡開始,我可能會帶上一些偏見。如果你想了解另一邊的意見,Vitalik 寫了一篇包含他的觀點的文章。我承認,在現實中,因為Casper 規則,鏈分裂不太可能發生,但無論如何,我從比特幣中得到的心神安寧,在這裡是不可能的。

區塊生產與投票

現在,我們已經熟悉了時隙和時段,那麼單個區塊是如何生產的,又是如何投票的呢?在每個時段開始之前,所有見證者會被“隨機” 地分成32 組,每一組負責一個時隙。在每一個時隙中,“隨機” 選出的一位見證者會成為區塊生產者,而其他人則是投票者(或者說“見證者(attestor)”)。我把“隨機” 打上引號是因為這個過程必須是確定性的,因為每一個人都必須無偏差地同意哪些驗證者負責哪個時隙。但是,這個過程也必須是不可愚弄的(non-exploitable),因為區塊生產者擁有優勢地位,他們可以獲得現在稱為“礦工可抽取價值(Miner Extractable Value)” 的額外價值(現在已經被重命名為“最大可抽取價值(Maximun Extractable Value)”了)。有一篇好文講了這種價值是怎麼回事:《以太坊是一個黑暗森林》。

那麼,一個區塊生產出來之後,其他見證者如何投票(或者說“見證”)呢?區塊提議被假設在時隙的前半段(前6 秒)發生,而投票則在後半段發生,所以理論上來說,見證者應該有足夠多的時間給自己所在的時隙的區塊投票。但如果區塊提議者下線、通信失敗,或者構造了無效區塊呢?其實,見證者的任務不是必須給所在的區塊投票,而是指出從當時的自己出發“看起來最棒” 的區塊。在正常情況下,這個最好的區塊就是他們所在時隙的區塊,但也可能是更老的區塊。不過,“最好的區塊”,在技術上來說是什麼意思呢?這就是GHOST 算法的用場了。

GHOST 是“可觀察到的最貪婪的最重子樹(Greediest Heaviest Observed SubTree)”,而且是一種貪婪的遞歸算法,用於找出包含最多“最新活動” 的區塊。基本上,這種算法將近期的所有區塊看成一棵樹,它會遍歷整棵樹,貪婪地選出累積有最多見證的分支。每個見證者都只有最新的一條見證消息會被計入,最終算法會得出某個葉子區塊作為“最好的區塊”。

img

見證者的見證消息中不僅包含對當前最好區塊的投票,還包含了引向這個區塊的最新一個檢查點。需要指出的是,在Gasper 中,檢查點是基於時段而非區塊高度的。每個時段都指向具體的一個檢查點區塊,要么是這個時段的第一個時隙中的區塊,要么(假如這個時隙沒有出塊的話)是這個時隙以前的最新一個區塊。理論上來說,同一個區塊可以是兩個不同的時段的檢查點(前一個時段的每一個時隙都沒有出塊),所以,檢查點使用(epoch, block) 對來表示。在下圖中,“EBB” 是“時段邊界區塊(Epoch Boundary Block)” 的縮寫,表示一個時段的檢查點;而“LEBB” 則是“最新的時段邊界區塊” 的縮寫,表示整體上最新的一個檢查點。

img

類似於Casper,一個檢查點得到超過2/3 的見證之後就會合理化;而如果其下一個時段的檢查點也被合理化,該檢查點就被終局化。投票機制的工作流程的一個示例如下圖。

img

Gasper 也有兩個罰沒條件,跟Casper 的罰沒規則類似:

1)不能在同一個時段中重複投票。

2)一個投票所包含的檢查點區間不能被“包在” 另一次投票的檢查點區間內。

儘管Gasper 基於時段而廢除區塊高度,Casper 的規則依然能保證兩條分叉鏈上不可能都有終局化的檢查點,除非1/3 的見證者被罰沒。

同樣值得一提的是,見證消息會被包含在區塊中。類似於PoW 中的區塊使用自身的哈希值來為自己辯護,PoS 中一個終局化的檢查點也會使用它過往的所有見證消息來為自身辯護。當某些人違反罰沒規則是,這些壞的見證消息也會被包含到區塊內,證明其越軌。區塊生產者還有一個小額的經濟激勵去打包這些證明越軌的消息,這是為了給人們提供激勵去懲罰破壞規則的人。

分叉

想像一下在分叉的時候會發生什麼,是有趣的事。快速回顧一下,分叉指的是共識規則的變更,可以分成兩種:硬分叉和軟分叉。在硬分叉中,新的規則是不向後兼容的,可能會產生出兩條互相競爭的區塊鏈(要是兩條鏈上誰也不願意切換的話)。而在軟分叉的,新規則比起老規則更加嚴格,所以它們是向後兼容的。一旦超過50% 的礦工或者見證者開始強制新的規則,共識機制就會切換,而不會產生分裂。軟分叉通常跟升級和新的交易類型有關,但從技術上來說,它也包括由51% 的多數執行的任何類型的審查。 PoS 還有一種“分叉”,是PoW 沒有的:不是因為共識規則變更而引起的鏈分裂。但因為前面我們已經講過了,這裡就只討論硬分叉和軟分叉。

我們從最簡單的情況開始:一個專門的、有爭議的硬分叉。 “有爭議” 的意思是,某一條規則變更讓人們產生政治上的派別。漏洞修復和微小的技術改變不太可能有爭議,但有些變更—— 比如改變見證獎勵—— 可能就會。如果一個硬分叉有很大爭議,鏈分叉就可能發生,但最終會因為用戶賣出一條鏈上的資產、購入另一條鏈的資產而得到經濟上的解決。就像2017 年的Bitcoin Cash 分叉,似乎勝負已分:

img

現在,假設某一天見證者們開了一場大會,認為他們沒有得到足夠的獎勵,並決定將回報率從每年5% 變成每年10%。顯然,這是犧牲非見證者的利益來滿足見證者的胃口。要是出現了鏈分裂的話,哪條鏈會贏呢?

這就推導出了PoS 背後的第五條原理:金錢就是權力。現在世界上有超過1.2 億的ETH ,超過10% 已經質押了起來,就如下圖所示。

img

假設一個硬分叉在見證者和非見證者之間產生了爭議,假設所有的非見證者都在新鏈上賣掉所有的幣、而所有的見證者都在舊鏈上把所有的幣賣掉,那麼理論上來說,舊鏈會贏,因為絕大部分的ETH 還在非見證者手上(90% vs. 10%)。但我們還有一些東西需要考慮。首先,在分叉之後,見證者們依舊“控制著” 兩條鏈。如果見證者們有能力影響舊鏈,他們可能有激勵讓這條鏈失敗。其次,上文說的核武器依然存在,新鏈可能會罰沒依然在舊鏈上出塊的見證者,以迫使他們加入。最後,一些見證者可能比網絡中的其它人有更強大的社會和政治影響力。如果Vitalik、以太坊基金會和交易所都結成了同盟,決定提高見證獎勵,我很難相信普通的以太坊用戶和見證者可以保證舊鏈繼續運行,同時通過買入來讓舊鏈變得相對更有價值。

至於軟分叉,要是出現了有爭議的軟分叉,比如OFAC 審查,那會怎麼樣?見證者是非常中心化的,看下面這個圖就知道了。

img

不像PoW 中,礦工可以一鍵切換礦池,以太坊上的見證者被鎖定在一個質押地址中,在發起退出交易之後才能離開。要是Lido 和最大的交易所準備審查某一些交易,他們很容易可以達到決定檢查點的2/3 多數。前面我們已經看到了Vitalik 和其它ETH 見證者可以如何使用反審查的硬分叉來跟審查軟分叉對抗(同時罰沒審查者)。即使他們成功創建了一條分叉,這個過程中也會有許多價值被摧毀,不論是因為罰沒,還是因為信任的崩塌。

結語

在這篇文章中,我們探討了PoS 如何使用Gasper 算法來解決重複花費問題。 Gasper 是Casper 檢查點/罰沒規則和GHOST “最佳區塊” 投票規則的結合體。

Gasper 將時間劃分成叫做“時隙” 的單元,每個時隙只能包含最多一個區塊;多個時隙組成時段,每個時段指向一個檢查點。如果2/3 的多數都投票了某個檢查點,這個檢查點就得到了合理化;而如果兩個相鄰的檢查點的得到了合理化,兩個中的第一個檢查點就被終局化。一旦某個檢查點得到終局化,與之相競爭的分叉鏈就不可能被終局化,除非超過1/3 的見證者被罰沒。

在這個過程中,我們發現了PoS 的五條原理:

1)PoS 使用負向(基於懲罰)的激勵結構。

2)PoS 是一個帶有准入機制的系統。

3)PoS 沒有規則可言。

4)PoS 依賴於主觀理解。

5)在PoS 中,金錢就是權力。

這些原理的每一條,都跟PoW 相反:

1)PoW 使用正向(基於獎勵)的激勵結構。

2)PoW 是一個無准入的系統(任何人都可以隨時開始,也可以隨時結束)。

3)在PoW 中,不遵循規則的分叉會被忽略掉。

4)PoW 依賴於客觀事實。

5)在PoW 中,礦工為用戶服務,而且只有有限的權力。

我相信,每個人都應該奮力為自己想生活於其中的世界奮鬥。如果你跟我一樣,希望生活在一個沒有准入的世界中,想控制自己的財產,希望努力工作可以得到獎勵、被動的所有權成為債務,希望貨幣可以一直存儲價值而不會因為一時興起而改變,那麼,你應該仔細思考PoW 和PoS 的區別,以及為你偏愛的原則奮鬥。

Total
0
Shares
Related Posts