傳統區塊鏈七宗罪之三:去中心化謊言

比特幣以太坊等傳統區塊鏈項目的“去中心化”只是表面的,根子上仍然是中心化的。本文分析了區塊鏈去中心化的真實情況並給出了一個解決方案

傳統區塊鏈七宗罪之三:去中心化謊言

區塊鏈的一個基本特徵就是“去中心化”。其理念是有了區塊鏈,不再有神仙皇帝了,從此眾生平等,真好。

區塊鏈本身相當於一個分佈式賬本,所有的帳每個人都有。傳統區塊鏈以無比低下的效率為代價,實現人人平等,不再需要一箇中心化的組織(如銀行)或個人(如會計)來記每個人都有什麼資產了(想想過去大隊記工分時會計有多大權利吧),不需要英明的領導甚至連司法機關都不需要,誰也造不了假,誰也騙不了誰,多美好。

不過,總有人懷疑,所謂“去中心化”只是幹掉現有的中心,然後自己再來當新的中心。幹掉皇帝然後自己當皇帝,這樣的戲碼中國人已經看了幾千年了,門清。

以比特幣、以太坊為代表的傳統區塊鏈,記賬確實去中心化了,但是這就萬事大吉了嗎?

顯然是遠遠不夠的。

傳統區塊鏈七宗罪之三:去中心化謊言

傳統區塊鏈仍然是中心化的

傳統區塊鏈是以挖礦的激勵促使大眾都參與,參與人多了就形成去中心化的節點。但以ASIC礦機+邊遠地區廉價電力+集約化規模為代表的專業礦池的出現,一下拉高了挖礦的門檻,導致普通大眾完全無法從挖礦中獲益,礦池逐漸中心化,比特幣近年來影響力劇增,價格暴漲,但全節點數量不僅沒有增加還大幅度下降,這就是一個明證。

中心化的礦池帶來一系列的問題,包括但不限於必要時的操縱。這麼說吧:各位傳統區塊鏈的參與者,你的小命其實捏在幾個大佬的手中,別人仁義道德你沒事,一旦大佬動了壞心思,你是完全束手無策的。

比礦池中心化更嚴重的是交易所的中心化。中心化的交易所相當於中心化的銀行,擁有中心化的、難以被監管的權力以及各種風險,例如昂貴的上幣費、容易被盜的賬戶(甚至最大的交易所門頭溝監守自盜)、想讓你爆倉就爆倉、的權力等。傳統區塊鏈高舉“去中心化”的大旗力圖取代中心化的銀行,得到的卻是交易所這樣遠不如銀行靠譜的中心化機構。銀行還有幾百年形成的風控機制、各個崗位的專業規範的要求、銀監會的嚴格管理,交易所則是除了用腳投票外沒有任何約束和監管的,想怎麼胡來就怎麼胡來。

如果你認為中心化的礦池和中心化的交易所的問題已經夠嚴重了,那就圖樣圖森破了。傳統區塊鏈真正的中心化問題還不在於此。與這個真正的問題相比,礦池的中心化和交易所的中心化都只是毛毛雨的問題。這個問題是什麼呢?就是傳統區塊鏈缺乏治理結構,導致事實上被少數人操縱。這群人說好聽就是區塊鏈的守護神,有他們在就能在危急時刻拯救世界,但如果他們作惡呢?

一個活的系統,總得不斷運營、發展、升級、打補丁,誰來做決定,決定怎麼執行、錯誤決定能否糾錯、各環節的差錯怎麼救濟、怎麼防止濫用權力、不積極履行職責怎麼辦、遇到天災人禍怎麼辦(關鍵人員死亡、坐牢、斷網)等等,一系列的問題,卻根本沒有建立相應的機制。最直觀的問題是:賬戶被盜是否可以回滾交易、人人都找藉口要求回滾怎麼辦?

再舉一個例子:為了打擊ASIC挖礦的不公平優勢,下一版比特幣程序將算法改變了,過去的礦機一夜之間全部作廢,這樣的升級是否可以?比特大陸能用超過51%的算力制止此類升級嗎?如果無法達成一致,是不是就只能靠分叉來解決分歧了?更關鍵的是:所謂達成一致是誰跟誰達成一致?是比特幣的全體持幣者達成一致還是大礦池和核心開發人員達成一致?這個問題暴露了區塊鏈的一大秘密:傳統區塊鏈存在著隱形的中心化組織,即核心開發人員,例如比特幣的Core的維護者。

在code is law的區塊鏈世界,決定code的核心開發人員能夠決定所有的法則。他們就是上帝,可以改變一切規則。比特幣的核心開發人員小心謹慎地行使權力,沒有作惡,但也導致低效,例如區塊擴容的問題上就體現了非常低的決策效率。以太坊則有所暴露了該問題,V神一句話,他不承認的交易就作廢,這就是非常明顯的中心化了。

