區塊鏈哲學:潛在中心化(Hidden Centralizations)是否存在?

在你編寫程式碼供給一個網路使用時,很難避免潛在中心化…

Bitmark
Bitmark Inc.中文專欄
15 min readAug 15, 2019

--

作者:Shannon Appelcline

毫無疑問的,「去中心化」(decentralization) 是比特幣最核心的哲學之一(區塊鏈亦是如此)。在最原始的白皮書中,中本聰 (Satoshi Nakamoto) 寫下比特幣可以讓「任何有意的兩方能直接進行交易,不需要任何可信的第三方。」隨著時間過去,這個概念成為了區塊鏈科技的試金石:「Nakamoto 共識」協定確保了區塊鏈是以去中心化的方式建置,任何人皆能驗證交易來確保區塊鏈依舊可信。

去中心化為什麼對區塊鏈來說重要呢?中本聰在原始的比特幣白皮書中暗示,認為如果「整個貨幣系統的命運仰賴在一個中央集權機構上」將會產生問題。避免由中央集權機構把持的重要原因是:如果該機構的健康與運作失敗了,整個系統也會出問題。

「整個貨幣系統的命運仰賴在一個中央集權機構上」將會產生問題。Photo by Robert Byeon Unsplash

然而曾經預見了比特幣創建的密碼龐克(Cypherpunk)提出了去中心化邏輯的更哲學性理由。在「密碼龐克宣言」中,Eric Hughes 討論到傳統的隱私權是如何隨著商業模式移往網路世界而被侵蝕,他說:「我們不能期待任何政府、公司、或其他大型組織基於善意而保障了我們的隱私權。」也許更重要的是:我們不能仰賴在背後運作這些組織與公司的人,來保障我們的隱私權。儘管我們將自己的資料交給信任的中央集權機構,也不能保障在未來五、十或十五年後,當高層換人,我們依然能信任他們。密碼龐克預見了需迴避這些集權機構的需求,以確保實際世界的隱私權也能被複製在網路世界裡,然而僅僅靠去中心化是沒有辦法保證的。

密碼龐克預見了需迴避這些集權機構的需求,以確保實際世界的隱私權也能被複製在網路世界裡。Photo by Clem Onojeghuoon Unsplash

儘管意圖良善,潛在中心化 (Hidden Centralization) 仍無可避免的出現在區塊鏈中:它們將權力(區塊鏈的核心概念)從人們身上奪走,並交給少數有力的菁英團體。許多人害怕 51% 攻擊,過半數的礦工可以接管區塊鏈,因為任何一種工作量證明的區塊鏈,集結其 51% 的挖礦節點,就具有潛在中心化的情況。然而,甚至還有更陰險的可能。協定的設計者、程式設計師,或是區塊鏈中具投票權者,都可能成為小部分的潛在中心化,使區塊鏈中的某個子使用者群,突然成為了集權機構。

不同的區塊鏈用不同的方法來處理這個問題,對抗亦或是接受由礦工、程式設計師或投票者造成的潛在中心化。

儘管我們相信潛在中心化違反了區塊鏈的核心價值,這依舊是一場硬仗。

程式設計師與比特幣

比特幣提供了關於潛在中心化的最佳戰場範例,除了因為它是最大的區塊鏈,也因為它花費最多力氣應對這個議題 — 尤其是關於比特幣協定與程式上的潛在中心化。

理論上,任何與比特幣共識協定相符的程式碼,都能用來在比特幣區塊鏈上進行互動,但它的未來主要由「比特幣核心」(Bitcoin Core) 掌握 (比特幣核心是從中本聰最原始程式碼發展出來的程式,現在有將近四分之三的比特幣節點都採用)。而這項程式碼因此代表比特幣的第一個潛在中心化。

