《華為:2018華為區塊鏈白皮書(53頁).pdf》由會員分享,可在線閱讀,更多相關《華為:2018華為區塊鏈白皮書(53頁).pdf(53頁珍藏版)》請在三個皮匠報告上搜索。
1、 華為區塊鏈白皮書 版權所有 華為技術有限公司 i 華為區塊鏈白皮書 前 言 版權所有 華為技術有限公司 ii 前前 言言 區塊鏈成為近兩年熱點話題,因其通過分布式數據存儲、點對點傳輸、共識機制、加密算法等技術的集成,可有效解決傳統交易模式中數據在系統內流轉過程中的造假行為,從而構建可信交易環境,打造可信社會。近年來各國政府機構,國際貨幣基金組織以及標準、開源組織和產業聯盟等在紛紛投入區塊鏈產業的拉通和應用。隨著區塊鏈的產業價值的逐漸確定,區塊鏈迅速地成為一場全球參與競逐的“軍備”大賽,中國也開始從國家層面設計區塊鏈的發展道路(發改委委托信通院組織國內主要區塊鏈公司進行區塊鏈的頂層設計的研討,
2、工信部的信軟司也在積極確定區塊鏈的頂層設計機構) 。2018 年,區塊鏈及相關行業加速發展,中國將領跑全球進入“區塊鏈可信數字經濟社會” ,我們正面臨區塊鏈重大的產業機遇。 區塊鏈的應用已由開始的金融延伸到物聯網、智能制造、供應鏈管理、數據存證及交易等多個領域,將為云計算、大數據、承載網絡等新一代信息技術的發展帶來新的機遇,其構建的可信機制,將改變當前社會商業模式,從而引發新一輪的技術創新和產業變革。 華為區塊鏈白皮書 目 錄 版權所有 華為技術有限公司 iii 目目 錄錄 前前 言言. ii 1 區塊鏈的興起區塊鏈的興起 . 1 1.1 區塊鏈的起源. 1 1.2 區塊鏈的發展路徑 . 2
3、1.3 當前區塊鏈認識上的兩大誤區 . 3 2 區塊鏈核心技術及原理機制區塊鏈核心技術及原理機制 . 5 2.1 區塊鏈的概念和特征 . 5 2.2 區塊鏈的核心技術 . 6 2.2.1 分布式賬本. 6 2.2.2 共識機制 . 7 2.2.3 智能合約 . 8 2.2.4 密碼學 . 11 2.3 華為在區塊鏈發展中進行的技術創新 . 12 2.3.1 共識算法創新 . 12 2.3.2 安全隱私保護 . 13 2.3.3 離鏈通道 . 14 3 區塊鏈國內外產業發展現狀區塊鏈國內外產業發展現狀 . 16 3.1 區塊鏈相關產業政策現狀 . 16 3.2 區塊鏈在開源領域的發展現狀 . 1
4、7 3.3 區塊鏈在標準領域的發展現狀 . 18 3.4 區塊鏈產業聯盟發展現狀 . 19 4 區塊鏈的典型應用場景區塊鏈的典型應用場景 . 22 4.1 數據交易:實現數據交易的過程透明、可審計,重塑社會公信力 . 23 4.2 身份認證:驗證身份的合法性,加速數字化社會發展 . 24 4.3 新能源:打造清潔能源交易信任基石 . 25 4.4 車聯網:用區塊鏈實現信息準確共享,構建新經濟模式. 27 4.5 供應鏈溯源:樹立公信力,構建真實交易. 28 4.6 運營商云網協同:解決運營商網絡碎片化,構建新商業模式 . 29 4.7 供應鏈金融:有效減少金融風險,拓展金融業務發展 . 30
5、華為區塊鏈白皮書 目 錄 版權所有 華為技術有限公司 iv 5 華為區塊鏈的方案及特點華為區塊鏈的方案及特點 . 33 5.1 華為云區塊鏈服務(BCS:Blockchain service) . 33 5.1.1 區塊鏈服務 BCS 的設計原則和產品定位 . 33 5.1.2 區塊鏈服務 BCS 的總體邏輯架構. 34 5.1.3 區塊鏈服務 BCS 平臺功能特性 . 36 5.1.4 區塊鏈服務 BCS 系統安全保障 . 41 5.1.5 區塊鏈服務 BCS 的技術特色和優勢 . 43 5.2 華為對區塊鏈的整體構想 . 46 6 總結:華為對區塊鏈未來發展判斷總結:華為對區塊鏈未來發展判
6、斷. 48 華為區塊鏈白皮書 1 區塊鏈的興起 版權所有 華為技術有限公司 1 1 區塊鏈的興起區塊鏈的興起 1.1 區塊鏈的起源 探尋區塊鏈的機制和發展,比特幣永遠是無法繞過的話題。區塊鏈作為一種獨立的技術出現,最早可以追溯到比特幣系統中。2008 年一個筆名為中本聰的人(或團隊)發布了一篇名為比特幣 一種點對點的電子現金系統的文章,又在 2009 年公開了其早期的實現代碼,比特幣就此誕生。 拋去比特幣價格的跌宕起伏,僅探討比特幣系統本身的設計,可以把它視作一次電子貨幣在概念和技術上的實驗:在傳統的電子支付系統(如銀行轉賬或第三方支付等)中,由銀行或支付服務提供方來對驗證并記錄系統中發生的交
7、易,賬本在中心機構手中;而比特幣在人類歷史上第一次實現了去中心化的電子貨幣發行和交易,即不需要一個中心化的第三方認證機構或賬務管理系統對交易進行驗證和記錄,全網共同維護更新一份相同的賬本。比特幣的出現使得電子貨幣系統出現了由傳統的“中心化賬本+中介”的模式向“公共賬本+共識”的模式轉變的可能性,而這種轉變正是由區塊鏈技術實現的。 比特幣白皮書中并沒有直接提出“區塊鏈” (Blockchain)這一概念,但其解決交易記錄真實有效并不可篡改的方案可以看做區塊鏈系統的雛形:客戶端發起交易后向全網廣播等待確認,系統中的節點將若干待確認的交易和上一個塊的 hash 值打包放進一個塊(Block)中并審查
8、塊內交易的真實性以形成一個備選區塊;隨后試圖找到一個隨機數使得該侯選區塊的hash 值小于某一特定值,一旦找到該數后系統判定該區塊合法,節點向全網進行廣播,其他節點對該區塊進行驗證后公認該區塊合法,此時該區塊就會被添加到鏈上,進而區塊中的所有交易也自然被判定為有效。此后發生的交易則依此法類推鏈在該區塊之后,以此形成一個 華為區塊鏈白皮書 1 區塊鏈的興起 版權所有 華為技術有限公司 2 歷史交易記錄不斷堆疊的賬本鏈條。任何對鏈條上某一塊的改動將會導致該塊 hash 值的變化,進而導致后續塊的 hash 值變化與原有賬本對不上,因此篡改難度極高。 比特幣以上述方案為基礎,由數千個分布式節點 7x
9、24 小時不間斷運行了近 10 年之久,期間未出現過重大的漏洞。人們逐漸意識到承載比特幣運行背后的區塊鏈技術可能極具應用前景,它不該也不會僅限于在電子貨幣轉賬中使用。 1.2 區塊鏈的發展路徑 電子現金交易的本質是貨幣(或類貨幣)資產價值的轉移。實際上區塊鏈所帶來的分布式記賬理念不僅僅能夠為電子現金交易服務,它可以被用于處理更廣義上的價值轉移:各類有形資產和無形資產的所有權歸屬和流通理論上都可以運用區塊鏈技術進行記錄和追蹤,并完成點對點的價值交換。這對于社會商業的信息和資產管理而言將會是一次意義重大的革新。 然而由于比特幣系統設計的非圖靈完備性,其系統無法處理更為復雜的業務邏輯。受比特幣啟發,
10、于 2015 年左右開發上線的公共區塊鏈平臺以太坊則將區塊鏈的應用更進一步,允許開發者在平臺上部署智能合約,以處理更為復雜的業務邏輯。智能合約使得通過代碼設定好的業務邏輯能夠自動按照觸發條件執行而無需人為干預,并且合約部署在區塊鏈上公開透明。因此區塊鏈技術可以被廣泛的運用在涉及合同處理、數據交換、所有權轉移的金融、物聯網、物流和共享經濟等場景中。 如果從比特幣誕生開始計算,區塊鏈技術已有近 10 年的發展歷史。目前區塊鏈的發展方向主要可以分為公有鏈和聯盟鏈:前者以比特幣和以太坊為代表,任何人都可以隨時加入其中,鏈上記錄對所有人公開;后者則由指定區塊鏈的參與成員組成聯盟,成員之間的業務往來信息被
11、記錄在區塊鏈中,限定了使用規模和權限,典型代表如 Linux 基金會旗下的開源區塊鏈項目 Hyperledger 等。 華為區塊鏈白皮書 1 區塊鏈的興起 版權所有 華為技術有限公司 3 表1-1 區塊鏈的發展階段表 區塊鏈發展階段 典型事件 作用 2009-2014(區塊鏈 1.0) 比特幣系統公布。 區塊鏈技術起源。 2014-2017(區塊鏈 2.0) 以太坊,超級賬本等區塊鏈開源項目發布。 區塊鏈協議層和框架層優化,智能合約支持,公有鏈和聯盟鏈方向出現。 2017-? 商業應用項目爆發出現,但仍未大規模落地。 區塊鏈在不同行業的應用探索,可能向 3.0 進化。 近年來區塊鏈的概念不斷被
12、炒熱,但技術本身并未大規模落地商用,更多的是一些金融、物流、公益方面的試點。區塊鏈目前在性能、權限和隱私保護、鏈間互通等方面仍存在諸多問題,其技術還處于發展階段。相關咨詢和分析報告顯示,區塊鏈大規模商用將在 3-5年之后,因此區塊鏈解決方案仍需要各方進行優化,以滿足商用需求。 1.3 當前區塊鏈認識上的兩大誤區 業界對區塊鏈的聲音很多,而在這么多針對區塊鏈的聲音中,一類聲音是極度夸大區塊鏈的功能,而另一類極端的聲音是極力抨擊區塊鏈存在的缺陷。業界針對新技術需要更客觀的評價。 誤區一誤區一 將比特幣等同于區塊鏈。首先當前區塊鏈講的很熱鬧,幾乎人人都在講區塊鏈,而更多的是談論比特幣等虛擬貨幣帶來的
13、經濟價值,將比特幣等虛擬加密貨幣作為區塊鏈的概念使用,實際上虛擬加密貨幣僅是區塊鏈中的一種應用形式。目前全球有一千多種虛擬貨幣,并且數量還在不斷增加。虛擬貨幣(如:比特幣)更多的側重將加密貨幣作為投資的一種手 華為區塊鏈白皮書 1 區塊鏈的興起 版權所有 華為技術有限公司 4 段,而對于企業或政府更多關注的區塊鏈則從技術層面探討如何借助區塊鏈可靠性機制,解決多企業交易安全性問題從而帶來商業價值,并試圖在更多的場景下釋放智能合約和分布式賬本帶來的科技潛力。 誤區二誤區二 區塊鏈是一種萬能的技術,可替代數據庫,替代 Internet。業界一些觀點認為區塊鏈顛覆了數據庫,或采用分布式數據庫取代集中的
14、傳統數據庫(Oracle、DB2 等)等說法,其實這些只是神化了區塊鏈,區塊鏈主要技術由密碼學和共識算法所組成,其中大部分都是已有技術整合而來,并未開辟新的技術體系。區塊鏈技術是對現有技術的一種補充,其在現有的加密技術上,利用分布式賬本和共識機制形成在數據流轉過程中防篡改的一種機制保障。區塊鏈技術中采用的分布式賬本,對于替代數據庫來說是不存在的,其不會作為獨立數據庫使用,因此獨立的數據存儲仍然存在,并未被替代。區塊鏈無法離開 Internet、數據庫等技術,反而脫離這些技術將無法形成技術體系,因此,區塊鏈是 “X+區塊鏈”的技術形態。 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有
15、華為技術有限公司 5 2 區塊鏈核心技術及原理機制區塊鏈核心技術及原理機制 2.1 區塊鏈的概念和特征 區塊鏈(Blockchain)是一系列現有成熟技術的有機組合,它對賬本進行分布式的有效記錄,并且提供完善的腳本以支持不同的業務邏輯。在典型的區塊鏈系統中,數據以區塊(block)為單位產生和存儲,并按照時間順序連成鏈式(chain)數據結構。所有節點共同參與區塊鏈系統的數據驗證、存儲和維護。新區塊的創建通常需得到全網多數(數量取決于不同的共識機制)節點的確認,并向各節點廣播實現全網同步,之后不能更改或刪除。 從外部來看,區塊鏈系統應具備如下特征: 多方寫入,共同維護多方寫入,共同維護 此處的
16、多方僅指記賬參與方,不包含使用區塊鏈的客戶端。區塊鏈的記賬參與方應當由多個利益不完全一致的實體組成,并且在不同的記賬周期內,由不同的參與方主導發起記賬(輪換方式取決于不同的共識機制),而其他的參與方將對主導方發起的記賬信息進行共同驗證。 公開賬本公開賬本 區塊鏈系統記錄的賬本應處于所有參與者被允許訪問的狀態,為了驗證區塊鏈記錄的信息的有效性,記賬參與者必須有能力訪問信息內容和賬本歷史。但是公開賬本指的是可訪問性的公開,并不代表信息本身的公開,因此,業界期望將很多隱私保護方面的技術,如零知識證明、同態加密、門限加密等,應用到區塊鏈領域,以解決通過密文操作就能驗證信息有效性的問題。 華為區塊鏈白皮
17、書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 6 去中心化去中心化 區塊鏈應當是不依賴于單一信任中心的系統,在處理僅涉及鏈內封閉系統中的數據時,區塊鏈本身能夠創造參與者之間的信任。但是在某些情況下,如身份管理等場景,不可避免的會引入外部數據,并且這些數據需要可信第三方的信任背書,此時對于不同類型的數據,其信任應來源于不同的可信第三方,而不是依賴于單一的信任中心。在這種情況下,區塊鏈本身不創造信任,而是作為信任的載體。 不可篡改不可篡改 作為區塊鏈最為顯著的特征,不可篡改性是區塊鏈系統的必要條件,而不是充分條件,有很多基于硬件的技術同樣可以實現數據一次寫入,多次讀取且無法篡改,典
18、型的例子如一次性刻錄光盤(CD-R)。區塊鏈的不可篡改基于密碼學的散列算法,以及多方共同維護的特性,但同時由于這個特性,區塊鏈的不可篡改并不是嚴格意義上的,稱之為難以篡改更為合適。 2.2 區塊鏈的核心技術 2.2.1 分布式賬本 分布式賬本技術 DLT (Distributed Ledger Technology)本質上是一種可以在多個網絡節點、多個物理地址或者多個組織構成的網絡中進行數據分享、同步和復制的去中心化數據存儲技術。相較于傳統的分布式存儲系統,分布式賬本技術主要具備兩種不同的特征: 傳統分布式存儲系統執行受某一中心節點或權威機構控制的數據管理機制,分布式賬本往往基于一定的共識規則
19、,采用多方決策、共同維護的方式進行數據的存儲、復制等操作。面對互聯網數據的爆炸性增長,當前由單一中心組織構建數據管理系統的方式正受到更多的挑戰,服務方不得不持續追加投資構建大型數據中心,不僅帶來了計算、網絡、存儲等各種龐大資源池效率的問題,不斷推升的系統規模和復雜度也帶來了愈加嚴峻的可靠性問題。然而,分布式賬本技術去中心化的數據維護策略恰恰可以有效減少系統臃腫的負擔。在某些應用場景,甚至可以有效利用互聯網中大量零散節點所沉淀的龐大資源池。 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 7 傳統分布式存儲系統將系統內的數據分解成若干片段,然后在分布式系統中進行存儲,
20、而分布式賬本中任何一方的節點都各自擁有獨立的、完整的一份數據存儲,各節點之間彼此互不干涉、權限等同,通過相互之間的周期性或事件驅動的共識達成數據存儲的最終一致性。經過幾十年的發展,傳統業務體系中的高度中心化數據管理系統在數據可信、網絡安全方面的短板已經日益受到人們的關注。普通用戶無法確定自己的數據是否被服務商竊取或篡改,在受到黑客攻擊或產生安全泄露時更加顯得無能為力,為了應對這些問題,人們不斷增加額外的管理機制或技術,這種情況進一步推高了傳統業務系統的維護成本、降低了商業行為的運行效率。分布式賬本技術可以在根本上大幅改善這一現象,由于各個節點均各自維護了一套完整的數據副本,任意單一節點或少數集
21、群對數據的修改,均無法對全局大多數副本造成影響。換句話說,無論是服務提供商在無授權情況下的蓄意修改,還是網絡黑客的惡意攻擊,均需要同時影響到分布式賬本集群中的大部分節點,才能實現對已有數據的篡改,否則系統中的剩余節點將很快發現并追溯到系統中的惡意行為,這顯然大大提升了業務系統中數據的可信度和安全保證。 這兩種特有的系統特征,使得分布式賬本技術成為一種非常底層的、對現有業務系統具有強大顛覆性的革命性創新。 2.2.2 共識機制 區塊鏈是一個歷史可追溯、不可篡改,解決多方互信問題的分布式(去中心化)系統。分布式系統必然面臨著一致性問題,而解決一致性問題的過程我們稱之為共識。 分布式系統的共識達成需
22、要依賴可靠的共識算法,共識算法通常解決的是分布式系統中由哪個節點發起提案,以及其他節點如何就這個提案達成一致的問題。我們根據傳統分布式系統與區塊鏈系統間的區別,將共識算法分為可信節點間的共識算法與不可信節點間的共識算法。前者已經被深入研究,并且在現在流行的分布式系統中廣泛應用,其中 Paxos 和 Raft及其相應變種算法最為著名。對于后者,雖然也早被研究,但直到近年區塊鏈技術發展如火如荼,相關共識算法才得到大量應用。而根據應用場景的不同,后者又分為以 PoW(Proof of Work)和 PoS(Proof of Stake)等算法為代表的適用于公鏈的共識算法和以PBFT( Practic
23、al Byzantine Fault Tolerance)及其變種算法為代表的適用于聯盟鏈或私有鏈的共識算法。 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 8 工作量證明 POW 算法是比特幣系統采用算法,該算法于 1998 年由 W. Dai 在 B-money的設計中提出。以太坊系統當前同樣采用 PoW 算法進行共識,但由于以太坊系統出塊更快(約 15 秒) ,更容易產生區塊,為了避免大量節點白白陪跑,以太坊提出了叔(Uncle)塊獎勵機制。PoS(Proof of Stake)算法最早由 Sunny King 在 2012 年 8 月發布的 PPC(Pee
24、rToPeerCoin 點點幣)系統中首先實現,而以太坊系統也一直對 PoS 抱有好感,計劃后續以 PoS 代替 PoW 作為其共識機制。PoS 及其變種算法可以解決 PoW 算法一直被詬病的浪費算力問題,但其本身尚未經過足夠驗證。PBFT 算法最早由 Miguel Castro(卡斯特羅)和Barbara Liskov(利斯科夫)在 1999 年的 OSDI99 會議上提出,該算法相較原始拜占庭容錯算法具有更高的運行效率。假設系統中共有 N 個節點,那么 PBFT 算法可以容忍系統中存在F 個惡意節點,并且 3F+1 不大于 N。PBFT 共識算法雖然隨著系統中節點數增多而可以容忍更多的拜占
25、庭節點,但其共識效率卻是以極快的速率下降,這也是我們能看到的應用 PBFT做共識算法的系統中很少有超過 100 個節點的原因。 無論是 PoW 算法還是 PoS 算法,其核心思想都是通過經濟激勵來鼓勵節點對系統的貢獻和付出,通過經濟懲罰來阻止節點作惡。公鏈系統為了鼓勵更多節點參與共識,通常會發放代幣(token)給對系統運行有貢獻的節點。而聯盟鏈或者私鏈與公鏈的不同之處在于,聯盟鏈或者私鏈的參與節點通常希望從鏈上獲得可信數據,這相對于通過記賬來獲取激勵而言有意義得多,所以他們更有義務和責任去維護系統的穩定運行,并且通常參與節點數較少,PBFT 及其變種算法恰好適用于聯盟鏈或者私鏈的應用場景。
26、2.2.3 智能合約 什么是智能合約? 智能合約(Smart contract )是一種旨在以信息化方式傳播、驗證或執行合同的計算機協議。智能合約允許在沒有第三方的情況下進行可信交易。這些交易可追蹤且不可逆轉。其目的是提供優于傳統合同方法的安全,并減少與合同相關的其他交易成本。 智能合約概念可追溯到 20 世紀 90 年代,由計算機科學家、法學家及密碼學家尼克薩博(Nick Szabo)首次提出。他對智能合約的定義如下: “一個智能合約是一套以數字形式定義的承諾,包括合約參與方可以在上面執行這些承諾的協議。 ” 尼克薩博等研究學者,希望能夠借助密碼學及其他數字安全機制,將傳統的合約條款的制定與
27、履 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 9 行方式,置于計算機技術之下,降低相關成本。然而,由于當時許多技術尚未成熟,缺乏能夠支持可編程合約的數字化系統和技術,尼克 薩博關于智能合約的工作理論遲遲沒有實現。 隨著區塊鏈技術的出現與成熟,智能合約作為區塊鏈及未來互聯網合約的重要研究方向,得以快速發展?;趨^塊鏈的智能合約包括事件處理和保存的機制,以及一個完備的狀態機,用于接受和處理各種智能合約,數據的狀態處理在合約中完成。事件信息傳入智能合約后,觸發智能合約進行狀態機判斷。如果自動狀態機中某個或某幾個動作的觸發條件滿足,則由狀態機根據預設信息選擇合約動作的
28、自動執行。因此,智能合約作為一種計算機技術,不僅能夠有效地對信息進行處理,而且能夠保證合約雙方在不必引入第三方權威機構的條件下,強制履行合約,避免了違約行為的出現。 智能合約的優點與風險 隨著智能合約在區塊鏈技術中的廣泛應用,其優點已被越來越多的研究人員與技術人員認可??傮w來講,智能合約具備以下優點: a. 合約制定的高時效性:智能合約在制定中,不必依賴第三方權威機構或中心化代理機構的參與,只需合約各方通過計算機技術手段,將共同約定條款轉化為自動化、數字化的約定協議,大大減少了協議制定的中間環節,提高了協議制定的響應效率。 b. 合約維護的低成本性:智能合約在實現過程中以計算機程序為載體,一旦
29、部署成功后,由計算機系統按照合約中的約定監督、執行,一旦發生毀約可按照事前約定由程序強制執行。因此,極大降低了人為監督與執行的成本。 c. 合約執行的高準確性:智能合約的執行過程中,由于減少了人為參與的行為,因此利益各方均無法干預合約的具體執行,計算機系統能夠確保合約正確執行,有效提高了合約的執行準確性。 雖然智能合約較傳統合約具有明顯的優點,但對智能合約的深入研究與應用仍在不斷探索中,我們不能忽略這種新興技術潛在的風險。 2017 年,多重簽名的以太坊錢包 Parity 宣布了一個重大漏洞,這個關鍵漏洞會使多重簽名的智能合約無法使用,該漏洞導致了價值超過 1.5 億美元的以太坊資金被凍結。
30、華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 10 無獨有偶,2018 年 2 月,新加坡國立大學、新加坡耶魯大學學院和倫敦大學學院的一組研究人員發布了一份報告聲稱,他們運用分析工具 Maian,分析基于以太坊的近 100 萬個智能合約,發現有 34,200 個合約含有安全漏洞,予黑客可趁之機,可竊取以太幣或是凍結資產、刪除合約。 安全風險事件的發生值得我們反思,但不管怎樣,業內人士普遍認為,區塊鏈技術及智能合約將成為未來 IT 技術發展的一個重要方向,目前的風險是新技術成熟所必然經歷的過程。 智能合約的應用 目前,智能合約作為區塊鏈的一項核心技術,已經在以太坊、
31、Hyperledger Fabric 等影響力較強的區塊鏈項目中,得到廣泛應用。 a. 以太坊的智能合約應用:以太坊的一個智能合約就是一段可以被以太坊虛擬機執行的代碼。以太坊支持強大的圖靈完備的腳本語言,允許開發者在上面開發任意應用,這些合約通??梢杂筛呒壵Z言(例如:Solidity、Serpent、LLL 等)編寫,并通過編譯器轉換成字節碼(byte code) 存儲在區塊鏈上。智能合約一旦部署就無法被修改。用戶通過合約完成賬戶的交易,實現對賬戶的貨幣及狀態進行管理與操作。 b. Hyperledger Fabric 的智能合約應用:在 Hyperledger Fabric 項目中,智能合約
32、的概念及應用被更廣泛的延伸。作為無狀態的、事件驅動的、支持圖靈完備的自動執行代碼,智能合約在 Fabric 中部署在區塊鏈網絡中,直接與賬本進行交互,處于十分核心的位置。和以太坊相比,Fabric 智能合約和底層賬本是分開的,升級智能合約時并不需要遷移賬本數據到新智能合約當中,真正實現了邏輯與數據的分離。Fabric的智能合約稱為鏈碼(chaincode),分為系統鏈碼和用戶鏈碼。系統鏈碼用來實現系統層面的功能,負責 Fabric 節點自身的處理邏輯,包括系統配置、背書、校驗等工作。用戶鏈碼實現用戶的應用功能,提供了基于區塊鏈分布式賬本的狀態處理邏輯,由應用開發者編寫,對上層業務進行支持。用戶
33、鏈碼運行在隔離的鏈碼容器中。 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 11 2.2.4 密碼學 信息安全及密碼學技術,是整個信息技術的基石。在區塊鏈中,也大量使用了現代信息安全和密碼學的技術成果,主要包括:哈希算法、對稱加密、非對稱加密、數字簽名、數字證書、同態加密、零知識證明等。本章從安全的完整性、機密性、身份認證等維度,簡要介紹區塊鏈中安全及密碼學技術的應用。 完整性(防篡改)完整性(防篡改) 區塊鏈采用密碼學哈希算法技術,保證區塊鏈賬本的完整性不被破壞。哈希(散列)算法能將二進制數據映射為一串較短的字符串,并具有輸入敏感特性,一旦輸入的二進制數據,發生
34、微小的篡改,經過哈希運算得到的字符串,將發生非常大的變化。此外,優秀哈希算法還具有沖突避免特性,輸入不同的二進制數據,得到的哈希結果字符串是不同的。 區塊鏈利用哈希算法的輸入敏感和沖突避免特性,在每個區塊內,生成包含上一個區塊的哈希值,并在區塊內生成驗證過的交易的 Merkle 根哈希值。一旦整個區塊鏈某些區塊被篡改,都無法得到與篡改前相同的哈希值,從而保證區塊鏈被篡改時,能夠被迅速識別,最終保證區塊鏈的完整性(防篡改) 。 機密性機密性 加解密技術從技術構成上,分為兩大類:一類是對稱加密,一類是非對稱加密。對稱加密的加解密密鑰相同;而非對稱加密的加解密密鑰不同,一個被稱為公鑰,一個被稱為私鑰
35、。公鑰加密的數據,只有對應的私鑰可以解開,反之亦然。 區塊鏈尤其是聯盟鏈,在全網傳輸過程中,都需要 TLS(Transport Layer Security)加密通信技術,來保證傳輸數據的安全性。而 TLS 加密通信,正是非對稱加密技術和對稱加密技術的完美組合:通信雙方利用非對稱加密技術,協商生成對稱密鑰,再由生成的對稱密鑰作為工作密鑰,完成數據的加解密,從而同時利用了非對稱加密不需要雙方共享密鑰、對稱加密運算速度快的優點。 身份認證身份認證 單純的 TLS 加密通信,僅能保證數據傳輸過程的機密性和完整性,但無法保障通信對端可信(中間人攻擊)。因此,需要引入數字證書機制,驗證通信對端身份,進而
36、保 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 12 證對端公鑰的正確性。數字證書一般由權威機構進行簽發。通信的一側持有權威機構根CA(Certification Authority)的公鑰,用來驗證通信對端證書是否被自己信任(即證書是否由自己頒發),并根據證書內容確認對端身份。在確認對端身份的情況下,取出對端證書中的公鑰,完成非對稱加密過程。 此外,區塊鏈中還應用了現代密碼學最新的研究成果,包括同態加密、零知識證明等,在區塊鏈分布式賬本公開的情況下,最大限度地提供隱私保護能力。這方面的技術,還在不斷發展完善中。 區塊鏈安全是一個系統工程,系統配置及用戶權限、組
37、件安全性、用戶界面、網絡入侵檢測和防攻擊能力等,都會影響最終區塊鏈系統的安全性和可靠性。區塊鏈系統在實際構建過程中,應當在滿足用戶要求的前提下,在安全性、系統構建成本以及易用性等維度,取得一個合理的平衡。 2.3 華為在區塊鏈發展中進行的技術創新 2.3.1 共識算法創新 共識效率是整個區塊鏈對外提供服務的核心能力,實用拜占庭容錯算法 PBFT 解決了原始拜占庭容錯算法效率不高的問題,將算法復雜度由指數級降低到多項式級,使得拜占庭容錯算法在實際系統應用中變得可行,PBFT 完成 3f+1 個節點集群內 f 個節點拜占庭容錯,即任一節點收到 2f+1 條消息后可以得到正確的結論(至多有 f 個節
38、點發送惡意錯誤信息) ,是聯盟鏈中常用共識算法。 盡管得到廣泛應用,PBFT 仍然存在一些缺限。PBFT 算法為了克服 Primary Node 采用了復雜的全量點對點通信來監聽各類異常行為,通信復雜度達到 O(n2)的同時額外增加了大量簽名校驗,由此帶來繁重的系統開銷,降低了共識效率、節點擴展性。此外,一旦發生主節點選舉,在選主期間 PBFT 將無法正常共識,若新當選的 Primary 節點作弊或者故障,可能會造成連續選主,在此期間,整個區塊鏈系統對外服務能力將會大幅降低甚至無法提供對外服務。 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 13 華為區塊鏈采用一
39、種高效、支持拜占庭容錯、具有自主知識產權的共識算法,有效改進了 PBFT 算法的上述缺陷。通過改進共識流程,保障了節點故障和切主期間區塊鏈系統對外服務的穩定性。同時通過減少不必要的簽名驗證、簡化共識流程,將通信復雜度從 O(n2)減少到 O(n) ,有效提升了共識效率和擴展性。 2.3.2 安全隱私保護 華為區塊鏈安全隱私從以下方面提供更強保障: 國密算法國密算法 國密算法是國家密碼局制定標準的一系列算法,隨著金融安全上升到國家安全高度,國密算法的應用也越來越廣泛,2017 年 11 月 SM2/9 正式進入 ISO/IEC 標準。華為區塊鏈支持國密 SM2/3/4,提供多種加密算法給用戶選擇
40、,同時滿足合規要求。 同態加密用戶交易隱私保護同態加密用戶交易隱私保護 區塊鏈可以防篡改,去中心化,在非信任的網絡運行,但是用戶的賬本對參與組織是透明的,任何組織都可以訪問到相同的數據,如果將用戶的隱私的數據放到鏈上將會放大用戶隱私泄露的風險。當前在比特幣等公有鏈系統中,所有的交易信息都是公開的(包括交易金額) 。但是,在金融業的交易中,金融交易信息是敏感數據,非業務相關方不能查看,但同時要滿足監管機構的監管要求,而大部分的區塊鏈并沒有滿足隱私性要求。 華為區塊鏈交易解決方案中: (1)提供同態加密庫,對用戶的交易數據用其公鑰進行加密保護,交易的時候都是密文運算,最終賬本中加密保存,即使節點被
41、攻破,獲取到賬本記錄也無法解密; (2)提供范圍證明校驗,背書節點能夠對密文進行背書,無需解密就能校驗交易的正確性,從而識別出惡意交易風險,保證了智能合約的正確執行。華為開發出適用于 Hyperledger Fabric 平臺的保密交易系統,通過改良的算法,比起使用傳統的加法同態加密與基于環簽名的范圍零知識證明,性能大幅提升。 零知識證明零知識證明 零知識證明能夠在不向驗證者提供任何有用的信息情況下,使驗證者來相信該結論是正確的,證明過程中不用向驗證者泄露被證明的消息。華為區塊鏈將會提供零知識證明能力,對用戶的隱私數據進行保護,減少用戶隱私泄露風險。 華為區塊鏈白皮書 2 區塊鏈核心技術及原理
42、機制 版權所有 華為技術有限公司 14 智能合約安全智能合約安全 當智能合約運行錯誤或者編程錯誤時,就會導致“DAO”的事件,從而讓用戶遭受巨大損失,華為區塊鏈可提供智能合約檢測工具,防止惡意的企圖通過智能合約漏洞入侵用戶數據的行為,同時將提供安全容器,持續監控容器的運行狀態,若發現漏洞,進行有效的隔離,嚴格對容器的訪問權限進行控制,從而保證合約安全運行。 共識安全共識安全 華為區塊鏈將提供基于硬件的共識算法,使用形式化驗證保證共識機制的安全,同時可以提高共識效率,增加網絡的穩定性。 賬本安全賬本安全 每個節點的本地賬本可能會被篡改,如果出現大部分節點的本地賬本都被修改,就可能造成 51%的攻
43、擊。 華為區塊鏈將提供基于硬件的保護機制,對本地賬本的機密性和完整性保護,防止賬本被篡改。 通信端到端安全通信端到端安全 通用 TLS 通信只能保護應用與應用之間的安全,如果啟動 TLS 之前,就已經被攻擊,TLS 的保護就失效。華為區塊鏈將提供基于硬件的解決方案,端到端的保證區塊鏈節點間的通信安全。 2.3.3 離鏈通道 單位時間內交易處理能力仍是區塊鏈大規模應用的主要瓶頸之一。受限于區塊鏈的分布式架構特性,節點間不均等的計算能力,不同的網絡狀況等因素,全網共識往往無法快速達成,從而導致交易速度難以提升?,F階段比特幣網絡每秒僅能處理約 7 筆交易,支持智能合約的以太坊交易處理速度約為每秒 1
44、5 筆。相比之下,中心化服務器支持的 VISA 系統峰值吞吐率可達 56,000 筆,支付寶在 2017 年雙十一期間則達每秒 256,000 筆峰值吞吐率。交易擁堵,交易費攀升已極大限制區塊鏈的規模性應用。 區塊鏈社區對交易擴容方案的爭論與嘗試由來已久,現有的主要方案包括區塊擴容,共識算法改良,安全硬件(TEE)輔助,隔離見證,閃電網絡,交易/狀態分片,多層子鏈等。但 華為區塊鏈白皮書 2 區塊鏈核心技術及原理機制 版權所有 華為技術有限公司 15 無論哪種方案都難以同時兼顧去中心化, 可擴展性,安全性三個關鍵需求。值得注意的是區塊鏈具有應用強相關性,在特定應用場景仍可找到各要素間的平衡點以
45、滿足總體業務需求。 在大規模 DAPP(Decentralized APP)應用中,往往小額支付占據了大部分交易請求,而小額交易并無必要在主鏈及時獲得確認,例如共享經濟中廣泛存在的小額支付場景。如果將海量小額交易在鏈下通道處理,交易過程中不與主鏈交互,而在交易通道關閉或交易方退出時才請求主鏈記錄交易最終狀態,這將極大緩解主鏈的處理壓力,這也是離鏈微支付通道的設計思想。 典型應用包括比特幣框架下的閃電網絡(Lightning Network)和以太坊智能合約框架下的雷電網絡(Raiden Network)。 離鏈通道涉及到“鏈上鎖定-鏈下執行”等一系列操作,其中交易雙方的狀態變化(資金分配比例)
46、與交易執行過程由鏈上合約監督執行。 華為開發出適用于 Hyperledger Fabric 平臺的離鏈通道交易系統, 通過交易方高效安全的握手協議,實現用戶間單通道 2,000+ TPS 的交易性能。隨著離鏈交易通道數的增加,可進一步提升系統在單位時間內交易處理能力。 華為區塊鏈白皮書 3 區塊鏈國內外產業發展現狀 版權所有 華為技術有限公司 16 3 區塊鏈國內外產業發展現狀區塊鏈國內外產業發展現狀 3.1 區塊鏈相關產業政策現狀 中歐在區塊鏈產業政策中逐漸引領全球,歐盟在 2018 年 2 月已成立歐洲區塊鏈觀察論壇,主要職責包括:政策確定,產學研聯動,跨國境 BaaS(Blockchai
47、n as a Service)服務構建,標準開源制定等,并且在 Horizon 2020 投入 500 萬歐作為區塊鏈研發基金(在 2018 年12 月 19 日前) ,預計三年內(2018-2020)區塊鏈方面投資將達到 3.4 億歐元。而美國則由于各州之間政策不一,雖然區塊鏈在美國初創企業中仍然是熱潮,但產業政策推動一直較慢。中東地區以迪拜為首在引領區塊鏈的潮流,由政府牽頭,企業配合以探索區塊鏈的新技術應用。亞太區域日韓也相對活躍,日本以 NTT 為主,政府背后提供支撐,韓國以金融為切入點探索區塊鏈應用。 中國國務院印發 “十三五”國家信息化規劃 ,區塊鏈與大數據、人工智能、機器深度學習等
48、新技術,成為國家布局重點。中國人民銀行印發了中國金融業信息技術 “十三五” 發展規劃 ,明確提出積極推進區塊鏈、人工智能等新技術應用研究,并組織進行國家數字貨幣的試點。在 2017 年 10 月,工信部發布中國區塊鏈技術和應用發展白皮書 ,這是首個落地的區塊鏈官方指導文件。 各地政府,特別是沿海地區紛紛成立區塊鏈實驗地、研究院。目前,深圳、杭州、廣州、貴陽等地政府都在積極建立區塊鏈發展專區,給予特別扶植政策。其中廣州在 2017 年12 月正式發布廣州區塊鏈 10 條策略,在黃浦區和開發區打造區塊鏈企業技術創新區。深圳在 2018 年 3 月由深圳市經濟貿易和信息化委員會發布市經貿信息委關于組
49、織實施深圳市戰略性新興產業新一代信息技術信息安全轉型 2018 年第二批扶持計劃的通知 ,區塊鏈在扶 華為區塊鏈白皮書 3 區塊鏈國內外產業發展現狀 版權所有 華為技術有限公司 17 持方向之列,這是繼廣州、貴陽、青島、杭州之后,國內第 5 個地方政府,出臺的關于區塊鏈的扶持政策。 3.2 區塊鏈在開源領域的發展現狀 超級賬本(超級賬本(Hyperledger) 超級賬本(Hyperledger)是由 Linux 基金會于 2015 年發起的推進區塊鏈數字技術和交易驗證的開源項目,吸引了包括 IBM、英特爾、Fujitsu、Cisco、華為、Redhat、Oracle、三星、騰訊云、百度金融等
50、眾多公司參與,目前已經有超過 200 家會員單位。Apache 基金會創始人 Brian Behlendorf 擔任超級賬本項目的執行董事。 超極賬本項目的目標是讓成員共同合作,共建開放平臺,滿足來自多個不同行業的用戶案例,并簡化業務流程。超級賬本旗下有多個區塊鏈平臺項目,包括 IBM 貢獻的 Fabric 項目,Intel 貢獻的 Sawtooth 項目,以及 Iroha、Burrow、Indy 等。 華為是 Hyperledger 重要成員,不僅在 Hyperledger Fabric 和 Sawtooth Lake 項目貢獻大量代碼,擔任國內僅有的項目 Maintainer 職位,而且也