有人說,區塊鏈項目是開源的,誰都可以貢獻代碼,coding本身是去中心化的。這話似是而非。編碼和貢獻代碼是不難做成去中心化的,但誰的代碼被採納、合併進主幹,這就是中心化的了。更為關鍵的是,產品的spec是誰定義,這就是核心問題了。

懂互聯網運營的人都知道產品定義的重要性(互聯網項目的創業團隊一般是鐵三角:產品、技術和運營),就算是常規軟件工程管理也離不開產品需求規格(即spec)。技術人員的編碼都是按照spec的要求來做的。例如,spec如果規定了一個區塊的容量是2M,那大家就會照此編碼,主張一個區塊的容量是10M的派別就輸了。在傳統的軟件項目(包括傳統區塊鏈項目)中,產品spec都是中心化的方式來決定的,掌握這個權力的人就擁有決定一切的權力。

產品spec是由誰定義的、按照什麼規則定義的、如何保證coding嚴格符合spec、如何保證最終發行的版本是符合spec定義的代碼等,這些問題是區塊鏈項目治理結構的核心問題。如果沒有治理結構,或者沒有去中心化的治理結構方案,那一個區塊鏈項目的所謂“去中心化”,就只能是一個美麗的謊言。

另外,很多區塊鏈項目都有一個基金會在掌管運營,其中不少基金會其實是創始團隊掌控的,這就是一個明顯的中心化結構。

傳統區塊鏈七宗罪之三:去中心化謊言

比特幣、以太坊、EOS的治理結構盲區

遺憾的是,比特幣、以太坊等傳統區塊鏈項目完全缺乏治理結構,它們的“去中心化”就是一個徹底的謊言。我們只能將身家性命都寄託在核心開發人員都道德高尚,或至少是在任何情況下他們的利益都永遠與社區的利益完全一致。但是,我們都知道好的政治制度是基於“總統是靠不住的”來設計的,只有將每個人都會作惡作為制度設計的基礎,才能實現人人向善。如果連經歷了至少一年對祖宗十八代都掘地三尺的競選選出來的總統都不能信任,我們憑什麼對非民選的核心開發人員就能給予無條件的毫無約束力的全部信任呢?

EOS在治理結構方面邁進了一大步,由0發展到了0.1。創始人放棄對社區的主導管理權,有了EOS憲法,選出了21個超級節點。與缺乏治理結構的比特幣和以太坊相比,EOS毫無疑問是有治理結構的,只是這個治理結構太弱不禁風了,根本不夠用。

仔細閱讀EOS憲法,發現其只不過相當於EULA(就是你註冊一個網站時的用戶協議),完全沒有解決上述區塊鏈治理結構的核心問題。21個超級節點能夠管點事,但他們能夠管多少事(例如是否可以將21個超級節點改成11個超級節點)、按什麼程序來決策,全都是稀裡糊塗的。

更有甚者,EOS從創始人到社區自治的交接過程沒有事先定義規則,以至於到了原定主鏈上線的日期後大家都懵了,不知道主鏈該怎麼上線、由誰上線,甚至連上線一條主鏈還是多條主鏈都沒譜。全靠一些EOS社區的自發組織,才最終上線成功。

想象一下,華盛頓將軍在打贏獨立戰爭完成建國之後,不等國會組建就宣佈退隱,形成權力真空,這是妥當的做法嗎?

“去中心化”的治理結構

那一個理想的區塊鏈治理結構應該是怎樣的呢?是否存在“去中心化”的完善的治理結構呢?

這是一個挑戰性很大的問題,否則不會這麼多年來上千億美元砸進去還沒出現一個稍微靠譜的項目。但迄今為止沒人解決不等於問題無解,我們可以嘗試給出一個解決方案。

礦池中心化的問題是最好解決的。在本系列文章的第一篇《傳統區塊鏈七宗罪之一:自殘式的挖礦》就已經給出瞭解決方案。以IPFS/IPRS為代表的用貢獻資源方式來挖礦的模式,取代傳統區塊鏈的挖礦模式,可以有效避免以除了挖礦外沒有任何價值的專用礦機壟斷挖礦市場的情形。

交易所中心化的問題也是可以解決的。現在市場上已經出現了去中心化的交易所,只是由於交易性能差從而導致市場佔有率低。幸運的是,去中心化的交易性能是有辦法提高到滿足交易所實時交易的程度的。這個問題的解決方案將另外撰文敘述。

本文重點闡述最難解決的核心問題,即區塊鏈的治理結構問題,並提出一個去中心化的治理結構,也是即將在IPRS項目中採用的治理結構。

