當前位置:
首頁 > 科技 > 不,你可能不需要區塊鏈!

不,你可能不需要區塊鏈!

接收程序員的技術早餐

作者|Ashton Kemerling

譯者|大愚若智

給區塊鏈降降溫。

http://ashtonkemerling.com/blog/2018/02/21/no-you-probably-dont-need-a-blockchain/。

有關比特幣和區塊鏈

哦,比特幣,你簡直就是每個人在經濟領域的摯愛。有人認為比特幣會毀了美聯儲,也有人希望它能幹掉大型銀行。有人希望能借它大發橫財,還有人甚至希望它能徹底淘汰各大政府機構。貌似無論你討厭什麼,都能借比特幣之手把它消滅掉!

當然,這些想法都很荒謬。圍繞比特幣,已經有太多自相矛盾的「美夢」,不過很明顯,這些美夢不可能全部成真,甚至藉機輕鬆賺錢的夢想也開始面臨諸多變數。

不過就算不相信買點比特幣就能讓你發大財然後邁向人生巔峰,你肯定聽說過到處都有人說,比特幣並不是未來,真正是未來的應該是區塊鏈!無數人篤信這個觀點,以至於對比特幣持懷疑態度的人也覺得,哪怕比特幣本身無法擔此重任,區塊鏈也有可能改變世界。每次比特幣兌美元匯率下跌時,儘管很多人並不關心這事,但這種說法也會開始冒頭。

我個人認為有關區塊鏈的一切都是在做鋪墊。我非常懷疑區塊鏈能否代表未來,也不覺得這技術未來會有大範圍應用,至少目前還沒有相關跡象。目前我們只能看到層出不窮的炒作,以及已經不算少的欺詐,這一點讓我有點擔心。

不得不提的聲明

首先,我不是金融顧問。如果你根據本文的內容決定買什麼賣什麼,咱倆可能都會覺得不爽。嗯,不爽的可能只是你,我頂多會在你事後向我抱怨時感覺有點鬧心。如果你想得到正規的金融意見,請找個真正的金融顧問然後花錢購買他的服務。

其次,未來如何很難說。雖然我很確信,我本人還沒見過本文要討論的技術目前有什麼大規模應用,但我也不會愚蠢地認為這些技術以後也完全不會實用化。我只能闡述自己的觀點,告訴你我提出這種觀點的理由,但最終會怎樣只有時間能告訴我們答案。

那麼,區塊鏈到底是什麼?

區塊鏈是一種以可以公開查閱、不可更改的方式記錄一系列交易的方法。這種技術會用私有的加密密鑰創建每筆交易,然後將交易裝入「區塊」中。隨後每個區塊將通過某種演算法進行公開的驗證,通常這一過程需要耗費大量算力。驗證後的每個區塊中包含一個到驗證前區塊的引用,進而產生了由區塊組成的鏈式結構,此謂之區塊鏈。這種技術的理念在於,區塊是一種創建成本極高,但查閱成本極低的東西。如果想要查閱某個特定比特幣地址(「錢包」)的餘額或交易歷史,只需要向後翻查所有區塊,並檢查引用了該地址的所有交易即可。

這種技術的基本想法在於,任何交易的驗證過程在本質上都是「去信任」的,不需要由任何中心權威提供任何交易的記錄。需要的時候,我們只要獲得區塊鏈的副本就可以驗證以往的任何交易。如果需要通過區塊鏈進行交易,只需要獲得特定錢包的私鑰副本就夠了。這種私鑰副本可以用軟體或硬體形式以多種方式存儲。驗證區塊的人不需要了解你,甚至不需要知道對方身份,即可完成交易。

那麼,為什麼要討論區塊鏈而不是比特幣?

比特幣使用了區塊鏈技術,但它本身並不是區塊鏈。實際上,區塊鏈由鏈條規則、當前鏈條,以及所有參與方共同組成。鏈條本身是起始區塊以及可接受的最長交易鏈的組合。因此也可以將其稱之為 Altcoin(譯註:除比特幣 Bitcoin 之外的其他加密數字貨幣),這是一種使用了有些許差異的規則,或來自區塊鏈的不同初始起始區塊的區塊鏈貨幣。

