要說近兩年最被炒作和吹捧的技術,區塊鏈肯定是首當其沖的,區塊鏈的運行邏輯與限制,對于大眾來說并不是很好理解,同時也導致了許多所謂的媒體、專家等都對區塊鏈的特性產生了誤解,如果讓這些人給你講區塊鏈,那么你會覺得區塊鏈真是靈丹妙藥,什么病都能治,似乎任何問題只要套上去中心化、區塊鏈就能解決,就比如,最近在某衛視上面,一位所謂的專家在講解區塊鏈的時候,說“區塊鏈源于比特幣,卻高于比特幣”,我覺得這簡直在放屁。
不好意思,說遠了,今天筆者說的重點是關于比特幣應用落地的六大挑戰。
挑戰一:更新不易
眾所周知,所有的公鏈都是開源項目,如果想要更新,是非常不容易的,一般人想要成為節點,必須下載其開源軟件才能參與網路并共同維護賬本,換句話說,如果今天有工程師優化了共識算法,推出新版本的軟件,也必須讓所有節點都下載,才會更新成功。
但問題是,共識算法的更新,往往會牽涉礦工節點的利益。舉個例子,目前業界的普遍看法都是PoW機制雖然安全,但太沒有效率,新一代的區塊鏈往往采用PoS或是DPoS,于是原本用PoW的區塊鏈,也想改成PoS或DPoS。
但是如果撤銷PoW機制,那么原本礦工花大把鈔票購置的的礦機就瞬間變成了廢鐵!礦工當然不干,這正是目前以太坊所面臨的問題,在可能沖擊礦工利益的狀況下,以太坊的工程師只能逐漸修改共識機制。
這就是區塊鏈奇耙的地方,因為它是分布式的系統,即便工程師想更新軟體,也必須要網路的每個節點都買單才行,這也加深了區塊鏈技術更新的難度。
挑戰二:效能與可擴展性
區塊鏈的應用,也就是DAPP,必須運行在支持智能合約的底層鏈上,我們可以把底層鏈想像成類似Android或iOS的作業系統,如果作業系統有問題,運行在其上應用程序當然也會有問題,目前底層鏈的最大問題,就是效能跟可擴展性不足,拿以太坊為例,以太坊的TPS(每秒能處理信息交換量)大約是15 -30的水平,做個對比,VISA的TPS平均是2000-4000,其最高水平可達到25000 ,兩者根本不在同一個水平。
為什么區塊鏈跟傳統中心化系統(如VISA)的差距會這么大?主要原因在于區塊鏈是分布式帳本的技術,不管是什么DAPP,其運算結果都必須同步在每個節點上才能算達成共識,這就好比一群人做決定,必須經過討論才能達成共識。
所有區塊鏈系統都無可避免的會遇到三個難題—效能、安全性、去中心化,而這三者不可能完美兼顧,目前主流公鏈如比特幣跟以太坊,都是往安全性與去中心化靠攏,而犧牲了效能。但只要效能問題一天不解決,DAPP就無法落地成為大規模應用。
挑戰三:不能保證上鏈資訊的正確性
區塊鏈雖然可以在一定程度上確保賬本不被篡改,但是卻不能保障資訊寫入區塊鏈前的正確性,就比如,一個灑農藥的果農,仍然可以在農產品溯源的區塊鏈寫上自己的水果是有機的。
同樣的問題,也可能發生在智能合約的觸發條件上,比如,假設有個DAPP是世界杯博弈的應用,今天有個賭局是賭德國足球隊是否會贏球,用戶用以太幣跟莊家對賭,假設德國隊真的踢贏了,由于這個訊息獨立于區塊鏈之外,智能合約必須依賴外部輸入德國隊贏球這個訊息才會觸發打幣的條件,這時候會面臨兩個問題:
· 誰來輸入「德國隊贏球」這個訊息
· 誰來確保「德國隊贏球」這個訊息是正確的
通常這類的問題,會由投票的方式決定,也就是說只要過半數用戶認可「德國隊贏球」這個資訊,它就自動會成為觸發智能合約的條件。
所以看出問題了嗎?
智能合約的應用范圍是有限的,智能合約并不能取代所有的傳統合約。
挑戰四:責任歸屬問題
區塊鏈的去中心化特性,讓出事后的責任歸屬變得相當困難。比如,假設某銀行被黑客入侵,受害者可以找銀行索賠,但如果區塊鏈所受的攻擊達到51%,用戶必須自己承受所有的損失,對于已經習慣中心化系統的人來說,這樣的特性是很難接受的。
挑戰五:需要審核智能合約的代碼
DAPP的智能合約代碼會寫在區塊鏈上,這意味著代碼是開源的,每個人都可以看到,但一般人不懂代碼,如果真的要確保代碼沒有任何問題,就必須要找一個公正的第三方來審核代碼的安全性......
但是問題來了,區塊鏈本身不是就是要去信任,去中心化嗎?這時候怎么又要找第三方了?
好,別的不說,我們退一萬步講,當我們在使用區塊鏈系統的時候,本身都必須建立在對整條鏈的信任上,我們必須信任比特幣跟以太坊的代碼沒有任何問題,像比特幣或以太坊這種大型開源項目,自然會有很多工程師去審核代碼,算是比較安全的,但對于各種智能合約的應用來說,就不是這么一回事了。
所以現在才會出現各種智能合約的審查公司,不過這么一來,就只是把信任轉嫁給這些審查公司而已,從這個角度來看,區塊鏈永遠不可能做到真正意義上的去信任。
挑戰六:用戶可能根本不在乎你到底是不是「去中心化」
區塊鏈的本質—去中心化、透明、不可篡改,這些都很好,但普通用戶真的在乎嗎?
舉個例子,比如有兩個搜索引擎,一個是不會追蹤你隱私的搜尋引擎,另一個是沒有廣告的搜索引擎,這兩個都很棒,但是,對于用戶而言他們可能不在乎這些。
因為比起隱私或廣告干擾,用戶更在乎的是你能不能解決他的問題,搜尋引擎如果搜尋不到最多、最精準的資料,不能滿足用戶的需求,那么管你是去中心化還是什么,他都不會使用。
所以筆者認為,并非所有的軟件都適合用區塊鏈去做去中心化的版本,如果DAPP不能比中心化應用更加滿足用戶的核心需求,光在透明、去中心化、不可篡改這幾個特點上做文章,是沒有任何意義的。
最后,筆者想要說的是,區塊鏈真的不容易懂,正因為這樣,才會有讓很多人都誤解了區塊鏈的特性,進而對其應用產生錯誤的認識,上面的專家就是一個例子。