999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向工業互聯網的區塊鏈分層分片研究

2023-03-16 10:20:48白首圳陳美娟
計算機工程 2023年3期
關鍵詞:深度

白首圳,陳美娟

(南京郵電大學 通信與信息工程學院,南京 210003)

0 概述

工業互聯網作為重要的5G 應用場景,將工業生產效率和生產力達到前所未有的水平[1]。目前,工業互聯網已廣泛應用于智能電網、電子商務、能源控制、高效物流等不同商業和工業領域[2]。然而,工業互聯網系統采用的集中式架構會引發安全和隱私方面的問題,并且可能存在單點故障,無法提供穩定的服務[3]。隨著連接到工業互聯網中的設備數量不斷增多,這些問題日益突出。

區塊鏈是一個分布式的共享賬本,一個不可逆轉的公共數據庫,它使不相關的參與者能夠根據特定交易或事件的發生達成共識,而無需集中授權[4]。區塊鏈的不可篡改、去中心化、可溯源等特點能夠有效解決工業互聯網中的安全和隱私問題[5],但兩者的結合仍面臨諸多挑戰,總結為以下兩方面:一方面,工業互聯網設備采集和生成的大量數據需要被安全、高效、實時存儲,然而當前主流區塊鏈平臺的吞吐量(Transactions Per Second,TPS)遠不能滿足工業互聯網中海量數據快速上鏈存儲的需求[6];另一方面,區塊鏈在不同場景下的應用都因高冗余存儲機制(每個節點存儲一份完整的賬本副本)增強了數據的公開性、透明性,確保了數據不被篡改,但卻給區塊鏈帶來了巨大的存儲壓力,傳統區塊鏈采用的高冗余存儲機制無法適用于工業互聯網場景[7]。

分片技術是提升區塊鏈吞吐量最直接有效的手段[8]。將分片技術應用于區塊鏈就是將原始的區塊鏈網絡拆分為若干小規模的區塊鏈網絡,每個網絡都由原始網絡中的一部分節點構成,稱為分片。在整個網絡中的交易會被分配到不同分片進行并行處理,因此能夠近似線性地提升區塊鏈的吞吐量[9]。文獻[10]提出一種基于公有鏈的分片方案ELASTICO。在ELASTICO 的每個共識周期中,參與者都需要計算出工作量證明(Proof of Work,PoW)答案,該答案用于配置分片。各分片采用實用拜占庭容錯(Practical Byzantine Fault Tolerance,PBFT)共識算法驗證交易,共識結果將被提交到最終分片,最終分片負責對其他分片的共識結果產生最終決策,決策結果將被返回以更新其他分片。但是,ELASTICO 需要在每輪共識后重新配置分片,且任一分片均須存儲網絡中其他所有分片的區塊數據,這會造成計算和存儲資源的浪費。為解決ELASTICO 存在的問題,文獻[11]提出一種分片協議OmniLedger,使用分布式隨機數生成方案和可驗證隨機函數來配置分片,減少了分片過程的計算開銷,但OmniLedger 在處理跨分片交易時需要向全網廣播,并且容錯率與ELASTICO 相同,僅為1/4。文獻[12]提出一種將容錯率提升至1/3 的分片方案RapidChain。同時,為解決OmniLedger 在處理跨分片交易時需要向全網廣播的問題,RapidChain 設計了分片間路由協議以快速驗證跨分片交易,減少了通信開銷。但是,RapidChain 是基于網絡同步的假設設計的,在異步網絡中的性能還未經過驗證。文獻[13]提出一種橫向擴展的分片協議Monoxide,通過設計一種特定的異步共識區域,使吞吐量能夠隨著共識區域數量的增多而線性增加,并且不會影響系統的去中心性。此外,Monoxide 還設計了一種用于放大算力的PoW 方案,使每個區域的有效算力與整個網絡保持相同,從而保證每個分片的安全性。

