05.24 比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

譯/金剛福祿蛙

關於區塊鏈的討論不絕於耳。也許你聽說過,區塊鏈現在可以:

  • 解決收入不平等
  • 使所有數據永遠安全
  • 使一切變得更有效率和更不可信
  • 拯救垂死的嬰兒

到底什麼是區塊鏈?它真的能做所有這些事情嗎?區塊鏈能為醫療、金融、供應鏈管理和音樂版權等不同行業帶來驚人的變化嗎?

而比特幣從業者是不是意味著你是支持區塊鏈的?你怎麼能在支持比特幣的同時詬病比特幣背後的技術呢?

在這篇文章中,我試圖通過查看解答什麼是區塊鏈來回答上述疑問。

什麼是區塊鏈?

我們來先定義清楚區塊鏈是什麼,這裡有很多常人理解上容易混淆的地方。許多公司使用“區塊鏈”這個詞來指某種神奇的裝置,在這個裝置之上它們的所有數據永遠不會出錯。顯然,這樣的裝置在現實世界中是不存在的。

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

那麼什麼是區塊鏈?從技術上講,區塊鏈是數據區塊以有序的方式組合起來的鏈式數據結構。如果您不理解最後一句,您可以將塊鏈看作是附加了一些屬性的數據庫子集。

區分區塊鏈和普通數據庫的要點在於如何將數據放入數據庫。也就是說,它不能與數據庫中已經存在的其他數據衝突(一致),它僅僅是附加(不可變),並且數據在本身被鎖定到所有者(Ownable)後,它是可複製的和可用的。最後,每個人都同意數據庫中的數據以協商一致的規範和協議存在(去中心化)。

接下來所說的最後一點,是區塊鏈真正備受推崇的關鍵:去中心化是非常有吸引力的,因為這意味著它沒有單一的失敗點。也就是說,沒有任何一個權威機構能夠拿走你的資產或改變“歷史”以滿足他們的需要。這種不可改變的審計跟蹤,意味著在這裡你不需要相信任何人,這也正式這項技術背後人們不斷在追逐的利益。然而,為了這些利益我們付出了巨大的代價。

區塊鏈的成本

任何一方都無法控制這些不可改變的審計跟蹤,但是創建這樣一個系統需要付出很多代價。讓我們來看看其中的一些問題。

1. 發展受限且進程變慢

創建一個明顯一致的系統並不是一件容易的事情。一個小錯誤可能會破壞整個數據庫,或者導致某些數據庫與其他數據庫不同。當然,損壞或拆分的數據庫不再具有任何一致性保證。此外,必須從一開始就設計所有這些制度,使之保持一致。在區塊鏈中沒有“快速移動和破壞”。如果你破壞了一些東西,你就會失去一致性,區塊鏈就會變得毫無價值。

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

你可能在想,為什麼不能修復數據庫或者重新開始再繼續前進呢?這在集中式系統中很容易做到,但在去中心化的系統中非常困難。要更改數據庫,需要系統中所有參與者的一致意見或協議。區塊鏈必須是不受單個實體控制的公共資源(去中心化,記得嗎?),或者整個工作是創建一個緩慢、集中的數據庫的一種非常昂貴的方法。

2. 激勵結構很難設計

增加正確的激勵結構,並確保系統中的所有行為者都不能濫用或破壞數據庫,同樣也是一個很大的考慮因素。區塊鏈可能是一致的,但如果其中包含大量瑣碎、無用的數據,那就不太有用了,因為將數據放入其中的成本非常低。如果幾乎沒有數據,那麼一個一致的區塊鏈也不會有用,因為將數據放入其中的成本非常高。

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

如何確保獎勵與網絡目標一致?為什麼節點要保存或更新數據,是什麼使它們在衝突時選擇一條數據而不是另一條數據?這些都是激勵性的問題,需要很好的答案,它們不僅需要在開始的時候,而且在未來的任何時刻,隨著技術和公司的變化,它們都需要一致,否則區塊鏈就沒有用了。