更有趣的是,有時出於安全或政治方面的原因,需要由區塊鏈中的某個片段來決定某個特定區塊是否已經失效。這會創建一種所謂的「硬分叉(Hard fork)」,會導致兩個互相衝突的區塊鏈共存,並且兩者會共享大部分交易歷史。例如飽受爭議的比特幣現金(Bitcoin Cash),它的誕生是為了解決比特幣本身固有的一些缺陷。如果你在 2017 年 8 月,該分叉創建之前擁有比特幣,那麼你現在就擁有了等額的「比特幣」和「比特幣現金」,至於這種結果在經濟上是否合理,那就看你自己的想法了。

那麼,你為什麼不喜歡區塊鏈?

我認為區塊鏈僅僅是現有技術的重新組合,不能讓我信服的原因在於它的長期效用。雖然坐看圍繞加密數字貨幣和相關公司的投機泡沫這過程挺有趣,但在我看來,大部分想要將區塊鏈拓展至泡沫之外的企圖都挺愚蠢的。

有關不變性的問題

區塊鏈在設計上是不可變的。除非施加一些極端措施,否則進入區塊鏈的任何交易都將是永久的,不可逆的。對金融系統來說,這樣的特點會產生大量明顯的不足:欺詐性的或錯誤的交易無法撤銷。網購商品沒有送到?忍著!有人把你當作人質要求支付比特幣作為贖金?忍著!私鑰被黑或者硬碟損毀?對你而言這就是天大的不幸。唯一能撤銷這種比特幣交易的方法是要說服所有人進行硬分叉,毋庸置疑,這一點實現起來真的是很難很難。

這才只是金融行業的影響,工業呢?實際上目前只有很少量的系統可以從這種無法修正或更新的交易中真正獲益。人類在操作電腦時出現失誤的情況時有發生,甚至我們成立了專門的部門(客戶服務)來解決這類問題。但在不可變的系統中,寫入區塊的任何信息都將真正無法撤銷。如果要逆轉錯誤的交易,唯一可行的方法是再一次真正執行一個逆向交易,這還需要說服交易的對方予以配合。很快,鏈條上將充斥著「哎呀,搞錯了」之類的交易,很快,你也會開始懷疑,自己一開始為啥要勞神搞這套東西。

現實世界中那些討厭的事情

對於區塊鏈的應用,最常見的提議之一是用來追蹤現實世界中商品的流通,從食品到鑽石,一切都可追蹤。乍看之下這真不錯,你可以很輕鬆地,毫不費力地證明愛人戒指上那塊耀眼的小石頭不是由戰亂地區的兒童開採出來的,太棒了!

問題在於計算機並不是現實世界。目前,哪怕對於並未加入區塊鏈的數字化系統,區塊鏈技術的影響力也極為有限,所以我們需要中心化的交易機構來促進使用美元、歐元等貨幣購買比特幣的行為。實際上,要讓計算機全面反映我們的現實世界,這本身就是一個非常艱難的任務,區塊鏈技術本身在這方面束手無策。

假設你是「血腥鑽石」經銷商。你知道富裕的西方人喜歡鑽石,但他們也不希望有兒童因為開採這些有爭議的鑽石而受傷害甚至送命。那麼你就會有很強的動機直接向計算機撒謊,為這些鑽石創建偽造的書面記錄,從中獲取更大利益。區塊鏈本身完全無法防止人類的謊言或者錯誤輸入的數值,而區塊鏈不變性這一本質會使得犯錯誤的成本大幅增加。

為交易驗證過程使用安全的硬體?想都不要想!本質上,區塊鏈只需要一個密碼就可以運轉,只要有私鑰就可以創建各種交易。如果影視盜版組織都可以從藍光播放器中提取解密密鑰,那麼我保證鑽石走私商很快也將能搞定這個問題。一旦攻擊者掌握了硬體,那麼把硬體大卸八塊成功提取出密鑰將只是時間問題。

對此,唯一的解決方案是讓可信、中立的第三方負責驗證商品來源與宣稱的一致。但這不僅與最開始提到的「去信任」理念背道而馳了,並且為驗證機構的員工賦予創建「這顆鑽石是合法的」不可變記錄的權力,這本身就會將員工置身於不必要的風險中。對於類似這樣的問題,區塊鏈系統相比現有措施沒有任何改進。

權力和動機

區塊鏈通常會使用「工作證明(Proof of Work)」系統,多個參與方會試圖通過這樣的系統解決某個困難的問題,藉此驗證區塊是否有效。問題在於我們很難防止某一方掌控太多的挖礦(算力)池。也正是因此,目前比特幣系統本身僅為了處理每秒約 4 筆交易,就消耗了和美國特拉華州相同的耗電量。

問題在於:如此多的電力是很貴的,而且這一過程還需要大量特殊的硬體。從事這些事情的人、礦工以及商業運營的公司,他們付出這麼多也是為了獲得回報。對於比特幣以及其他類似貨幣,回報正是貨幣本身。第一位解決了問題的礦工可以獲得幾枚比特幣作為回報,後來就產生了各種從事龐氏騙局以及多層次傳銷的騙子公司。在任何非貨幣化的應用中,為了維持區塊鏈的正常運轉,這些礦工的付出必須能得到相應報酬。考慮到工作證明系統本身效率就不高,這種系統的成本要比類似規模的中心化解決方案高出好幾個數量級。

對此有兩種解決方案。為礦工的辛苦工作提供某種形式的代幣,或者完全由你自己運行所有硬體。前一種方式已成為很多 ICO(Initial Coin Offering,首次代幣發行)的基礎,並且圍繞這種方式已經產生了太多的欺詐。後一種形式從本質上來看僅僅只是傳統系統在一些花哨術語包裝下的舊瓶裝新酒,當然,少不了還要面對巨額的電費賬單。

權益證明

除了工作證明系統外,還可以使用權益證明(Proof of Stake)系統。在權益證明系統中,持有最老貨幣的人會被選擇充當最新區塊的驗證人。這種情況下不需要為每位驗證人提供一定數量的貨幣作為報酬,而是由希望進行交易進而需要驗證區塊的每個人向其付費。同時這種情況也不需要將最長的鏈條視作最有效的,因為工作證明系統中最長的鏈條是「開採」最徹底的,而包含最古老貨幣的鏈條會被權益證明系統視作有效。

權益證明系統解決了當前工作證明系統中大部分嚴重問題,但也並非全部。整個系統的電力和算力成本可大幅降低,但未必能徹底免費。別人使用自己的手機 / 電腦 / 其他任何設備維持交易運轉,我們依然需要向對方付費。鏈條將能運行更多交易,遠遠好於比特幣那悲慘的每秒 4 筆交易,但這又會導致整個鏈條的體積大幅增加。畢竟每筆交易都會永久保留在區塊鏈中,比特幣的區塊鏈目前大小為 157 GB,這就已經導致交易處理速度低至每秒 4 筆。考慮到這個因素,每個人都能用自己手機挖礦的想法那就純粹是個笑話。

同時,權益證明系統也無法解決上文提到的與現實世界的聯繫及不變性等因素造成的問題。

規模

坦率地說,目前幾乎所有區塊鏈系統的性能都是垃圾。一個區塊可以容納的交易數量有限,同時對於使用工作證明機制的區塊鏈系統,為了驗證一個區塊所要執行的工作量也導致系統最大吞吐率維持在很低的水平。例如比特幣平均每秒最多只能處理 3-4 筆交易。以太坊(Ethereum)略好一些,每秒可處理 15-20 筆交易。但面對 Visa 公布的日均每秒 1,667 筆交易,峰值時期可能更高的數量,前兩者的表現黯然失色。換一種形象的說法,Visa 的處理速度可以滿足一個正常規模國家的交易需求,比特幣也就只能滿足幾家超市的需求。

我還考慮過到底有多少工業系統值得花費那麼多電力並換來每秒鐘處理個位數交易的處理能力。也許沒幾個。

注意:有人提出了改進比特幣交易速度的計劃,但大部分都需要徹底甩開區塊鏈的概念,可區塊鏈才是其中最重要的。考慮到這些解決方案可能隨時投入實用,這不僅讓我懷疑它們的可行性。其實這些解決方案還蘊藏著嚴重的安全隱患,甚至完全不值得一試。

ICO 也是欺詐

首次代幣發售是加密貨幣領域一個很有趣的子類型。在 ICO 過程中,會有人創建一種全新的密碼貨幣,用以代表某些新的風險項目中所蘊含的權益。為了籌集資金,代幣會銷售給出價最高的競價人,而代幣最終會因為某些「魔法」而產生用途和價值。毋庸置疑,ICO 領域蘊含著數不清的欺詐。