目前,分片協議多數建立在公有鏈的基礎上,有關聯盟鏈的分片協議研究較少。由于公有鏈允許任何節點加入且區塊數據完全公開,因此對公有鏈分片時,需要借助大量復雜的計算來增加節點作惡的成本,以提升網絡的安全性。然而,聯盟鏈中的節點均是通過證書頒發機構(Certificate Authority,CA)鑒權后加入到網絡中的,它們通常只會因為宕機、網絡延遲等原因而未能按預期參與共識過程[14]。得益于聯盟鏈網絡的封閉性,文獻[15]提出一種無需通過復雜計算來確保網絡安全性的聯盟鏈分片協議MDIoTSP。該協議能夠在保持與ELASTICO 相同吞吐量的前提下縮短區塊的生成周期,但其分片配置過程僅考慮了節點的地理位置因素,并且缺少分片重配置過程,使得網絡在長期運行后可能會因為某些節點發生故障而無法繼續正常工作,降低了系統的魯棒性。

上述研究雖然在一定程度上解決了區塊鏈的性能瓶頸,但是仍存在未考慮區塊鏈容量不足等問題。因此,亟須設計一種新的區塊鏈架構,以應對來自工業互聯網的海量數據。為此,本文構建一種分層分片區塊鏈架構LSchain(Layering and Sharding blockchain),關鍵思想是根據節點之間的拓撲結構將區塊鏈網絡劃分為多個分片,并為各分片選取能夠最小化區塊廣播時間的主節點。每個分片都對一組不相交的交易運行PBFT 共識算法進行驗證。在一個共識周期(epoch)內,成功經過驗證的交易區塊會被主節點打包為一個壓縮區塊,壓縮區塊內包含指向這些交易區塊的指針。邊緣層各分片會周期性地將交易區塊卸載到云區塊鏈層進行存儲,本地只存儲體積更小的壓縮區塊。

1 LSchain 系統模型

針對區塊鏈應用于工業互聯網時所面臨的問題,本文構建一種適用于工業互聯網場景的分層分片區塊鏈架構LSchain,如圖1 所示,LSchain 包括工業互聯網平臺層、邊緣區塊鏈層、云區塊鏈層等3 層。

圖1 LSchain 系統模型Fig.1 LSchain system model

工業互聯網平臺層由多個業務相互隔離的工業部門構成,這些工業部門可以是來自垂直行業或水平行業的不同企業和工廠。各工業部門內包含大量的異構設備,這些設備由于算力和存儲空間有限,無法充當區塊鏈節點。工業互聯網平臺層產生的大量數據會被發送到邊緣區塊鏈層中進行共識驗證。

邊緣區塊鏈層由大量邊緣服務器構成,是LSchain 的核心層。這些邊緣服務器擁有更強的算力和更大的存儲空間,經由CA 鑒權后加入網絡。依據邊緣服務器之間的拓撲結構,所有邊緣服務器會被劃分為若干個分片,各分片并行地運行PBFT 共識算法驗證來自工業互聯網平臺層的海量數據。不同分片之間的交易數據來自業務相互隔離的不同工業部門,各分片之間的數據互不共享,不存在跨分片交易。由于邊緣服務器的存儲容量有限,無法滿足大規模工業互聯網中海量數據長期存儲的需求,因此邊緣區塊鏈層會周期性地將經過共識驗證的交易區塊卸載到云區塊鏈層存儲,邊緣區塊鏈層只存儲包含交易區塊索引的壓縮區塊。

云區塊鏈層由多個分布式云(例如,阿里云、騰訊云等云服務租賃平臺)構成,它們組成云區塊鏈網絡,共同維護從邊緣區塊鏈層卸載過來的區塊數據。由于云區塊鏈層不是本文研究的重點,因此不展開詳細討論。

2 LSchain 協議設計

本節重點介紹LSchain 邊緣區塊鏈層中涉及的兩個重要部分,即區塊鏈網絡分片和分片內主節點選取。下面詳細介紹每一部分的實現。

2.1 基于社團劃分的區塊鏈網絡分片算法

邊緣層區塊鏈網絡的節點由經過CA 鑒權的邊緣服務器擔任,這些節點通常只會因為宕機、網絡延遲等原因而未能按預期參與共識過程,但不排除節點被惡意劫持的可能。因此,引入聲譽機制,用聲譽值r來描述節點的可信程度[16]。根據r的不同,節點的信譽狀態可以分為ST0、ST1、ST2、ST3 等4 類。節點的信譽狀態會隨著它們在共識過程中的行為發生變化,在共識過程中表現良好的節點會受到聲譽值獎勵,獎勵公式如下:

