去中心化量化指南 了解最小中本聰係數

作者:何棄療   |   2017 / 08 / 25

文章來源:獵雲網   |   圖片來源:Jayroz


相比傳統選擇,比特幣和以太坊的主要優勢是眾所周知的,那就是去中心化。儘管大家都認可了這種性質的重要性,但這類話題大多缺乏量化討論。如果我們能夠確定一個測定量度,我們就可以:衡量某一系統去中心化的程度,確定某一系統的修改會對系統的去中心化程度帶來多少改進或損壞,設計優化算法和體系架構來最大限度實現去中心化。

在本篇文中,我們提出用最小中本聰係數 (minimum Nakamoto coefficient) 作為衡量系統去中心化的一個簡易定量測度,該方法是受到著名的基尼係數和洛倫茲曲線的啟發。

其基本思想包括: (a) 列舉了去中心化系統的基本子系統, (b) 控制每一個子系統需要多少實體, (c) 之後使用最小值來衡量系統的有效去中心化程度。最小中本聰係數的數值越高,那麼系統的去中心化程度也就越高。

為了讓大家更好地理解這個定義,我們首先要給出基尼係數和洛倫茲曲線的背景介紹,之後再提供一些圖表和計算進行分析,基於這些數據來觀察當下加密貨幣生態系統的中心化程度。我們接下來會討論衡量去中心化的概念,以此作為對比特幣和以太坊這些基本子系統的綜合測量,並且討論改進這一係數的方式。

洛倫茲曲線和基尼係數

即便這兩個定義關注的是不同的方向,但“過於不平等”以及“過於中心化”這兩個問題上實際上存在很大的相似性。具體來說,我們可以認為財富和權利的不均勻分配實際上就是高度集中化的體現。

經濟學家一直都是利用洛倫茲曲線和基尼係數這兩個工具來測量人口的分佈不均勻。洛倫茲曲線的基本概念如下圖所示:

c4ca4238a0b923893

上圖中紅色部分即為洛倫茲曲線。隨著累計分佈變數的發散,基尼係數 (G) 也就從 0 增加至 1。數據來源於 Matthew John。

基尼係數的方程則是通過洛倫茲曲線以及所謂的“平等線”之間的區域計算而得。方程如下:

c81e728d9d4c2f652

基尼係數還可以根據連續分佈和離散分佈的個人實體股進行計算 (可參考這裡的方程) 。

直觀來說,資源分配越統一,基尼係數就越會越接近 0。相反,資源分配越傾向於某一方,那麼基尼係數就會越接近 1。這就恰好符合我們對於集中化的直觀理解:在一個高度集中化的系統中 (基尼係數為 1) ,要想破壞系統,只需要找到一個決策制定者/實體。相反,在一個高度去中心化的系統中 (基尼係數為 0) ,要想破壞系統,你需要找到很多個決策制定者。因此,基尼係數低的話,這就意味著去中心化程度高。

加密貨幣:基尼係數和洛倫茲曲線

為鞏固大家的認知,我們可用一個簡單的例子來應用基尼係數和洛倫茲曲線:加密貨幣市值的財富分佈。為此,我們獲取了前 100 名數位貨幣在 2017 年 7 月 15 日的市值情況,計算了每一種數位貨幣的市佔率占比,得出一條與基尼係數相關的洛倫茲曲線。

eccbc87e4b5ce2f33

如果我們測量前 100 名加密貨幣的市值中心化程度,基尼係數為 0.91。這就符合我們的預期,即 2017 年 7 月 70% 的市值都屬於排名前兩位的加密貨幣 — 比特幣和以太坊。

去中心化系統是由子系統組成的

為將此概念應用到公共區塊鏈領域,我們需要區分去中心化系統和去中心化子系統。具體來說,像比特幣這樣的去中心化系統是由一組去中心化子系統組成的 (如挖礦、交易所、節點、開發者、客戶端等等) 。下面是六種組成比特幣的子系統:

a87ff679a2f3e7126

我們會利用這六個子系統來說明如何衡量比特幣或以太坊的去中心化程度。記住,你認為哪一個子系統對於整個系統的去中心化程度至關重要,這將決定你選擇使用哪一種子系統。

至此,爭論就會產生。也許有人會說一些去中心化子系統可能比另外一些子系統更重要。舉個例子,對於比特幣的正常使用來說,挖礦無疑是必須的,而交易所 (同樣也很重要) 實際上卻不屬於比特幣協議。

我們可以假設,某個個體可以確定去中心化系統中的基本去中心化子系統。之後,我們就可以規定,如果一個人可以危及任何一個基本去中心化子系統,那麼他就可以危及這個去中心化系統。

量化比特幣和以太坊的去中心化程度

鑒於這些定義,現在我們就可以計算出比特幣以及以太坊的挖礦、客戶端、開發者、交易所、節點以及所有權子系統的洛倫茲曲線以及基尼係數。然後根據基尼係數以及洛倫茲曲線的測度,我們就可以看出各自的中心化程度。如下是比特幣的曲線:

