- 密碼學貨幣挖礦過程中,使用權益證明(PoS)機制能夠大大降低能源消耗,但這麼做有什麼代價呢?代價是—— 要在PoS 機制中達成共識,得依靠龐大的數據中心,而非人們日常使用的設備。圖片來自Unsplash 網站的Kvistholt Photography -
波卡、Near Protocol、以太坊2.0 ,還有目前其他知名的區塊鏈平台,大多選擇使用權益證明機制(PoS)取代工作證明機制(PoW,驅動比特幣及以太坊的原始共識機制)。因為PoS 的某些優勢能解決現有區塊鏈遇到的一些阻礙及限制,我們完全能理解當前這些項目方的選擇。
首先,與PoW 相比,PoS 消耗的能源要少得多。其次,PoS 鏈的社區可以直接銷毀攻擊者的資金,因此(理論上來說)PoS 能夠讓攻擊(51% 算力攻擊)的成本變得更加高昂,因此受到攻擊的概率更小;PoW 抵禦攻擊的手段相對就比較有限。配合其它流行技術(就是分片機制),PoS 還能提高可擴展性:動態地將驗證者圍繞不同分片隨機分組,可阻遏針對任一分片的攻擊。
但必須說,PoS 也存在一些容易被忽視的短板。我一直向大家表示我不喜歡PoS ,我認為有必要在此列出理由並附上說明。
PoS 不能用於初始的代幣分發,但PoW 能辦到—— 因為PoW 可以通過完全中立、無需許可的機制分發代幣。 PoS 要求人為地提前將代幣分發給潛在的權益人(staker),這可能會導致代幣最終集中在項目方的朋友或投資人手上,這是我們不希望看到的。從技術上來說,PoS 無法實現“免准入門檻”(permissionless),因為任何想成為PoS 鏈的權益人都必須在一開始說服某人(包括項目方)把代幣賣給自己,這使得進入PoS 鏈的門檻變得更高—— 相比於能用已有的硬件挖礦獲得代幣的PoW 鏈(比如比特幣,或是即將上線的Spacemesh);光是為了取得最初代幣,每個想成為PoS 鏈的代幣持有者必須先在交易所創建賬戶,完成KYC/AML 流程,關聯銀行賬戶,等待驗證通過,等等一系列流程;好不容易獲得代幣後,才能開展PoS 鏈上的其他行為。上個問題還會衍生出:一旦出現有一方(或多方合謀)控制了超過全網50% 的代幣,該網絡就會陷入永久的操控。更糟的是,因為任何一方都能將資金分散放在無數的小額賬戶中,所以這個“挾持” 過程很可能不會被其他人發現;PoW 的“無需許可” 屬性讓其免於出現這個問題。作為驗證者,參與PoS 共識機制的門檻很高。驗證者通常需要持有價值大於$1000 的質押代幣,並且必須精通整個系統的複雜架構;這種高參與門檻將許多潛在的驗證者拒之門外,並造成整個系統更加中心化—— 事實上,現今絕大多數PoS 鏈的驗證者就只由少數幾家公司擔任。除了要面對技術上的挑戰,支持整個網絡的驗證者運作還需要持續進行大量的社會協調——包含對驗證者持續進行文檔傳遞、教育、以及常規的溝通;在真正的實踐中則需要整個區塊鏈生態系的多個組織來配合完成。對於有委託機制的網絡(用戶可委託出塊權給其他人),驗證者需要開展活動來吸引質押資金加入,而大的資金方需要同步知道驗證者的聲譽、故障狀態、更新狀態、開發狀態等等信息,並可能需要轉移資金。 “無需許可” 的網絡能簡化大部分的過程,但在PoS 網絡上就顯得非常複雜。想要完整驗證PoW 鏈所需的數據就存在鏈上:主鏈始終是計算量最大的鏈。舉例來說,你不需要任何外部信息,就能完整地、獨立地、客觀地驗證整個比特幣網絡及其包含的交易。但對於PoS 鏈並非如此,因為PoS 的“無利害關係” 特性會導致弱主觀性問題。在PoS 機制下,偽造一條完整的鏈不需要涉及任何工作量證明,因此除非你從創世區塊開始就關注著某條鏈,或是100% 信任某個節點給你發送的關於該鏈的數據,不然你無法確定當前收到的PoS 鏈的消息是否真正來自主鏈。 (具體來說—— 當驗證者在取回其質押的資金後,不論是被利誘或是自己主動,他都能隨時、無成本地構建一條分叉鏈。)PoS 的安全性像個銜尾蛇:整個PoS 網絡的安全性依託於用於質押的代幣價值;但是,代幣的價值也取決於網絡的安全性。一旦發生黑天鵝事件(如,代幣的市場價格暴跌),則整個PoS 系統很有可能崩潰。 [注1]對於區塊鏈來說,有個可靠的隨機數來源非常重要。 PoW 在運作的過程中,能夠自然地以nonce 和區塊哈希的形式,持續為系統注入偽隨機數的seed 。相比之下,PoS 必須想辦法自行構建隨機數;從安全性的角度出發,在這種情況下很難同時保證隨機數的安全性、無偏性,及分佈式特性。要在PoW 鏈發起分叉的代價很高昂,因為分叉鏈如果要穩定運行,則必須控制足夠多的算力避免攻擊(存在分叉鏈遭到算力攻擊的先例)。相反,在PoS 系統中,只要攻擊者在分岔的當下更改驗證者集,就能完成對PoS 鏈的分叉。這使得在PoS 鏈發起分叉更為輕鬆,代價也更低。 [注2]因為代幣持有者通常會將代幣放在大交易所,所以對PoS 鏈來說,交易所通常會把持大量的話語權及獲得大量的區塊獎勵,問題是交易所通常不會將這些收益和真正的持有人分享,所以PoS 網絡往往會被大交易所把控。 PoW 在抵禦攻擊方面,表現得更為簡單自然:即便網絡無法同步,或是某些礦工掉線,其他礦工還是能繼續出塊,並且始終知道哪一條是主鏈。 PoS 比較複雜的原因在於,如果過多的驗證者掉線,整個網絡可能無法出塊,而且要從錯誤的共識狀態恢復更加困難。 [注3]
簡單來說,PoS 讓人感覺像是區塊鏈出現之前的舊玩意兒——— 少數的富人控制著大量的資金,並蒐刮走大部分的區塊獎勵。雖然為了特定目的選擇PoS 的行為沒錯,但這有違我投身區塊鏈領域的初衷。
PoW 當然也有自身的問題,最嚴重的莫過於它巨大的能耗,而且區塊獎勵已經完全被專業礦工壟斷—— 這意味著PoW 挖礦存在嚴重的中心化(我們再也不可能在家中自行挖礦)。所以我選擇加入Spacemesh 的開發工作,其中一個主要原因就是Spacemesh 採用一種新的共識機制——Proof of Spacetime(PoST) ,它解決了PoW 的問題,同時也避免了PoS 的短板。雖然Proof of Spacetime 比較複雜,但Spacemesh 測試網已經成功運行數月,至少在理論上證明該機制可行。
區塊鏈技術還處於初期階段,我認為PoW 或PoS 都不是最終或最好的共識機制,我們還有很大的提升空間。我對PoST 的前景,以及其他在區塊鏈領域不斷的創新感到無比興奮。
你對本文有什麼認同或反對之處,或是認為遺漏了哪些內容?最令你覺得感興趣的共識機制是什麼?請留言告訴我!
注:
1. 同樣的,對比特幣來說也是如此—— 比特幣價格暴跌會導致礦工停止挖礦,進一步會使整個比特幣網絡的價值在負循環中崩潰;法幣也是,如果美國政府失去人們的信任,則美元相對於其他貨幣會貶值,美元貶值會造成政治和經濟動盪,接著使得更多人對美元失去信心......對於所有不具備內在價值的東西來說,都有可能陷入這種死循環。 PoS 還很新穎,缺乏足夠的驗證,時間會告訴我們PoS 在市場極端情形中的表現。
2. 這是缺點,還是特性? —— 取決於你怎麼看待分叉鏈。我其實還挺喜歡分叉鏈,所以我更傾向於將它視為一種特性;但如果你站邊“分叉破壞價值” 的想法,那你可能會不同意我的觀點。 (我在本文將其描述為缺點,是因為大部分人認為分叉會破壞網絡的價值。)(譯者註:作者在這裡對兩類“分叉” 缺乏辨析。分叉有兩種,一種不會使人們陷入辨識的疑難,比如BTC/BCH 分叉,因為共識規則不同,而且兩條鏈都各有主鏈,因此不會有辨識的疑難;但另一種會使人們陷入辨識的疑難,比如鍊運行中的reorg,以及51% 攻擊,還比如這裡說的對PoS 共識的長鏈攻擊。後者很明顯會削弱乃至破壞網絡的價值,因此後者的難易程度是安全性的指標之一。但前者不必然會破壞網絡價值,也不是安全性的指標。作者喜歡的是前者,但文中比較的是後者的難易程度)
3. 從直覺判斷,對於PoW 我們可以隨時圍繞客觀上最長的鏈重新建立共識;但如果PoS 網絡出現延宕導致無法在正確的驗證者集上達成共識,並沒有簡單的方法可以馬上重新建立共識(ps 我還未找到關於此議題的相關研究,還請大家協助,謝謝)。當然,PoS 本身不是一種共識算法,不同的機制對於此問題的處理方式不同,具體實現細節取決於整體的系統架構。
(完)
(文內有許多超鏈接,可點擊左下”閱讀原文“ 從EthFans 網站上獲取)
原文鏈接:
https://www.etherean.org/blockchain/consensus/2020/06/27/why-i-dislike-proof-of-stake.html
作者: Lane Rettig
翻譯&校對: IAN LIU & 阿劍