其中:rij是第j個分片中第i個節點的聲譽值;rreward是獎勵的聲譽值。

在共識過程中做出錯誤決策的節點會受到聲譽值懲罰,懲罰公式如下:

其中:rpunishment是懲罰的聲譽值。rreward和rpunishment的取值可以根據實際應用場景進行調整。

節點信譽狀態的轉換過程如圖2 所示。

圖2 節點信譽狀態的轉換過程Fig.2 Conversion process of the node reputation state

在網絡初始化時,LSchain 會將所有節點的初始r都置為rnormal。rcredible、rnormal和rinvalid為3 個聲譽門限值,它們的關系為rinvalid

表1 節點權限分類Table 1 Node permission classification

信譽狀態為ST1 和ST2 的節點都只能作為普通共識節點參與共識過程;信譽狀態為ST3 的節點才有資格競選成為主節點;信譽狀態為ST0 的非法節點將被禁止參與接下來的共識過程。該權限分類可以有效防止惡意節點阻礙共識過程。

基于聯盟鏈的準入機制和上述聲譽機制對節點可信狀態的描述,惡意節點將被隔離在網絡之外。因此,對邊緣層區塊鏈網絡分片時,無需再通過復雜的計算來確保分片后區塊鏈網絡的安全性。根據邊緣服務器之間的拓撲結構,可以將邊緣層區塊鏈網絡表示成如下矩陣形式:

其中:A為邊緣層區塊鏈網絡的鄰接矩陣;aij用來刻畫節點之間的連通情況,aij=1 表示節點ni和nj之間有邊相連,aij=0 表示節點ni和nj之間無邊相連,只有借助其他節點轉發才能通信,并且規定aii≡0,i=1,2,…,n。

上述工作從復雜網絡角度分析了邊緣層區塊鏈網絡?;诖?,LSchain 探索將區塊鏈網絡的分片問題轉化為復雜網絡的社團劃分問題。復雜網絡的社團劃分研究主要包含以下3 個方面:1)如何定義一個社團;2)如何判定劃分結果的優劣;3)如何在一個合理的劃分標準下,設計一種高效的劃分算法。

經典的社團劃分算法GN(Girvan-Newman)通過不斷從網絡中移除介數最大的邊,將整個網絡劃分為不同的社團[17],但GN 算法的復雜度達到了O(n3)(n為網絡中節點的數量),目前僅局限于對中等規模的網絡進行社團劃分。

基于上述原因,NEWMAN 等[18]在GN 算法的基礎上提出一種快速算法——FN(Fast-Newman)。FN算法繼承了貪心算法的思想,從所有節點各自作為一個社團開始,沿著使模塊度Q增大最多或減小最少的方向不斷合并社團,直至整個網絡都合并為一個社團。由于FN 算法需要在每輪合并過程中遍歷有邊相連的社團并計算模塊度增量,這一過程的復雜度為O(m)(m為網絡中邊的數量),并且在合并完成后還需要更新社團結構,這一過程的復雜度為O(n),因此每輪合并的復雜度為O(m+n)。又因為FN 算法最多需要合并n-1 輪,所以其總復雜度為O((m+n)n)。在FN 算法中,用模塊度Q來衡量社團劃分結果的質量,Q的取值范圍為[0,1],值越大說明社團結構越明顯,劃分結果越好。一般的網絡社團劃分結果的Q值介于0.3~0.7,Q的計算公式[19]如下:

其中:k為社團數;eij表示網絡中連接兩個不同社團si和sj的節點的邊相對于所有邊的比例;ai表示與社團si中的節點相連的邊相對于所有邊的比例。

FN 算法需要不斷合并社團,只有整個網絡都合并為一個社團時才收斂。邊緣層各分片區塊鏈網絡采用的PBFT 共識算法對參與共識的節點數量有嚴格限制,即節點數應不小于4 且不大于100[20]。為使FN 算法能夠應用于邊緣層區塊鏈網絡的分片過程,LSchain 在FN 算法的合并過程中改進了合并約束與收斂條件,以控制合并后的分片規模,并減少合并過程的算力消耗與合并輪數。

對于具有n個節點的邊緣層區塊鏈網絡,改進的FN 算法包括以下3 個執行步驟:

步驟1將網絡初始化為n個分片,即每個節點各自作 為1 個分片。此 時Q=0,eij和αi滿足式(5)和式(6):

其中:ni~nj表示節點ni和nj之間有邊相連;ki為節點ni的度。

步驟2遍歷有邊相連的分片對,判斷將分片對合并后是否滿足約束:

其中:si∪sj表示將分片si和sj合并;card()函數用于計算有限集合的元素個數。式(7)用于控制合并后的分片規模,確保每個分片包含的節點數不超過100,并減少ΔQ的計算次數。若分片對滿足式(7),則計算合并后的ΔQij:

根據貪心算法的原理,從滿足式(7)的分片對中選取能使Q增大最多或減小最少的分片對合并。在每輪合并后,更新對應的eij,并將E=(eij)n×n矩陣中對應si、sj分片的行和列相加,然后計算Q=Q+max{ΔQ}。

步驟3重復執行步驟2 以不斷合并分片,直至滿足以下收斂條件:

式(9)的物理含義為:繼續合并網絡中任意兩個分片后均會使合并后的分片規模大于100。借助式(9),本文改進的FN 算法可以減少合并輪數,從而提升算法的時間性能。

改進合并約束與收斂條件的FN 算法流程如圖3所示。

圖3 改進合并約束與收斂條件的FN 算法流程Fig.3 FN algorithm procedure for improving merger constraints and convergence conditions

根據邊緣區塊鏈層節點數量的不同,算法的運行結果分為2 種情況:1)如果n≤100,則改進FN 算法與原始FN 算法的運行結果相同,均會得到一個分片結構分解的樹狀圖,通過選擇在不同位置斷開可以得到不同的分片配置方案;2)如果n>100,則改進FN算法的運行結果為包含多個分片結構分解樹狀圖的森林,其中的每一顆樹代表一個分片,可以根據實際應用場景的需求進一步拆分其中的某些分片,以獲得更多的分片數量。改進的FN 算法通過減少合并過程中ΔQ的計算次數與合并輪數將算法的復雜度降為O((m′+n)n′)(m′≤m且n′≤n,等號僅在n≤100 時成立),從而提高了算法的時間性能,減少了邊緣層區塊鏈網絡分片花費的時間。

2.2 基于生成樹的分片內主節點選取算法

在工業互聯網中的許多應用場景都對時延提出了很高的要求,而區塊鏈中的共識機制往往非常耗時[21]。無論是公有鏈廣泛采用的PoW、權益證明(Proof of Stake,PoS)共識算法,還是受聯盟鏈和私有鏈青睞的拜占庭容錯(Byzantine Fault Tolerance,BFT)類共識算法,都需要耗費大量的時間用于向全網廣播區塊,包括邊緣層各分片區塊鏈采用的PBFT共識算法。在PBFT 中,一個主節點將交易打包成區塊,并將其廣播至全網供其他節點驗證的過程可以轉化為一顆生成樹。以一個隨機生成的小規模網絡拓撲為例,如圖4 所示,在這個拓撲中有9 個節點和16 條邊。假設節點6 是網絡中的主節點,由主節點打包生成的區塊需要廣播至整個網絡,在圖5 中的生成樹可以表示區塊的廣播過程。

圖4 隨機生成的網絡拓撲Fig.4 Randomly generated network topology

圖5 基于生成樹的區塊廣播過程Fig.5 Block broadcast process based on spanning tree

首先,以節點6 為根節點求圖4 的生成樹,可以確保區塊以最少的通信次數廣播至整個網絡。在類似圖5 的生成樹中,假設vi是節點ni驗證區塊所需的時間,則所有節點的驗證延遲集合V表示如下:

其中:I是生成樹中的節點數。

然后,用dij表示任意兩個有邊相連的節點(如節點ni和它的鄰居節點nj)之間的傳輸延遲;用cm表示節點nm接收到區塊并完成區塊驗證所花費的時間;用Nm表示從主節點到節點nm的路徑上所有節點的標識集(其元素按接收區塊的順序排列)。基于此,區塊從主節點傳播至節點nm的時間cm可以表示如下:

將式(11)代入式(12)后發現,路徑上的節點數與路徑上的最后一個節點接收區塊并完成驗證所花費的時間之間存在很強的相關性。每條傳播路徑對應于樹的一個分支,路徑上的節點數量決定了分支的長度。由此可以推斷出:網絡中參與區塊驗證的最后一個節點位于最長分支的末端,該分支的長度等于生成樹的深度。綜上所述,減少生成樹的深度意味著減少區塊廣播至全網的時間,因此可以將區塊的廣播時間問題轉化為生成樹的深度問題。

基于上述結論,本文提出一種通過尋找分片內的最小深度生成樹來選取分片內主節點的算法,以取代PBFT 隨機選取主節點的方案,詳見算法1。

算法1最小深度生成樹算法

算法1 通過尋找分片內區塊傳播深度最小的生成樹,為每個分片選取可以最小化區塊廣播時間的主節點。因為網絡初始化時會將所有節點的聲譽值都置為rnormal,所以在每次網絡初始化后第一次運行最小深度生成樹算法時,聲譽門限值應設為rnormal。經過幾輪epoch 共識后,為選取更加可靠的節點擔任分片內的主節點,聲譽門限值應設為rcredible。

下面以圖6 中4 個節點運行PBFT 算法的共識流程為例,分析由最小深度生成樹算法選取的主節點對PBFT 共識算法吞吐量的影響。

圖6 4 個節點的PBFT 共識流程Fig.6 PBFT consensus flow of four nodes

共識流程的3 個核心階段分別為pre-prepare 階段、prepare 階段和commit 階段[22],其中,pre-prepare階段是最小深度生成樹算法關注的由主節點向全網廣播區塊的階段。PBFT 共識算法的吞吐量可以表示如下:

其中:N表示時間T內包含的交易數量。

將T分解為通信時間Tc和驗證時間Tv,則式(13)可以表示如下:

然后采用文獻[14]給出的無可靠度約束等維修周期預防性維護模型,代入相同動態可變參數后,分別得到與本維護模型最佳維修策略(0.75,13)和(0.95,15)有相同預防維修次數時的維修優化結果,如表3所示,其中:總維修費用C0=[E(C0)]×L0。

將通信時間進一步拆分為算法5 個階段的通信時 間Tc_request、Tc_pre-prepare、Tc_prepare、Tc_commit和Tc_reply后,式(14)可以表示如下:

重點關注區塊廣播pre-prepare 階段,將其余4 個階段的通信時間合并為Tc_others,式(15)可以進一步表示如下:

假設將pre-prepare 階段的區塊廣播過程轉化為生成樹后,樹的深度為d,則式(16)可以表示如下:

其中:Tc_depthi表示生成樹中第i層的通信時間。

假設任意兩個邊緣服務器之間的通信時延趨向于一個相近值Tc_average,則式(17)可以表示如下:

由上述分析可知,將算法1 中求出的生成樹深度最小的節點作為分片內的主節點,可以縮短PBFT共識過程花費的時間,進而提升邊緣層各分片區塊鏈網絡的吞吐量。

3 實驗設置與結果分析

本節首先通過仿真實驗對所提的改進FN 算法和最小深度生成樹算法進行性能分析,然后對LSchain 的安全性進行理論分析。

3.1 性能分析

采用MATLAB 進行仿真測試,實驗環境如下:處理器Intel?CoreTMi5-10210U,主頻1.60 GHz,內存16 GB,操作系統Microsoft Windows 10 64 位。

3.1.1 改進FN 算法的性能分析

2 個性能指標為分片時間和分片結果Q值,對比算法為文獻[18]所提的原始FN 算法,實驗結果均為多次運行結果取平均值。首先,對比2 種算法對同一網絡分片時所花費的時間,以驗證改進的FN 算法在縮短分片時間方面的性能。然后,對比2 種算法對同一網絡分片后的模塊度Q值,以衡量改進FN 算法的分片質量。實驗所用數據集為來自斯坦福大學的大型網絡數據集網站和Mark Newman 的個人數據集網站的5 個關系網絡,5 個網絡的規模信息如表2 所示。

表2 數據集基本信息Table 2 Dataset basic information

從圖7 可以看出,改進的FN 算法在對小型網絡分片時花費的時間與原始FN 算法幾乎相同,但隨著網絡規模的增大,改進的FN 算法對網絡分片時花費的時間明顯少于原始FN 算法,并且時間差越來越大,對于5 號這一大型網絡,改進的FN 算法能夠在不犧牲分片質量的前提下將分片時間縮短約36%。這是因為:當網絡中的節點數不超過100 時,改進的FN 算法等同于原始FN 算法;當節點數超過100 時,改進的FN 算法通過改進合并約束與收斂條件,減少了合并過程中ΔQ的計算次數與合并輪數,從而提高了算法的時間性能,縮短了分片時間。

圖7 分片時間對比Fig.7 Comparison of the sharding times

從圖8 可以看出:當網絡中的節點數不超過100時,2 種算法的分片結果Q值相同,再次印證了對于節點數不超過100 的小規模網絡,改進的FN 算法等同于原始FN 算法;當網絡中的節點數超過100 時,改進FN 算法的分片結果Q值圍繞原始FN 算法的分片結果Q值在不超過0.1 的范圍內波動。這是因為改進的FN 算法在繼承原始FN 算法最大化Q值思想的同時,也不可避免地繼承了原始FN 算法只能選取局部最優解的特性(根據2.1 節的描述,算法在合并過程中的某幾輪可能會使Q值減?。?。對網絡編號為2~5 的網絡進行分片后,改進的FN 算法與原始FN 算法相比減少了合并輪數,而減少的這幾輪合并過程既有可能使Q值繼續增大,也有可能使Q值減小,導致了改進的FN 算法的分片結果Q值與原始FN 算法相比時高時低,但2 種算法的Q值差距很小,且2 種算法的Q值均在正常范圍內。

圖8 分片結果Q 值對比Fig.8 Comparison of the Q value of sharding results

從圖7、圖8 的實驗結果可以看出,本文改進的FN算法在不犧牲分片質量的前提下提升了分片效率,從而減少了區塊鏈網絡分片以及分片重配置的時間。

3.1.2 最小深度生成樹算法的性能分析

為了驗證最小深度生成樹算法在減少區塊廣播時間方面的性能,選取主節點的生成樹深度作為性能指標。對比方案為文獻[22]所提共識算法采用的主節點選取策略,實驗結果均為多次運行結果取平均值。首先對比由最小深度生成樹算法選取的主節點和由PBFT算法選取的主節點的生成樹深度,為保證實驗的公平性,規定PBFT 算法只能從最小深度生成樹算法的備選節點集中選取主節點;然后對比分片數量對最小深度生成樹算法性能的影響;最后測試網絡的連通性對最小深度生成樹算法性能的影響。

實驗數據由隨機網絡生成模型Salama[23]生成。Salama 模型中有2 個重要的網絡特征參數α和β,其中,α代表網絡中短邊相對于長邊的比例,β代表網絡中邊的密度。α和β共同決定了網絡的連通性,α/β越大,網絡的連通性越好。實驗通過控制Salama模型的網絡特征參數α和β,生成規模不同但連通性相同的網絡以模擬各分片區塊鏈網絡。下面如無特殊說明,均由相同比例的α/β生成實驗網絡,以確保不同規模的網絡連通性相同。

從圖9 可以看出,在不同分片規模(包含的節點數不同)下,最小深度生成樹算法選取的主節點的生成樹深度均要小于PBFT算法選取的主節點的生成樹深度。這是因為PBFT 共識算法的主節點是在每輪共識開始之前隨機選取的。最小深度生成樹算法通過遍歷備選節點的生成樹,選取生成樹深度最小的節點來擔任主節點。因此,在減少區塊廣播時間方面,最小深度生成樹算法的主節點選取策略優于PBFT 算法的主節點選取策略。

圖9 主節點的生成樹深度對比Fig.9 Comparison of the spanning tree depth of leader node

從圖10 可以看出,當同一個網絡被分為不同分片時,各分片由最小深度生成樹算法選取的主節點的生成樹深度與分片數成反比。這是因為實驗為控制變量,假設每個分片的規模相同(包含的節點數相同)。分片數越多,每個分片的規模越小,由最小深度生成樹算法選取的主節點的生成樹深度就越淺?;诖?,LSchain 可以根據工業互聯網平臺層的業務需求動態地劃分邊緣層區塊鏈網絡:當網絡負載大時,將網絡分為更多的片,以優先滿足吞吐量需求;當網絡負載小時,將網絡分為更少的片,以更好地保障網絡的安全。

圖10 同等網絡規模下不同分片數的生成樹深度對比Fig.10 Depth comparison of the spanning tree with different shards number in the same network scale

從圖11 可以看出,α/β越大(即網絡的連通性越好)的分片,由最小深度生成樹算法選取的主節點的生成樹深度就越淺。這是因為連通圖(任意兩個節點都有邊相連的網絡)的生成樹深度具有理論上下限。節點數量為n的全局耦合網絡僅需1 跳即可到達網絡中的任意位置,這種網絡的生成樹深度恒為1,連通性最好;任一節點數為n,邊數為n-1 的網絡,其生成樹的最小可能深度為(n-1)/2,最大可能深度為n-1,這種網絡的連通性最差。所以,連通性越好的網絡,其生成樹的最小可能深度越接近1。

圖11 同等網絡規模下不同連通度分片的生成樹深度對比Fig.11 Comparison of the spanning tree depth of the shards with different connectivity in the same network scale

3.2 安全性分析

在邊緣層區塊鏈網絡中,承擔區塊鏈節點角色的各邊緣服務器可能會遭到惡意攻擊,從而影響系統的正常運行。本節主要從LSchain 協議能夠抵御單分片接管攻擊和主節點自私攻擊兩方面進行說明。

3.2.1 單分片接管攻擊抵御

為確保邊緣層區塊鏈網絡的安全,所有分片均需滿足PBFT 算法的容錯限制,即惡意節點數f不超過節點總數的1/3。任何分片突破這個限制,都會導致分片被惡意節點劫持,從而影響整個邊緣層區塊鏈網絡的正常運行,這被稱為單分片接管攻擊[24]。為了能及時偵測到被惡意劫持的分片,LSchain 規定各分片內的節點應定時向CA 發送心跳消息,心跳消息中包含各節點用自己的私鑰對所處分片安全狀態的決策簽名。當誠實節點在共識過程中檢測到分片內的惡意節點數超過PBFT 容錯限制時,會向CA 發送否認分片狀態安全的決策簽名。在各分片的心跳消息集中需要包含至少f+1(確保至少有1 個誠實節點可以向CA 反饋真實的網絡狀態)條為安全狀態背書的簽名,該分片才能繼續運行。若某分片的心跳消息集中少于f+1 的節點認為該分片安全,則停用該分片,并計算該分片中各節點在本輪epoch 中累積的r。根據節點的r判斷節點的信譽狀態,狀態為ST0的節點將被禁止參與接下來的共識過程,直至其經過安全漏洞修復并向CA 申請才能重新加入網絡。因此,LSchain 協議在一定程度上抵御了單分片接管攻擊。

3.2.2 主節點自私攻擊抵御

PBFT 共識算法需要在每輪共識開始前隨機選取主節點,而LSchain 通過最小深度生成樹算法為各分片選取的主節點可以最小化區塊廣播時間,并且具有較高的聲譽值。因此,各分片內的主節點在沒有不良行為的情況下無需頻繁更換,但當分片內的其余節點檢測到主節點作惡或長時間未響應時均會觸發視圖切換(view-change)過程[25]。view-change會重新運行最小深度生成樹算法以選取新的主節點,同時作惡主節點的聲譽值將會被直接清零。該方式與普通節點作惡的處置方式相同,直至經過安全漏洞修復并向CA 申請才能重新加入網絡。因此,本文方案在一定程度上抵御了主節點自私攻擊。

4 結束語

本文針對區塊鏈應用于工業互聯網時所面臨的吞吐量不足和存儲壓力較大的問題:首先構建分層存儲架構,將工業互聯網產生的海量數據在邊緣區塊鏈層和云區塊鏈層中進行分層維護,解決了區塊鏈存儲容量不足的問題;然后基于經典社團劃分算法設計并改進區塊鏈網絡分片算法,在提升區塊鏈吞吐量的同時縮短了分片時間;最后論證了區塊廣播時間對吞吐量的影響,提出一種能夠最小化各分片內區塊廣播時間的主節點選取算法,進一步提升了邊緣層區塊鏈的吞吐量。實驗結果表明,與經典社團劃分算法以及隨機選取主節點的策略相比,所提方案能夠同時減少分片時間和各分片內區塊的廣播時間。下一步將完善邊緣層交易區塊的卸載機制,并針對工業互聯網場景設計合理有效的區塊存儲卸載算法,以降低邊緣層區塊鏈節點的存儲壓力。

猜你喜歡
深度
深度理解不等關系
四增四減 深度推進
深度理解一元一次方程
深度觀察
深度觀察
深度觀察
深度觀察
芻議深度報道的深度與“文”度
新聞傳播(2016年10期)2016-09-26 12:14:59
提升深度報道量與質
新聞傳播(2015年10期)2015-07-18 11:05:40
微小提議 深度思考
主站蜘蛛池模板: 最新加勒比隔壁人妻| 亚洲国产亚综合在线区| 中文字幕丝袜一区二区| 亚洲性日韩精品一区二区| 国产微拍一区二区三区四区| 国产精品精品视频| 一区二区午夜| 亚洲天堂色色人体| 国产精品永久不卡免费视频| 女人爽到高潮免费视频大全| 2021国产精品自产拍在线| 久久9966精品国产免费| 精品国产网| 欧美在线国产| 一本久道久久综合多人 | 免费人成视网站在线不卡| 91麻豆国产精品91久久久| 中文字幕在线看视频一区二区三区| 亚洲人成色77777在线观看| 被公侵犯人妻少妇一区二区三区| 国产在线自乱拍播放| 香蕉伊思人视频| 亚洲91在线精品| 久久婷婷六月| 真实国产乱子伦视频| 91久久国产成人免费观看| 中文字幕在线日本| 国产精品久久久免费视频| 国产无人区一区二区三区| 超薄丝袜足j国产在线视频| 国产清纯在线一区二区WWW| 亚洲AV成人一区国产精品| 国产成人高清在线精品| 中日韩欧亚无码视频| 欧洲一区二区三区无码| 国产精品熟女亚洲AV麻豆| 国内精品伊人久久久久7777人| 呦女精品网站| 亚洲男人的天堂在线| 国产福利2021最新在线观看| 99色亚洲国产精品11p| 狠狠综合久久| 特级毛片8级毛片免费观看| 欧美日韩免费在线视频| 香港一级毛片免费看| 亚洲色偷偷偷鲁综合| 在线观看91精品国产剧情免费| 欧美中文字幕一区| 亚洲日韩久久综合中文字幕| 精品欧美日韩国产日漫一区不卡| 亚洲色成人www在线观看| 亚洲日韩第九十九页| 国产高颜值露脸在线观看| 欧美精品H在线播放| 最新亚洲人成无码网站欣赏网| 伊人天堂网| 久久女人网| 日韩精品欧美国产在线| 浮力影院国产第一页| 国产精品视频3p| 啊嗯不日本网站| 久久亚洲高清国产| 久久综合结合久久狠狠狠97色| 国产精品第一区在线观看| 欧洲在线免费视频| 欧美一级99在线观看国产| 四虎永久在线精品影院| 亚洲视频影院| 久久久亚洲色| 国产理论最新国产精品视频| 丰满人妻一区二区三区视频| 日韩免费毛片| 无码国产偷倩在线播放老年人| 欧美成人综合视频| 久久国产亚洲偷自| 亚洲天堂首页| 99热这里只有精品久久免费| 97在线观看视频免费| 九九热精品视频在线| 国产麻豆福利av在线播放| 日韩国产黄色网站| 99视频在线精品免费观看6|