首先,ICO 按照設計看起來有些類似於首次公開募股(IPO),只不過少了各種繁瑣的規定。實際上很多 ICO 並不向買家提供任何反對權或分紅權,根據合約有些情況下甚至不允許出售,這也進一步限制了市場的發展。至於這些代幣以後為什麼能有價值?就算最新的 ICO 通常也給不出任何具體的理由。

其次,還記得欺詐這回事嗎?根據估算,ICO 融資中最高有 10% 已經直接被偷走了。有時候可能是 ICO 的創建者收集了比特幣或 ICO 想要籌集的其他貨幣,但從未真正發行過代幣,然後把自己的網站替換成一個包含單詞「Penis」的頁面進而進行洗錢。也有可能是因為看似普通的整數下溢 Bug 導致某人從 4chan 支持的 ICO 中盜取 80 萬美元。超過半數情況下這些資金已經「被盜」了,我們只是不清楚到底是最終將落入某個第三方之手,還是從一開始這就是一個騙局。

第三,這些 ICO 中很少有哪個能與加密或價值這兩件事存在任何有意義的聯繫,哪怕最輕微的聯繫。上文討論供應鏈區塊鏈時曾提到過這個問題,但是「與區塊鏈的約會」以及「與區塊鏈的『不可描述』」都是毫無意義的胡扯,尤其是現在每個人對於自己在家時觀看過什麼內容這種隱私已經完全不重視了。到底瘋狂到什麼地步了?有人甚至開始用香蕉為 ICO 提供支持。這可不是開玩笑,他們宣稱已經通過這種方式籌資 3,038,361.90 美元。

這些 ICO 到底荒謬到何種地步,以柯達 ICO 的事前剖析(Pre-mortem)為例,整個計劃從上到下完全是在胡扯,其中還包含了大量內幕交易。如果柯達公司接下來幾年沒人因為內幕交易被捕,這才會讓我覺得震驚。

那麼智能合約又會怎樣?

在所有密碼學貨幣以及區塊鏈技術中,以太坊(Ethereum)不僅與眾不同而且非常有趣。以太坊為用戶提供了一種簡單(如果「簡單」本身不會造成其他問題的話)的編程語言。我們可以藉此創建程序或「智能合約」(別總說密碼學技術的粉絲都不擅長營銷),然後通過以太坊區塊鏈運行這些東西。根據程序的複雜性,我們需要以 ETH 貨幣的形式為以太坊支付一筆名為「油費」的費用,程序的其餘部分必須參與某種形式的以太坊交易。藉此,ETH 貨幣的價值可以由以太坊區塊鏈自身所運行的程序的效用提供支持。

乍看起來,智能合約是個很有趣的想法。通過創建能自主執行的合約,可以大幅降低法務和人力方面的複雜性與開銷。大部分智能合約的粉絲在介紹這一想法時會不斷提到「代碼即法律」這個短語。當然,編寫能產生永久性經濟後果的程序,這本身就會讓我產生相當嚴重的焦慮感,我也希望大部分高級工程師也能有類似的感覺。考慮到過去多年來在以太坊合約方面已經有大量高姿態並且高價值的舞弊行為,我的擔憂也不是全無道理的。其中的一次舞弊已經嚴重到迫使以太坊進行硬分叉,這也意味著我的顧慮是有理由的。看起來,在足夠多數量的人遭遇金錢損失之前,「代碼既法律」的想法還是能站得住腳的。

結合上述情況,我敢說有很大比例的以太坊合約實際上就是龐氏騙局,至於 ICO 代幣,可以在以太坊的基礎上通過一種名為 ERC20 的協議輕鬆實現自舉。這不禁讓人對「智能合約」的長期可行性產生質疑,畢竟截至目前,這種系統最主要的用途依然是欺詐,以及各種新穎、坦率的詐騙。

結 論

不,你可能並不需要區塊鏈。

今日薦文


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 InfoQ 的精彩文章:

好團隊和好開發是什麼樣的狀態?
左耳朵耗子:從亞馬遜的實踐,談分散式系統的難點

TAG:InfoQ |