同樣,你可能會想,為什麼你不能“修復”一些壞的激勵。同樣,這在集中式系統中很容易,但在去中心化系統中,沒有共識就不能改變任何事情。除非大家都同意了,否則就不會有任何“修理”。

3. 維修費用很高

傳統的集中式數據庫只需寫入一次。一個區塊鏈需要被寫到數千次。傳統的集中式數據庫只需要檢查一次數據。區塊鏈需要檢查數據數千次。傳統的集中式數據庫只需傳輸一次數據即可存儲。區塊鏈需要傳輸數千次數據。

維護區塊鏈的成本要高出一個數量級,成本需要通過效用來證明。大多數應用程序尋找一些屬性,如一致性和可靠性,可以通過使用完整性檢查、收據和備份,以更低的成本獲得這些功能。

4. 用戶是獨立的

這可能真的很好,因為公司不喜歡擁有用戶數據的責任。但是,如果用戶“行為不當”,這可能是不好的。沒有辦法驅逐那些用瑣碎的數據垃圾處理你的區塊鏈的用戶,或者想出一種以某種方式盈利的方法,這會給其他用戶帶來很大的不便。這與上述觀點有關,即激勵結構必須設計得非常、非常好,因為發現漏洞的用戶不太可能放棄這一點,特別是如果用戶有利潤的話。

您可能認為可以簡單地拒絕向惡意用戶提供服務,這在集中式服務中非常容易。然而,與集中式服務不同,拒絕服務是很困難的,因為沒有一個實體有權將任何人逐出。區塊鏈必須公正,並強制執行軟件定義的規則。如果規定不足以阻止不良行為,你就倒黴了。這裡沒有法律的“精神”。你只需處理惡意或行為不端的演員,可能會有很長一段時間。

5. 所有升級都是自願的。

強制升級不是一種選擇。網絡上的其他玩家沒有義務對您的軟件進行更改。如果他們這樣做了,這樣一個系統將更容易,更快和更便宜的建設作為一個集中的系統。區塊鏈的要點是它不受單個實體的控制,這與強制升級相違背。

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

相反,所有升級必須是向後兼容的。這顯然是相當困難的,特別是如果您想要添加新的特性,甚至更難從測試的角度思考。該軟件的每個版本都為測試矩陣添加了大量內容,並延長了發佈時間。

同樣,如果這是一個集中的系統,這將是非常容易糾正,不再服務於舊的系統。但是,在去中心化的系統中,您不能這樣做,因為您不能強迫任何人做任何事情。

6. 縮放真的很難

最後,與傳統的集中式系統相比,縮放至少要困難幾個數量級。原因很明顯。同樣的數據必須生活在成百上千的地方,而不是一個地方。傳輸、核查和儲存的開銷是巨大的,因為數據庫的每一份副本都必須支付這些費用,而不是在傳統的中央數據庫中只支付一次費用。

當然,您可以通過減少節點數量來減輕負擔。但到了那個時候,為什麼你需要一個去中心化的系統呢?如果擴展成本是主要問題,為什麼不直接建立一個集中的數據庫呢?

7. 集中化要容易得多

