每日最新頭條.有趣資訊

為什麽大家將區塊鏈複雜化、神化?

編者按:區塊鏈是什麽?它真的是靈丹妙藥,可以解決各行業存在的問題嗎?非也。Jimmy Song是一名比特幣教育工作者,還是企業家、開發者。他最近刊發一篇文章,談到區塊鏈系統的優點與缺點。關注區塊鏈技術的人可以讀一讀。

區塊鏈炒得沸沸揚揚。看看大家都是怎麽說的?我們經常聽到如下幾點:

——可以解決收入不平等問題。

——讓所有數據永遠安全。

——讓一切變得更有效率。

——拯救垂死嬰兒。

到底什麽是區塊鏈?它真的能達成上述目標嗎?區塊鏈真的能給行業帶來有益變化嗎,比如解決醫療保健,金融,供應鏈管理和音樂版權問題?

支持比特幣是不是意味著支持區塊鏈?如果你支持比特幣,怎麽又能詆毀背後的技術呢?

在這篇文章中,我嘗試尋找答案,討論一下區塊鏈到底是什麽,為什麽重要。

什麽是區塊鏈

要認真審視某些問題,有幾個要點先要理解:什麽是區塊鏈?它到底是什麽?當中有許多混亂之處。許多企業使用“區塊鏈”這一術語,意思就是說它是魔幻設備,所有數據永遠不會出錯。當然,這樣的設備根本不存在,至少在真實世界不存在。

什麽是區塊鏈?從技術上講,區塊鏈就是區塊連成的鏈條,一個區塊存放一些有序的交易資訊。如果你還是不理解,可以將區塊鏈看成數據庫的子集,只是多了一些特色。

區塊鏈與普通數據庫最大的不同就是它有一套特殊規則,規定如何將數據存儲到數據庫。存入的數據不能與數據庫中其它的數據發生衝突(共存性),只能添加(不可變性),數據與數據主人是鎖定的(所有性),它可以複製。數據庫沒有中央機構管理(去中心化),這點是大家都認同的。

我們可以說,“去中心化”是區塊鏈的聖杯。為什麽去中心化如此有魅力?因為它不會出現單點故障。換言之,沒有任何單一的權威機構可以拿走你的資產,改變”歷史“。因為審計蹤跡不可變,所以你不需要相信任何人,這點正是大家所期待的。不過,雖然區塊鏈優點很多,但是要享受這些福利成本可不低。

區塊鏈的成本

要讓審計追蹤不可變,不被任何一方控制,需要打造一套系統,成本很高。

我從以下幾個方面來解釋一下:

——開發更嚴格更緩慢

開發一套可驗證的系統,保持一致,不是一件易事。只要有一個小小的漏洞,就會毀了整個數據庫,或者導致某些數據庫與其它數據庫完全不同。損壞或者分裂的數據庫無法保證一致性。

另外,所有系統在設計時從一開始就應該是一致的。所以說在區塊鏈技術中,不能追求“move fast and break things “(快速行動,打破常規)。如果你破壞了,就會喪失一致性,區塊就會被摧毀,變得一文不值。

你可能會說,為什麽不修複數據庫,或者重啟,然後繼續前進?如果用的是中心化系統,要做到還算容易,去中心化系統就難了。改變數據庫必須得到系統內所有各方的同意才行。區塊鏈是公共資源,不被任何實體控制,緩慢打造中心化數據庫也是成本非常高的。

——設計激勵結構非常難

添加正確的激勵架構,確保系統參與各方不會濫用數據庫、破壞數據庫,這是一個重要的考慮因素。區塊鏈必須保持一致,如果裡面有許多無用、瑣碎的數據,區塊鏈就會變得不實用,因為將數據放入系統的成本是很低的。如果系統中沒有任何數據,將數據放入系統的成本就會很高,這樣的區塊鏈也是不一致、不實用的。

到底是什麽賦予數據最終特性?如何確保激勵與網絡目標一致?為什麽節點會保留數據或者更新數據?當數據與數據發生衝突時,是什麽讓系統選擇一些數據,放棄另一些?這些問題都需要回答,從一開始就要協調好,未來,當技術或者企業變化時,必須確保區塊鏈繼續有效。

你可能會問:如果激勵機制出現問題,為什麽不能修複呢?再次強調,在中心化系統中,要做到不難,但是如果系統去中心化,那就不容易了,如果沒有取得一致同意,你不能修改任何東西。除非每一個人都同意,否則不能修改任何東西。

——維護成本很高

如果是傳統中心化數據庫,只需要再寫一次就行了。區塊鏈不一樣,它要編寫成千上萬次。傳統中心化數據庫只需要檢查一次就行了,只需要傳輸一次並存儲數據就行了。區塊鏈不一樣,它要傳輸成千上萬次。

維護區塊鏈的成本高很多,而且還要通過實用性來證明。正因如此,大多應用會提前考慮某些特徵,比如一致性、可靠性,這樣檢查、接收、備份時成本就會低一些。

——用戶至高無上

這是一件好事,因為企業不願意為用戶的數據承擔責任。不過也可能是壞事,如果用戶作惡就沒有辦法了。你沒有辦法剔除用戶,它會用瑣碎的數據損害你的區塊鏈,也可能會利用某些不當手段獲利,給其它用戶帶來不便。正因如此,我們才需要設立非常好的架構,即使某個用戶發現漏洞,也不會有什麽影響,因為無利可圖。