儘管由 Wladimir van der Laan 帶領的比特幣核心的「核心」成員數量很少,其程式碼在 Github 上維護以極大化社群參與。這允許了數以百計的參與者貢獻:理論上任何比特幣的狂熱愛好者都能參與。然而,儘管是最受歡迎也最成功的區塊鏈,現實卻不如理想一般。僅有 67 名貢獻者擁有超過 12 個指令 (Commit) 許可,僅 45 人擁有超過 20 個指令許可,23 人擁有超過 100 個指令許可;並僅有約 12 個左右的人具有比特幣 Github 儲存庫中完整的指令許可。

僅有 67 名貢獻者擁有超過 12 個指令(Commit)許可,僅 45 人擁有超過 20 個指令許可,23 人擁有超過 100 個指令許可。Photo by Alex Kotliarskyion Unsplash

幸運的是,隨著你從比特幣核心程式碼移往原始的共識協定時,比特幣的中央集權情況也隨之淡去。變革始於「比特幣改進協定」 (BIP, Bitcoin Improvement Protocols),支持廣泛的社群參與。透過持續進行一個稱為「粗略共識」(rough consensus) 的程序,其中大部分的疑義都已被解決了,改進協定才會在之後將其視為實際程式。

倘若粗略共識即為改進協定最終將引入程式碼中的定案,那麼比特幣共識協定中的潛在中心化便能夠相當程度的縮減。然而,尚存在一個步驟:比特幣節點必須按照「改進協定 9」 (BIP9) 的內容,示意他們採用了新的協定。這原先僅意味著對採行最新協定的節點進行標記… 直到關於比特幣區塊鏈規模的大爭議發生。不同的利益團體爭論著比特幣區塊鏈上的區塊大小該為如何,而在此爭議之下,BIP9 的訊號方法論變成了一個主導 (de facto) 投票程序來解決爭端。實質上,方法是「按照工作量投票」(vote-by-work),由於投票是取決於礦工創建區塊的能力。

換句話說:潛在中心化無所不在。儘管「核心」程式員不對比特幣區塊鏈具有終極權力(當然這裡也有點爭議),而礦工們也可能具有,因為他們能夠限制實際採用的共識協定。雙方都成為集權,如同 Eric Hughes 說的,你不能期待這樣的中央集權機構去尊重同一網絡中其他人的最佳利益。

隨著區塊大小的爭端繼續,「用戶啟動軟分叉」 (UASF, User Activated Soft Fork) 嘗試將決策權力一路下放到終端使用者,但隨即被 BIP91 的採用取而代之,UASF 未能實現。儘管如此,這依然是來自區塊鏈底層基礎人們的重要權力宣言(同時也是遠離集權的重要舉措)。

冗長又血腥的區塊大小爭論造就了「比特幣現金」 (Bitcoin Cash),一種比特幣貨幣的變體出現。這樣根源而不可撤銷的異議也顯示,即使是比特幣也無法完美地處理源自集權程式碼與協定的問題。但比特幣區塊鏈當然是花費最多心力去對抗其潛在中心化了。

其他人如我們,還有很長的路要走。

程式設計師與以太坊

以太坊是繼比特幣之後第二大宗的區塊鏈,聚焦在分散式計算 (distributed computing),而不僅是加密貨幣移轉。與比特幣同樣,以太坊自有 Github,以及自己版本的改進協定( 叫做 ERCs),以及依舊相對小型的工程師量,儘管根據一篇 Cointelegraph 的報導,以太坊的工程師是比特幣的兩倍。至少以太坊花費了相當程度的關注與心力,來管理程式碼與協定的潛在中心化。然而,與比特幣不同的是,以太坊設有自己的非營利組織:以太坊基金會。這個非營利組織是不同來源的潛在中心化,能夠對整個網路的發展行使大量的控制。問題就從 2016 年的 DAO 開始。

「去中心化自治組織」 (DAO, decentralizaed autonomous organization) 是由智慧合約控制的新商業模型。允許投資人將資金放在一個組織內,接著便能夠進行投資,完全透過開放、無國界的區塊鏈進行。這原先將可能是網路世代商業的未來。