e4da3b7fbbce23416

這是以太坊的曲線:

1679091c5a880fa11

基於上述六個面板,我們來依次討論一下這六個子系統。

  • 挖礦去中心化

如左上面板顯示的一樣,根據過去 24 小時內的區塊獎勵計算情況,比特幣挖礦顯然是極其去中心化的。以太坊挖礦則更集中一些。這些數值相差較大,我們可以在更長區間內對這些數據進行追蹤,從而獲得更理想的數據,比如說平均 7 天或 30 天進行追蹤。

  • 客戶端去中心化

如中上面板顯示的一樣,大多數比特幣用戶使用的都是 Bitcoin Core (比特幣核心錢包) ,而 Bitcoin Unlimited 則是第二受歡迎的客戶端。按照不同客戶代碼庫的數量進行衡量,那麼基尼係數=0.92 就意味著高度集中化。對於以太坊客戶來說,大多數客戶端 (76%) 都是 geth,16% 採用 Parity,由於這兩種代碼庫佔據了大部分以太坊的生態系統,基尼係數也達到了 0.92。

  • 開發者去中心化

在右上面板中,我們可以看到 Bitcoin Core 標準客戶端中有一些工程師會提交代碼共享。儘管原始提交參數肯定無法準確衡量貢獻情況,但這卻可以指明一些情況,即數量相對較少的部分工程師完成了 Bitcoin Core 的大部分工作。拿以太坊的 geth 標準客戶端來說,開發工作更為集中化,兩個開發者就完成了大多數客戶端的代碼工作。

  • 交易所去中心化

比特幣和以太坊在各個交易所的交易量存在很大不同,相應的基尼係數也會產生很大波動。但我們為了說明情況,在左下面板處計算出了過去 24 小時內基尼係數的數據快照情況。

  • 節點去中心化

在下中面板中,另一個衡量去中心化的工具就是確定比特幣和以太坊在各個國家之間流動的節點分佈情況。

  • 所有權去中心化

右下方的最後一塊面板中,我們可以看到按照地址,比特幣和以太坊所有權的去中心化程度如何。

最大基尼係數:粗略測量區塊鏈技術的去中心化程度

我們能否將子系統去中心化程度的測量工具與系統去中心化程度的測量工具結合起來呢?第一種簡單的方式就是選用所有基本子系統中得出的最大基尼係數,結果如下:

8f14e45fceea1676

按照這種計算方式,比特幣和以太坊都擁有一個最大基尼係數,大約為 0.92,這是因為兩種貨幣與客戶端的節點在其各自的代碼庫中都是高度中心化的 (比特幣採用的是 Bitcoin Core,以太坊採用的是 geth) 。

關鍵是,選擇了不同的基本子系統,這些數值也會發生變動。舉個例子,有人認為單獨一個代碼庫的存在不會對實際去中心化程度造成阻礙。如果是這樣的話,那麼比特幣最大基尼係數就會提高至 0.84,新的去中心化瓶頸將是不同國家間的節點分佈。

當然,我們並不是說在六個子系統中,單獨選擇哪一個子系統才是測量去中心化程度的最佳工具。我們不過是想整合一些數據,來向大家說明這種計算是什麼樣子的。我們確實認為最大基尼係數指標能夠為我們指明方向,確認可能的去中心化瓶頸。

最小中本聰係數:優化測量區塊鏈去中心化程度的工具

但是,最大基尼係數也存在一個顯而易見的問題:當一個最大值代入到我們直覺認為的“中心化程度更高”的系統中,加上每一個基尼係數都是在 0-1 之間,這就意味著它無法直接計算出系統妥協所需的個人/實體數量。

具體而言,假設有一個區塊鏈子系統,有 1000 位參與者,基尼係數為 0.8,另一個是擁有 10 名挖礦者的子系統,其基尼係數為 0.7。要想讓系統妥協,三個挖礦者作惡帶來的惡劣影響遠超過 57 個交易所帶來的危害。這就表明了最大基尼係數能夠指明,交易所才是去中心化的瓶頸,而非礦工。

有許多種辦法可以克服這個難題。比方說,我們可以在合併不同的子系統之前,根據基尼係數提出有原則性的權重安排。

另一種方式就是基於基尼係數的計算結果,利用洛倫茲曲線確定一個類似的指標,這就是我們稱之為的“中本聰係數”。如下可看到具體情況。在這一個例子中,某一子系統的中本聰係數為 8,因為它需要 8 個實體來實現 51% 的控制。

c9f0f895fb98ab910

這也就是說,我們將中本聰係數定義為某一子系統滿足 51% 總容量所需的最小實體數量。利用子系統的最小值進行測度整合,之後我們就得到了“最小中本聰係數”,即要想讓整個系統妥協所需要的實體數量。

45c48cce2e2d7fb4

中本聰係數代表著讓某一子系統妥協所需的最小實體數量。最小中本聰係數則是取所有子系統中的最小中本聰係數。如果 51% 不是每個子系統妥協的閾值,那麼我們還可以定義出一個“修正過的中本聰係數”概念。舉個例子,可能需要 75% 的交易所才能嚴重破壞某系統,而做到這一點,礦工只需要滿足 51%。

