前以太坊愛好者阿劍:PoS是謊言麼?
BlockBeats 律動財經 2022-09-23 17:30
在 8 月 31 日發布 Fork It #22:PoW vs PoS(文字版)之後,被大家戲稱為「年更」的中文播客節目 Fork It 趕在以太坊合併前夕,錄製了第 23 期:Fork It #23:PoS 是謊言麼?這一期由Daniel和Terry共同主持,邀請到了BTCStudy的內容負責人阿劍老師,來跟大家聊聊關於 PoW vs PoS 的爭論,他的觀點和立場。
阿劍老師曾經是以太坊中文社區非常硬核的研究者,翻譯者,內容貢獻者,主持人的願望是話題能夠深入淺出,但是阿劍老師實力不允許,所以如果你對 PoW/PoS 以及分布式共識算法的設計思想和基礎概念有所了解,那麼會幫助你理解為什麼通過阿劍老師的分析可以得出 PoW 全面優於 PoS 這個結論。
如果你對「Ethereum Merge」的問題分析以及什麼是「比特幣思想」更感興趣,可以直接跳到播客的 1:10:00 開始聽,也可以直接找到相應的文字稿進行閱讀。
訪談結尾處阿劍老師最讓主持人動容的一段話,摘錄於此:一個技術範式應該想到它應該保護自己的用戶,它應該保護共識,它應該珍惜每一分來之不易的共識,它應該容納每一個可能容納的個體去進入這個生態,去能夠用它來繼續做夢,去 為一個遙遠的我能夠想象的美好未來去奮鬥。
以下是社區成員(HelloKelly.bit、JackyLHH、Yifan.bit)整理的文字稿,全文大約 2.6 萬字:
1、開場介紹
Daniel:大家好,歡迎收聽新一期 Fork It,我是消失了很久的節目主持人 Daniel,今天由我跟 Terry 一起來主持,我們邀請到了阿劍老師來做客。
在開始之前,我先做一個當前特殊的時間點介紹。本期節目錄製的時間正非常接近以太坊社區的一個非常大的事件,就是所謂的以太坊 Merge。以太坊 Merge 將會在 48 小時之內發生。當大家收聽到這一期節目的時候,應該是合併剛剛完成的時候。
好,我們先介紹一下今天的嘉賓阿劍老師。
阿劍:Hello,Fork It 播客的聽眾朋友們,大家好,我叫阿劍。非常高興能得到 Daniel 和 Terry 的邀請,來到 Fork It 做客。因為之前我自己也聽過很多期 Fork It,我發現 Fork It 總是能請到最專業的人來聊一些最專業的話題,所以我自己也把這個當成是 Terry 和 Daniel 對我的一種認可,我覺得非常高興。
我是在 2017 年進入這個行業,從那時候到現在,我一直是以翻譯的身份在工作。2017 年到 2021 年,我一直在以太坊愛好者工作,現在可能很多朋友知道我也是因為以太坊愛好者,因為我一直在裡面做翻譯和編輯的工作。如果從這個時間點來看的話,我猜現在我可能是這個行業做翻譯裡面,比較資深的一個人了。因為入行這麼多年一直是在做同樣的一件事,我也是在這個過程當中不斷地學習,藉此做了一些研究。雖然這些研究可能說不上有多麼重要,但也算是積累了一些對區塊鏈的了解。
我從 2021 年底之後,就一直在給 BTCStudy做貢獻,這是一個很小的網站,上面其實沒有多餘的內容,全部都是關於比特幣技術原理、可能擁有的一些技術改進方向,以及生態當中正在出現的一些有趣的技術方案。
Daniel:其實我知道阿劍老師好像平時並不會太多地參加像台前的事情,你主要是在幕後做了一些內容和文章方面的工作。可能有的聽眾有所不知,在國內的以太坊愛好者核心技術小圈子裡面,阿劍老師是一個舉足輕重的人物。為什麼這麼說?因為每當以太坊社區發生重大事件的時候,大家都會所討論。真正的這些我們稱之為 KOL 的觀點,在整個中文社區裡面往往能起到非常至關重要的作用。阿劍老師就是我認識的這個小圈子裡面,為數不多的,真正以太坊硬核的 KOL。
Terry:KOL 有很多,但是硬核的比較少。
阿劍:以前當我還自認為是以太坊生態的一員時,以太坊生態也非常精彩,大家可以看到多種多樣的人物和多種多樣的觀點。我覺得自己在其中顯得相對特殊一點的是,可能我跟 Terry、Daniel,包括曾經上過 Fork It 的這些嘉賓有一個共同點,就是我們特別關注技術和底層。我覺得很多關於應用層的事情不是我最大的興趣,或者說不是在我稱之為社區的這麼一個身份的人最應該關心的事情。所以在這個過程當中,我對於以太坊的協議層,包括它的來龍去脈,它的走向等投入了特別多的關注。我想大概是這一點可能會讓大家認為我會對這些問題會有一些理解。我想其實僅僅是這樣而已。
2、PoW 全面優於 PoS
Daniel:阿劍老師其實參與的討論不是非常頻繁,但是每每有非常關鍵討論的時候,但凡有你的言論,我一定會發出來認真讀,認真看。在以太坊 merge 發生之前相當長的一段時間裡,整個社區又開始了關於 PoW 和 PoS 的爭論。我相信阿劍老師可能參與過很多次這種討論,你能不能對這場曠日持久的以年為計的討論,給大家介紹一下你的立場或者你的主張。
阿劍:首先關於立場,我毫無疑問是認為 PoW 是一個全方位比 PoS 更優的東西,是全方位。
我也認為這個爭論其實可能自很久以前,剛剛出現 PoS 這種想法時就有了,大概 10-12 年,最晚可能就是 14 年。因為 14 年以太坊的研究,包括它的開發都已經起步。從那個時候開始到現在,我最大的感受可能就是在這個過程當中,隨著本身以太坊和其他項目所提出的 PoS 機制的開發或者進一步的研究,就會有一些新的想法或者新的意見出來。
但是整個過程當中,PoS 的一方就 PoS 優越論的論證,實際上我認為是包含了很多雜質的,甚至我認為其中絕大部分都包含着謊言。他們其實用了一種建立於選擇性呈現事實的論證方式,也就是說當你只部分的呈現事實,而不是全面呈現事實的話,雖然你呈現的那部分好像看起來是事實,但是你的論述並不能被稱之為論證,在這個意義之上我把他們稱之為謊言。
我給大家舉個簡單的例子,比如經常會出現的一種聲音是,PoS 是一個新的東西,既然是新的東西,而且對舊的東西有所改進,那它一定是一個新的趨勢,新的未來。再比如說他們認為 PoS 拋棄掉了 PoW 這種計算密集型的出塊過程,可以不用浪費這些能源去生產區塊,就會變得所謂的更加綠色。或者說因為過程不需要耗費這麼多計算量,可擴展性好像就會有所提升。這些都是缺失性的比較。
舉個最簡單的例子,PoS 是一個新東西嗎?這是一個非常有趣的話題。很多人都會認為是比特幣先提出 PoW 之後才有人提出了 PoS 的想法。其實從技術上來說,我認為它是一種範疇上的錯誤。因為如果你對分布式領域的共識算法有所了解,你就會知道分布式領域共識機制的研究最早起源於蘭伯特,Leslie Lamport 在 1987 年發表的論文就是關於拜占庭將軍問題。他所設想的是一個基於投票的機制,有不可偽造的身份證明,也就是數字簽名方案。在這個前提之下,拜占庭將軍問題有一個關鍵性的結論就是,1/3 是一個不可逾越的上限,如果超過 1/3 的人是惡意的,不想達成共識的,那麼這個分布式系統就沒有辦法達成共識。
接下來就出現了所謂的使用拜占庭容錯的算法,也就是在不超過 1/3 的參與者是惡意的情況之下,我們有沒有一套算法可以達成這個共識?其實這些拜占庭容錯的算法,都是基於身份和數字簽名體系,所以你可以認為當時的拜占庭容錯算法就是現在所謂的 PoS 算法的前身。
它比 PoW 出現的早的多,只不過在使用拜占庭容錯算法最早的形態當中,它默認所有參與者的簽名權重都是一樣的,它不會有參與者的投票權重不一樣的情況。而 PoS 對拜占庭容錯算法概念上的進步就在於,它放寬了這一點,使得不同參與者的簽名是有不同權重的。但是,其實我們可以說 PoS 就是一個更古老的東西,實際上並沒有帶給我們像比特幣這樣的無需准許、大家都可以去參與的共識機制。這是一個非常重要的特點。
回到技術本身,其實是有相當多的點可以探討,比如說基於一個大家耳熟能詳的模型,安全性、可擴展性和去中心化三個維度去比較它,其實可以比較出很多內容。
3、安全性:權益研磨攻擊、Nothing at Stake、長程攻擊、51% 攻擊成本
Terry:我覺得從不可能三角這個方向去聊是非常合適的,我現在看到 PoS 一個比較常見的說法,就是它在安全性上是更安全的。如果這一點比不過的話,他們就會指出在同樣成本的情況下 PoS 更安全。在抗審查方面,我覺得是 PoS 比較明顯的劣勢,但在這個時候他們通常又會一起比爛,說在抗審查性上 PoW 也好不到哪去。在去中心化上,他們最早的時候說 PoS 不會有礦池,不會有 stake,但是後來發現這完全是一個非常專業的事情,一定會有 stake。你能不能整體地從這三個維度去分析一下現在普遍的看法,以及你對他們這些錯誤看法的評價。
阿劍:我可能要請 Fork It 的觀眾對我有點耐心,因為我要講非常長。上面我已經說過,在我自己接觸到的所有關於 PoS 更優的論證當中,都包含着大量缺失性比較,或者選擇性比較。我可以先把結論擺在這裡:在任何一個維度上,都無法論證 PoS 比 PoW 更優。我為這句話負責。
首先我們來說安全性。對 PoS 現有的安全性研究基本上都會提到一個很基礎的攻擊:Stake Grinding attacks ,權益研磨攻擊或者理性分叉。
PoS 不是採用 PoW 這種競爭方式來比較誰足夠幸運、足夠快,來提出下一個區塊的工作量證明機制,不是比拼誰更快找出一個符合難度要求的隨機數。PoS 的一種出塊方式是根據時間,把一段時間分成比如 12 段、36 段,每一段安排一個出塊者。
另外一種方式,比如最早的 PPCoin 點點幣,它的方式就是每個人都擁有一個 UTXO,每個 UTXO 有一個面值,以及沒有被花費的時長,這就叫幣齡 Coin age。兩個因素決定了你能不能用 UTXO 成為下一個區塊的出塊者。中間還是需要做一些計算,但是最有意思的點在於,PoW 的出塊屬性是無過程性的,Progress Free。什麼意思呢?就是假設現在出了這個塊,不管如何調整這個塊的哈希值,不論試多少次,它都不會影響挖出下一個塊的機率。下一個塊的出塊者,還是要經歷大量的計算。影響當前這個區塊的哈希值,對下一個區塊的區塊難度實際上沒有任何幫助。
但是在 PoS 里,大家都要使用以往歷史的區塊來作為隨機數源頭,也就用一個隨機數的源頭來生產出一個隨機數,用這個隨機數來決定下一個塊是由誰出,或者下十個塊分別由誰出,它就損失了無過程性的特點。
這意味著什麼?意味著當前誰挖出了這個區塊,挖出了這個區塊數據上的特徵,就可以決定接下來一個塊甚至十個塊的出塊者。
那麼大家會做一個事情是什麼?是雖然我在這個時間點,比如本來這十秒鐘之內只能有一塊,但其實我自己在偷偷挖,已經算了 100 個區塊,我就看哪個區塊能夠讓我在下一個區塊依然是出塊者,或者是找哪一個區塊,能夠最大化我在接下來鏈條當中出塊的機會,這就叫做權益研磨攻擊。它會不斷嘗試在任何一個區塊點位上挖礦,並且試圖干預未來出塊者的選擇。
權益研磨攻擊在當時非常普遍,而且非常致命。因為雖然我們看到這個時間點,好像網路上只出現一個區塊,但實際上大家已經偷偷挖了幾百個幾千個區塊。就等他自己挖出來一條超級長的鏈,然後等到了某一瞬間啪的一下擺出來給你,大家因為最長鏈共識啪的一下就跳過去了。
但是最長鏈共識是穩定的嗎?它也不穩定,接下來又會有人啪的一下給你一條更長的鏈。這是當時出現的權益研磨攻擊,後來大家把它歸結為一個屬性叫 Nothing at stake,權益無關或者說無利害關係。什麼意思呢?就是雖然你只安排我在點出塊,但是我偷偷在挖 N 個塊,這對我的利益不會有任何影響,它只有好處沒有任何的壞處。
權益研磨攻擊直接導致了後來的 PoS 機制幾乎都引入了懲罰機制。大家已經發現這種基於獎勵的,隨意出塊的方式並不工作,那麼就需要用懲罰機制來約束,讓大家不去做理性分叉。它的邏輯是什麼呢?就是當人們已經提出了一個區塊,如果被發現在另外一條鏈上也提出了這個區塊的話,就需要受到懲罰,以此來約束不去挖分叉鏈,確保只挖一條鏈。這個原理基本上貫穿了從 2014 年開始後續的所有 PoS 鏈的設計。
但是我們會發現其實這個問題沒有那麼簡單,因為我們剛剛講的懲罰機制好像只是單向的在通向未來的維度上,避免大家大量地去挖分叉鏈,能夠把大家約束在一條鏈上去,直直地往前出塊。這意味著沒有問題了嗎?不是的。因為一條鏈它不僅有通向未來的維度,它還有歷史的維度,甚至我們認為歷史的維度才是更重要的。
為什麼?因為如果鏈的歷史可以被隨意篡改,那麼它如何去擔當賬本的角色,如何去擔當大家的基礎交易系統,並且在上面構建各種各樣的應用功能?這才是我認為更加關鍵的要素,如果區塊鏈能夠形成一個不可篡改的賬本,一個不可篡改的歷史,那麼我才可以什麼都不怕。對於一個普通用戶來說,我絕不擔心我的錢會丟失,因為所有的歷史幾乎都是可靠的。而私鑰、數字簽名這些密碼學方案給了我迄今為止可以媲美其他任何財產系統,甚至比他們更優的一種財產屬性。
接下來大家就會發現另外一種情況叫做長程攻擊,Long Range Attack。長程攻擊的意思是說,雖然好像可以讓大家在一條鏈上出塊了,但是這並沒有解決問題,為什麼?因為我可以從創始狀態中挖出另外一條鏈出來,這條鏈不一定更長,但重點是我們沒有任何形式上有效的方法去對比這一條新挖出來的鏈,跟歷史上大家一直在用的鏈到底有什麼差別。
這是最關鍵的屬性,為什麼呢?比如我作為一個普通的 PoS 鏈用戶,當我的節點同步上一條鏈的時候,我實際上並不知道這條鏈是不是大家一貫以來,通過 PoS 共識參與的一條鏈,我也不知道它是不是一些人另外挖出來的。有人說我們可以觀察簽名,因為每個區塊都帶有 PoS 參與者的簽名。
但這裡剛好又可以跟另外一個東西聯繫起來,大家發現一個很有趣的事情,所有的 PoS 驗證者都需要把幣鎖進去,但鎖閉進去是為了什麼呢?是為了賺錢對吧?賺了錢就總要有一天要把它拿出來花,總是會解鎖。如果不能解鎖,它就變成一個單向的過程,沒有人會願意參與這樣的算法,因為這意味著完全沒有任何好處。
驗證者的幣會有一個釋放的時間點,一旦在釋放時間點之後,這個鏈所有在共識層面設置的懲罰對你來說不再有任何意義。因為我的錢已經取出來了,你們懲罰我什麼呢?我的錢已經取出來了,這個時候就沒有辦法對我施加任何懲罰了。前面說的那種通過懲罰來使得一個人只在一條鏈上出塊簽名,這件事情本身就不成立了。
這就是長程攻擊跟人們以前發現的一種特殊攻擊的形式,叫做舊私鑰攻擊相結合的過程。就是一旦 PoS 參與者離開了共識層的約束範圍之後,你對他的私鑰行為實際上就沒辦法有任何約束。那麼這個時候有人完完全全就可以去購買一些舊私鑰,購買舊私鑰可能是非常便宜的,因為只是購買一個私鑰而已,並不需要財產。
有了舊私鑰之後,我們就可以偽造跟以前的鏈一模一樣的鏈條,所有的交易都可以重播一遍,所有的簽名都可以重新放上去一遍。那麼到底哪一條鏈是真實的呢?在這種長程攻擊的情況之下,我們會發現現有的所有 PoS 算法都不能從技術上解決這個問題,包括以太坊。
以太坊的 Casper 算法經歷過了很多演進,它最核心的概念是基於懲罰約束,來使得人們在同一條鏈上出塊,確保會定期的達成共識。以太坊基於懲罰算法的這一整個概念上,其設計的複雜和精巧程度,應該被列為當前 PoS 機制的第一名。非常的精巧,而且把它基於懲罰的概念發揮的淋漓盡致。
比如說如果有人提出兩個互相衝突的區塊,那麼就要受到懲罰;比如說 Casper 投票,它不是對出塊的投票,而是對以往歷史區塊檢查點的投票。檢查點就相當於大家要定期刷新它的創始狀態。原本的創世狀態可能是零號區塊鏈,現在過了 100 號區塊之後,大家有 2/3 的同意票,那麼大家就把 100 號區塊變成一個新的所有狀態建構的起始點,那麼 100 號區塊它就變成了一個新的創始區塊。
Casper 懲罰的機制是,但凡出現了一些在檢查點投票當中的不軌行為,包括雙重投票和環繞投票,具體來說就是你會不會投兩個相互競爭的檢查點,以及在投票檢查點的時候,有沒有跳到另外一條分叉點上去,比如一開始投的檢查點是在 A 鏈,但是後面的一個檢查點居然跳到 B 鏈上去了,這就說明是有問題的。
還有一個更加有趣的懲罰是什麼呢?是當整條鏈沒有辦法達成共識的時候,它會懲罰所有參與者。注意是所有參與者,不只是那些不在線的參與者,而是懲罰所有的參與者。如果大家懂博弈論的話,可以想一想為什麼要阻止這些不在線的參與者,通過不轉發其他人的區塊和簽名來陷害其他人?
本身共識算法對不在線參與者的懲罰是比較嚴重的。在不在線是通過某個時間段出現你的簽名去證實的,如果沒有任何懲罰,那麼我就可以通過不轉發你們簽名,長期讓這條鏈處在一個沒有辦法確認共識的狀態,一方面罰沒了對方,一方面讓自己的權重變高。為了阻止這樣的情況發生,就會對這樣的行為施加懲罰,然後用這種懲罰不斷淘汰掉那些不在線的參與者,讓他們重新同步。但是就算把這些所有的全加起來,還是沒有辦法應對我們所謂的長程攻擊和舊私鑰攻擊。
為什麼?因為所有參與者總有一天會退出這個系統,退出這個系統之後,舊私鑰攻擊就變成一個 incentive 上,就是激勵機制上可行的一種攻擊。只是買一個舊私鑰而已,就可以製造出一條超長的鏈。
這個屬性已經得到大家非常充分的討論,市面上有很多相關的資料。有一篇非常重要的文獻,它的原始版本在 2014 年就出版了,後來作者在 2015 年又重新修改了這篇論文,名字叫做 On Stake and Consensus,《論權益與共識》。這篇文章非常重要,它把所有我上面談到這些攻擊都做了總結。最終得到一個結論是:這種長程攻擊實際上代表着對 PoS 攻擊的最終形式,而且是可以疊加的。
比如說,我還聽過有一位朋友提出過一種非常有意思的攻擊,叫做散幣。就是搭配長程攻擊的同時,給這些人空投,讓這些人來支持我的鏈,而不是原鏈。比如我現在要分叉以太坊,我不僅讓你們原本有這麼多幣,而且還要給你們多發一點幣。在這個過程中甚至可以搭配一些其他社會共識上的攻擊,比如發動宣傳戰,和別人說以太坊基金會那幫人把我們的鏈搞崩了,他們不行,所以我們要革命,罰掉他們的幣給大家分錢,我們的幣沒有任何通膨,它在市面上依然是價值堅挺的,但是我們懲罰了壞人。
我記得前幾年,包括 Jan 也提過 PoS 的整個模型有點像銜尾蛇,就是咬着自己尾巴的蛇。你的賬本要安全,那麼共識機制必須要安全,但是想要共識機制必須安全的話,那麼賬本又必須安全,所以構成了一個銜尾蛇。
論權益與共識的作者也得出同樣的結論,為什麼權益證明的共識機制是不安全的?因為它要依賴自己想要形成的賬本來施加它的成長。大家可以跳到另外一個賬本上去,發動長程攻擊分叉這條鏈。在這條分叉鏈上,原鏈所有的懲罰措施都不奏效。在這種情況之下,怎麼能說你的共識機制是安全的呢?所以大家把它歸結為一種 循環論證:賬本需要安全,就需要共識算法是安全的,共識算法是安全的,又要求你的賬本是安全的。
注意我這裡用了兩個「安全」,假設這兩個安全在定義上完全一樣,這意味著什麼?意味著它就是個循環論證。但是實際上現在的以太坊 PoS 算法,包括 Vitalik 本人都認為這不是一個循環論證,為什麼?因為這一句話當中前後兩個「安全」的定義是不一樣的,他認為後一個賬本必須安全的定義,跟共識算法必須安全的定義是不一樣的。他認為這個賬本要安全,是基於所謂的社會共識,是一個社會過程,這個社會共識決定了我們都認可這一條鏈就是以太坊。所以基於這一點,我們再在這個基礎之上形成一個以太坊 PoS 共識參與的流程,進一步決定接下來這條鏈是處理哪些交易。
但是他沒有辦法否認的是,所有人如果不是一直在同步這條鏈,不是整個流程從它創始塊開始一直在同步這條區塊鏈的話,那麼確確實實沒有辦法分辨一段時間以前,兩條同樣形式上相同的鏈,到底哪一條鏈是真正的以太坊。這是技術上沒有辦法做到,沒有辦法達成共識的。
所以他提出了 弱主觀性 概念,就是節點必須保證每四個月時間上線一次,一旦超過四個月時間掉線,就要向一個你信任的,注意,是你信任的節點來給你同步。也就是說不管是跟誰同步,四個月以前斷掉的這條鏈,在事實上都是需要相信這個給你提供區塊鏈數據的節點,這個就是弱主觀性。
它沒有辦法達到像 PoW 一樣的客觀性,PoW 上壓根不必信任任何提供區塊鏈數據的節點,為什麼?因為我可以獨立地從創世塊開始驗證,而且是輕量級的驗證到最新的區塊,誰想騙我都沒有用。PoW 整個通過競爭的共識模型,使得大家最終只會凝聚在一條鏈上,這是 PoW 在安全性上的證明。
但是在 PoS 鏈的整個共識算法運作當中是做不到的,最終得依賴於社會共識,依賴所謂的信任。只要長期掉線,那麼就會受困於弱主觀性,必須信任一個向你提供區塊鏈數據的節點。這一點為什麼重要?因為它意味著共識是會不斷衰弱的,最終來說大家的資訊源會中心化地趨向於那些長時間以來都沒有掉線的人。
而 PoW 會不斷地累積共識,大家會把工作量不斷地累積到同一條鏈上,所有加入的節點都不需要信任其他人。他們只需要用計算機把所有的數據都驗證一遍,驗證它形式上的有效性,就能夠斷定這是一條有效鏈。所以 PoW 在社會共識上是一個不斷累加、不斷凝聚的過程。
這兩者到底意味著什麼?我覺得大家可以仔細想一想,我們想要區塊鏈來解決什麼問題?我們是不是僅僅需要一個大家經常去檢修的機器,還是希望找到一個最基礎的原則,在最基礎的原則之上,區塊鏈可以當成一個全時無休的處理系統,持續出塊來向我們提供最基本的服務,在這個過程當中持續的凝聚共識。我們希望區塊鏈做的是這一點。
所以 PoS 在安全性上和 PoW 根本就沒有辦法比,我最痛恨的也是最常見流傳的一個謊言,就是 Vitalik 自己提出的一種論證說為什麼 PoW 不安全,因為只要租 51% 的算力,就能發動 51% 攻擊。但是攻擊 PoS 需要買下 51% 的幣,或者買下 51% PoS 參與者手上的押金。
這不是赤裸裸的缺失性比較嗎?這是在比較什麼?比較的是對 PoW 發動一個短暫的,比如幾小時或幾十個區塊的臨時性審查,跟永久摧毀一條 PoS 鏈的成本。這明顯比較的就是兩種不同的事情。
如果只是租用 51% 的礦機,相當於只能臨時發動一個審查攻擊,或者短暫的發動雙花攻擊。那麼我們要問的是接下來呢?
首先能租到 51% 的算力這一點在現實中是不成立的。我們可以看到一個 51% 攻擊成本的網站,顯示了租用 51% 礦機到底需要多少成本,幾千美元到幾萬美元都有。如果攻擊成本真的這麼便宜,為什麼沒有人這麼做呢?因為他還有很多不可克服的困難,比如說網路實現的困難等等。
假設真的能租,那麼攻擊的結果是什麼?**大家經歷過幾個小時的混亂,然後結束了。PoW 最長鏈共識會推進大家繼續凝聚在同一條鏈上。PoW 系統沒有被崩潰,沒有完全被毀滅。**除非能夠保證自己永續地掌握 51% 的礦機,否則就沒有辦法永續的發動 51% 攻擊。這是一個很明顯的道理。
如果你真的買下了 PoS 51% 的權益,你能怎麼做?答案是可以為所欲為。因為如果占據了 51% 的權益,那麼就可以完完全全統治出塊這個過程。同時也意味著那些想要參與 PoS 流程的新人,也必須得到你的同意。因為他們必須通過一筆交易來把自己的押金鎖到系統當中,如果他不能把資金鎖到系統當中,就沒有辦法成為一個 staker,就沒有辦法參與出塊,他的簽名是無效的、沒有意義的。只要你能掌握 PoS 51% 的權益,就可以永續地摧毀一條 PoS 鏈。
有人就會說了,我們不是還有社會共識嗎?如果出現這種情況,我們罰他就好了。這是一個很荒謬說法,且不說這是一個缺失性比較,如果要在這個層面上比較,並不能比較出 PoS 比 PoW 更優。其次是如果你真的認為這是一種可行的方案,這就顯得很可笑。因為我們需要的是一個全天候 724 小時無休的系統,但這個系統居然需要全民參與,並且經常要檢查它有沒有出問題。而且真出問題的時候,你確定能凝聚出這麼多社會共識來懲罰它嗎?還是說從共識機制的角度上來看,這種社會共識是可以被利用的一個方式?
因為但凡如果有人通過宣傳戰,讓人相信我們現在有一個共識,我們想要罰一幫人,那幫人就會被罰的話,你想想作為一個 PoS 共識鏈的參與者和用戶有沒有安全感?這意味著你資產的安全完完全全受制於那一個虛無縹緲的社會共識,沒有機制可以保護你。而且重點是每個人發動社會共識的能力是不一樣的,這是一個很顯然事實。你是不是就要讓自己的資產安全置於那一小撮人的意志之下?那一小撮人能夠發動社會共識,就意味著他們隨時可以攻擊你的財產,這是一個你想要的系統嗎?這是一個你想要的把自己的資產放在裡面的系統嗎?這是個非常荒誕非常可笑的說法。
4、攻擊,是一種 opinion 還是一個 fact?
Terry:談到社會共識,首先我覺得這個詞是有點可笑的。但是攻擊這個名詞對你來講,是一個 opinion 還是一個 fact?以前我會把攻擊當做一種 fact,現在我覺得分叉是一種 fact。有了社會共識以後,我就不敢把它當成那種 fact,更像一種 opinion。你是怎麼看待這個問題的?
阿劍:我認為這個問題其實 Terry 沒錯,你的感覺非常敏銳。當我們有這樣一個機制之後,最終只能得到一個結論,就是因為這個系統受制於某一些個體的意志,所以它沒有辦法起到我們想要的保護個體的效果。
實際上這些攻擊只是一種 opinion,因為某一些人的一些觀點被凝聚起來了,一方說這是一種攻擊,但另外一方說不是,這是正義的行動,我是為了鏈和共識的安全性,對你們進行制裁。除非你們也有足夠多的共識分叉出另一條鏈,否則就沒有辦法抵禦這種攻擊。
Terry:感覺就像法官在界定。
阿劍:不,你想的太輕鬆了,這不是法官,這是政教合一。它是一個集宗教領袖和政治權力於一身的集團,或者說課題。
正是因為大家沒有這麼多共識,所以我們才要創造出包括區塊鏈在內的各種各樣的技術,來約束參與表達意見或者參與共識的過程。你要讓它有一種邊界,如果沒有這種邊界,那麼社會共識就隨時可能會被利用,變成一個攻擊人的工具。
就像法國大革命的時候,大家都為了所謂的自由、平等、博愛的法蘭西要處置叛徒,但是如果處置叛徒變成一個沒有約束的行為,只要大家達成一致意見就可以去做的話,那這就是不折不扣的暴政。
我們都知道一個真正公正的社會,必須對個人施加保護,不能說大家指責他,他就有罪。必須在司法上形成一系列程序來保護他,比如說英國的大憲章。一個人除非經過同等封建等級者的在場審判,否則不能宣判他有罪。這是我們法制的基本原理。如果沒有這種機制約束,最終得到的結果就一定是大家肆意的相互攻擊,並且要求其他人自證清白。比如說證明一下你沒有攻擊以太坊區塊鏈,你不能自證清白,我就要攻擊你。
5、安全性:平衡攻擊、seed node
Terry:另一個問題是一些人為什麼能相信 PoS 更安全,因為他們並不懂這一套理論,更直觀的感受是 PoS 鏈很多,也沒有發生你們說的攻擊,反而一些 PoW 小幣經常出現 51% 攻擊,所以他們很容易得出來說 PoS 就是更安全的結論。你作為從業者有什麼可以在這方面給他們做一些解惑。
阿劍:我們其實都同意 PoW 陣營里,會有不同算力支撐的 PoW 鏈,在 PoS 里也會有不同鎖定價值的鏈。如果真的想在技術上做分析的話,只能藉助控制變量法。就是只從技術上最本源的那些東西去分辨哪一些機制是至關重要的,哪一些特性會影響它的安全性。
大家可以看到的一些 PoW 鏈 51% 攻擊的例子,比如說之前 ETC 上出現過的這種攻擊。這個例子其實蠻能給我們警醒的,因為 ETC 本身的算力比較小,而且以太坊的礦機都可以去挖 ETC。所以其實你占有的算力實際上只是一小部分,這個部分可能不會太大,所以你的共識就有安全性的風險。
但是僅僅只從最終的結果上去說 PoS 更安全,是不成立的。就極端一點來說,假設你自己運行一個只有你一個人運行的 PoS 算法或者 PoA 算法,它是安全的,所有已經達成的共識都不會被顛覆,因為你沒有必要顛覆自己。但是這並不能證明它的安全性。在我們真的要討論安全性這個問題的時候,我們需要給它一定的約束,更明確的定義,來真正詳細的從技術上思辨這個問題。
Daniel:我想到一句話大概能描述這種場景,就是拋開劑量談毒性都是耍流氓。阿劍老師前面談到了 PoS 從娘胎裡帶來的一些問題、缺陷和後續的一些補救方案,包括 Nothing at stake attacks、Long range attacks 這些攻擊。我們講安全性的時候,PoS 陣營總是會說,我們雖然有這些攻擊,但是想要構造這些攻擊難度非常高,以至於你無法證偽,經常會有這種沒有辦法證明或者證偽的理論存在。
阿劍:我覺得這些朋友應該算是求錘得錘的一個例子。如果你了解過以太坊 Casper 算法的話,其實它有兩個部分,一個部分被稱之為分叉選擇規則,分叉選擇規則是基於這些我們所謂的見證者去發送對區塊的簽名,叫做 attestation;另外一部分是所謂的 Casper FFG,即通過 Casper 的投票去不斷刷新檢查點。
這兩個部分在研究上其實經過了挺多的改進,後來形成了這樣一個表述。我約莫記得,說它的安全性不基於時間同步的假設,即時間上異步也是可以的,而持續出塊的活性基於所謂的半同步假設,也就是說通信的時延是有上限的。這裡如果我在表述上犯了錯,請大家原諒我,因為我好久沒看了,不太確定最準確的表述是什麼樣的。
後來,有人在論壇上提出了一種攻擊,叫 Balancing Attack(平衡攻擊)。這種攻擊其實就涉及到在所謂的半同步假設之下,去攻擊活性的一個假設。這種攻擊的全貌,我沒有辦法複述出來,之後以太坊的研究員在基於 Balancing Attack 的基礎之上,在共識算法當中加了一些東西去抵抗這種攻擊。這意味著我們證明了,或者說我們展示了,哪怕在半同步的假設之下,其安全性、活性也是沒有辦法得到保證的。
我認為這些事情其實已經足以說明,當大家說 PoS 很安全或者沒有辦法舉出一個攻擊的例子時,很大一部分原因是他們沒有接觸過。比如說權益研磨攻擊,一些 PoS 區塊鏈就因為權益研磨攻擊而死亡,比如我剛剛談到的 Balancing Attack(平衡攻擊),一種新形式的攻擊,似乎也被證明了是有必要去防範的一種攻擊。
所以,如果大家去看更多的技術資料,就會得出更多的想法,而不僅僅只是說「現在沒有攻擊,那些 PoS 鏈不是活得好好的嘛」這一類的言論。實際上,這些是不足以讓我們得出一個清晰的結論,在我們真正需要選擇的時候有所選擇。
說一句刻薄一點的話,如果你買一個會爆雷的金融產品,在爆雷的那一天之前它都是安全,但其實你並不能保證它一直是安全的。這時候,我又想起了羅素講的一個很刻薄的笑話。他說,你養一群母雞,每天一敲盆子就給它們餵食,一直持續下去。這些母雞歸納出敲盆子等於有食物吃,直到有一天,你敲着盆子,把圍過來的母雞扭斷脖子。這是一個很刻薄的笑話,但真的是這樣。
Daniel:剛剛阿劍老師非常犀利地批評關於弱主觀性等問題的時候,我和 Terry 在後面一直在狂笑。
Terry:我還有個問題,剛才提到弱主觀性,包括節點需要在線等問題,我聽到一些言論,說「BTC 代碼里也有 seed node,剛上線時,也需要通過代碼里寫的 seed node 去找到幾個節點,然後才可以開始同步」。他們認為,這裡面也有一些主觀性,只是弱和強的區別而已,並非黑和白的區別。你怎麼看待這種觀點?
阿劍:這個根本就比較不出來。實際上,所有的區塊鏈,新節點加入網路的時候,都需要別人給他提供區塊鏈數據去同步,關鍵在於別人給的數據你是否可以自己去驗證。我們經常說:「Don』t trust, verify.「你要自己驗證它。不管是比特幣還是以太坊,都有 seed node,都有種子節點,這些節點給你提供當前區塊鏈的狀態,你可能會找一個離你最近的節點來下載區塊數據。
PoW 區塊鏈的一個特點,是它的區塊都是非常難以生產的,以至於當你每收到一個區塊時,去驗證它的工作量證明,只要這個驗證過程一直持續,且你連接到了足夠多的節點,在這個過程當中你的信任是可以被最小化的。也就是說,信任的因素已經被我們用可以想到的這個方式壓縮到了最小。所以,我們可以說 PoW 它本身是信任最小化的,但是 PoS 顯然不符合這一點。
Daniel:這個其實是安全方面非常重要的一個點。當你要保證安全性的時候,你基於安全性的一些假設,是要最小化的,你不能假設一大堆東西都是安全的,而是要儘可能假設最少的東西,這樣才能證明它的安全性。
6、PoS 並沒有提升可擴展性
Daniel:我們在安全這塊已經聊得很充分了。前面我們說區塊鏈除了安全性,還有去中心化,還有效率。我覺得效率其實可以不用談,因為 PoS 做了這麼多的妥協,主要就是為了提升效率。
Terry:但是以太坊這一次合併並沒有提高效率。可以給大家介紹下這一常見的誤解。
阿劍:對,沒有提升。認為 PoS 可以提升可擴展性,是區塊鏈社區的一個誤解,我在 2019 年 5 月份就發現了這點。
舉個例子說明下,一個普通節點,做的第一件事是驗證所謂的共識,即別人出的區塊是否為有效區塊,第二件事是交易的處理。我們控制變量,在硬體條件一樣的情況下,節點的資源總量是不變的,你在驗證共識上花費的資源越多,在處理交易上的資源就越少,性能/吞吐量就要下降,對吧?這是一個很顯然的事實。從中你就可以推斷出來,所謂的 PoS 能夠提升可擴展性,根本就是一派胡言。因為 PoS 共識驗證的開銷,比 PoW 大非常多。
這裡我們不涉及交易的處理,只談區塊的驗證。驗證 PoW 區塊時,實際上你只需要上一個區塊的哈希值,以及現在這個區塊的 nonce,計算一次就知道現在這個區塊是有效的還是無效的。在 PoS 或者是委託式的 PoS 里,你要驗證 10 個、100 個簽名,或者是一個包含了數十個簽名的聚合簽名。拿以太坊 PoS 出塊舉例,出塊的單位稱之為 slot,一個 slot 可能有 32 位驗證者,你需要驗證這 32 位驗證者的簽名或者聚合簽名。注意,驗證簽名後還沒完,你還必須做一件事情,你得知道這些公鑰有多少權重。簽名不只是簽名,簽名的重點是它對應着哪個公鑰,而接下來要查找對應公鑰到底能不能出塊,以及這個簽名應該被認為有多少的權重,然後才能斷定這個區塊是不是已經達到出塊的要求了。
所以,PoS 驗證共識時,是一個所謂的帶狀態的驗證,和 PoW 的驗證不一樣。PoW 的驗證是一個無狀態的驗證,即不需要知道公鑰是誰控制的,只需要計算一次哈希值,就能知道區塊是否有效。在 PoS 的驗證中,你首先要驗證簽名,其次驗證是帶狀態的,你必須知道每個公鑰對應多少權重,你才能夠算出最終的區塊簽名當中它有多少權重,然後你才能夠確定它是否達到 2/3,是否達到檢查點的要求。
PoS 帶狀態的驗證,這一點的影響非常深遠。這意味著,PoS 在共識驗證上的開銷,會隨著驗證者數量的增加而增大,這是一個很顯然的事實。如果有 100 個驗證者,就有 100 個狀態,1 千個驗證者就有 1 千個狀態,1 萬個驗證者就有 1 萬個狀態。
有一則小新聞,很多人沒有注意到。以太坊引以為傲的 Casper 算法,聲稱是一個開放的、能夠容納數千數萬個驗證者的算法,實際上很早就有人提案說未來可能要限制驗證者的數量。為什麼要限制驗證者的數量?驗證者不是越多參與越好嗎?因為驗證者越多,它的驗證效率會變得更差,所以才要去做限制,這是一方面。
另外一個很多人沒有注意到的方面,是驗證區塊的通信開銷也會變得比 PoW 大很多。在 PoW 出塊者內部,你挖你的,我挖我的,誰先出塊,大家就在後面跟着挖,這是非交互式的。在 PoS 中,出塊者需要持續跟其他人保持通信,需要收集其他見證者發過來的簽名。當你要收集多個參與者的簽名時,你跟這些見證者可能沒有一對一的網路連接,可能要經過好多跳轉才能收集到。在以太坊 PoS 中,它為每個 slot 設置了一個簽名收集人,簽名收集人要把自己提議的區塊發布出去,然後要從其他人那裡接收簽名。
你想想,他知道的只是其他見證者的公鑰,他不知道他們的網路位置,這就是一個風險點,因為這意味著他的區塊要洪範式地發送出去,就像我們廣播一筆交易一樣。另外,其他見證者不知道這個簽名收集人的網路地址時,他們也要洪範式地發送出去,直到簽名被收集人所收集。這其實會造成非常大的通信開銷。
如果我們認為這僅僅只是出快者節點內部的問題,我自己會覺得對但也不完全對,因為在這個過程當中,確確實實要占用到那些不參與出塊的人的通信帶寬。所以,我們會發現,如果你只研究共識算法,只研究共識機制,但不研究區塊鏈協議的話,你可能很難意識到這一點。
如果你研究過以太坊的狀態表達,以及它的狀態膨脹問題的話,你就會敏銳地意識到 PoS 算法在本質上是把驗證者的狀態跟普通用戶的狀態切開。驗證者依然是帶狀態的,有一個外部的狀態,對應着每一個普通用戶的帳戶以及合約等等,此外還有一個內部的狀態。以太坊用一種機制來保證兩個狀態之間可以溝通。共識的參與者全部都是帶狀態的,就會出現我們所謂的狀態膨脹問題,就會出現驗證的開銷不斷升高的問題。
Daniel:這個問題目前還沒有暴露出來。我不知道過去跑了一年信標鏈(Beacon Chain)的節點,有沒有看到這個問題的端倪。
阿劍:這方面我沒有去跟進,但在技術上推論就是這樣,技術上它會發生,遲早有一天會發生,只不過是什麼時候發生而已。就像你不能因為它現在沒有造成一個很壞的影響,就說它沒有影響,對吧?所以,說 PoS 的可擴展性更強的這種言論,實際上都是基於一種缺失性的比較和選擇性地呈現事實。
再舉一個最簡單的例子。現在 PoS 支持者說使用了 PoS 之後,以太坊出塊只需要 12 秒,而之前 PoW 以太坊出塊要 15 秒。其實不能這麼比較,因為 15 秒的區塊可以比 12 秒的區塊更大。一分鐘出 4 個塊,其吞吐量未必比一分鐘 5 個區塊的吞吐量要小,因為前者可以有更多 gas 量,而後者需要在共識驗證上有更多的開銷。這難道不意味著 PoW 的可擴展性比 PoS 更強嗎?為什麼我們會一直沉迷在這種所謂的「出塊速度決定可擴展性」的迷思當中?
Daniel:我其實一開始只是想說在一些典型的區塊鏈架構設計當中,PoS 的共識設計為了提升效率、提高所謂的吞吐量,而犧牲或者妥協一些其他的因素。結果,阿劍老師直接搬出以太坊 2.0 的 PoS 共識機制來推翻了這個說法。
7、抗審查性
Terry:正好我也想問一下。上次我訪談 Cipher,正好也談到了審查的話題。我們就拿以太坊作為例子,它從 PoW 切換到 PoS 之後,如果面臨美國相關機構的審查,在抗擊審查方面,前後有區別嗎?或者說有高下之分嗎?
Daniel:我可以再補充一個細節。通常在 debate 的時候,攻擊 PoW 抗審查時,會說 PoW 的礦池實際上是由幾大礦池掌控的,而礦池背後是掌握能源的大資本,基於此很多人說 PoW 也沒有一個非常好的反審查基礎,也容易被審查。當然,在上一期 Fork It 4 中,Cipher 提到當 OFCA 要求審查時,PoS 也會面臨這個問題。
阿劍:在這個問題上,我不是專業的,但我想提醒一點,你在 PoW 中參與出塊,其實跟你的身份沒有關係,你的公鑰可以每天換一個,但在 PoS 中你是沒法做到的,你可以不斷切換網址,但你的身份一直是那個身份,所以在 PoS 中可以基於這個身份一直持續地追蹤你。
我們增加抗審查性,或者說提高隱私性,最好的辦法是讓大家水到渠成的、很自然的、不用刻意去動用某一些技術就能夠完成,這是我們在技術上追求的終極目標,因為現在我們會看到一些極端情況,那就是提供這些技術的開發者,他們本身會成為被攻擊的對象。Tornado Cash 就是一個很明顯的例子,當然這和以太坊本身的架構也有一定的關係,我就不展開說了。
8、 Finality(終局性)
Terry:OK,你的觀點很有意思。你覺得 PoS 權益更強,所以我想問一個問題,你怎麼看待 finality(終局性)?很多人喜歡拿這一點說事。
阿劍:PoW 的以太坊,要達成 finality,大概需要 15 個區塊,大約 4 分鐘。切換到 PoS 後,需要 1/2 個 epoch,再加上一點等待時間,以確認 fork 相關的事宜,我之前計算過,一共要 6 分半鐘才能達成 finality。為什麼大家說切換 PoS 後,以太坊達成定性的速度提升了呢?這是一個很奇怪的事情。
Terry:很有意思。
9、以太坊合併,就是走大區塊路線
Daniel:關於 PoS 和 PoW 的 debate,我們已經聊了很多,阿劍老師也分享了自己的很多觀點。我現在回過頭來,想問阿劍老師一個問題,對於以太坊的這次 merge,你是否看好?
阿劍:我必須先聲明一下,大概去年七八月份開始,我就不再關注以太坊在未來方向上的一些事情,但在那之前,我還是有關注和了解的。如果你要問我對 The Merge 以及以太坊未來發展方向的看法,我覺得 The Merge 就是大區塊。我之前在推特上說我想做一款表情包,一個蒙着頭的人,很光鮮,上面寫着以太坊合併,然後他掀開頭套,上面有幾個大字——大區塊。這是我的真實想法。
Daniel:阿劍老師,你能不能先科普一下大區塊的概念?因為大區塊以及與之相關的 debate,之前主要發生在比特幣社區而非以太坊社區,而且是否走大區塊路線也導致了比特幣的分叉。
阿劍:大區塊,顧名思義,就是通過擴大區塊的大小,求節點投入更多的資源,來達成吞吐量提升的效果。我們還是拿以太坊作為例子,一開始以太坊單個區塊的 gas 上限為 300 萬,那是很早的時候了,後來提升到 800 萬,之後又提升到 1250 萬,再後來是 1500 萬。EIP-1559 之後,它直接變成了大區塊,gas 量可以翻倍,但平均區塊大小理論上來說依然維持在 1500 萬。
在這個過程中,因為單個區塊能容納的 gas 量,也就是能容納的計算量增加了,所以你可以認為每個節點在單位時間之內,需要處理的交易或者說需要投入的資源數量,都增加了。如果你用 tps 作為衡量標準,區塊能容納的 gas 量從 800 萬變成 1600 萬,如果裡面的交易構成沒有太大的變化,那 tps 就達到了翻倍的效果。
大概在 2015、2016 年的時候,大家發現比特幣的區塊開始被打滿,之前它是長期處於一個不滿的狀態,所以大家開始關係區塊大小的問題。當區塊滿載的時候,就會開始出現所謂的擁堵問題,你發一筆交易沒有辦法很快就被確認,可能要等 1~2 個區塊甚至更長的時間。這個時候,有人提出怎麼給區塊鏈系統擴容,怎麼提高它的吞吐量,讓大家的交易能夠被更快確認,交易費用、手續費更低,大概是往這個方向走。
當時就有人提出說,我們有一個最簡單的方案,他甚至還引用了中本聰的話,因為中本聰也說過,要提高吞吐量其實很簡單,把區塊大小的上限往上拉高就行,因為原本的情況下有 1MB 的限制,超過 1MB 的區塊會被節點所拒絕。所以就有人建議將區塊大小從 1MB 提高到 2MB,至少眼前就沒有這些事了。因為這個,當時的比特幣社區里充滿了各種尖銳的爭議。
Daniel:那個時候,比特幣要不要走大區塊路線,爭議非常大,大到已經牽涉到信仰層面了。雙方都心系比特幣的未來,甚至把這當作真正決定比特幣未來生死存亡的問題來去爭論。我們先說結果吧,你覺得現在比特幣有走大區塊路線嗎?
阿劍:在這一點上,我得提出一些批評,比特幣沒有完全走大區塊的路線,但隔離見證確確實實提高了區塊大小的限制。隔離見證把密碼學中稱之為 witness 的數據,也就是證明一筆交易有效性的證據,給挪到了一個專門的地方,區塊里的其他內容還是限制在 1MB 大小,但如果算上 witness 的數據,區塊大小也有 2MB。
Daniel:5 年後的今天,我們回頭看 5 年前大小區塊的辯論,結局是現在的比特幣區塊比之前的大了一點,但大的不多。我的理解是,比特幣並沒有真正踐行當年所提出的大區塊路線,因為當年大區塊的支持者們的預期是 10 倍、20 倍,甚至更多。而且,我們今天還能看到比特幣社區里的一些理想主義者,他們依然相信如果當年比特幣採納了大區塊的建議,在今天比特幣會是另外一倍更好的局面。總而言之,大小區塊之爭在比特幣的歷史上是非常濃墨重彩的一筆。
阿劍:我想補充一點,當時為什麼很多人反對大區塊,是因為大區塊是有代價的,它意味著節點的營運成本上升。如果區塊大小限制在 1MB,平均每 10 分鐘一個區塊,你可以算出一年要被占用多少容量的硬盤空間。如果區塊大小變成了 2MB、4MB,硬盤空間就要翻倍,毫無疑問這會傷害到去中心化的屬性,因為它抬高了節點營運的成本。我當時因為這點,也對隔離見證有一點點意見。從原教旨主義的角度上來說,隔離見證這件事情是有瑕疵的,是一件我們不希望以後會頻繁上映的事情,當然事實證明它確實沒有再次上映。
我認為隔離見證帶給我們的最重要的一件事情,是它始終提醒着我們大區塊是有代價的。如果你想讓區塊鏈系統提高吞吐量,大區塊是一種簡單直接的方法,它也確實能提高吞吐量,但它不是一個很理想的解決辦法。為了維持一條鏈的生存能力,這種辦法能不用就不用。
Daniel:伴隨著比特幣的大區塊之爭,後來分叉出了 BCH,再後來又有了 BSV,我們在這就不展開討論了。阿劍老師,前面你說以太坊的 merge 就是以太坊的大區塊方案,這個我們該怎麼理解呢?
阿劍:我來給大家做一個不是那麼長的推理。我先做一個現場調查,Daniel 和 Terry,你們是否認為以太坊的 layer 2 有明確的、可證實的或者說非常漂亮的擴容效果?
Daniel:我否認。
Terry:我也否認。
阿劍:為什麼你倆會否認?
Daniel:在我看來,目前所有的以太坊 layer 2 擴容方案,都偏離了真正的第一性原理,因為現在以太坊 layer 2 擴容方案以 rollup 為主,rollup 只是對 layer 1 的計算能力做了一個抽離並加以改良,實際上真正能夠擴容的約束條件還是在 layer 1 上。所以在我看來,所有的這些 rollup 方案,都只是中間的過渡方案,以太坊還沒有真正走出一個充分可預見的、光明未來的 layer 2 方案。
阿劍:對,我要說的話已經被 Daniel 說完了。
Daniel:不會吧?
阿劍:確實是這樣,Daniel 總結得非常對。以太坊的這些 layer 2 方案,當然會有不同的技術範式,我可以先給大家稍微簡單介紹一下。比如說 ZK-Rollup,使用了所謂的密碼學上的零知識證明,我們現其實它沒有使用零知識的屬性,而是使用我們稱之為證明系統的這麼一個技術,來生成一個計算完整性的證明。也就是說,從一個狀態到另外一個狀態的過程中,我執行了所有應該被執行的計算,生成了一個可以向你證明的證明,你通過驗證這個證明就能知道我的每一步都是根據某一個你可知的計算規範來運行的,這就是 ZK-rollup。
還有一種叫做 Optimistic Rollup,它就更簡單了。它不向你提供完整性的證明,而是斷言最終的結果就是這個,如果你們不信,你們就來挑戰我,我們各自出錢把押金押在這,如果你能證明你是對的,我的押金就輸給你,但是如果你不能證明你是對的話,那麼我的這個狀態就不受影響,我會繼續拿我該拿的錢,然後 layer 2 繼續往下走。
當然,與此同時還有人提出其他一些方案,比如 ZK 陣營里有一個叫 Validium 的方案。ZK-rollup 和 Optimistic Rollup 有一個共同點,都需要把 layer 2 上發生的那些交易數據發布到以太坊的主鏈上,發布的形式就是我們稱之為 Calldata 的一種數據形式。在這個過程中,ZK-rollup 和 Optimistic Rollup 都會不可避免地占用主鏈的資源,因為你要在主鏈上儲存 Calldata。儲存這部分數據是有理由的,如果沒有這部分數據,你就沒有辦法建構出 layer 2 的鏈上狀態,進而無法發起提款之類的操作,也沒有辦法發起相關的挑戰。這叫數據可用性(Data Availability)。Validium 則拋棄了數據可用性,不在主鏈上發布我的數據,而是把數據放到別的地方,用別的方式公開。
Validium 的這種方案,確實不會占用主鏈的資源,但與此同時,你也可以認為它給用戶提供保護的效果會弱稍微弱一些,這就是區別。
我有個簡單的判斷,大家可以看到在這個過程當中是不是依然使用了主鏈的資源?如果是,那可擴展性就受制於主鏈資源的容量。很多剛接觸以太坊 layer 2 的人,可能會對 layer 2 這個詞有誤解,誤以為所有的 layer 2 都會占用主鏈的資源,其實不是的。像閃電網路這種支付通道,狀態通道,都是在鏈下進行交互,不需要在主鏈上發布任何數據,只需要把雙方存進去鎖定的那筆交易跟最終結算的那筆交易上鏈就可以了。
所以,如果你的 layer 2 要提升可擴展性,還要把數據傳輸到主鏈,那要麼在主鏈上提供更多 Calldata 的數據空間,要麼把 Calldata 的 gas 量降得更低。我稍微提醒一下大家,以太坊 layer 2 的擴容效果,是通過測量 layer 2 上發生的每一筆交易占用主鏈的 gas 數量來衡量的。
Daniel:我記得以太坊曾經降低過 Calldata 的費用,通過這種方式讓 rollup 的性能提升一點。
阿劍:對,價格降過不止一次,我記得是兩次。效果是什麼呢?效果就相當於 layer 2 的一個區塊占用主鏈的 gas 數量更小了,所以恆定數量的 gas 用量可以容納更多的 rollup 區塊或者打包壓縮更多的交易,因此說「可擴展性提升了」。你覺得這種論證成立嗎?從技術上來說,這種論證我覺得是很離譜的,為什麼?因為你明明投入了更多的資源。如果你跟我說你現在把區塊從 1MB 變成了 2MB,可以容納的數據更多了,所以可擴展性提升了,我這種只研究技術的人都覺得很有問題。現在的方案是,把 Calldata 的 gas 消耗量降低,讓同一個以太坊區塊在 gas limit 不變的情況下可以容納更多的 rollup 區塊來達到所謂的可擴展性提升的效果。
我們關心的是,The Merge 之後,以太坊準備怎麼做?我簡單看了幾篇文章,包括 Vitalik 自己寫的文章,他的想法是這樣的。合併之後,每個時間點都有一定數量的 PoS 見證者會進行報導,我們就讓這些 layer 2 營運者向這些見證者發布區塊。相關數據會使用一個稱之為 糾刪碼 的方案。糾刪碼方案,就是把把一個文件分成很多個有冗餘性的碎片,所以你只要拿到其中的一部分碎片,就可以恢復出原本的數據。通過糾刪碼的方案,PoS 見證者可以檢查這些 layer 2 營運者是否誠實地發布了自己的區塊。
然後,Vitalik 還提出了一種新的交易類型,blob-carrying transaction,攜帶數據的交易。這種交易的特殊性在於,交易費用更便宜,但它不能跟 EVM 的智能合約等進行交互。另外一個特點是,它只能儲存一段時間,比如一個月,一個月後節點就不一定能拿到這個數據了。
Vitalik 的思路就是這樣,每個 slot 都有一定數量的見證者,那就讓這些見證者去檢查 layer 2 營運者發布的 rollup 區塊,比如讓每個 slot 檢查 1MB 大小的 rollup 區塊,看看它們有沒有達到數據可用性的要求,然後整個系統的吞吐量就提升了。
我們其實都能看出來,在這個過程當中,每一步大家都知道它其實是在擴大區塊的大小,因為它要攜帶更多的數據量,它要容納更多的數據量,它要檢查更多的數據量,但是與此同時,它每一步都嘗試通過一系列的限制去限制區塊擴大的效果。比如說,Calldata 的 gas 降下來了,但在每個區塊中不能超過 1MB,通過額外的這個限制,來限制區塊擴大的效果。
The Merge 之後,為什麼我說它是一個大區塊,因為 PoS 區塊鏈共識層的驗證變得更複雜了,假如 Calldata 進一步降價的話,意味著以太坊恆久保存的這些區塊會變得更大。如果用上面我講到的那些特殊方法,比如攜帶數據的交易,來去容納更多的數據,雖然這些數據一段時間後會刪掉,但依然擴大了區塊。
因此,到最後就是一句話——大區塊。通過大區塊來提升所謂的吞吐量,在我看來這是一個非常可悲的事情。
Terry:對,但是展開講的話,它通過這麼多年的迭代,又實現了一次 PoW 到 PoS 的範式的轉換。在後面的話還有多條線、多條技術路線同步去推進,然後還有未來有若干次的一些集成,可能目前來看的話,其實實際上做的效果它就是大區塊效果或者是一個抽象的大區塊的這麼一個效果,我認同,我覺得這個確實是如此。
阿劍:OK,如果大家對這個話題非常感興趣的話,我很推薦大家去閱讀兩篇文章。一篇是 John Adler 的文章,我不知道大家認不認識他,他是一位非常厲害的人物,他在 2019 年 10 月的時候寫了一篇文章叫做《基於委員會的分片區塊鏈的安全性與可擴展性》。那篇文章是在我看來是第一次把大家對於分片系統的迷夢敲醒了一篇文章,當然同時也敲醒了我。在那一次之後,我第一次開始意識到我應該用什麼樣的方式去思考這個問題,那篇文章非常棒。
你看那篇文章,你就懂得,想要不陷入大區塊的這種陷阱當中,實際上是非常難的事情。而很多的技術路線,你想一想它要解決的問題,它把複雜性放在哪裡,你最終可以得到結論,它可能不可避免就會是一個大區塊的方案,這是一個。
另外一篇文章是 Ruben Somsen,他是在 2020 年寫了一篇文章叫做《SNARK 與區塊鏈的未來》,它這篇文章也是明確的去論證了這種技術它到底是如何擴容的,也正是這篇文章,讓我們知道了,其實以太坊的這種擴容的話,它最終依然是用到了主鏈資源。這兩篇文章都非常推薦大家去看。
Terry:OK,我稍後跟阿傑老師去要這兩篇文章的資訊,放在 Show Notes 裡面。
阿劍:好的。第一篇文章就是 John Adler 那篇文章的話,現在大家其實直接搜一搜得到它的英文原版,然後它的中文版其實說起來很可惜,因為最早的中文版是由以太坊愛好者提供的,然後現在的話你已經沒有辦法在以太坊愛好者上讀到這篇文章了,因為這個網站已經不存在了,雖然是以太坊的愛好者的譯本,但是你只能在其他網站上看到他。
10、BTCStudy 的故事
Daniel:其實前面阿劍老師你也提到過,從去年的從去年的某一個時間開始,你把你的主要精力從以太網愛好者這麼一個我當時認為就是在國內一個非常有品位的以太坊內容社區,轉移到了 BTCStudy。其實我也是想問下,你能不能給大家講一講最後背後發生什麼事情嗎?這是今天我最想問的一個問題。
阿劍:這麼八卦的問題我已經等了好久了,終於被問了。
其實 2021 年底的時候,我們在以太坊愛好者的公眾號上給大家發了一篇相當於告別的告別信。在這個過程當中,確確實實感覺到體驗也是多方面的。
比如,其實當時我們都對以太坊有非常多的希望,而且也希望儘可能做自己的努力,不管這種努力是研究也好,內容的分發也好,或者是其他方面也好,通過不同的方式去吸引大家關注它,然後包括它技術上的一些進展,包括它的應用上有哪一些創新,這些都是我們希望傳達給大家的東西。因為當時至少在當時,我們也非常欣賞、非常激動於以太坊他能夠給這個世界提供的東西,但是在這個過程當中,你也會有非常多很苦澀的體驗。
最集中的一件事情,大家如果對我有了解的話,應該都知道是因為 EIP-1559。如果大家一直有關注以太坊愛者的話,你會發現我們雖然一方面也在做包括以太坊共識機制在內的最新進展的介紹,但是我們依然會傳達一種批評的聲音,就是這個東西不如我們想象中那麼理想。
就像 Daniel 說的,我其實很少在公開場合去表達我的觀點,但是這是我一直藏在我內心裏面的一個真實的想法,包括 2019 年的時候,當時也在李陽老師的公眾號橙皮書上寫過文章,去做過比較。
Daniel:我記得很清楚,當時你在橙皮書上發出那篇文章之後,全網的人,我認識的朋友,跟以太坊沾邊的,所有的 KOL,大家都在轉發這篇文章。阿劍老師寫的文章,我覺得你說的這個事情其實讓我非常觸動,因為我是長期在關注以太坊愛好者生態和社區的這麼一個人。雖然我也離開了以太坊社區,阿劍老師可能也知道,以太坊愛好者社區這個網站最早期在創建的時候,我也參與過一點點,因為當時我跟大家都在一起,我們投入了自己一部分精力和心血。
雖然之後我並沒有參與到以太坊愛好者社區的營運當中去,但是看着這個孩子出生,我一直對它保持關注。在國內,在我心目當中,以太坊愛好者社區是唯一的那一個,我可以非常自信地說,它就是唯一的我認為最有品位的、以太坊社區生態的、極具思想性和內容性的內容社區,而且可以從以太坊愛好者這個網站能夠看出它背後是一群小夥伴,非常 passion,有激情地在推動着這個網站的內容建設。其中,最後最有 passion 的推動者就是阿劍老師你本人。這個我覺得毋庸置疑,然後在去年的時間點發生了這麼大的一個轉變。
我還記得讓我印象很深的一件事情,我想在這裡跟大家分享一下,也是我觀察阿劍老師當時做的一件事情。
我想引用我特別喜歡的一本書,茨威格寫的一本書叫《人類群星閃耀時》。他寫的是人類的文明進展過程當中,發生過的非常重要的那些特別重要的時間點,以及當時的一些人在那個時候所做的一些事情。這本書把這些人類文明發展過程中的重要點給記錄下來了。比方說,拜占庭被攻陷的時刻發生了什麼事情,人類發現美洲新大陸的那一時刻所發生的一些事情,都記錄下來。
可是,區塊鏈發展的時間跟人類文明世界發展史沒有辦法比較。在區塊鏈的發展史上,我們這幾年已經經歷了非常多非常重要的事件,而且在每一個事件當中,有一些非常重要的人和事情,應當被記錄下來。比如以太坊 EIP-1559,這個提案被通過了,社區在吶喊的時候,大家各自在打着自己的小算盤,看 EIP-1559 會給自己帶來怎樣的未來可預期的收益時,有人站出來去向社區呼籲它其實對生態是有害的,有很多潛在問題,應該讓大家警醒,它真的不公平,等等。
那個時候,我就記得,當時在中文社區振臂高呼發出最重要的聲音,印象很深的就是阿劍老師。
你當時是拜託周圍的人一起去宣傳推廣,然後你在當時比較火的一個語音論壇叫 Club House 上做了一期分享,我記得我在網上去聽現場分享,當時你說我下面會給大家仔細地講解一下關於 EIP-1559 所發生的這些事情的來龍去脈和我對它的分析,但是在這個過程當中為了表達完整,你不希望任何人去打斷分享,你讓大家都變成聽眾,不要上去發言,然後我們就在下面安安靜靜聽你在分享。
那場分享,你的觀點非常犀利,我非常認同。你分享完以後,我馬上把這個分享轉發到自己的內部群里,我當時和 Terry、Jan 講,雖然我不在以太坊社區了,但是我太喜歡那個時刻。在以太坊社區,還有這些對以太坊社區有真愛的人,為了以太坊的前途和命運所糾結的這些人,以太坊當時的社區,讓我看到了它最美麗的時刻,也是我最喜歡的那些人。
我離開了以太坊社區,我非常喜歡那個時候的那些社區的那些人、那些事,讓我印象非常深刻。
阿劍:往事不可追,當時以太坊 EIP-1559 應該是從 2017 年開始提出的一個提案,但在 2017 年後的一段時間裡面,其實沒有得到太多的重視。後來應該是在 2020 年,那個時候有一次我在線上公開表達說 PoS 不如 PoW,它在驗證成本上更高。在這件事情之後,我也不知道為什麼,EIP-1559 就悄悄地被加速推進了。
但其實我早在那個時間點以前,就已經寫過文章,說 EIP-1559 對收入分配的影響是什麼樣的,它可能對交易手續費的水平會造成什麼樣的影響。大家可能不知道我本身是學經濟學的人,經濟學裡面其實有非常成熟的方法,我們稱之為新古典經濟學的需求曲線和供給曲線分析方法,一個特別簡單特別容易入門的方法,但實際上它是經濟學成立以來發明的最強大的關鍵工具之一。我寫了一篇文章,就是用了這個方法去分析 EIP-1559 收入分配的效果,以及它最終達成的結果。如果大家有興趣的話,現在應該還可以在網上找到我當時寫的文章。
英文社區其實也有反對者,大家的反對角度可能不太一樣。比如說,有一個錢包的 CEO,他當時反對 EIP-1559 的理由是,把錢包這個東西搞得那麼複雜,但實際上以太坊並沒有做好包括開發者教育在內的事情,也沒有提出一個可用的標準,讓這些錢包開發者知道這到底是怎麼一回事。還有一些角度,比如說 EIP-1559 的 base fee,其計算是有歷史性的,一次降低不是隻影響下面一個區塊。所以,有一些用戶可能會專門去等,等到它比較低的時候去發交易,從而造成放大手續費波動的效果。
這些是他們的角度。從我自己的角度來說,我非常反對大家認為這件事情只跟礦工有關,因為它針對的不是礦工,它針對的從概念上來說應該稱之為出塊者,就是原本有資格拿到那部分手續費收益的人,只不過當時以太坊的共識機制恰好是 PoW 機制,所以被削弱的是礦工。如果轉到 PoS 之後,它被削弱的其實就是我們前面所說的這個見證者,或者說 PoS 共識的參與者。
大家也很興奮,認為你們礦工賺這麼多,那麼把你們收益拔掉之後,就變得通縮了,然後每個人都很開心。這其實是一個非常短視、非常極端、而且不負責任的一種想法,因為你實際上就是在削弱大家去質押到系統共識,為它提供安全性的這種動力。
Daniel:沒有經濟學素養的人都沒有意識到通縮其實是一件非常可怕的事情。
阿劍:我覺得我的角度並不是這樣的,而是其實它根本不能製造通縮。因為通縮跟通膨有害的地方都在於它的反預期性,即大家預期是這樣的,但它事實並不是這樣的時候。比如說,大家預期它會通膨,但是它實際上並不通膨,或者說預期會通縮,它實際上並不通縮,或者說你預期它會通膨,但是它通縮了。
所有這些背離大家預期的效果,實際上對於貨幣來說都是有害的。不是說通膨有害或者說通縮有害,而是我們希望達成的效果是所有人對它的整個通膨通縮都有一個儘可能清晰的意識。
這也是一些經濟學家或者學經濟的人,在看到比特幣的時候會這麼興奮的原因,因為比特幣終於完成了貨幣學家能夠想到的非常好的辦法,就是讓它的通膨變成透明的。一旦它變成透明的話,我們對它實時貨幣供應量的 review,就可以造成我們所謂的穩健貨幣的效果,我們才能在這個基礎之上建設更好的或更完整、更健全的市場體制。
因為我們發現這種貨幣是沒有辦法被某些人有意識地用來剝奪其他人的財富。這個貨幣它本身的價值,它在時刻持續地在一個市場自發的過程當中在調整它自身的價格,並且大家可以找到貨幣自身的市場價格,用它作為交易工具或者交換媒介。一旦這一層不穩固的話,你會發現它會持續性地干擾我們的社會分工和整個工業的分布。
到最後,你會發現這個過程當中本來應該有經濟學家的參與,或者本來應該有這些原本研究公共政策的人的參與,但是他們卻可以引用一篇沒有得到明確結論的文獻,就是那位不知道哪個大學的教授,他說 EIP-1559 不會有降低交易手續費的效果,至於它的收入分配的效果,他壓根就沒有分析。這樣一個不完整的論文,卻經常被他們引用,而且這些支持者在討論的時候充滿人身攻擊,毫無素養。
所有的這些討論其實都在以太坊魔術師論壇上。不僅在論壇上,其實我直接跟他們說,我說你這樣依然沒有辦法給大家提供一個準確的 gas 報價。他們說,那是因為你缺乏礦工那邊的數據,礦工可以自己把這個數據發出來,除非你是個王八蛋,否則你就不會亂改,你就不會經常調整數據或虛報數據。所以,這是什麼態度?這無非就是說,如果某個礦工不能隨你的心願,你就攻擊他,就是這個意思。
這就是以太坊分叉協調員的素養,真的非常讓人失望。整個過程你會發現,明明在我看來遠遠沒有達到所謂的充分 review 不同的意見,沒有達到所謂的去中心化的流程。我們希望的去中心化流程給我們帶來的效果,比如說意見得到充分的 review,它是經過深思熟慮的,而且當有人提出反對的時候,我們應該重視反對的意見。
Daniel:當時表達反對的聲音,按現在的說法是被明顯地控評了,所有的反對聲音都很快地被淹沒了。
剛才聽你談論 EIP-1559,你已經比那個時候要理性要克制多了。那個時候,你真的是一腔熱血,想各種辦法振臂高呼,讓大家都能意識到 EIP-1559 其實有很多問題,必須要引起足夠的重視。
那時候,我是為你很揪心的,我在一個完全不同的公鏈體系當中,所以我不太能夠站出來去為另外一條公鏈的立場發聲。這個事情在我看來,感覺當整個社區有一股非常強大的力量在推動一件事情往前走的時候,即使你反對,你看到的也是天要下雨,娘要嫁人。但是你一定要讓反對的聲音被儘可能多的人聽到,並且想辦法看看用什麼樣的方式去正確地面對它。
現在以太坊馬上要從 PoW 轉 PoS 了,和當年的 EIP-1559 被執行一樣,也是個天要下雨娘要嫁人的事情。但是在這個時間點上,我們依然有必要要把 PoW 的本意、PoS 的問題、值得被人警醒和值得被人關注的一些事情點出來,讓儘可能多的人知道,說不定會有一些理智的人會去認真地思考、分析。我覺得做到這點就夠了,這也是我們 Fork It 想要嘗試多錄製幾期 PoW 和 PoS 這個話題,找儘可能多的人來聊這個話題的初衷。
我覺得即使是螳臂擋車,對於我們來說也是非常有意義的事情。
阿劍:其實我能夠理解。我聽過很多人向我表達,他們很感謝以太坊愛好者在過去做出的一些內容,讓他們了解到以太坊或者讓他們在某個點上認知有所精進,我覺得這是以太坊愛好者的功德,也是大家應該記住它的原因。
但我也有另外一種感受,大家明明為以太坊付出這麼多,為什麼這些付出得不到認真的對待呢?這不僅僅是我,還有其他人。最終,我們這些懷着熱情的人,加入歷史進程的人,只能被迫向一個實際上明明是更加中心化的流程,或者更中心化的治理程序去做妥協。
我自己本身在做 PoW 和 PoS 的研究,在 2020、2019 年左右,我覺得稍微有個答案之後,我的重心開始轉向對以太坊本身的研究,這個研究最終也使我得出一個結論,就是以太坊的架構,不管是它的帳戶模型,還是它鏈上計算的範式,最終它其實沒有想過怎麼去保護那些用戶,怎麼能夠容納那些並不認可一個進程的用戶。
在比特幣里,這方面是有的。比如,你不同意隔離見證,你覺得那真的是一團狗屎,你可以完完全全不升級到隔離見證之後的節點,你可以用一個老舊的比特幣的軟體,不管是哪個客戶端,你可以完整地同步整條區塊鏈,只不過其中關於隔離見證的交易沒有辦法驗證。你也完全可以說,你們如果給我支付,你們不要用隔離見證,我就用 P2pKH。你們也別想改變我,我也不用從網路當中退出去,我會繼續做我的老舊節點驗證跟我自己相關的交易,同時盡我所能為我看到的那一部分比特幣區塊鏈提供安全性,提供驗證。這些你是可以做到的。
但是以太坊上,你是做不到的。因為以太坊的架構決定了它只有硬分叉,它的架構實際上是把你在鏈上能夠用計算做到的事情,它都做到。但是它為了讓這些計算具有更強經濟性,它就要調整 gas 的消耗量以及做更多價格上的設置。
最終,你會發現,以太坊是一個沒有技術共識的政治共識,它也只能夠用硬分叉的方式來推行,這一點是我最終我想離開的原因。我在這幾年間我看到了太多人,不只是我們,對以太坊抱以期待,報以想象,乃至是報以非常熱切的期盼,但是這些期盼為什麼最終不能落實成結果?是因為他們不夠努力?還是有什麼其他原因?我覺得最終原因就是出在技術上,出在技術範式,它到底有沒有想到,它應該保護自己的用戶,它應該保護共識,應該珍惜每一分來之不易的共識,應該容納每一個可能的個體進入生態,能夠用它來繼續做夢,能夠繼續去為一個遙遠的、我們能夠想象的美好未來去奮鬥。
我覺得這件事它是沒有想過的,最終結果只能是我們這些人成為時代的灰燼,如果你的方向跟以太坊基金會的方向不一樣,你就只能成為灰燼。
Daniel:我能感受到阿劍老師說的這種情愫,所以以太坊愛好者在發表了最後一篇感言之後,就關閉了,我們翻開了新的一頁,我們看到社區里又出現了一個非常棒的 BTCStudy。這是一個新的開篇,這是一個新的故事。
阿劍:對,因為 EIP-1559 之後,我確確實實已經沒有任何心思在以太坊這個生態裡面繼續下去了。所以,我就開始研究比特幣,我發現它對用戶的保護之後,我非常喜歡。當然,這種喜歡有原本的原因,比如說比特幣的支持者其實是認識到了 PoW 作為一種共識機制,它真正的優點以及它是不可或缺的。他們理解這一點,而且儘可能在思辨上把我們能夠想象到的論證都梳理了出來,以至於推向了我們當下所能達到的極限。
再然後,在我們開始做 BTCStudy 的時候,就發現了一個問題,國內沒有一個很好的渠道能夠讓大家專心地去了解比特幣,去探討比特幣技術上的特性以及它的可能性。
Daniel:就是比特幣思想?
阿劍:對。在我們進了這個圈子一段時間,也看了一些事情之後,會有這種感覺,就是這幾年來大家一直在強調性能和功能。眾多新出來的公鏈,它們會強調自己的性能比以太坊、比特幣好,tps 更高,功能更多,等等。它們都在用這樣的方式去標榜自身,去給自己做宣傳,去為自己尋找市場定位。這個時候,比特幣會發出清醒的聲音,去給你一拳,告訴你大區塊是有成本的,大區塊是有代價的,大區塊會犧牲去中心化。你可以說這是一句很簡單的話,這是一句老生常談,甚至很俗氣,很過時的話。
Daniel:真正難的是堅持,十幾年的堅持。
阿劍:對。它會告訴你這些東西是有代價的,如果可以的話,我們能不能選擇更聰明的做法,或者說我們能不能選擇更長期主義的做法,這個在我看來是比特幣思想最吸引我的地方。
因為它裝着的,不是我這條鏈要提供多麼天花亂墜的功能,它關心的是我能不能在提供這些功能的同時讓開銷最小化,讓區塊不要變大,讓每個節點的驗證開銷可以維持在一個比較低的水平,使得我們每個人都能自己去驗證比特幣區塊鏈。
我覺得這種想法特別吸引我。但是,你在國內很難找到這樣一個渠道,或者說這樣一個網站,它會不厭其煩,它會專門跟你強調這是比特幣的思想,這是比特幣留給我們的,或者說這是比特幣告訴我們的一個重要教訓。
2021 年 8 月份,當時離 Taproot 升級不到 4 個月,但是你在中文世界裡面很難找到一篇像樣的文章。4 月份的時候,我記得那個時候李化寫了一篇文章,寫了一篇 Taproot 的介紹,其實已經寫得挺好的,每個組件都有介紹,但可能因為他當時沒有去找到那些原始提議的出處,使得他對一些細節把握不夠完整。我們當時沒有找到特別好的資料,所以只能自己一五一十從這些英文資料重新看過來,然後試圖去彌補我們對比特幣的認識,這個就是我們去做 BtcSstudy 的初衷。
Daniel:其實我現在也偶爾會去翻 BTCStudy 上面的一些內容和文章,我的感覺就是品位還在,有非常強的技術性的文章,一些前瞻性、探索性的文章,包括一些思想性的文章。我在哪個地方看到了 BTCStudy 的定位,就是做比特幣思想的中文集結地,是這樣嗎?
阿劍:對,是的。
Daniel:聽眾如果想更多地去了解 BTC 的思想,有什麼方式能更好地利用 BTCStudy?因為你要有非常好的區塊鏈技術素養,或者區塊鏈底層哲學素養之後,你才能夠理解 BTCStudy 網站上的文章所探討的那些內容。你有什麼好的建議?
阿劍:其實最好的辦法,我覺得是你點開 BTCStudy,它的頂部有一個模塊,是給文章打標籤的,其中有一個標籤特別有意思,叫文化。這個欄目是專門放置我們找到的關於比特幣精神或者比特幣的精神脈絡的文章,大家可以找一下。
其中有一個系列特別著名,叫做創世文檔。它提到比特幣的幾位前輩,他們分別在數位貨幣這方面做了哪些嘗試,以及他們最終如何會因為一些不足,而沒有辦法讓他們的項目落地,或者說沒有創造出最終像比特幣這樣的東西。我覺得那個是非常好的。
另外,那裡面還有比特幣的歷史,包括比特幣以前是怎麼開發的,比特幣現在的治理或者它的社區文化是什麼樣的。我覺得入門去看比特幣的精神傳承以及大家現在的精神面貌,可能是一個比較好的途徑。這些你要多看幾篇,然後才能夠有感覺。
Daniel:特別明白你到底想說什麼,你想說的我翻譯一下。你們在收集、整理、翻譯的過程當中,發現了非常多很好的材料,然後你們已經展現出了一個非常豐富多彩的比特幣精神內核的世界,等待有緣人。如果遇到有緣人,他也會跟你們感同身受,會發現一個非常精彩的世界,是這樣嗎?
阿劍:是的。
暢行幣圈交易全攻略,專家駐群實戰交流
▌立即加入鉅亨買幣實戰交流 LINE 社群(點此入群)
不管是新手發問,還是老手交流,只要你想參與虛擬貨幣現貨交易、合約跟單、合約網格、量化交易、理財產品的投資,都歡迎入群討論學習!
- 加入鉅亨買幣LINE官方帳號索取免費課程
- 掌握全球財經資訊點我下載APP
文章標籤
上一篇
下一篇