不幸的是,以太坊廣闊程式語言的圖靈完備性 (Turing-complete) 本質終究造成了 DAO 的末日。圖靈完備性的程式語言非常困難,甚至不可能以邏輯證明,也就是說,無法正式宣稱他們將會進行原來應該進行的事。更簡單的說法是:存在隱藏的漏洞。正是 DAO 的問題,參與者們投資了一億五千萬美元到分散式自治組織中,然後一名駭客利用漏洞把五千萬美元轉走了。準確地說,漏洞是發生在 DAO 軟體中,而非以太坊本身。

區塊鏈是無情的,沒有轉圜的餘地。如果你把錢轉去了錯誤的地址、更動無法回覆、雜湊搞錯,或是程式寫錯,你都得自己承擔。當你犯錯時,去中心化自治便成為一個嚴峻的現實。因此基於區塊鏈的核心哲學,應該失去那五千萬美元。在 DAO 事件後許多人這樣說:「編碼就是法律。」

透過一個全新的「Carbonvote」投票系統,基於持有量投票:同意與不同意票是由投票位置所持有的加密貨幣量而定。Photo by Arnaud Jaegerson Unsplash

但結果並非如此。以太坊基金會提議進行一個硬分叉 (hard fork) 來回溯時間,把投資者的損失取回。透過一個全新的「Carbonvote」投票系統,基於持有量投票:同意與不同意票是由投票地址所持有的加密貨幣量而定。 89% 的投票者同意將 DAO 的損失回溯,但這同樣掀起了另一種潛在中心化。以太坊基金會是動用多大的權力去推動與執行這個提案?之後還會再這樣做嗎?以最悲觀的角度來看,以太坊揭露了控制著基金會小群人的潛在中心化,不過樂觀來說,也就是呈現了 51% 的投票者可以對區塊鏈造成史無前例的變化。

無論從哪個角度,集權是千真萬確的。以太坊經典 (Ethereum Classic) 區塊鏈的產生就是結果:從以太坊分支出來的加密貨幣,他們認為 DAO 的回溯違反了區塊鏈的哲學 (有點像是比特幣現金這個分支,新的加密貨幣證實比起原始加密貨幣價值較低)。

程式設計師與 Bitmark

在 Bitmark,為了達到建立數位產權系統的特定目標,我們打造自己的區塊鏈。Bitmark 區塊鏈聚焦在數據產權與數位資產的註冊與管理上,允許使用者移轉與授權這些不同的資產,進行控制或以其獲利。雷同於比特幣或以太坊的加密貨幣,網路的完全去中心化很重要,使用者才能夠信任區塊鏈的中立與開放性。

在此我們探索了比特幣與以太坊的創建者已經知道的部分:其實很難避免潛在中心化,尤其在你編寫程式碼供給一個網路使用時。就像是其他的區塊鏈社群一樣,我們的編碼在 Github 上可取得,我們也同樣具有全新的 BUP (Bitmark Upgrade Proposal) 改良系統,供社群成員提出 Bitmark 演算法的改良。但這還不夠:許多外部工程都對我們的核心程式碼提出分叉,但截至目前,所有的指令許可都還是產出自我們自身工程團隊,BUP 系統還太新,無法產生新的提案。

儘管 Bitmark 在合夥上取得很大的成功,例如 KKBOX (利用 Bitmark 的產權系統來記錄數位串流音樂)以及 Chibitronics (透過註冊 Bitmark 憑證來驗證硬體是否正版),要添加改良區塊鏈的核心編碼(或演算法)需要一個全然不同來源的社群。我們透過其他方法論來進行實驗,例如透過漏洞獎勵計畫來孕育程式社群。許多社群成員已經從回報 App 的小漏洞而獲得報酬。儘管這些漏洞回報並非 Github 指令或是 BUPs,但依然是將程式碼工作去中心化的第一步。