現在我們可以利用之前生成的洛倫茲曲線來計算比特幣和以太坊的中本聰係數。下面是以太坊標準客戶端 geth 的計算。如圖所示,我們只需要 2 名開發者就可以滿足 geth 51% 的數據提交,因此中本聰係數為 2。

d3d9446802a44256

這也就說明了該概念。下面這些圖表是比特幣和以太坊子系統又計算一遍的結果,這一次採用的是中本聰係數。

6512bd43d9caa6e17

這張圖表記錄了每一個子系統的中本聰係數。

c20ad4d76fe977515

我們可以看到,基於這些基本子系統,比特幣和以太坊的中本聰係數均為 1。具體而言,假設 Bitcoin Core 和 geth 的代碼庫遭遇麻煩,可能會影響超過 51% 的客戶端,它們各自的網絡也會受到波及。

想要改善以太坊的這一數據,這就意味著要讓其他像 Parity 這樣的客戶端佔據更多的市佔率,之後開發者或礦工中心化就成為了下一個瓶頸。改善比特幣的這一數據,這同樣需要大範圍採用像 btcd、bcoin 等等的客戶端。

最小中本聰係數取決於子系統的定義

我們意識到,一些人認為比特幣某一標準客戶端的高度中心化並不會影響它的去中心化程度,抑或是說中心化程度是有必要的。在這個問題上,我們沒有任何立場去評判這一觀點,因為採用其他的基本子系統定義,大家都會得出不同的去中心化程度測度。

舉個例子,如果一個人認為“創始人和發言人”是一項基本子系統,那麼以太坊的最小中本聰係數就會是 1,因為以太坊創始人 Vitalik Buterin 的一個錯誤選擇就會連累以太坊。

相反,如果一個人認為“挖礦實力雄厚的不同國家數量”可以作為一個重要的子系統,那麼比特幣的最小中本聰係數也會是 1,因為中國政府打壓挖礦的行為會導致 51% 以上的挖礦算力受到影響。

選擇哪一個基本子系統才能最好得代表某一個去中心化系統,這個問題是下一次要討論的內容了。但是,值得注意的是,“創始人和發言人”也是以太坊和比特幣這兩類加密貨幣的威脅因素之一。這樣一來,如果有人試圖想要對比不同幣種之間的最小中本聰係數,那麼生態系統的多樣性也可以大幅改善去中心化程度。

結論

許多人表示去中心化程度是比特幣和以太坊這類系統最為重要的特性。如果這一論點無誤的話,那麼量化去中心化程度的能力也是至關重要的。最小中本聰係數就是這樣一個測度。隨著最小中本聰係數的提高,讓系統妥協所需的最少實體數量也會提高。我們認為這符合我們直觀感覺的去中心化程度。

為量化去中心化程度給出一個明確的測度為何如此重要?原因有三。

  • 測量

首先,像這樣的量化測度可以明確進行計算,隨時間變化加以記錄,最終呈現在儀表盤上。這讓我們可以跟蹤子系統以及整個系統的去中心化程度變化趨勢。

  • 改進

其次,和我們衡量績效一樣,像中本聰係數這樣的測度可以讓我們改善或是降低去中心化程度。之後,我們可以將去中心化程度的變動歸結為個人代碼的安排或是其他類型的網絡活動。舉個例子,鑑於資源稀缺,我們可以確定部署 1000 個節點或是僱傭兩個新的客戶端開發者能否給去中心化程度帶來明顯的改進。

  • 優化

最後,也是最重要的一點,一個可量化的目標函數 (數學角度上而言) 決定了優化程序的結果。從表面上來看,類似的目標函數會產生截然不同的解決方案。如果我們的目標是要優化去中心化系統中的去中心化程度,那麼我們就需要像洛倫茲曲線、基尼係數、中本聰係數這樣的量化指標。

我們意識到,關於去中心化系統,哪一個子系統更加重要的問題仍需更多討論。但是,鑒於已經提出的重要子系統,我們可以獲得一條洛倫茲曲線以及一個中本聰係數,還能看到對於整個系統來說,這些子系統是否是去中心化的瓶頸。

像這樣的情況,我們認為最小中本聰係數可以有效幫助我們最先量化去中心化的程度。

獵雲網》授權轉載

【延伸閱讀】

喜歡這篇文章?加入你的S夾!

獵雲網
「獵雲網」用心服務創業者。
創業本就是一場征途式的孤獨馬拉松。我們關注那些會改變世界的小火苗!不做隔岸觀火者,也不做只拍手稱快者。我們願意參與近這場創業大潮。我們是一群年輕有夢想的創業派。遵守規則,也蔑視規則,推崇創新,也扼殺創新。我們不用別人來指點未來應該走向哪裡。我們的征途是星辰大海!
獵雲網的最新文章
More

社群熱門分享排行榜
本週
本月
追蹤股感的社群