Lucas Mearian
雖然區塊鏈有望重塑業務流程,但是它們仍然是一種處于開發中的技術,存在適用的生產系統少等問題,更不用說必須要解決的治理問題和漏洞問題。
雖然區塊鏈在創建新的金融、供應鏈和數字身份系統等方面有著巨大的潛力,但是它們常常被錯誤地視為解決業務問題的靈丹妙藥。
雖然由大型企業和政府部門實施的大量試點項目和概念驗證項目表明,區塊鏈技術確實有望解決業務問題,但是這些項目有時候并不比以其他方式實現的業務用例更成效顯著。例如,像關系型數據庫這樣經過驗證的技術有時可以比基于P2P技術的分布式賬本更為高效地執行任務,因為分布式賬本技術需要復雜的管理和規則。
在整個價值鏈中提供完全可見性的區塊鏈可能會具有許多重大意義,但是當我們權衡建立相關生態系統和構建該區塊鏈的成本時,會發現它們可能在財務上并沒有什么意義。
市場研究機構IDC負責全球區塊鏈戰略的研究主管James Wester稱:“誰將為此買單?如何讓參與者獲得直觀的利益?如果成本是共享的,那么成果是否共享?投資回報是否共享?這些都是非常棘手的問題,并且隨著試點項目轉化為生產項目,問題會變得越來越嚴重。換句話說,試點項目只是證明了這個概念是有效的,但是規模、成本和其他因素的影響正變得越來越大。”
部分問題與區塊鏈項目的出資方式有關。試點項目和概念驗證的資金往往來自創新或研發預算,但是一旦投入生產,成本必須是算到業務部門或公司頭上。當區塊鏈涉及合作伙伴共同致力于一個開放式分類賬時,合作伙伴之間必須就復雜的規則和項目的資金來源達成一致。
Wester說:“如果沒有引人注目的業務用例,這些成本可能就會缺乏吸引力。鑒于區塊鏈的分布式特性,如果有一方決定不參與,那么整個事情就會崩潰。”
以下是企業在區塊鏈上可能遇到的主要問題:
區塊鏈仍不成熟且軟件存在缺陷
雖然第一個分布式區塊鏈在2008年被“中本聰”(化名)概念化,但是該技術的實際應用只有幾年的歷史。
Hyperledger和以太坊這兩個最流行的區塊鏈平臺都缺乏成熟度,這可能會導致在部署中出現無法預料的問題。市場研究機構Forrester Research的首席分析師Martha Bennett指出,首席信息官及其團隊應該考慮軟件中可能存在著嚴重的漏洞。他們甚至可能需要在遇到軟件故障后廢棄區塊鏈項目并再次從頭開始。
例如,以太坊用于執行智能合約的腳本Solidity目前不支持使用小數點,這需要開發人員創建變通的方法或重新開始。
Bennett說:“我已經看到在很多場合都出現過這種情況。當我與從事這些項目的工作人員交談時,他們也提到,隨著從事這項技術的時間越長,他們就越發地意識到這一技術是多么的不成熟。”
目前的變化是,初創企業和領先的企業技術供應商,如IBM和甲骨文,正在穩步地開展研究工作,以提供從特定編程環境的底層復雜性中抽象出相關的工具,以及可提供適當引導的智能合約腳本語言。
Bennett說:“總體而言,值得指出的是,不僅僅是工具正在改進,而且目前還出現了不少服務,企業可以輕松地通過這些服務讓區塊鏈網絡保持正常運行。”
很少有業務領導者能夠充分了解區塊鏈和相關技術
區塊鏈通常是對大量附帶技術、架構、用例甚至哲學內容的一種速記形式。
從本質上說,它由一組協議和區塊鏈組合而成的一個基于P2P的分布式分類賬或數據庫,這意味著一系列加密的數據集。雖然這樣做可能相對簡單些,但是根據技術的實施方式,定義可能會變得很復雜。
Wester經常被要求定義區塊鏈以及與“區塊鏈”有關的“一攬子技術”,包括標記化資產、加密貨幣、加密錢包、分布式賬本、智能合約和自我主權身份。這些相關技術只是可以在區塊鏈網絡上運行的應用程序或體系結構,并不是區塊鏈技術本身的一部分。
Wester說:“我們目前仍處于解釋該技術如何運作的階段。我們也是在沒有真正了解其中差異的情況下對這一技術展開了一些相對明智的討論,然而許多一知半解的人根本不想深入學習這些術語和技術。”
區塊鏈并不總是適合存儲數據
區塊鏈最大的優勢之一是它們在一次寫入的同時附加了許多分散的特性,可在Web上的不同節點上輕松部署,但每條記錄都包含自己的哈希值,使其保持不可變。
通過基于區塊鏈網絡,分布式賬本可以提供更為豐富且更為全面的交易歷史記錄。而用戶通過內部系統或黑名單查看到的交易記錄只是片面的且不完整的。
盡管如此,這并不意味著與交易相關的數據必須是該鏈的一部分。
例如,如果區塊鏈用戶將圖像作為其交易的一部分包含在內,那么數據量將會迅速增長,同時網絡開銷也會增加,因為只能夠添加的數據存儲會隨著時間的推移變得越來越大。Bennett解釋道,由于區塊鏈的分布式特性,所有數據必須復制到鏈中的所有節點上。
對于某些事務性任務,最好使用具有單獨網絡存儲的關系型數據庫,而不是使用區塊鏈,因為不斷增長的區塊鏈最終會失控。Bennett稱:“經驗法則告訴我們,如果關系型數據庫能完成這項工作時,永遠不要選擇基于區塊鏈的架構。”
Bennett表示,雖然并非所有的區塊鏈框架都需要跨節點完全復制數據,但是所有系統都需要經過精心設計,以解決監管要求、機密性需求、可能的延遲問題。 她說:“這決定了鏈條上會發生什么,不會發生什么。”
擴展仍然是一個問題
區塊鏈面臨的一個主要問題是可擴展性,也就是在不消耗越來越多的CPU容量的情況下提升近乎實時地完成交易的能力,例如信用卡清算付款。Visa稱其VisaNet網絡每秒可處理多達6.5萬筆交易。
由于區塊鏈的鏈式特性,插入區塊鏈的每個新記錄都必須被序列化,這意味著它們的更新速率要比傳統數據庫慢,因為后者可以并行更新數據。
雖然區塊鏈聯盟和初創企業都在試用區塊鏈,并且這些區塊鏈每秒可以處理上萬次交易,甚至比VisaNet的網絡容量更大,但是大多數仍然受到擴展問題的阻礙。流行的區塊鏈協議(如比特幣)每秒僅支持3到5次交易,以太坊每秒也僅支持約20次交易。
可擴展性雖然是一個問題,但是它們在框架和治理模式之中所表現出來的嚴重性是不同的。例如,以太坊基金會正致力于使用權益證明共識模型和分片等技術來提高其協議的性能。
Bennett說:“構建網絡的方式也很重要,延遲可能比計算能力更具挑戰性。我看到了一些令人印象非常深刻的測試結果,但是如果這些結果的取得是通過租用龐大的AWS集群實現的,那么它們就毫無意義。”
市場研究機構Gartner的研究副總裁Avivah Litan表示,與技術問題相比,目前的可擴展性更像是一個治理問題。
Litan說:“特許區塊鏈的出現導致零信任模式的概念土崩瓦解。由于見證節點操作和共識過程的證人數量有限,因此你實際上需要相信各方,需要一些法律框架以防止他們出錯。對我來說,這不是真正的可擴展性。”
在區塊鏈背景下,我們經常使用的度量標準,即“每秒交易次數”也相對變得毫無意義。Bennett說:“首先是你如何定義‘交易?其次,如果你無法完成它們,那么對大量交易的處理就變得無關緊要了。”
區塊鏈需要管理
區塊鏈本身并沒有消除中央機構。美國明尼阿波利斯聯邦儲備銀行最近的一份報告顯示,它們只是將一種機構或信托模式替換成了另一種而已。
報告指出,“在促進交換的過程中,對中介或中央銀行等中央機構的信任取而代之的是參與者必須信任區塊鏈系統的設計和技術,以及網絡規則。在制訂、實施和執行規則以及應對意外的系統問題和特殊情況方面,它們并沒有消除對某種形式的管理機構的需求。雖然管理機構的成員可能是分散的,但是解決運營問題仍然需要管理。”
Bennett指出,爭議解決方案或者在出現問題時如何達成協議,仍然是一個關鍵的管理問題。例如,區塊鏈參與者需要就如何遵守智能合約達成一致,以及在有爭議的合約出現時應該做些什么。
Bennett說:“如果發生了忘記向區塊鏈中編碼的情況,那么你需要采用脫鏈的方式對其進行編碼。如果它們以一種非預期的方式開始執行,那么就需要‘切斷開關。”
默認情況下,區塊鏈會共享用戶可能并不想共享的信息
公共區塊鏈作為最流行的形式,是開放且透明的。這意味著鏈中的任何人都可以看到每筆交易。比特幣就是這種情況。
公共區塊鏈還具有新的防篡改能力,因為它們可以擴展到數千個(甚至數百萬個)節點,就像一臺巨大的分布式計算機。節點越多,不良行為者就越難以控制大部分計算能力。
另一方面,在商業環境中,完全透明并不是一件好事。例如,如果區塊鏈技術被用作股票交易平臺的一部分,作為即時結算機制,則鏈中的每個參與者都可以看到每個其他用戶正在做什么。這將導致一個用戶實時狙擊另一個用戶的交易。
又例如,如果制造商使用區塊鏈作為其供應商的開放式分類賬,那么這將導致一家承包商能夠查看鏈中的所有其他分包商。
Bennett說:“我可能不希望客戶看到我的所有分包商都是誰,即使他們可能想要的是鏈上的特定交易流也不行。因此你需要立即考慮如何保持交易數據的機密性。”
有一些方法可以在區塊鏈上創建排他性,這樣只有部分用戶才能看到機密或敏感數據。例如,Linux基金會旗下的開源區塊鏈項目Hyperledger使用“渠道”或子鏈來確保只有一些授權用戶可以看到敏感信息。
最薄弱的環節決定了區塊鏈的安全性
如上所述,區塊鏈有兩種常見類型,即公共區塊鏈和私有區塊鏈。公共區塊鏈允許任何人加入。比特幣就是公共區塊鏈的一個優秀示例,任何想要購買加密貨幣的人都可以加入這個鏈條。它們是開放且透明的,這意味著鏈中的每個人都可以看到所有交易。如果一個或是許多個參與者試圖欺騙系統,那么他們將會被必須要驗證新交易有效性的大多數用戶所發現。
Litan稱:“最重要的是你不用在大型公共區塊鏈網絡中必須信任你的同行了。也就是說,公共區塊鏈解決了‘拜占庭將軍問題[譯者注:指一方向另一方發送消息,另一方沒有收到,或者收到了錯誤信息的情形]。”
與公共區塊鏈相反,私有的或特許區塊鏈是集中管理的,需要獲得許可才能加入。它們適合在單獨的組織機構內部或是在合作的組織機構中使用。只有授權用戶才能加入。
公共和私有區塊鏈本身都是安全的,因為它們是不可變的(即每個記錄或塊都是不可更改的并且與所有其他區塊相互關聯),并且添加新塊需要用戶之間達成共識,共識得有多大規模取決于使用的區塊鏈。對于一些區塊鏈來說,50%即可; 對于其他的區塊鏈來說,這一比例可能還需要更高。盡管區塊鏈的不可變性和共識要求使得它們本身比大多數的其他網絡技術更為安全,但是它們的實際安全性還要取決于體系結構、誰在運行這些節點以及區塊鏈易受攻擊的弱點。
雖然區塊鏈提供的安全性與區塊鏈上記錄的數據的完整性密切相關,但是明尼阿波利斯聯邦儲備銀行的報告指出,在沒有其他技術或系統的情況下,區塊鏈本身并不能防止未經授權的訪問,例如數據泄露。
例如,最近出現的針對以太坊經典(ETC)令牌交換的“51%攻擊”表明,即便是區塊鏈也不是無法欺騙的。51%攻擊是指在加密貨幣挖掘池中獲得對大多數CPU的控制權的不良行為者。此類攻擊通常僅限于節點較少的小型區塊鏈,因為它們更容易由個人獲得基于PoW(工作證明)共識機制的控制權。
數據透明度,即區塊鏈上所有各方查看交易的能力使得不良行為者在企圖添加未經驗證的數據時能夠被快速識別出來。但是數據的透明度也可能成為威脅。美聯儲在報告中指出,系統數據透明就是一種安全風險,因為在金融機構的結算或清算系統中,保密性可以說是安全性的核心部分。
報告稱:“如果既要有透明度,同時又需要保密,那就需要對鏈上的數據進行加密或者進行強身份驗證訪問。機密性和訪問控制可以內嵌在區塊鏈中,不過這并不是區塊鏈原生的屬性,因為區塊鏈本身并不提供身份驗證。”
換句話說,不要想當然地認為某個區塊鏈包含了私密性、透明度或強大的用戶身份驗證等功能,那么其他的區塊鏈就也應該具有這些功能。
Bennett指出,為區塊鏈提供信息的系統,例如智能合約,也可以成為攻擊向量,因為它們沒有去中心化,會出現單點故障。
智能合約既不智能也非合約
智能或自動執行合約是在區塊鏈上構建的業務自動化工具。它們是區塊鏈技術中極具吸引力的功能之一,因為它們能夠消除管理開銷。基本上,一旦達到合約的某些條件,收據信息、資金、財產或貨物將會被自動釋放。
例如,保險公司可以使用智能合約,根據洪水、颶風或干旱等事件中的受損情況發放賠償金。或者,在貨物到達入境口岸時,集裝箱內的物聯網傳感器確認內容未打開且存放溫度適當等,提單將會被自動簽發。
盡管如此,Bennett認為,所謂的智能合約在法律意義上既不智能也不是合約。對程序員來說,由于學習曲線非常陡峭,加之區塊鏈腳本語言尚不成熟,因此可能會出現錯誤或漏洞。
根據Bennett的說法,雖然智能合約與創建自動化流程的規則和軟件一樣好用,但是這已然成為了一個問題。
“我們已經看到出現了一些允許將智能合約的基礎整合起來的工具,”她說。“這只是一個開始,正如一些企業已經發現的那樣,確保每個網絡參與者都運行相同版本的智能合約是一項挑戰。”
其他的挑戰還包括確保智能合約本身不會出現任何安全問題,確保智能合約的任何外部輸入都是有效和正確的。
Bennett指出,應當確保數據輸入的準確并在源頭上進行驗證。她說:“正如我一直說的那樣,僅憑它們在區塊鏈上并不意味著它們是真實的。智能合約跟那些為了讓團隊能夠共同實現流程自動化而制訂的規則是一樣的,它們的好壞取決于編程的質量。”
區塊鏈參與者需要就如何遵守智能合約達成一致,以及在有爭議的合約出現時應該做些什么。創建一個新的業務流程需要不同用戶之間就相關條件達成一致。如果參與各方無法對運營條件達成一致,那么區塊鏈項目就會被擱置。因此區塊鏈既與IT有關,也與合同協議有關。
“最近有人對我說,區塊鏈是80%的業務加20%的技術,”Bennett說。
此外,雖然區塊鏈可能分散在數十個或數千個節點上,但是智能合約卻并非如此。這意味著區塊鏈節點無法了解智能合約的工作方式。換句話說,作為區塊鏈網絡一部分的企業聯盟必須依靠一個實體來獲取智能合約中的信息。
區塊鏈網絡使用被稱之為“oracle”(預言機)的集中式軟件代理來查找和驗證已發生的真實事件,然后再觸發智能合約,根據預先定義的條件進行執行。例如,從加利福尼亞運往丹麥的藥品的溫度可以通過運輸容器中的物聯網傳感器進行監測。傳感器信息由oracle軟件收集,然后發送給智能合約,如果在整個旅程中滿足溫度范圍,則可通過區塊鏈觸發事件,例如簽發提單或支付運費。
如果你的企業是供應鏈等區塊鏈聯盟的一部分,那么你是無法知道什么東西正在智能合約中的運行,并且沒有可證實性。從本質上講,你必須相信企業運行的服務器,因為oracle和智能合約會將反饋給區塊鏈的信息駐留在服務器上。
Gartner的Litan稱:“你必須找到一個源、一個表單、一個oracle來獲取這些數據。對于數據的驗證還沒有一個標準的流程。這將有可能會成為一個嚴重的問題。”
Litan指出,“我曾經與聯盟中的成員企業探討過關于‘你們是如何知道智能合約正在做什么的?這一問題。他們給出的答案是,他們根本就不知道。如果這些智能合約關系到企業的存亡,你難道就不想知道它們正在做什么嗎?”
本文作者Lucas Mearian為資深記者,長期關注包括區塊鏈在內的金融服務IT、醫療保健IT以及包括移動管理、安全、硬件和應用程序等在內的企業移動問題。
原文網址
https://www.computerworld.com/article/3236480/top-8-problems-with-blockchain.html?nsdr=true