亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        ACT-BFT:自適應(yīng)通信拓?fù)涞陌菡纪ト蒎e(cuò)共識(shí)機(jī)制

        2023-11-20 10:58:56鄧小鴻王智強(qiáng)黎康婷羅志瓊
        關(guān)鍵詞:信譽(yù)信息熵復(fù)雜度

        鄧小鴻,王智強(qiáng),黎康婷,羅志瓊

        1.贛南科技學(xué)院 電子信息工程學(xué)院,江西 贛州 341000

        2.江西理工大學(xué) 信息工程學(xué)院,江西 贛州 341000

        3.贛州市云計(jì)算與大數(shù)據(jù)重點(diǎn)實(shí)驗(yàn)室,江西 贛州 341000

        區(qū)塊鏈作為新一代信息技術(shù),已經(jīng)成為國(guó)家重點(diǎn)關(guān)注的發(fā)展對(duì)象,國(guó)家“十四五”規(guī)劃明確提出要加快推動(dòng)數(shù)字產(chǎn)業(yè)化,培育壯大區(qū)塊鏈等新興數(shù)字產(chǎn)業(yè)。共識(shí)機(jī)制研究如何在分布式的節(jié)點(diǎn)中達(dá)成數(shù)據(jù)的一致性,廣泛應(yīng)用在無線傳感器網(wǎng)絡(luò)、車載自組織網(wǎng)絡(luò)等分布式系統(tǒng)中[1-2]。共識(shí)機(jī)制作為區(qū)塊鏈中的核心技術(shù),具體的工作包括記賬節(jié)點(diǎn)的選取、區(qū)塊生成、驗(yàn)證與分發(fā),涉及到一個(gè)區(qū)塊從產(chǎn)生到最終上鏈存儲(chǔ)的全過程,其性能優(yōu)劣直接影響著區(qū)塊鏈系統(tǒng)的效率,成為區(qū)塊鏈研究者們重點(diǎn)關(guān)注的焦點(diǎn)[3-5]。

        拜占庭容錯(cuò)類(Byzantine fault tolerance,BFT)共識(shí)算法最早于1982 年由Lamport 等人[6]提出,用來解決“拜占庭將軍問題”,但由于其高復(fù)雜度一直未得到實(shí)際應(yīng)用。直到1999 年,實(shí)用拜占庭容錯(cuò)算法(practical Byzantine fault tolerance,PBFT)的出現(xiàn),將原始BFT復(fù)雜度由指數(shù)級(jí)降低到多項(xiàng)式級(jí),使得BFT類共識(shí)算法在實(shí)際系統(tǒng)中應(yīng)用變成可行[7]。目前主流的聯(lián)盟鏈共識(shí)算法大多是基于BFT類進(jìn)行實(shí)現(xiàn),雖然能較好地解決拜占庭將軍問題,但存在著通信的時(shí)間復(fù)雜度過高問題,特別是在主節(jié)點(diǎn)連續(xù)切換下,通信的時(shí)間復(fù)雜度達(dá)到O(n3)。并且,隨著節(jié)點(diǎn)數(shù)量增多,算法的性能顯著下降。

        為了解決BFT類算法的復(fù)雜度,研究者們提出較多改進(jìn)算法。如Zhang等人[8]提出的委托拜占庭容錯(cuò)算法(delegated Byzantine fault tolerance,DBFT),將網(wǎng)絡(luò)節(jié)點(diǎn)劃分成普通節(jié)點(diǎn)與授權(quán)共識(shí)節(jié)點(diǎn),共識(shí)節(jié)點(diǎn)由持幣節(jié)點(diǎn)選舉,普通節(jié)點(diǎn)負(fù)責(zé)驗(yàn)證與存儲(chǔ)區(qū)塊,新的方法在相同節(jié)點(diǎn)規(guī)模下的通信量得到顯著降低,但通信的時(shí)間復(fù)雜度仍然達(dá)到O(n2)。Han 等人[9]提出以交換為中心的拜占庭容錯(cuò)機(jī)制(Switch-Centric BFT,SCBFT),將關(guān)鍵的BFT函數(shù)采用可編程交換模塊實(shí)現(xiàn),加速了共識(shí)過程和減輕了通信負(fù)載,但SCBFT 依賴于特定的軟硬件環(huán)境,如需要BMv2這樣的交換機(jī)模擬引擎。Zhan等人[10]提出委托隨機(jī)拜占庭容錯(cuò)算法(delegated randomization BFT,DRBFT),算法在主節(jié)點(diǎn)選取中加入隨機(jī)算法,增加了算法安全性,但通信的時(shí)間復(fù)雜度和文獻(xiàn)[8]相比并沒有顯著改善。Abraham 等人[11]提出HotStuff 算法,將PBFT 平均通信的時(shí)間復(fù)雜度從O(n2)降到O(n),但是主節(jié)點(diǎn)的選取方式并沒有提高網(wǎng)絡(luò)的抗攻擊能力,而且主從節(jié)點(diǎn)之間采用星型拓?fù)浣Y(jié)構(gòu)進(jìn)行通信,隨著從節(jié)點(diǎn)數(shù)量的增多性能會(huì)受到硬件資源的影響。現(xiàn)有主流BFT算法其優(yōu)缺點(diǎn)如表1所示。

        表1 現(xiàn)有BFT算法對(duì)比表Table 1 Comparison of existing BFT algorithms

        綜上,現(xiàn)有BFT類算法存在的主要問題是選舉記賬節(jié)點(diǎn)的方式存在著安全隱患,存在著拜占庭節(jié)點(diǎn)作惡的風(fēng)險(xiǎn),另外,通信拓?fù)浣Y(jié)構(gòu)不夠靈活,通信的時(shí)間復(fù)雜度依賴于特定的軟硬件。針對(duì)上述問題,本文創(chuàng)新性地提出如下方法:

        (1)提出一種基于神經(jīng)網(wǎng)絡(luò)的節(jié)點(diǎn)信譽(yù)值評(píng)估機(jī)制,更為精確地衡量節(jié)點(diǎn)的信譽(yù)值,并根據(jù)信譽(yù)值來挑選記賬節(jié)點(diǎn),提高共識(shí)效率和減小惡意節(jié)點(diǎn)成為記賬節(jié)點(diǎn)的風(fēng)險(xiǎn),提高共識(shí)安全性。

        (2)設(shè)計(jì)一種自適應(yīng)的樹型通信拓?fù)浣Y(jié)構(gòu),并根據(jù)節(jié)點(diǎn)信譽(yù)值自主調(diào)整樹型結(jié)構(gòu)的叉度,減小了傳統(tǒng)P2P拓?fù)浣Y(jié)構(gòu)中通信的時(shí)間復(fù)雜度,自由叉度結(jié)構(gòu)在增加可擴(kuò)展性的同時(shí)減小了節(jié)點(diǎn)作惡帶來的負(fù)面影響。

        1 問題提出

        1.1 記賬節(jié)點(diǎn)選取

        拜占庭容錯(cuò)算法,是一種基于通過少數(shù)服從多數(shù)的投票機(jī)制達(dá)成共識(shí)的算法。PBFT算法是一種狀態(tài)機(jī)副本復(fù)制的方法,所有的副本狀態(tài)都是在視圖中進(jìn)行轉(zhuǎn)換,leader 節(jié)點(diǎn)也就是記賬節(jié)點(diǎn)的選擇方式是主節(jié)點(diǎn)視圖編號(hào)模上節(jié)點(diǎn)個(gè)數(shù),一輪共識(shí)都是以一個(gè)視圖為一個(gè)周期,當(dāng)共識(shí)完成開始切換視圖。PBFT 算法顯著改善了BFT問題中的通信的時(shí)間復(fù)雜度,但是在PBFT中由于節(jié)點(diǎn)之間需要不斷的廣播,隨著節(jié)點(diǎn)規(guī)模越大,網(wǎng)絡(luò)性能將會(huì)變壞。此外當(dāng)PBFT中的leader節(jié)點(diǎn)頻繁切換會(huì)導(dǎo)致通信的時(shí)間復(fù)雜度為O(n3),因此PBFT 算法一般應(yīng)用在節(jié)點(diǎn)數(shù)較少的聯(lián)盟鏈中。HotStuff算法進(jìn)一步降低了PBFT的平均通信的時(shí)間復(fù)雜度,其節(jié)點(diǎn)之間并不是采用廣播的形式,而是將消息都由leader 節(jié)點(diǎn)處理,依靠同步時(shí)鐘來切換視圖并與共識(shí)過程合二為一。當(dāng)驗(yàn)證者在共識(shí)過程提出異議,認(rèn)證有問題,超過時(shí)間就會(huì)切換視圖。上述兩種BFT 類算法,leader節(jié)點(diǎn)的選舉都為試圖編號(hào)順序進(jìn)行切換,這種方式會(huì)存在惡意節(jié)點(diǎn)成為leader的問題。

        基于信譽(yù)模型的共識(shí)算法出現(xiàn)很好地解決了leader節(jié)點(diǎn)的選舉問題,劉乃安等人[12]針對(duì)區(qū)塊鏈中的驗(yàn)證節(jié)點(diǎn)易受到攻擊,導(dǎo)致失去對(duì)誠實(shí)節(jié)點(diǎn)的判別能力,提出了一種聲譽(yù)證明的共識(shí)機(jī)制。通過對(duì)節(jié)點(diǎn)的貢獻(xiàn)度和可靠度進(jìn)行加權(quán)求和得出最終的綜合聲譽(yù),并基于綜合聲譽(yù)排名選擇當(dāng)前回合的BFT中的leader。該聲譽(yù)證明機(jī)制能夠有效解決驗(yàn)證節(jié)點(diǎn)被攻擊操控的問題,同時(shí)也存在著潛在的聲譽(yù)寡頭和貢獻(xiàn)度、可靠度的權(quán)重分配不均衡的問題。Alex 等人[13]提出了抗女巫攻擊的信譽(yù)共識(shí)算法,有效地降低了惡意節(jié)點(diǎn)成為leader 節(jié)點(diǎn)風(fēng)險(xiǎn),但是該算法依然沒有解決BFT 的規(guī)模越大吞吐量越低的問題,且信譽(yù)模型的計(jì)算相對(duì)固定,可擴(kuò)展性差。Chen 等人[14]提出了基于特征值分組和信用度優(yōu)化的BFT算法,將大規(guī)模的網(wǎng)絡(luò)節(jié)點(diǎn)分成不同的組織形成獨(dú)立的共識(shí)組來降低通信的時(shí)間復(fù)雜度,挑選高信用度的節(jié)點(diǎn)成為記賬節(jié)點(diǎn)加速leader節(jié)點(diǎn)的選擇效率,但其節(jié)點(diǎn)信用值通過線性計(jì)算公式得到,存在著節(jié)點(diǎn)信用值評(píng)估不精確的問題。

        綜上,基于節(jié)點(diǎn)信譽(yù)的記賬節(jié)點(diǎn)選取方法能有效避免惡意節(jié)點(diǎn)作惡,并能加快共識(shí)過程。節(jié)點(diǎn)信譽(yù)度與節(jié)點(diǎn)在去中心化網(wǎng)絡(luò)中的行為密切相關(guān),需要對(duì)節(jié)點(diǎn)在網(wǎng)絡(luò)中的行為進(jìn)行深入分析,更為精確地衡量節(jié)點(diǎn)的信譽(yù)值。

        1.2 通信拓?fù)浣Y(jié)構(gòu)

        現(xiàn)有共識(shí)算法中的通信結(jié)構(gòu)大致分為三種:P2P方式、星型拓?fù)浜蚲ossip 拓?fù)?。三種通信結(jié)構(gòu)如圖1 所示(陰影節(jié)點(diǎn)為主節(jié)點(diǎn),其他為從節(jié)點(diǎn))。第一類的典型代表如PBFT 采用的P2P 的通信方式,主節(jié)點(diǎn)將消息發(fā)送給所有從節(jié)點(diǎn),從節(jié)點(diǎn)將收到的消息發(fā)給其他所有節(jié)點(diǎn),該方法存在通信量過多,從而導(dǎo)致通信的時(shí)間復(fù)雜度過大。第二類的典型代表如Raft 以及HotStuff 采用的星型拓?fù)洌芍鞴?jié)點(diǎn)將消息發(fā)給所有的從節(jié)點(diǎn),算法雖然使得通信復(fù)雜降低為O(n),但隨著訪問量增加,系統(tǒng)整體性能會(huì)受限于主節(jié)點(diǎn)的硬件資源。第三類如gossip 協(xié)議[15],該協(xié)議是主節(jié)點(diǎn)將消息隨機(jī)傳播給最近n個(gè)從節(jié)點(diǎn),再由n個(gè)從節(jié)點(diǎn)進(jìn)一步傳給其他相鄰節(jié)點(diǎn),該方式將通信的時(shí)間復(fù)雜度進(jìn)一步降低為O(lbn),但該算法存在著節(jié)點(diǎn)隨機(jī)向少數(shù)幾個(gè)節(jié)點(diǎn)發(fā)送消息,而消息最終是通過多個(gè)輪次的散播而到達(dá)全網(wǎng),不可避免地造成消息延遲。另外節(jié)點(diǎn)定期隨機(jī)選擇周圍節(jié)點(diǎn)發(fā)送消息,而收到消息的節(jié)點(diǎn)也會(huì)重復(fù)該步驟,因此會(huì)存在同一節(jié)點(diǎn)多次接收同一消息,增加消息處理的壓力。

        圖1 三種典型的通信拓?fù)浣Y(jié)構(gòu)Fig.1 Three typical communication topologies

        為了減小數(shù)據(jù)同步過程中通信的時(shí)間復(fù)雜度,研究者們對(duì)P2P通信結(jié)構(gòu)進(jìn)行改進(jìn),提出了結(jié)構(gòu)化的通信拓?fù)?。Ji 等人[16]早在2012 年提出在共識(shí)算法中采用樹型拓?fù)浣Y(jié)構(gòu),將主節(jié)點(diǎn)作為根節(jié)點(diǎn),同步消息從根節(jié)點(diǎn)采用樹型圖遍歷方式進(jìn)行傳輸,通信的時(shí)間復(fù)雜度大大降低,但消息的傳播依賴于主節(jié)點(diǎn)的可靠性,一旦主節(jié)點(diǎn)作惡將會(huì)造成消息傳播無效。Du等人[17]也提出樹型通信拓?fù)?,并把同步?jié)點(diǎn)分為主動(dòng)和被動(dòng)節(jié)點(diǎn),由主動(dòng)節(jié)點(diǎn)給被動(dòng)節(jié)點(diǎn)采用樹型結(jié)構(gòu)進(jìn)行消息傳送,該方法顯著降低了通信的時(shí)間復(fù)雜度,但主動(dòng)節(jié)點(diǎn)的選取存在著安全隱患,不能有效解決拜占庭節(jié)點(diǎn)故意作惡的情況。

        綜上,結(jié)構(gòu)化的通信拓?fù)淠茱@著降低數(shù)據(jù)同步過程中通信的時(shí)間復(fù)雜度,但必須考慮節(jié)點(diǎn)故意作惡的問題,需要設(shè)計(jì)更加靈活的通信拓?fù)浣Y(jié)構(gòu),在轉(zhuǎn)發(fā)消息節(jié)點(diǎn)作惡情況下保證消息仍然能正確傳輸。

        2 ACT-BFT共識(shí)機(jī)制

        2.1 基于BP的節(jié)點(diǎn)信譽(yù)值評(píng)估機(jī)制

        BP神經(jīng)網(wǎng)絡(luò)[18-19]作為深度學(xué)習(xí)的核心,其作用是根據(jù)前向輸出計(jì)算誤差,從而根據(jù)誤差來進(jìn)行反向傳播調(diào)整神經(jīng)網(wǎng)絡(luò)中各指標(biāo)的權(quán)值。本文利用BP神經(jīng)網(wǎng)絡(luò)來訓(xùn)練節(jié)點(diǎn)信譽(yù)值評(píng)價(jià)指標(biāo)的權(quán)重,以得到更為精確的節(jié)點(diǎn)信譽(yù)值。

        節(jié)點(diǎn)的信譽(yù)是綜合共識(shí)過程中節(jié)點(diǎn)的各項(xiàng)表現(xiàn)所得出的一個(gè)分?jǐn)?shù),是對(duì)節(jié)點(diǎn)參與網(wǎng)絡(luò)過程中的全面考察。普通的線性函數(shù)不能較好地賦予節(jié)點(diǎn)特征相應(yīng)的權(quán)重。對(duì)于節(jié)點(diǎn)的信譽(yù)評(píng)估,本文根據(jù)節(jié)點(diǎn)在網(wǎng)絡(luò)中運(yùn)行的實(shí)際情況,首先構(gòu)建了動(dòng)態(tài)特征向量,分別由節(jié)點(diǎn)的在線時(shí)間、參與響應(yīng)的時(shí)間、節(jié)點(diǎn)工作量和節(jié)點(diǎn)響應(yīng)類型等特征構(gòu)成,具體見表2。該動(dòng)態(tài)特征向量是由不同的特征構(gòu)成,在網(wǎng)絡(luò)的整個(gè)運(yùn)行過程中,向量中的特征權(quán)重會(huì)進(jìn)行調(diào)整。在神經(jīng)網(wǎng)絡(luò)訓(xùn)練之初,每個(gè)特征的權(quán)重隨機(jī)給出,后期學(xué)習(xí)器通過樣本學(xué)習(xí)會(huì)不斷調(diào)整每個(gè)特征的權(quán)重。

        表2 節(jié)點(diǎn)信譽(yù)評(píng)估特征Table 2 Characteristics of node reputation evaluation

        其中E_Tx、C_ETx、Height為離散值,其余為連續(xù)值。本文設(shè)計(jì)5層BP神經(jīng)網(wǎng)絡(luò)模型,如圖2所示。輸入層由表2中的7個(gè)特征值組成,三個(gè)隱藏層均采用1 000個(gè)神經(jīng)單元,損失函數(shù)采用均方誤差,輸出層得到[0,1]之間的信譽(yù)值。每個(gè)節(jié)點(diǎn)每一輪次的信譽(yù)值計(jì)算公式如下所示:

        圖2 五層神經(jīng)網(wǎng)絡(luò)模型Fig.2 Five-layer neural network model

        其中,表示節(jié)點(diǎn)i在第j輪次的信譽(yù)值(*)表示根據(jù)神經(jīng)網(wǎng)絡(luò)計(jì)算出來的第i個(gè)節(jié)點(diǎn)第j輪信譽(yù)值,Xi

        j為第i個(gè)節(jié)點(diǎn)第j輪的特征向量,表示為{On_Time,D_AFT,TPS,C_ETx,H_Rep,E_Tx,Height}。α表示一個(gè)權(quán)重值,其取值范圍為[0,1],默認(rèn)為0.5。γ為懲罰系數(shù),其取值范圍為(0,1],默認(rèn)為0.01,h表示該節(jié)點(diǎn)所在高度,其初值為1 和2,leader 節(jié)點(diǎn)所在高度為1,其余從節(jié)點(diǎn)高度為2,后續(xù)h的值會(huì)進(jìn)行自適應(yīng)調(diào)整,將在3.2節(jié)中介紹,β表示節(jié)點(diǎn)的作惡次數(shù)。

        當(dāng)節(jié)點(diǎn)前一輪信譽(yù)值大于等于0且無作惡行為時(shí),其信譽(yù)值由其前一輪的信譽(yù)值和當(dāng)前這輪的信譽(yù)值加權(quán)平均得到;當(dāng)節(jié)點(diǎn)的信譽(yù)值上一輪大于0時(shí)有作惡行為,其信譽(yù)值為前一輪信譽(yù)值乘以h的倒數(shù)再取反,h越大節(jié)點(diǎn)作惡對(duì)系統(tǒng)影響越嚴(yán)重,故懲罰力度就越大;當(dāng)節(jié)點(diǎn)前一輪的信譽(yù)值小于0,其計(jì)算公式為前一輪的信譽(yù)值加上γ倍的e-βh,很明顯,在γ確定的情況下,節(jié)點(diǎn)作惡次數(shù)越多,所在高度越大,信譽(yù)值增長(zhǎng)越緩慢。

        當(dāng)節(jié)點(diǎn)的信譽(yù)值得到后,對(duì)節(jié)點(diǎn)信譽(yù)值進(jìn)行排序,為了增加leader節(jié)點(diǎn)選取的安全性,對(duì)于信譽(yù)值排序在前10%的節(jié)點(diǎn)采取可驗(yàn)證隨機(jī)驗(yàn)證函數(shù)(verifiable random function,VRF)挑選一個(gè)作為leader 節(jié)點(diǎn),其余為備份節(jié)點(diǎn),剩下90%的節(jié)點(diǎn)作為從節(jié)點(diǎn),備份節(jié)點(diǎn)和從節(jié)點(diǎn)作用將在后續(xù)介紹。

        為了衡量網(wǎng)絡(luò)中節(jié)點(diǎn)信譽(yù)值的穩(wěn)定情況,采用信息熵來度量,信息熵的計(jì)算公式如下所示:

        H(P)為信息熵,Pi為節(jié)點(diǎn)i是惡意節(jié)點(diǎn)的概率,根據(jù)公式(2),當(dāng)節(jié)點(diǎn)為惡意節(jié)點(diǎn)的概率越大或者越不可能發(fā)生,其對(duì)應(yīng)的熵就會(huì)越?。欢l(fā)生的概率越接近0.5,所對(duì)應(yīng)的信息熵也就越大,所以熵可以反映一個(gè)隨機(jī)事件的穩(wěn)定性。

        2.2 自適應(yīng)通信拓?fù)?/h3>

        本文設(shè)計(jì)一種可變叉度的樹型通信拓?fù)?,如圖3所示。樹狀可以從上往下看成串行,但是同一層兩節(jié)點(diǎn)之間往子節(jié)點(diǎn)或往父節(jié)點(diǎn)進(jìn)行消息傳遞都是并行的,而消息串行傳遞的次數(shù)和樹的高度成正相關(guān),為2×lbn,當(dāng)節(jié)點(diǎn)數(shù)量越大,消息串行次數(shù)遠(yuǎn)低于星型拓?fù)涞膎次。圖中,由處于樹根的節(jié)點(diǎn)向其子節(jié)點(diǎn)發(fā)送交易信息,而子節(jié)點(diǎn)向其父節(jié)點(diǎn)發(fā)送確認(rèn)交易信息。使用可變叉度的樹型拓?fù)浠趦蓚€(gè)原因,首先較小叉度的樹型拓?fù)?,如典型的二叉樹結(jié)構(gòu),會(huì)造成通信樹的高度較高,一旦處于較高層次的節(jié)點(diǎn)作惡,將會(huì)對(duì)系統(tǒng)造成較大影響。其次采用較大叉度的樹型拓?fù)洌總€(gè)節(jié)點(diǎn)將會(huì)承擔(dān)較多的交易消息發(fā)送和驗(yàn)證消息接收的工作,節(jié)點(diǎn)的處理能力是瓶頸,典型的如HotStuff的星型拓?fù)浣Y(jié)構(gòu)?;谏鲜鲈颍疚奶岢龈鶕?jù)所有節(jié)點(diǎn)的信譽(yù)值來動(dòng)態(tài)調(diào)整樹的叉度,如果所有節(jié)點(diǎn)的信譽(yù)值趨向穩(wěn)定,并且在設(shè)定的閾值以上,認(rèn)為節(jié)點(diǎn)高可信,那么樹的叉度會(huì)減小,最小降至二叉樹結(jié)構(gòu)。反之,節(jié)點(diǎn)信譽(yù)值極不穩(wěn)定或者不可信,那么樹的叉度將會(huì)增大,最大形成星型拓?fù)浣Y(jié)構(gòu),在出現(xiàn)惡意節(jié)點(diǎn)時(shí)可以以較小代價(jià)剔除惡意節(jié)點(diǎn)。

        圖3 可變叉度的樹型通信拓?fù)銯ig.3 Tree communication topology with variable fork degree

        可變叉度樹型通信結(jié)構(gòu)調(diào)整如算法1 所示。首先輸入隨機(jī)種子,將所有的特征向量送入公式(1)計(jì)算得到節(jié)點(diǎn)信譽(yù)值,并按照信譽(yù)值大小和VRF 對(duì)節(jié)點(diǎn)進(jìn)行排序,得到排序列表。其次利用公式(2)計(jì)算得到當(dāng)前信譽(yù)值的信息熵和均值,設(shè)置節(jié)點(diǎn)信譽(yù)值閾值T為0.5,高于0.5 以上則認(rèn)為節(jié)點(diǎn)可信程度比較高,同時(shí)設(shè)置信息熵閾值E1、E2、E3、E4為0.2、0.4、0.6、0.8,信息熵越高則認(rèn)為信譽(yù)值的分布不穩(wěn)定,信息熵越低則認(rèn)為分布越穩(wěn)定,按照信譽(yù)值均值和信息熵來選擇叉度。

        算法1 通信結(jié)構(gòu)調(diào)整

        2.3 共識(shí)過程

        在完成了節(jié)點(diǎn)信譽(yù)值計(jì)算和通信拓?fù)涞臉?gòu)建后,設(shè)計(jì)ACT-BFT共識(shí)機(jī)制的共識(shí)過程,如算法2所示。

        算法2 共識(shí)過程

        首先初始化共識(shí)結(jié)果標(biāo)志為false,按照叉度構(gòu)建樹型通信結(jié)構(gòu)編碼;其次從排序列表中選擇節(jié)點(diǎn)成為領(lǐng)導(dǎo)節(jié)點(diǎn)、從節(jié)點(diǎn)與備份節(jié)點(diǎn),規(guī)則如下:

        (1)對(duì)于信譽(yù)值排名前10%的節(jié)點(diǎn)中隨機(jī)選擇一個(gè)節(jié)點(diǎn)作為leader節(jié)點(diǎn),剩余的節(jié)點(diǎn)為備份節(jié)點(diǎn)。

        (2)剩余的90%節(jié)點(diǎn)為從節(jié)點(diǎn)。

        接著,leader節(jié)點(diǎn)進(jìn)行廣播交易消息,備份節(jié)點(diǎn)組對(duì)其進(jìn)行監(jiān)聽,從節(jié)點(diǎn)開始驗(yàn)證消息的合法性,其中可能會(huì)遇到節(jié)點(diǎn)宕機(jī)、作惡情況,按照如下規(guī)則進(jìn)行惡意節(jié)點(diǎn)剔除:

        (1)當(dāng)節(jié)點(diǎn)編號(hào)小于2n/3 時(shí),在備份節(jié)點(diǎn)中選擇一個(gè)節(jié)點(diǎn)直接替換掉該節(jié)點(diǎn)。

        (2)如節(jié)點(diǎn)是葉子節(jié)點(diǎn)則直接剔除。

        這樣做的原因在于葉子結(jié)點(diǎn)作惡所影響的節(jié)點(diǎn)較少,所以直接刪除即可,而對(duì)于編號(hào)小于2n/3時(shí),直接刪除則需節(jié)點(diǎn)進(jìn)行局部重新編排,所以使用替換的方式更為合適。

        剔除惡意節(jié)點(diǎn)的示意圖如圖4所示。

        圖4 剔除惡意節(jié)點(diǎn)Fig.4 Eliminate malicious nodes

        最后,在固定時(shí)間內(nèi)收集返回驗(yàn)證消息節(jié)點(diǎn)的信譽(yù)值,如果信譽(yù)值相加超過總信譽(yù)值的2/3,認(rèn)為是共識(shí)成功。固定時(shí)間設(shè)為3 s,超過時(shí)間則進(jìn)行新一輪的廣播與交易驗(yàn)證。

        3 實(shí)驗(yàn)分析

        為了測(cè)試本文提出的ACT-BFT 共識(shí)機(jī)制的性能,設(shè)計(jì)了若干個(gè)仿真實(shí)驗(yàn)。實(shí)驗(yàn)環(huán)境選用的操作系統(tǒng)為centos,節(jié)點(diǎn)容器docker,編程語言python,框架pytorch和flask。使用python 與pytorch 編寫共識(shí)算法,使用flask編寫web程序接口,并利用docker容器裝載web程序模擬節(jié)點(diǎn),使用阿里云服務(wù)器來模擬多機(jī)多節(jié)點(diǎn)壓力測(cè)試的仿真實(shí)驗(yàn),采用siege 進(jìn)行壓力實(shí)驗(yàn)測(cè)試與吞吐量。使用阿里云服務(wù)器集群數(shù)據(jù)集作為神經(jīng)網(wǎng)絡(luò)訓(xùn)練集,學(xué)習(xí)率為1E-3。本章首先對(duì)算法中涉及到的參數(shù)進(jìn)行實(shí)驗(yàn)說明,其次對(duì)算法的性能測(cè)試和安全性進(jìn)行分析,最后將本文方法與相似算法進(jìn)行性能比對(duì)分析。

        3.1 參數(shù)測(cè)試

        (1)信譽(yù)值計(jì)算公式中的參數(shù)設(shè)置

        這里,討論信譽(yù)值計(jì)算公式中α和γ的取值。首先設(shè)置生成不同數(shù)量的區(qū)塊情況下,測(cè)試α對(duì)信譽(yù)值增長(zhǎng)的影響。其結(jié)果如圖5 所示,從圖中可以得出α越大,其信譽(yù)就越低,當(dāng)α為1 時(shí),由公式(1)可知,當(dāng)前節(jié)點(diǎn)的信譽(yù)值為上一輪的信譽(yù)值,所以其值不變。而當(dāng)α為0時(shí),當(dāng)前節(jié)點(diǎn)的信譽(yù)值則為神經(jīng)網(wǎng)絡(luò)輸出值。當(dāng)α為0.5和0.8時(shí),信譽(yù)值的增長(zhǎng)曲線相較于其他曲線較為光滑,代表信譽(yù)值的評(píng)估較為穩(wěn)定。本文在計(jì)算節(jié)點(diǎn)信譽(yù)值時(shí),希望當(dāng)前節(jié)點(diǎn)的信譽(yù)值由上一輪的信譽(yù)值和當(dāng)前神經(jīng)網(wǎng)絡(luò)輸出值共同決定,并且權(quán)重相同,所以本文采用0.5為默認(rèn)值。

        圖5 參數(shù)α 對(duì)信譽(yù)值的影響Fig.5 Effect of parameter α on reputation value

        公式(1)中參數(shù)γ的目的是為了控制被懲罰后節(jié)點(diǎn)信譽(yù)值的增長(zhǎng)速率,本文設(shè)置了一個(gè)節(jié)點(diǎn)的信譽(yù)值為-0.5,作惡次數(shù)與高度都為1 的節(jié)點(diǎn)。參數(shù)γ對(duì)其信譽(yù)值影響如圖6所示,從圖中可以看出,參數(shù)γ越大,信譽(yù)值從負(fù)數(shù)到正數(shù)的速率就會(huì)越快,當(dāng)γ為0.01 時(shí),惡意節(jié)點(diǎn)的信譽(yù)值增長(zhǎng)較為緩慢,很難在短期之內(nèi)參與現(xiàn)有的共識(shí),所以γ設(shè)置為0.01。

        圖6 參數(shù)γ 對(duì)信譽(yù)值的影響Fig.6 Effect of parameter γ on reputation value

        (2)信息熵區(qū)間與閾值設(shè)置

        本文設(shè)置信息熵區(qū)間閾值為等分和純隨機(jī)劃分兩種形式,目的比較在不同的節(jié)點(diǎn)數(shù)量下,消息接受率的大小,消息接受率為每秒接受回復(fù)消息數(shù)量除以每秒發(fā)送消息數(shù)量的百分比,實(shí)驗(yàn)結(jié)果如圖7所示。在圖7(a)中可以看出,在信息熵不劃分區(qū)間時(shí)算法的消息接受率隨著節(jié)點(diǎn)數(shù)量的增加,呈線性急速下降的趨勢(shì),而在劃分之后,總體來說消息接受率隨著節(jié)點(diǎn)數(shù)量增大,呈略微下降趨勢(shì),從圖7(b)~圖7(f)中可以看出,隨機(jī)選取信譽(yù)熵區(qū)間閾值方式的消息接受率明顯小于區(qū)間閾值等分的情況。

        圖7 信息熵劃分與閾值設(shè)置Fig.7 Information entropy division and threshold setting

        接著從區(qū)間個(gè)數(shù)的角度來看,在個(gè)數(shù)小于4的區(qū)間中,消息接受率低于大于等于4的區(qū)間,而區(qū)間數(shù)大于4之后的消息接受率和區(qū)間數(shù)為4 的差距較小。造成上述現(xiàn)象的原因,當(dāng)不劃分區(qū)間的時(shí),算法成星型拓?fù)溥M(jìn)行通信,隨著節(jié)點(diǎn)數(shù)量的增多,節(jié)點(diǎn)達(dá)到性能瓶頸,消息接受率在下降,而從實(shí)驗(yàn)可以得出閾值隨機(jī)增加了調(diào)整拓?fù)涞牟淮_定性,從而導(dǎo)致消息接受率下降速率大于閾值等分的情況。隨著區(qū)間數(shù)增多,算法的接受率下降的就會(huì)越慢,而區(qū)間數(shù)為4,下降速率已經(jīng)較小,故本文采用區(qū)間數(shù)為4。

        另外,從圖7 中可以看出,采用閾值等分的方式來進(jìn)行劃分信譽(yù)值的熵的方法,消息接受率普遍高于隨機(jī)劃分方法,故本文將閾值設(shè)置為0.2、0.4、0.6、0.8。

        (3)神經(jīng)網(wǎng)絡(luò)性能比較

        本文中節(jié)點(diǎn)信譽(yù)值評(píng)估的核心為神經(jīng)網(wǎng)絡(luò),本文測(cè)試了BP神經(jīng)網(wǎng)絡(luò)在不同層數(shù)下的訓(xùn)練結(jié)果,結(jié)果如圖8所示,在層數(shù)為三與四時(shí)神經(jīng)網(wǎng)絡(luò)的loss下降曲線不平滑,而在層數(shù)為五與六時(shí)的神經(jīng)網(wǎng)絡(luò)的loss下降曲線較為平滑,而層數(shù)為五與六神經(jīng)網(wǎng)絡(luò)的loss的最終值相對(duì)三與四層而言較小,而五與六層的神經(jīng)網(wǎng)絡(luò)之間的loss差距較小,只相差0.002,考慮到六層的神經(jīng)網(wǎng)絡(luò)訓(xùn)練參數(shù)大于五層的神經(jīng)網(wǎng)絡(luò),所消耗的時(shí)間會(huì)增多,所以本文信譽(yù)評(píng)估公式采用五層神經(jīng)網(wǎng)絡(luò)。

        圖8 神經(jīng)網(wǎng)絡(luò)不同層次的性能比較Fig.8 Performance comparison of neural networks at different levels

        (4)最大等待時(shí)間

        測(cè)試了交易數(shù)據(jù)的接收率在不同的等待時(shí)間的結(jié)果,結(jié)果如圖9所示。從圖9可以看出,隨著等待的時(shí)間越小,消息接受率就越小,而3 s等待時(shí)間的算法消息接受率可以接近1,所以本文采用3 s。造成上述的原因是因?yàn)?,隨著節(jié)點(diǎn)數(shù)量的增多,簽名的收集量與消息的傳播量均會(huì)增多,從而導(dǎo)致消息的接受延遲。

        圖9 最大等待時(shí)間的消息接受率Fig.9 Message acceptance rate of maximum waiting time

        3.2 性能測(cè)試

        本文設(shè)置并發(fā)量為每秒300 筆,測(cè)試本文與其他BFT 類相關(guān)算法之間的性能,其主要測(cè)試兩個(gè)方面:算法的吞吐量和時(shí)延。

        算法吞吐量測(cè)試結(jié)果如圖10所示。從圖10可以得出,除本文算法外,其余算法的TPS 隨著節(jié)點(diǎn)增多都成下降趨勢(shì),其中文獻(xiàn)[13]與PBFT 算法的TPS 下降趨勢(shì)最為明顯,在節(jié)點(diǎn)數(shù)量為100 之后,TPS 急劇下降,而文獻(xiàn)[14]的TPS略高于HotStuff。算法時(shí)延測(cè)試結(jié)果如圖11所示,從圖中可以看出,文獻(xiàn)[13]與PBFT算法的時(shí)延上升趨勢(shì)最為明顯,尤其在節(jié)點(diǎn)數(shù)量為100 之后,而文獻(xiàn)[14]的算法時(shí)延略低于HotStuff,本文算法的時(shí)延優(yōu)于其余算法。

        圖10 算法吞吐量測(cè)試結(jié)果Fig.10 Test results of algorithm throughput

        圖11 算法時(shí)延測(cè)試結(jié)果Fig.11 Test results of algorithm delay

        造成上述現(xiàn)象的原因是因?yàn)?,傳統(tǒng)PBFT 隨著節(jié)點(diǎn)數(shù)量的增多會(huì)造成通信量的急劇增多,從而導(dǎo)致TPS急劇下降與時(shí)延上升,文獻(xiàn)[13]是基于PBFT實(shí)現(xiàn),只修改了leader節(jié)點(diǎn)的選舉方式,并無性能上的優(yōu)化。HotStuff的TPS下降與時(shí)延的上升是因?yàn)槠洳捎眯切屯負(fù)洌@種通信拓?fù)浣Y(jié)構(gòu)存在硬件資源的瓶頸限制。文獻(xiàn)[14]雖然將節(jié)點(diǎn)按照屬性值劃分為不同的BFT共識(shí)小組,通過縮小通信規(guī)模的模式減小消息的傳播數(shù)量,然而這種方式治標(biāo)不治本,隨著節(jié)點(diǎn)規(guī)模增大,小組成員增多,吞吐量必然下降,時(shí)延也會(huì)相應(yīng)增長(zhǎng)。而本文采用樹狀進(jìn)行通信,有效地降低了通信的時(shí)間復(fù)雜度,節(jié)點(diǎn)之間的通信規(guī)??s小,解決了硬件資源的瓶頸限制,所以TPS 無明顯降低,時(shí)延也無明顯增長(zhǎng)。

        3.3 安全性分析

        對(duì)于聯(lián)盟鏈場(chǎng)景下BFT 類算法本身需要考慮的問題有兩點(diǎn):一是算法的活性,在本文可認(rèn)為leader 節(jié)點(diǎn)受到攻擊、宕機(jī)或作惡,從而導(dǎo)致leader進(jìn)行連續(xù)切換,系統(tǒng)是否仍然能正常運(yùn)行。二是一致性,除leader外其余節(jié)點(diǎn)故意作惡,如發(fā)送惡意消息,拒絕服務(wù)攻擊相應(yīng)等行為,系統(tǒng)能否及時(shí)發(fā)現(xiàn)和調(diào)整節(jié)點(diǎn),確保數(shù)據(jù)的一致性。所以本文將會(huì)從以下兩種角度來分析本文算法的安全性,分別是leader 節(jié)點(diǎn)連續(xù)切換時(shí)的吞吐量、在節(jié)點(diǎn)發(fā)送惡意消息以及拒絕服務(wù)情況下,惡意節(jié)點(diǎn)的信譽(yù)值變化以及叉度的變化。

        (1)leader節(jié)點(diǎn)連續(xù)切換

        本文設(shè)置100 個(gè)節(jié)點(diǎn)規(guī)模下,測(cè)試在leader 節(jié)點(diǎn)連續(xù)切換的情況下各個(gè)共識(shí)算法吞吐量的穩(wěn)定性,實(shí)驗(yàn)結(jié)果如圖12所示。從圖12中可以看出,五種算法在leader節(jié)點(diǎn)連續(xù)切換情況下,吞吐量出現(xiàn)不穩(wěn)定現(xiàn)象,其中本文算法吞吐量變化幅度最小、HotStuff次之、文獻(xiàn)[14]再次之、PBFT變化幅度最大,說明本文算法能在leader節(jié)點(diǎn)變化時(shí)保持系統(tǒng)性能的穩(wěn)定。

        圖12 leader連續(xù)切換測(cè)試結(jié)果Fig.12 Test results of leader continuous switching

        (2)惡意行為的節(jié)點(diǎn)信譽(yù)值變化

        本文測(cè)試擁有不同屬性值的四個(gè)節(jié)點(diǎn)node1 到node4 的信譽(yù)值變化,設(shè)置node1 與node2 分別保持較好與中等的特征屬性值,而node3 保持較為中等屬值(近似node2 節(jié)點(diǎn)屬性值)轉(zhuǎn)為較好屬性值(近似node1節(jié)點(diǎn)屬性值),而node4 設(shè)置為惡意節(jié)點(diǎn)并在第四輪開始拒絕服務(wù),并且為第四層節(jié)點(diǎn),其信譽(yù)值變化如圖13所示。

        圖13 節(jié)點(diǎn)信譽(yù)變化曲線Fig.13 Change curve of node reputation

        從圖13 中可以看出,node1 與node2 的信譽(yù)值都無明顯變化,而node3 的信譽(yù)值在緩慢增長(zhǎng),而在第四輪中node4發(fā)送惡意信息,其信譽(yù)值變化為-3.2左右,后面則緩慢開始增長(zhǎng)。出現(xiàn)信譽(yù)值變化穩(wěn)定的原因是因?yàn)樯窠?jīng)網(wǎng)絡(luò)預(yù)測(cè)信譽(yù)值的方式精度很高,相似的特征屬性值帶來的信譽(yù)值結(jié)果都近似相同,而對(duì)良好的特征屬性的節(jié)點(diǎn)都會(huì)給予相應(yīng)良好的分?jǐn)?shù),加上考慮上一輪的信譽(yù)變化,所以信譽(yù)值變化都不會(huì)明顯,具有較好的穩(wěn)定性。而對(duì)于惡意節(jié)點(diǎn)的信譽(yù)值計(jì)算,其信譽(yù)值直接變化為前一輪信譽(yù)值乘以所在層數(shù)的相反數(shù),后續(xù)在作惡的次數(shù)增加情況下,使用指數(shù)函數(shù)來計(jì)算其后續(xù)的信譽(yù)值,其后續(xù)的信譽(yù)增長(zhǎng)率近似于0,而信譽(yù)值小于0的節(jié)點(diǎn)將不具有參與共識(shí)的權(quán)利?;诖?,能最大程度地給予作惡節(jié)點(diǎn)懲罰,排除節(jié)點(diǎn)作惡的概率。

        本文實(shí)驗(yàn)設(shè)置100個(gè)節(jié)點(diǎn)進(jìn)行測(cè)試,節(jié)點(diǎn)信譽(yù)值的信息熵與叉度的對(duì)應(yīng)關(guān)系如圖14所示。

        圖14 叉度變化曲線Fig.14 Change curve of fork

        從圖14 可以看出,在信息熵較小的時(shí)候整個(gè)算法選擇叉度都較小,其中最低為2,而隨著信息熵的增大,其叉度也慢慢增大,叉度在隨著區(qū)間的增長(zhǎng)都在逐級(jí)遞增,最后叉度最高為100,也就是變換為星型拓?fù)涞姆绞?,造成上述的原因是因?yàn)樵谒惴? 中定義了四個(gè)區(qū)間,信息熵是反映隨機(jī)事件的穩(wěn)定性的度量,所以隨著熵的增加,不穩(wěn)定也會(huì)增加,根據(jù)算法1的定義,相應(yīng)的叉度會(huì)隨著熵的變化而變化。當(dāng)信息熵較小時(shí),節(jié)點(diǎn)的信譽(yù)值趨向穩(wěn)定,通信拓?fù)錇檩^小叉度的樹型結(jié)構(gòu),即使個(gè)別節(jié)點(diǎn)作惡也能快速利用備份節(jié)點(diǎn)替換,將作惡影響限制到最低。但信息熵較大時(shí),節(jié)點(diǎn)的信譽(yù)值不穩(wěn)定,通信拓?fù)錇檩^大叉度的樹型結(jié)構(gòu),較多節(jié)點(diǎn)作惡情況下,限制惡意節(jié)點(diǎn)將虛假消息進(jìn)一步傳播到其他節(jié)點(diǎn)。

        3.4 與相似文獻(xiàn)比較

        共識(shí)算法的比較通常從三個(gè)方面進(jìn)行比較,分別是去中心化程度、安全性和性能[20]。其中去中心化程度為參與共識(shí)的節(jié)點(diǎn)規(guī)模,安全性主要是抗拜占庭能力,leader 節(jié)點(diǎn)的連續(xù)切換的穩(wěn)定性,性能主要考量算法活性、吞吐量、通信的時(shí)間復(fù)雜度等因素。本文方法與現(xiàn)有相似文獻(xiàn)進(jìn)行對(duì)比的結(jié)果如表3所示。

        表3 與現(xiàn)有文獻(xiàn)的比較結(jié)果Table 3 Comparison with existing literature

        (1)擴(kuò)展性

        在擴(kuò)展性方面,文獻(xiàn)[3]將擴(kuò)展性分為三種情況,第一種情況為節(jié)點(diǎn)性能因節(jié)點(diǎn)規(guī)模的增加而急劇減小則為差,第二種情況為通過減小共識(shí)節(jié)點(diǎn)規(guī)模的方式以提升性能則為中,第三種情況隨著節(jié)點(diǎn)規(guī)模的增大,性能并無多大影響則為高。文獻(xiàn)[11]采用聚集簽名的方式,這樣使得驗(yàn)證規(guī)模大大縮小,從而使得擴(kuò)展性變高,文獻(xiàn)[14]通過節(jié)點(diǎn)的屬性值劃分不同的BFT小組,從小組內(nèi)挑選節(jié)點(diǎn)進(jìn)行共識(shí),使得通信規(guī)模減小,擴(kuò)展性得到提高,文獻(xiàn)[12]與文獻(xiàn)[13]都是基于傳統(tǒng)的BFT,所以可擴(kuò)展性方面都無提升。

        (2)leader節(jié)點(diǎn)選取方式

        文獻(xiàn)[11]采用試圖切換的方式來選舉,這種方式不能保證leader 節(jié)點(diǎn)是否為惡意節(jié)點(diǎn),所以安全性較低,而文獻(xiàn)[12]、文獻(xiàn)[13]與文獻(xiàn)[14]雖然使用了信譽(yù)模型作為leader節(jié)點(diǎn)的選舉方式,但是文獻(xiàn)[12]會(huì)出現(xiàn)leader寡頭的現(xiàn)象,文獻(xiàn)[13]與文獻(xiàn)[14]的選取方式都是一種線性的方式,相較于非線性模型而言,無法賦予節(jié)點(diǎn)特征相應(yīng)的權(quán)重,所以leader節(jié)點(diǎn)的方式安全性為中。

        (3)容錯(cuò)率

        文獻(xiàn)[11]、文獻(xiàn)[12]與文獻(xiàn)[14]都是基于BFT最大容錯(cuò)惡意節(jié)點(diǎn)為參與節(jié)點(diǎn)共識(shí)節(jié)點(diǎn)總數(shù)的33%,不同的是文獻(xiàn)[12]的閾值為總信譽(yù)值的33%,文獻(xiàn)[13]采用一種新的審查員機(jī)制將閾值控制在49%。

        (4)去中心化程度

        文獻(xiàn)[13]與文獻(xiàn)[12]都是基于BFT 上而來,所以通信拓?fù)湎拗屏似湫阅?,理論上性能最?yōu)節(jié)點(diǎn)數(shù)量為100節(jié)點(diǎn)左右,直接參與共識(shí)節(jié)點(diǎn)規(guī)模大小固定,所以去中心化程度為低,而文獻(xiàn)[11]采用了星型拓?fù)洌也捎昧魉蛥^(qū)塊,解決了隨著參與規(guī)模節(jié)點(diǎn)的數(shù)量增多性能急劇下降的問題,所以去中心化程度較高,而文獻(xiàn)[14]采用特定的特征節(jié)點(diǎn)直接參與共識(shí),本質(zhì)上與傳統(tǒng)PBFT沒有不同,所以去中心化程度也較低。

        (5)穩(wěn)定性

        Leader 連續(xù)切換實(shí)驗(yàn)表明,文獻(xiàn)[12]與文獻(xiàn)[13]都是基于傳統(tǒng)的BFT,所以leader 連續(xù)切換整體性能會(huì)大受影響,而文獻(xiàn)[11]采用流水線形式的區(qū)塊拓?fù)浣Y(jié)構(gòu),區(qū)塊之間的生成沒有強(qiáng)制性的先后關(guān)系,另外共識(shí)過程與節(jié)點(diǎn)切換合二為一,所以穩(wěn)定性較好,文獻(xiàn)[14]采用高信譽(yù)值節(jié)點(diǎn)組進(jìn)行替代低信譽(yù)值節(jié)點(diǎn)的方式,保證整體的穩(wěn)定性。

        (6)通信的時(shí)間復(fù)雜度

        文獻(xiàn)[11]、文獻(xiàn)[12]與文獻(xiàn)[14]都采用點(diǎn)對(duì)點(diǎn)的傳播方式,所以通信復(fù)雜較高,為O(n2),而文獻(xiàn)[11]采用星型拓?fù)浣Y(jié)構(gòu),所以通信的時(shí)間復(fù)雜度為O(n)。

        本文提出算法與上述文獻(xiàn)相比,使用了樹狀通信的方式,且只需一次傳播,一次收集,即可確認(rèn)交易是否已經(jīng)上鏈,這減少了通信次數(shù)與通信量。樹狀通信拓?fù)涫沟猛ㄐ诺臅r(shí)間復(fù)雜度降低,挑選信譽(yù)值較高的節(jié)點(diǎn)為通信拓?fù)渲懈叨容^高的節(jié)點(diǎn),配合自適應(yīng)的叉度調(diào)整方式進(jìn)一步保障了安全性與穩(wěn)定性,且通信規(guī)模不受到節(jié)點(diǎn)規(guī)模大小的限制。而文獻(xiàn)[11]存在明顯性能瓶頸,本文方法具有更好的普適性。

        4 結(jié)論與展望

        近年來,聯(lián)盟鏈架構(gòu)成為區(qū)塊鏈落地應(yīng)用的首選,其中聯(lián)盟鏈共識(shí)算法是影響系統(tǒng)性能的關(guān)鍵因素。目前,大部分聯(lián)盟鏈共識(shí)算法基于拜占庭容錯(cuò)實(shí)現(xiàn),但現(xiàn)有算法仍然存在著記賬節(jié)點(diǎn)選取安全性差和數(shù)據(jù)同步過程通信的時(shí)間復(fù)雜度高的問題。針對(duì)上述問題,本文提出一種自適應(yīng)通信拓?fù)涞陌菡纪ト蒎e(cuò)共識(shí)機(jī)制,根據(jù)BP 神經(jīng)網(wǎng)絡(luò)更加精確地獲取節(jié)點(diǎn)的信譽(yù)值,并根據(jù)節(jié)點(diǎn)信譽(yù)值隨機(jī)挑選記賬節(jié)點(diǎn)。同時(shí),根據(jù)節(jié)點(diǎn)的信譽(yù)值構(gòu)建m叉樹的通信拓?fù)洌行Ы档土藗鹘y(tǒng)P2P拓?fù)渲械耐ㄐ诺臅r(shí)間復(fù)雜度,并減小了節(jié)點(diǎn)作惡帶來的負(fù)面影響。仿真實(shí)驗(yàn)結(jié)果證明了本文的方法具有較高的吞吐量和低時(shí)延,同時(shí)具有較好的安全性。

        下一步,首先可以繼續(xù)對(duì)本文提出的機(jī)制進(jìn)行改進(jìn),如可在如下兩個(gè)方面值得深入研究:(1)修改底層拓?fù)?,將現(xiàn)有的鏈?zhǔn)浇Y(jié)構(gòu)調(diào)整為有向無環(huán)圖(directed acyclic graph,DAG)[21],由于DAG 具有高并發(fā)的并行特性,可進(jìn)一步提高系統(tǒng)的吞吐量;(2)利用分而治之的思想將區(qū)塊鏈網(wǎng)絡(luò)進(jìn)行分組分區(qū),縮小網(wǎng)絡(luò)的通信規(guī)模,使得共識(shí)速度提升。其次可以探索將本文提出的ACT-BFT機(jī)制應(yīng)用到其他分布式系統(tǒng)領(lǐng)域,如物聯(lián)網(wǎng)、無線傳感器網(wǎng)絡(luò)和車載自組織網(wǎng)絡(luò)等。

        猜你喜歡
        信譽(yù)信息熵復(fù)雜度
        以質(zhì)量求發(fā)展 以信譽(yù)贏市場(chǎng)
        基于信息熵可信度的測(cè)試點(diǎn)選擇方法研究
        信譽(yù)如“金”
        一種低復(fù)雜度的慣性/GNSS矢量深組合方法
        基于信息熵的實(shí)驗(yàn)教學(xué)量化研究
        求圖上廣探樹的時(shí)間復(fù)雜度
        一種基于信息熵的雷達(dá)動(dòng)態(tài)自適應(yīng)選擇跟蹤方法
        江蘇德盛德旺食品:信譽(yù)為翅飛五洲
        某雷達(dá)導(dǎo)51 頭中心控制軟件圈復(fù)雜度分析與改進(jìn)
        基于信息熵的IITFN多屬性決策方法
        亚洲色图视频在线观看网站| 99精品久久精品一区二区| 成人欧美一区二区三区的电影| 日本欧美国产精品| 国产精品三级1区2区3区| 国产91色综合久久免费| 亚洲va久久久噜噜噜久久男同| 国产精品jizz观看| 一区二区在线视频大片| 伊人青青草综合在线视频免费播放 | 日日噜噜夜夜狠狠va视频| 国产精品99久久精品爆乳| 国产成人AV乱码免费观看| 成人性生交大全免费看| 国产精品嫩草99av在线| 国产精品多人P群无码| 一区二区三区在线蜜桃| 中文字幕一区二区中出后入| 亚洲日韩一区二区三区| 亚洲电影一区二区三区| 日本熟妇裸体视频在线| 亚洲国产精品久久艾草| 亚洲欧美日韩国产精品专区| 国产丝袜免费精品一区二区 | 囯产精品无码一区二区三区| 国产乱沈阳女人高潮乱叫老| 国产91对白在线观看| AV无码系列一区二区三区| 男男啪啪激烈高潮无遮挡网站网址 | 国产在线精彩自拍视频| 日本饥渴人妻欲求不满| 午夜成人无码福利免费视频| 天堂在线观看av一区二区三区| 日本久久一级二级三级| 校园春色综合久久精品中文字幕| 亚洲人成无码网站在线观看| 亚洲精品成AV无在线观看| 国产午夜视频高清在线观看| 一本加勒比hezyo无码专区| 亚洲av无码一区二区乱子伦| 精品中文字幕日本久久久|