隨著我們邀請更多外部的程式設計師加入這個社群,我們終將需要機制來決定哪些真的能納入核心程式或協定裡。比特幣與以太坊都發展了某種專案系統來進行爭議協定的投票:比特幣利用本意並非為了投票的訊號系統,而以太坊的 Carbonvote 也被創建出來解決立即性的危機。並非為了解決眼前危機才開發,擁有一個更深思熟慮的系統將能找到更好的方式來管理集體選擇,無論是粗略共識、工作量投票、持有量投票或其他方式。

結論

不像是上一篇討論的,關於工作量證明或權益證明的哲學;區塊鏈社群對去中心化系統的優點很有共識。

儘管如此,區塊鏈也的確有中央集權的問題;只是隱藏著罷了。

以太坊基金會推動強烈回溯的中央權力,也著實在區塊鏈社群令人大開眼界,但這只是一次性的事件,又或是更大的問題呢?也許我們都該好好想想的問題應該是:

該如何減少隱含於礦工、協定工程師、程式設計師與區塊鏈 VIP 們身份上的集權情況?

我們該如何發展集體選擇的協定來維持人們的權力,而不會屈從於多數的暴政?

換句話說,要如何在真實世界裡,達到區塊鏈權力去中心化的原始目標呢?

延伸閱讀

Bitcoin. Retrieved June 2019. “Bitcoin Improvement Protocols”. Github. https://github.com/bitcoin/bips.

Bitmark. Retrieved June 2019. “Bitmark Inc. Repos”. Github.https://github.com/bitmark-inc.

Bitmark. Retrieved June 2019. “Bug Bounty Program”. Bitmark. https://bitmark.com/en/developers/bug-bounty.

Caffyn, Grace. August 2015. “What is the Bitcoin Block Size Debate and Why Does It Matter?” Coindesk. https://www.coindesk.com/what-is-the-bitcoin-block-size-debate-and-why-does-it-matter.

Electric Capital. March 2019. “Dev Report”. Medium. https://medium.com/@ElectricCapital/dev-report-476df4ff1fd2.

Hughes, Eric. March 1993. “A Cypherpunk’s Manifesto”. Cypherpunk Mailing List. Archived on https://github.com/NakamotoInstitute/nakamotoinstitute.org/blob/master/sni/static/docs/cypherpunk-manifesto.txt.

Falkon, Samuel. December 2017. “The Story of the DAO — Its History and Consequences.” Medium. https://medium.com/swlh/the-story-of-the-dao-its-history-and-consequences-71e6a8a551ee.

Hall, Christopher. April 2019. “BUP 001: BUP Process”. Github. https://github.com/bitmark-property-system/bups/blob/master/bup-0001-draft.markdown.

Lapowsky, Issie. September 2017. “The Feds Promised to Protect Dreamer Data. Now What?” Wired. https://www.wired.com/story/daca-trump-dreamer-data/.

Lombrozo, Eric. June 2017. “Forking, Signaling, and Activation”. Medium. https://medium.com/@elombrozo/forks-signaling-and-activation-d60b6abda49a.

Nakamoto, Satoshi. October 2008. “Bitcoin: A Peer-to-Peer Electronic Cash System”. https://bitcoin.org/bitcoin.pdf.

SFOX. April 2019. “Bitcoin Governance: What Are BIPS and How Do They Work?” Medium. https://blog.sfox.com/bitcoin-governance-what-are-bips-and-how-do-they-work-276cbaebb068.

Wilcke, Jeffrey. July 2016. “To Fork or Not to Fork”. Ethereum Blog. https://blog.ethereum.org/2016/07/15/to-fork-or-not-to-fork/.

Zmudzinski, Adrian. March 2019. “Ethereum Has More than Twice as Many Core Devs Per Month as Bitcoin, Report Says”. Cointelegraph. https://cointelegraph.com/news/ethereum-has-more-than-twice-as-many-core-devs-per-month-as-bitcoin-report.

--

--