你可能會說,為什麽不拒絕服務惡意用戶呢?如果是中心化服務,要做到很容易。可惜區塊鏈不是中心化服務,拒絕服務是一件很難的事,因為沒有單一實體有權踢人。區塊鏈必須公正公平,必須執行軟體制定的規則。如果規則不足以剔除壞行為,那就糟糕了,因為裡面沒有法律。你只能與惡意者、行為不良的人打交道,可能需要花很長的時間。

——所有更新者是自願的

系統不會強製更新。網絡的其它人沒有義務改變軟體。如果他們這樣做,那麽開發系統會更容易、更便宜、更快,就像中心化系統一樣。區塊鏈沒有受到任何單一實體的控制,所以它與強製更新存在衝突。

所有更新都是向後兼容的。如果你想添加新東西會很難,從測試角度看更是難上加難。軟體每推出一個新版權,就會增加測試難度,發布時間也會延長。

再次重申,如果是中心化系統,修改就會容易得多,不再使用舊系統就行了。區塊鏈系統做不到,它不是中心化系統,你不能強迫任何人做任何事。

——擴展是一件很難的事

與傳統中心化系統相比,要讓區塊鏈系統具有彈性相當難,難上很多很多。為什麽?原因其實很簡單。同樣的數據存儲在無數地方,不是存在一個地方。傳遞、驗證、存儲任務超級繁重,數據庫每出現一個複本,就要支付費用,如果是傳統中心化數據庫,支付一次就行了。

當然,你可以減少節點的數量,減輕負擔。既然如此,你為什麽要用去中心化系統呢,可以不用啊?如果你擔心的只是擴展成本,乾脆用中心化數據庫不就行了嗎?

——集中更容易一些

去中心化系統很難處理,維護成本很高,更新困難,擴展性差。如果是中心化數據庫,費用更低,維護更容易,更新也更容易。為什麽大家還要使用區塊鏈,將它當成解決所有問題的靈丹妙藥?

首先,之所以向某些行業推銷區塊鏈,是因為它們行業的基礎設施很久沒更新了。醫療保健行業的軟體相當糟糕。金融行業使用的軟體停留在70年代。供應鏈管理軟體既難安裝,又難使用。來自這些行業的大多企業不願意更新,為什麽?因為有風險。有時投入巨資更新基礎設施,結果發現不行,只能回退到過去。區塊鏈可以推動IT基礎設施更新,讓更新變得更有吸引力。

其次,區塊鏈能讓你覺得自己很領先。真正理解區塊鏈的人很少,他們使用這個術語,只是因為聽起來更聰明。我們使用“雲計算”來談論別人的電腦,“AI”的意思就是說調整算法,至於使用“區塊鏈”這一術語,就是說要使用很慢很貴的數據庫。

第三,大家真的不喜歡政府控制某些產業,希望確立一種不同於法律的裁決機制,它很慢,很貴。區塊鏈可以幫助行業擺脫政府監管。老實說,這種吹捧有點過頭。區塊鏈完全不與人衝突是不可能的。

許多人沒有真正理解區塊鏈的能力和成本,就大吹特吹。更糟糕的是,許多VC和高管將區塊鏈技術的細節和成本變得很抽象,因為我們刻意含糊其辭,區塊鏈能做什麽,不能做什麽,我們沒有講清楚。皇帝沒有穿衣服,大家都知道,但是不願意說出來。

區塊鏈帶來的益處

我們都知道,相對於中心化數據庫,區塊鏈是很貴的。之所以使用區塊鏈技術,唯一的原因就是去中心化。也就是說清除單一故障點,不讓任何人控制。

這樣一來,軟體和數據庫不能經常改變,甚至完全不改變。

許多行業不願意這樣。它們希望在必要時刻可以添加新功能,更新,可以自由改變或者拓展。因為區塊鏈很難更新,很難改變,很難擴展,所以區塊鏈對於大多行業沒有太多用。

只有一樣東西例外,那就是金錢。和大多行業不同,如果不變化,金錢系統會更好。規則不可變或者很難改變,對於金錢來說是一件好事,沒有任何損害。正因如此,談到比特幣時,區塊鏈才會成為最適合的工具。

有許多企業想使用區塊鏈技術,但它們實際上並不是真的想要區塊鏈,只是想給行業IT基礎設施升更新。很好,但是如果非要扯上“區塊鏈”這個術語,就有點不誠實了,而且過度誇大區塊鏈的能力。

結論

在今天的世界,區塊鏈已經成為流行術語。如果是中心化服務,中心化系統不能做的事區塊鏈也做不到,而且開發中心數據庫成本要低很多很多。如果是去中心化服務,你可能會欺騙自己,不去思考系統中存在的單點故障。在真正的去中心化服務中,根本不存在真正的“你“。

回看2000年代初期,科技行業的許多高管都說要使用Java和XML。它們都是工具,不是真正的產品,但是許多高管還是向兩種技術的使用投入巨資,雖然技術本身與工程師想達到的目標完全不匹配。區塊鏈有點相似。專注你所要解決的問題,工具會自然而然冒出來。如果你盯著自己想使用的工具,最終造出的只是古怪的東西,沒有任何實際用處。

我有一種感覺:從概念上看,目前的區塊鏈技術似乎想做不可能的事情。它們想變成安全的去中心化系統,由集中權力控制。這樣的構想似乎想將兩個世界的優點結合在一起,但是最終兩邊都不會好看。去中心化系統的成本劣勢與開發難度會體現出來,中心化系統的出錯模式也無法避免。

區塊鏈術語有點使用過度,許多人打著區塊鏈的牌子招搖撞騙。越早遠離炒作可能越好。

編譯組出品。編輯:郝鵬程

獲得更多的PTT最新消息
按讚加入粉絲團