傳統區塊鏈七宗罪之三:去中心化謊言

法律淵源

首先,我們參照法律學的研究成果,定義IPRS的法律淵源。在人類社會中,集權體制的法律淵源可以追溯到君主的個人意志,民主體制則是全民投票為大。在IPRS中,作為去中心化的治理結構,法律淵源都可以追溯到全體持幣者的投票。

和EOS一樣,全體持幣者的投票只能一幣一票,而不能一賬號一票。一方面是因為賬號的數量是可以低成本無限註冊的,一賬號一票將會容易被少數人操縱;另一方面,人類社會的股東投票也是一股一票,而不是一股東一票,這是有其合理性的。

立法會

IPRS實行代議制,由全體持幣者投票選舉的立法會來制定IPRS的規則。這是因為:

1. 出於效率考慮,因為什麼事都全體表決會是缺乏可操作性的。一些搞“假民主”的人往往就是採用將民主變得不可操作來達到其反民主的目的的。當採用大事小事都全民表決的時候,哪怕是區區幾十人的旅行團決定中午吃什麼都可能會變成一個悲劇:有人提議吃川菜,希望大家表決是否吃川菜,但是否將“吃川菜”列為一個表決項目這件事又是否需要表決呢?甚至在哪個時間點表決是否也需要表決(憑什麼趁我們幾個四川人)為什麼是按照川菜、粵菜等菜系來表決,而不是按照餐館來表決?川菜是否包含湘菜呢?點的每一個菜是否也需要全民表決?每道菜全民表決是否會導致葷素搭配失常?用餐金額怎麼控制?估摸著這樣搞下去,到吃晚飯時間還沒吃上中午飯。

2. 出於專業性考慮。立法是需要專業性的,且別說法律條款如何定義能達目的這種實體性問題,就算是法律之間、各條款之間保持一致性就不是易事,堵住立法漏洞、實現罪罰相符等都很具有專業性。由具備專業能力的人來立法,這也是一個必然的選擇。這就像股東選擇具備企業經營決策能力的人組成董事會的道理一樣。

IPRS除憲法外,所有的規則都是由立法會來制定的,包括但不限於挖礦的算法(IPRS是以貢獻資源的方式來挖礦的,但需要防止作弊,防止提供虛假資源的方式來挖礦。防作弊的算法是可能需要道高一尺魔高一丈地不斷升級的,其實嚴格說比特幣的ASIC挖礦就是一種作弊,也應該約束的)、是否回滾、各委員會成員的任命、數字貨幣總量的增長規模等。

如果立法會制定的規則違背了大多數持幣者的利益,那持幣者可以將其選下去。只要有一定數量的持幣者提議,就可以自動舉行全民投票。區塊鏈保證了這種機制可以高效低成本公正地進行,從投票的發起、舉行和結果履行都是程序自動執行的,和EOS選舉超級節點相似,任何人都難以阻擾,也難以作弊。這種機制就可以保證立法會大體上是符合全體持幣者的利益的。之所以是“大體上”,這就是公平和效率之間的妥協,總不能因為偶爾的非關鍵性的差錯而改選立法會。

傳統區塊鏈七宗罪之三:去中心化謊言

從規則到代碼

下面就是核心內容了,即如何保證立法會制定的規則能夠得到完美執行,而不受核心開發人員的操縱。

在IPRS看來,code is law的真正含義是law is implemented by code。我們將從規則到代碼的轉換過程分為三大環節,並用完善的制度保證每個環節都能正常履行職責。

這三個環節分別是:從規則到產品spec的轉換,從spec到code的轉換,以及code的發行生效。

IPRS設立代碼規格委員會,其職責是將立法會制定的規則轉換為產品spec。代碼規格委員會的成員由立法會任命,受立法會管制。代碼規格委員會制定的spec必須嚴格遵守立法會制定的規則,除了改bug和性能提升等不破壞規則的改進外,代碼規格委員會不能擅自提出新需求。

之所以單獨設立代碼規格委員會,是因為產品spec的撰寫也是具有專業性的,其專業性要求與立法會的專業要求是不一樣的。但如果代碼規格委員會撰寫的spec與規則不一致,立法會有權利撤換其成員。

可能有人要問,既然需求規格為員工的專業能力與立法會成員的專業能力是不同的,是否可能其撰寫的spec的問題無法被立法會發現呢?這個擔心是多餘的,鑑於整個過程是開放透明的(開放透明是區塊鏈的一大特徵),一旦這種情況發生,IPRS社區裡自然會有人向立法會舉報。這種spec和規則的背離如果是有意為之,不管是否造成不良後果都是非常嚴重的違法行為,違背了其崗位職責、辜負了立法會的信任,立法會自然會嚴肅處理。萬一立法會對此置之不理,則立法會就同樣構成了非常嚴重的違法行為,違背了其崗位職責、辜負了持幣者的信任,全體持幣者自然會嚴肅處理。在這種一環扣一環的制度安排下,就可以保證每個人都必須認真履行職責了。