如果你注意到一個主題,那就是去中心化系統很難使用,維護成本很高,升級難度很大,規模也很大。集中式數據庫比塊鏈更快、更便宜、更易於維護和更易於升級。那麼,為什麼人們總是使用區塊鏈這個詞,就好像它是解決所有問題的靈丹妙藥一樣?

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

  1. 首先,許多在區塊鏈上銷售的行業都應該進行IT基礎設施升級。醫療保健有著出了名的爛軟件。金融結算行業仍在70年代的軟件基礎上運行。供應鏈管理軟件既難以使用,也難以安裝。這些行業中的大多數公司由於風險而拒絕升級。很多基礎設施的升級花費了數億美元,但最終還是被淘汰了。區塊鏈是一種銷售這些IT基礎設施升級並使其更具吸引力的方法。
  2. 第二,區塊鏈是一種讓你看起來像處於技術前沿的方式。不管你喜不喜歡,“區塊鏈”這個詞已經有了它自己的生命。很少有人真正理解它是什麼,但想要顯得時髦,所以用這些詞作為一種聽起來更聰明的方式。就像“雲”意味著其他人的計算機和“AI”意味著經過調整的算法,在這種情況下,“區塊鏈”意味著一個緩慢又昂貴的數據庫。
  3. 第三,人們真的不喜歡政府對某些行業的控制,他們想要一個不同於通常緩慢而昂貴的法律框架的審判機制。對他們來說,“區塊鏈”實際上只是擺脫政府監管的沉重方式之一。這是超賣區塊鏈可以做的,但事實上區塊鏈並不能神奇地消除人類的衝突。

結果,很多人在沒有真正理解能力或成本的情況下,就被誇大的承諾忽悠了。更糟糕的是,實際的技術細節和成本是從很多風險投資公司和高管那裡抽象出來的,以致於模糊了區塊鏈能做什麼和不能做什麼。每個人都不敢說皇帝沒有衣服,這就像我們現在所面對的情況。

那麼區塊鏈有什麼好處呢?

我們已經確定,與集中式數據庫相比,區塊鏈非常昂貴。所以你應該使用區塊鏈的唯一原因是去中心化。也就是說,移除單一的故障點或控制點。

這自然意味著軟件或數據庫不能經常改變,如果有的話。升級應該沒有什麼好處,而搞砸或改變規則也會有很多負面影響。

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

大多數行業都不是這樣的。大多數行業都需要新的功能或升級,以及在必要時改變和擴展的自由。考慮到區塊鏈很難升級,很難改變,也很難擴展,大多數行業對區塊鏈沒有多大用處。

我們發現的一個例外就是錢。與大多數工業用例不同的是,如果不改變,錢就會更好。改變規則的不變性和困難是對金錢有利的,而不是有害的。這就是為什麼當談到比特幣時,區塊鏈是正確的工具。

很明顯,許多想要使用區塊鏈的公司並不是真的想要區塊鏈,而是想要對其特定行業進行IT升級。這一切都很好,但是用“區塊鏈”這個詞來達到這個目的是不誠實的,而且誇大了它的能力。

結語

區塊鏈是當今流行的術語,不幸的是,這種“區塊鏈而不是比特幣”的迷因不會死。如果您是一個集中式服務,區塊鏈不會為您提供任何您無法用集中式數據庫便宜一千倍的東西。如果您是一個去中心化的服務,那麼您可能是在欺騙自己,而不是考慮系統中存在的單一故障點。在真正去中心化的服務中根本不會有“你”。

比特幣開發者Jimmy Song:為什麼說區塊鏈很難?

整篇文章中最大的笑話

早在2000年代初,科技行業的許多高管就在推動使用Java和XML。儘管這兩件事都是工具,而不是實際產品,但許多高管堅持使用這些工具,不管他們的工程師試圖實現的目標有多麼糟糕。區塊鏈就是這樣的。專注於你正在解決的問題,這些工具將使你自己變得顯而易見。專注於你想要使用的工具,你最終會製造出魯伯·戈德堡機械,這些機械做得並不特別好。

從某種意義上說,目前關於區塊鏈的概念正試圖做不可能的事情。他們想要一個去中心化的系統的安全和一個集中的控制。人們的慾望是得到兩個世界中最優解,但他們最終得到的卻是兩個世界中最劣解。通過集中式系統的故障模式,我們可以得知去中心化系統的成本和難度。

區塊鏈作為一個時髦的詞被過度使用,我們越快擺脫炒作,從長遠來說,生活就會越好。

感謝大衛·A·哈丁和邁克爾·弗蘭斯曼對本文撰寫提供的幫助。

每日分享互聯網趣聞,福利、思維、模式


分享到:


相關文章: