圍繞區塊鏈的宣傳是聲勢浩大的。有關的宣傳是,區塊鏈將會:解決收入不平等確保所有資料永遠安全讓一切變得更加高效和更可靠拯救垂死的嬰兒到底什麼是區塊鏈?它真的能做所有這些事情嗎?區塊鏈能給醫療、金融、供應鏈管理和音樂權利等不同的行業帶來驚喜嗎?那麼,對於比特幣來說,這是否意味著是支援區塊鏈的呢?對於比特幣,你怎麼能不說它背後的技術有什麼不好的地方呢?在本文中,我試圖透過檢視區塊鏈是什麼和不是什麼,來回答許多這樣的問題。什麼是區塊鏈?為了研究其中的一些說法,我們必須給區塊鏈下定義,這裡有許多混淆之處。許多公司使用“區塊鏈”這個詞來表示某種神奇的裝置,以此向使用者表達出,他們的所有資料都不會出錯。當然,至少在涉及到現實世界的時候,這樣的裝置是不存在的。那麼什麼是區塊鏈呢?從技術上講,區塊鏈是一個塊的連結串列,一個塊是一組有序的事務。如果您不理解最後一句話,您可以將區塊鏈看作是資料庫的一個子集,在這個資料庫還有一些額外的屬性。區塊鏈和普通資料庫的主要區別是,對於如何將資料放入資料庫,有一些特定的規則。也就是說,它不能與資料庫中已經存在的其他資料衝突,它是隻追加的不可變的,並且資料本身被鎖定到所有者的話它是可複製的和可用的。最後,資料庫不是去中心化的。這最後一點才是區塊鏈存在的真正意義。權力下放非常具有吸引力,因為它意味著不存在單一的失敗點。也就是說,沒有任何一個機構能夠拿走你的資產或改變歷史來滿足他們的需求。在這種不變的審計線索中,你不需要相信任何人,這就是每個人使用這種技術所追求的好處。然而,這種好處的代價是巨大的。區塊鏈的成本不受任何一方控制的不可變審計跟蹤肯定是有用的,但是建立這樣一個系統需要付出很多代價。讓我們來研究一下其中的一些問題。發展更加嚴格且緩慢建立一個可證明一致的系統不是一件容易的工作。一個小錯誤會破壞整個資料庫,或者導致某些資料庫與其他資料庫相沖突。當然,損壞或拆分的資料庫不再具有任何一致性保證。此外,所有這類系統都必須從一開始就設計得前後一致。在區塊鏈中沒有“快速移動就能避免破壞的東西”。如果你破壞了東西,你就會失去一致性,區塊鏈就會被破壞,然後變得毫無價值。您可能會想,為什麼不直接修復資料庫或重新開始並繼續前進呢?這在集中式系統中是很容易做到的,但在分散式系統中則很難做到。為了更改資料庫,您需要一致的意見,或者系統中所有參與者的同意。因為區塊鏈必須是一個公共資源,不在單個實體的控制之下。激勵結構難以設計增加適當的獎勵結構,並確保系統中的所有行為者都不濫用或破壞資料庫,也是一個重要的考慮因素。一個區塊鏈可能是一致的,但是如果它有很多瑣碎的、無用的資料,那就不是很有用了,因為將資料放入其中的成本非常高。是什麼給出了資料的最終結論?如何確保獎勵與網路目標一致?為什麼節點要保持或要更新資料, 以及當它們處於衝突中時, 是什麼使它們選擇了一致性的資料?這些都是需要解決的具有激勵性的問題, 資料不僅需要在一開始, 而且要在未來的所有點上都是一致的, 否則區塊鏈將沒有意義。同樣, 你可能會想知道為什麼你不能 "修復" 一些破碎的獎勵。再一次說明, 這在集中式系統中很容易實現, 但在一個分散的體系中, 你根本無法在沒有共識的情況下改變任何事情。除非每個人都同意, 否則沒有 你改變任何東西的權利。維護成本很高, 傳統的集中式資料庫只需要寫入一次。而區塊鏈需要寫上上千遍。傳統的集中式資料庫只需要檢查一次資料。而區塊鏈需要對資料進行上千次檢查。傳統的集中式資料庫只需要傳輸一次儲存資料。而區塊鏈 需要將資料傳輸上千次。維持 區塊鏈 的成本是很高的。大多數應用程式在查詢前面所述的一些屬性時, 如一致性和可靠性, 可以使用完整性檢查、收據和備份更便宜地獲得這些東西。使用者主權公司都不喜歡為使用者的資料承擔責任。但是, 如果使用者 "行為不端", 這可能會很糟糕。沒有辦法趕走那些用瑣碎資料傳送區塊鏈的使用者,或者想出一種以某種方式獲利的方式,這會給其他使用者帶來很多不便。這與上述的觀察相關聯,即激勵結構必須設計得非常非常好,那麼使用者不太可能放棄,特別是當使用者有利潤的時候。您可能會想,您可以簡單地拒絕對惡意使用者的服務,這在集中式服務中是很容易做到的。但是,與集中式服務不同,在區塊鏈中拒絕服務是困難的,因為沒有一個實體有權將任何人踢出。區塊鏈必須公正並執行軟體定義的規則。如果這些規則不足以阻止不良行為,那你就倒黴了。這裡沒有法律的“精神”。你在處理惡意或行為不端的演員,可能需要很長時間。所有升級都是自願的強制升級不是一個好的選項。網路上的其他玩家沒有義務更改您的軟體。如果他們這樣做,這樣系統將更容易、更快和更便宜地作為一個集中的系統來構建。區塊鏈的意義在於,它不在單個實體的控制之下,並且所有使用者都不能給被強制升級。相反,所有升級必須是向後相容的。這顯然是相當困難的,尤其是如果您想新增新特性,並且從測試的角度進行思考時更難。軟體的每個版本都為測試矩陣增加了很多內容,並延長了釋出時間。同樣,如果這是一個集中式系統,那麼不再維護較舊的系統就很容易糾正這一點。但是,在一個分散的系統中,您不能強迫任何人做任何事情。縮放真的很難最後,與傳統的集中式系統相比,擴充套件至少要困難幾個數量級。原因很明顯,因為同樣的資料必須存在於數百個或數千個地方,而不是在一個地方。傳輸、驗證和儲存的開銷是巨大的,因為資料庫的每一個副本都必須進行支付,而不是在傳統的集中式資料庫中只支付一次這些費用。當然,您可以透過減少節點數量來減輕負擔。但到了那個時候,為什麼你還需要一個分散的系統呢?為什麼不建立一個集中式資料庫?集中管理要容易得多如果你注意到分散式系統很難使用,維護費用高,升級困難,規模大的痛苦,集中式資料庫比區塊鏈更快、更便宜、更容易維護和升級的話。那麼,為什麼人們總是用“區塊鏈”這個詞來進行標杆,好像它是解決他們所有問題的靈丹妙藥呢?首先,許多在區塊鏈上出售的行業確實早就該升級IT基礎設施了。70年代以來,財務結算仍在軟體上執行,供應鏈管理軟體既難以使用,也難以安裝。這些行業的大多數公司都會因為涉及的風險而抵制升級。有許多基礎設施進行了升級,花費了數億美元,但最終還是被打回原形了。因此,區塊鏈是一種銷售這些IT基礎設施升級的方式,區塊鏈會使它們更有吸引力。其次,區塊鏈是一種讓你看起來像是處於科技前沿的技術。不管你喜不喜歡,“區塊鏈”這個詞已經有了自己的生命。很少有人真正理解它是什麼,但想顯得時髦,所以用這些詞來讓自己聽起來更加的牛。就像“雲”指的是別人的電腦,“AI”指的是經過調整的演算法,“區塊鏈”在這個上下文中意味著一個緩慢而昂貴的資料庫。第三,人們確實不喜歡政府對某些行業的控制,他們希望有一個不同於法律框架的審判機制,而後者通常既慢又費錢。對他們來說,“區塊鏈”只是擺脫政府管制機器的一種方式。這就是區塊鏈的作用。但是區塊鏈並不能神奇地帶走人類的衝突。結果是許多人在沒有真正瞭解能力或成本的情況下就被這些承諾炒作了。更糟糕的是,實際的技術細節和成本從很多風投和高管那裡被抽象出來,從而掩蓋了可以做什麼和不能做什麼。那麼區塊鏈有什麼用呢?我們已經證明了區塊鏈相對於集中式資料庫來說是非常昂貴的。所以你還想使用區塊鏈的唯一原因是其具有分散化。這自然意味著軟體或資料庫一定不能經常改變周圍的東西,如果有的話。升級應該沒有什麼好處,並且搞砸或改變規則也有很多壞處。大多數行業都需要新的功能或升級,以及在必要時有能夠進行更改和擴充套件的自由。考慮到區塊鏈難以升級、難以改變、難以規模化,大多數行業對區塊鏈的使用並不多。我們發現的一個例外是“錢”。與大多數工業用例不同,如果不能夠進行改變,錢會更好。規則的不變性和困難性對金錢是正面的,而不是有害的。這就是區塊鏈在比特幣問題上是合適的工具的原因。我們必須明確一點的是,許多希望使用區塊鏈的公司並不真正想要一個區塊鏈,只是資訊科技升級到它們的特定行業了。這一切都很好,但是用“區塊鏈”這個詞來達到這個目的是不顯示的,因為這會過度消耗企業的能力。結論區塊鏈是最近很流行的術語,不幸的是,這種“區塊鏈而非比特幣的”模因不會消亡。如果您是一個集中式的服務,那麼區塊鏈就不能為您提供比集中式資料庫便宜一千倍的東西。如果您是一個分散的服務,那麼您可能是在愚弄您自己,因為你沒有考慮到系統中存在的單一故障點。在一個真正分散的服務中根本不會只有你存在。早在2000年代初,科技行業的許多高管都在推動使用Java和XML。儘管這個都是工具而非實際產品,不管工程師們達到的目標有多麼糟糕,許多高管堅持使用它們。區塊鏈很像這樣產品。如果,把注意力集中在你正在解決的問題上,工具就會很容易地顯現出來。把注意力集中在你想要使用的工具上,你最終會生產出像Rube Goldberg這樣的機器,而這些機器不會做得特別好。從某種意義上說,現在的區塊鏈概念是在試圖做不可能的事情。他們希望分散式系統的安全性與集中式系統的控制相統一。他們想的是要利用這兩種系統中最好的,但他們最終得到的卻是兩個系統中最糟糕的。區塊鏈作為一個時髦的詞來進行炒作。因此,我們要儘快擺脫這種炒作,然後使自身越來越好就可以了。
更多區塊鏈數字貨幣資訊:http://www.qukuaiwang.com.cn/news