產品spec有了,就該編碼了。Coding細分起來還可以分為架構設計、根據架構編碼、測試、合併代碼等環節。不過這些都遵循開源社區的規範來操作即可,全世界的程序員(甚至無需是IPRS持幣者)都可以貢獻代碼,實現去中心化的編碼。有必要的話,也可以組建編碼委員會,牽頭組織編碼過程。與代碼規格委員會相似,編碼委員會也是由立法會任命,向立法會負責。

最後一個環節是代碼的發行生效。這是一個最後把關的環節,必須確認研發出來的代碼符合spec而且沒有嚴重的bug才能簽字發行。IPRS的機制是所有的節點的最底層是IPRS憲法的客戶端程序,該程序的最主要的作用就是對特定簽名的程序就自動下載安裝。為此,IPRS設立代碼頒佈委員會,當該委員會的成員投票表決同意頒佈某一代碼時,該代碼就自動被賦予前述特定簽名,則所有節點都將被自動更新,從表決通過到全部節點更新的過程都是全自動化執行的。

同樣,代碼頒佈委員會也是立法會任命,向立法會負責的。

代碼規格委員會、編碼委員會、代碼頒佈委員會所要求的專業能力有相似之處,之所以分成不同的組織機構,主要是因為茲事體大,需要互相監督、制約均衡。代碼規格委員會提交的spec如果與立法會制定的規則不符,不用等立法會採取行動,編碼委員會就可以發現問題並提出異議。而如果編碼委員會提交的代碼不符合spec,則代碼頒佈委員會就不會批准,也就不會執行生效。反之,如果代碼頒佈委員會想做點手腳,但因為代碼不是其編寫的,無法批准發行帶有其不軌意圖的代碼。

傳統區塊鏈七宗罪之三:去中心化謊言

君主立憲

“去中心化”意味著“去創始人化”,但一個創始人從無到有好不容易拉扯大的項目,憑什麼要其撒手?

EOS是一個創始人自願撒手的項目,但這個項目的ICO可是融了40億美元。不是每個項目都能給創始人足夠多的利益讓其撒手的。

這個問題就有點像集權制到民主制的轉換路徑。在項目啟動時,是由創始人控制的,等項目成熟了就要“去創始人化”,這種轉換不那麼容易。能夠像蔣經國那樣手握集權的權力卻成功實行民主化轉型的領袖實在是太少,何況蔣經國也是在快去世前才啟動民主化進程的,寄希望於創始人主動、自願撒手不是一個特別理想的模式。

更何況,創始人徹底離場對這個項目真的是好事嗎?

一般說來,沒有任何人比創始人對項目傾注的感情更多,沒有任何人比創始人更瞭解這個項目,沒有任何人比創始人更想運營好這個項目。將創始人趕走,顯然不是一個好的方案。

一種比較好的方案就是參照人類社會的君主立憲制,給創始人禮儀性的待遇和緊急情況下的有限權利,但正常情況下創始人擁有的權利和普通持幣者是相同的。

在這種方案中,創始人將項目上線、選舉出第一屆立法會之後,就由立法會接管社區,原基金會解散,創始人只擔任禮儀性的社區領袖,相當於君主立憲的王室。這種禮儀性的待遇包括在憲法中給一個名分,可以代表社區出去開會發言做報告(但不能替社區決定任何事或承諾任何事)等等。唯一的特殊權利就是在緊急情況下(社區遇到危機時)創始人有權發起全民投票(而其他人發起全民投票是需要達到特定持幣量的賬戶聯署的)。總之,創始人可以利用其影響力去號召大家,但無權替社區做任何決定。

還有一個細節需要注意。在社區剛上線時可能創始人持有最大數量的幣,此時需要限制創始人的投票權,使得在投票時的權重以挖礦得到的數字貨幣為主。

總結

通過以上的制度化設計,可以保證IPRS是不斷髮展完善的項目,所有的權力都歸於全體持幣者,可以高效專業地制定規則,所有的規則都能確保變成代碼執行,任何人犯的錯誤都有救濟糾正措施。這樣,可以構建一個徹底去中心化的區塊鏈項目,同時其運營不失專業性和效率。

當然,本文僅限於如何建立“去中心化”的治理結構的探討,不涉及是否需要“去中心化”的內容。“去中心化”和中心化哪個好,是各有所長有不同的適用場景,還是需要組合使用(例如不可抵賴不可篡改的分佈式賬本是去中心化的,其餘是中心化的),那將是另外的話題。


分享到:


相關文章: