• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于節(jié)點(diǎn)可信度的改進(jìn)PBFT 算法

    2023-08-24 06:48:22翟健宏
    關(guān)鍵詞:共識(shí)集群廣播

    韓 璐, 翟健宏, 楊 茹

    (哈爾濱工業(yè)大學(xué)網(wǎng)絡(luò)空間安全學(xué)院, 哈爾濱 150001)

    0 引 言

    共識(shí)機(jī)制[1]作為區(qū)塊鏈[2]的核心技術(shù),能夠在缺乏中央控制的網(wǎng)絡(luò)中,通過自組織、大規(guī)模協(xié)作的方式實(shí)現(xiàn)賬本的分布式一致性,也是區(qū)塊鏈通過技術(shù)手段而非中心化機(jī)構(gòu)構(gòu)建去中心化“信任”網(wǎng)絡(luò)的關(guān)鍵算法。 良好的共識(shí)算法[3]有助于提高區(qū)塊鏈系統(tǒng)的性能效率,對(duì)維護(hù)系統(tǒng)的穩(wěn)定運(yùn)行和節(jié)點(diǎn)相互信任起著重要作用。 然而,現(xiàn)有的共識(shí)算法各有優(yōu)劣,普遍存在擴(kuò)展性差、交易確認(rèn)時(shí)間長(zhǎng)、應(yīng)用場(chǎng)景受限等問題,成為制約區(qū)塊鏈項(xiàng)目落地的主要因素[4]。

    實(shí)用拜占庭共識(shí)算法(Practical Byzantine Fault Tolerance,PBFT)[5]作為目前聯(lián)盟區(qū)塊鏈?zhǔn)褂幂^多的共識(shí)算法,不僅實(shí)現(xiàn)了節(jié)點(diǎn)之間狀態(tài)的信任,而且很大程度上降低了系統(tǒng)因拜占庭錯(cuò)誤產(chǎn)生的巨大開銷[6],但存在對(duì)帶寬要求較高,節(jié)點(diǎn)數(shù)量固定等缺陷。 本課題對(duì)PBFT 算法在fabric 聯(lián)盟鏈[7]中的實(shí)現(xiàn)進(jìn)行研究,利用PBFT 算法的特點(diǎn),保證了網(wǎng)絡(luò)中節(jié)點(diǎn)的一致性。 通過部署鏈碼在docker[8]環(huán)境中對(duì)算法的性能進(jìn)行檢測(cè),并根據(jù)檢測(cè)結(jié)果對(duì)PBFT 算法進(jìn)行改進(jìn)。

    本文對(duì)區(qū)塊鏈防作弊技術(shù)進(jìn)行研究,提出了一種基于節(jié)點(diǎn)可信度的NRPBFT(node-reliabilitybased PBFT consensus algorithm)共識(shí)算法,主要貢獻(xiàn)如下:

    (1)提出了NRPBFT 算法,采用選舉集群的方式,將所有的節(jié)點(diǎn)分成普通節(jié)點(diǎn)和共識(shí)節(jié)點(diǎn)。

    (2)利用PBFT 算法的特性實(shí)現(xiàn)了共識(shí)過程的防作弊,同時(shí)優(yōu)化了算法的性能,提高了算法的效率。

    (3)利用20 個(gè)端口模擬區(qū)塊鏈節(jié)點(diǎn),利用tcp實(shí)現(xiàn)數(shù)據(jù)在端口之間的同步,通過實(shí)驗(yàn)驗(yàn)證改進(jìn)后的共識(shí)算法的可行性。

    本文的組織結(jié)構(gòu)如下:第1 節(jié)介紹了NRPBFT算法方案;第2 節(jié)闡述了代碼優(yōu)化的過程及結(jié)果;第3 節(jié)結(jié)合實(shí)驗(yàn)說(shuō)明了該方案的可行性與高效性;第4節(jié)總結(jié)了全文,并討論了后續(xù)的工作與改進(jìn)之處。

    1 NRPBFT 算法方案

    1.1 改進(jìn)方法介紹

    針對(duì)PBFT 算法存在問題的分析,結(jié)合調(diào)研的結(jié)果和文獻(xiàn)資料匯總,本節(jié)提出了一種NRPBFT 算法方案。 這個(gè)方案主要是從縮小網(wǎng)絡(luò)的規(guī)模的角度出發(fā),利用選舉集群的方式,將所有的節(jié)點(diǎn)分成普通節(jié)點(diǎn)和共識(shí)節(jié)點(diǎn)。 利用節(jié)點(diǎn)可信度評(píng)估公式對(duì)節(jié)點(diǎn)的可信度進(jìn)行評(píng)估, 并對(duì)節(jié)點(diǎn)的可信度進(jìn)行排序,選可信度最高的前p個(gè)節(jié)點(diǎn)作為共識(shí)集群(2f≤p <3f,f表示網(wǎng)絡(luò)中惡意節(jié)點(diǎn)的數(shù)量)。 同時(shí),對(duì)主節(jié)點(diǎn)的選舉做了一些改動(dòng),選取可信度最高的節(jié)點(diǎn)作為主節(jié)點(diǎn),大大降低了惡意節(jié)點(diǎn)成為主節(jié)點(diǎn)的概率。主要從以下2 點(diǎn)進(jìn)行改進(jìn):

    (1)根據(jù)可信度將網(wǎng)絡(luò)中的節(jié)點(diǎn)分成2 種角色。普通節(jié)點(diǎn)只負(fù)責(zé)完成交易,共識(shí)節(jié)點(diǎn)集群中可信度最高的節(jié)點(diǎn)會(huì)成為主節(jié)點(diǎn)。 主節(jié)點(diǎn)接收客戶端的消息,在有p個(gè)共識(shí)節(jié)點(diǎn)的共識(shí)集群中進(jìn)行廣播,對(duì)消息進(jìn)行簽名排序后,廣播給其他所有節(jié)點(diǎn)。 節(jié)點(diǎn)收到至少p/2 個(gè)相同的消息,認(rèn)為這個(gè)信息正確,寫入內(nèi)存,并將確認(rèn)信息回復(fù)給主節(jié)點(diǎn)。

    (2) 采用可信度評(píng)估的方式來(lái)選舉共識(shí)集群和主節(jié)點(diǎn)。 在每次共識(shí)結(jié)束后,都需要根據(jù)可信度評(píng)估算法重新計(jì)算每個(gè)節(jié)點(diǎn)的可信度,這樣就實(shí)現(xiàn)了節(jié)點(diǎn)動(dòng)態(tài)加入或者退出共識(shí)集群。 對(duì)于共識(shí)集群中作惡的節(jié)點(diǎn),研究在評(píng)估的時(shí)候采取相應(yīng)的懲罰機(jī)制,加上懲罰系數(shù),降低其可信度評(píng)估結(jié)果。 這種方式不僅能降低主節(jié)點(diǎn)隨意選取帶來(lái)的風(fēng)險(xiǎn),也能保證系統(tǒng)的動(dòng)態(tài)性。

    網(wǎng)絡(luò)拓?fù)湓O(shè)計(jì)如圖1 所示。

    圖1 改進(jìn)后PBFT 算法拓?fù)鋱DFig. 1 Topological diagram of the improved PBFT algorithm

    1.2 NRPBFT 優(yōu)化算法流程

    (1)客戶端c將請(qǐng)求信息發(fā)送到主節(jié)點(diǎn),主節(jié)點(diǎn)驗(yàn)證,提取消息摘要并簽名后廣播給所有共識(shí)節(jié)點(diǎn),廣播的格式為<<PREPARE,n,S,D >,data >,其中PREPARE是命令名稱,代表信息處于的階段是主節(jié)點(diǎn)在共識(shí)集群中廣播信息階段,n是主節(jié)點(diǎn)為信息分配的序列號(hào),S是主節(jié)點(diǎn)的簽名,D是主節(jié)點(diǎn)提取的信息摘要,data是待共識(shí)信息。

    (2) 認(rèn)證共識(shí)階段。 共識(shí)集群中的所有節(jié)點(diǎn)收到請(qǐng)求后,首先驗(yàn)證交易簽名和摘要信息,驗(yàn)證成功后將交易數(shù)據(jù)存儲(chǔ)到內(nèi)存中,對(duì)信息進(jìn)行簽名后,將信息廣播給所有的節(jié)點(diǎn), 廣播信息格式為<<AUTHENTICATION,credit_i,n,S,D >,data >, 其中AUTHENTICATION是這一階段的命令名稱,credit_i是節(jié)點(diǎn)的可信度的值。 信息廣播到所有節(jié)點(diǎn)后,進(jìn)入提交階段。 如果交易信息驗(yàn)證不成功,則認(rèn)為主節(jié)點(diǎn)可能出了問題,重新對(duì)主節(jié)點(diǎn)進(jìn)行選舉。

    (3) 提交階段。 所有的節(jié)點(diǎn)都會(huì)收到多個(gè)由共識(shí)節(jié)點(diǎn)發(fā)來(lái)的信息,節(jié)點(diǎn)接收到信息后,對(duì)簽名和序列號(hào)進(jìn)行驗(yàn)證,有大于等于p/2 個(gè)信息驗(yàn)證成功后,將信息存儲(chǔ)到內(nèi)存中,并向主節(jié)點(diǎn)進(jìn)行提交。 信息提交的格式為<SUBMIT,n,S,D,i >,其中i是節(jié)點(diǎn)的編號(hào)。 主節(jié)點(diǎn)在一定時(shí)間內(nèi)接收到2f+1 個(gè)一致的信息,認(rèn)為提交階段完成,主節(jié)點(diǎn)將達(dá)成共識(shí)的信息發(fā)送給客戶端,完成共識(shí)。

    算法的流程如圖2 所示。 NRPBFT 算法步驟具體如下。

    圖2 改進(jìn)的PBFT 算法流程圖Fig. 2 Flow chart of improved PBFT algorithm

    算法1 新PBFT 算法

    輸入主節(jié)點(diǎn)編號(hào)N0,P個(gè)共識(shí)節(jié)點(diǎn)(N1-Np),n - p個(gè)普通節(jié)點(diǎn)(Np+1,Nn),節(jié)點(diǎn)可信度的值credit - i,客戶端發(fā)送的交易信息data

    輸出:節(jié)點(diǎn)對(duì)客戶端的reply

    1:for 主節(jié)點(diǎn)N0接收客戶端發(fā)送的交易信息data

    2:N0提取消息摘要D,對(duì)D簽名得到S,將信息廣播給共識(shí)節(jié)點(diǎn),廣播信息格式為<<PREPARE,n,S,D >,data >,其中n是消息序列號(hào)

    3:共識(shí)節(jié)點(diǎn)Np驗(yàn)證交易的簽名和摘要

    4:if 簽名S和摘要D驗(yàn)證成功then

    5: 共識(shí)節(jié)點(diǎn)Np將交易信息儲(chǔ)存到內(nèi)存中

    6: 共識(shí)節(jié)點(diǎn)Np對(duì)交易信息進(jìn)行簽名,廣播給所有節(jié)點(diǎn), 廣播格式為<< AUTHENTICATION,credit_i,n,S,D >,data >

    7:else then

    8: 觸發(fā)主節(jié)點(diǎn)更換協(xié)議,按照可信度排序更換主節(jié)點(diǎn),重復(fù)步驟1

    9: 普通節(jié)點(diǎn)Nn接收到共識(shí)節(jié)點(diǎn)Np的廣播信息,驗(yàn)證交易的簽名和摘要

    10:if 節(jié)點(diǎn)有P/2 個(gè)簽名S和摘要D驗(yàn)證成功then

    11: 普通節(jié)點(diǎn)Nn將交易信息儲(chǔ)存到內(nèi)存中

    12: 向主節(jié)點(diǎn)N0發(fā)送確認(rèn)信息,信息提交的格式為<SUBMIT,n,S,D,i >,其中i是節(jié)點(diǎn)的編號(hào)

    13:else then

    14: 重新評(píng)估節(jié)點(diǎn)的可信度,重新選舉共識(shí)節(jié)點(diǎn)集群

    15:if 主節(jié)點(diǎn)N0接收到2f+1 個(gè)一致的信息then

    16: 主節(jié)點(diǎn)N0將確認(rèn)信息提交給客戶端

    17: end

    18: else then

    19: 觸發(fā)主節(jié)點(diǎn)更換協(xié)議,按照可信度排序更換主節(jié)點(diǎn),重復(fù)步驟1

    還要一值的是,這里的節(jié)點(diǎn)1 和節(jié)點(diǎn)2 均屬于共識(shí)節(jié)點(diǎn),節(jié)點(diǎn)3 屬于拜占庭節(jié)點(diǎn)。

    1.3 節(jié)點(diǎn)可信度計(jì)算模塊

    節(jié)點(diǎn)可信度計(jì)算模塊是以往的研究中和研發(fā)團(tuán)隊(duì)一起提出的方法。 可信度是信任的量化表示,表示一個(gè)節(jié)點(diǎn)中數(shù)據(jù)可以被另一節(jié)點(diǎn)接受的信任程度。 可以通過節(jié)點(diǎn)自身的行為來(lái)判斷節(jié)點(diǎn)的可信度。

    將生成一個(gè)區(qū)塊的時(shí)間定義為一個(gè)評(píng)審周期,其中評(píng)審內(nèi)容包括6 項(xiàng),節(jié)點(diǎn)每接收到一個(gè)區(qū)塊會(huì)動(dòng)態(tài)更新該表格中的礦工節(jié)點(diǎn)、該表格中的礦工節(jié)點(diǎn)、節(jié)點(diǎn)參與驗(yàn)證的區(qū)塊總數(shù)、節(jié)點(diǎn)正確驗(yàn)證的區(qū)塊數(shù)、節(jié)點(diǎn)最新打包區(qū)塊字段,每個(gè)周期結(jié)束后更新信任度和新的起始區(qū)塊字段,各參數(shù)設(shè)置見表1。

    表1 模型參數(shù)設(shè)置Tab. 1 Model parameters settings

    將表1 中各字段值帶入式(1)中進(jìn)行計(jì)算,檢驗(yàn)計(jì)算結(jié)果是否達(dá)到可信度閾值:

    其中,表示第i個(gè)節(jié)點(diǎn)在當(dāng)前評(píng)審周期的可信度;τ表示在一個(gè)評(píng)審周期內(nèi)產(chǎn)生的區(qū)塊數(shù);ω表示第i個(gè)節(jié)點(diǎn)積極參與爭(zhēng)奪記賬權(quán)并投票的區(qū)塊數(shù)。 對(duì)于在該評(píng)審周期內(nèi)產(chǎn)生的第x個(gè)區(qū)塊,當(dāng)?shù)趇個(gè)節(jié)點(diǎn)正常參與投票時(shí),將νx設(shè)置為1,μx設(shè)置為0,否則νx設(shè)置為0,μx設(shè)置為1,σ是惡意投票對(duì)于節(jié)點(diǎn)可信度影響所占的比重,該值越大,懲罰權(quán)重越大。 研究可知,式(1) 主要用來(lái)衡量節(jié)點(diǎn)在當(dāng)前評(píng)審周期內(nèi)的表現(xiàn)情況。

    由于式(1)基于logistics 模型[9]提出,而該模型在對(duì)數(shù)增長(zhǎng)期間函數(shù)值增長(zhǎng)較快,導(dǎo)致對(duì)數(shù)增長(zhǎng)期間節(jié)點(diǎn)信任度相較之前值偏高,因此使用式(2)進(jìn)行修正:

    其中,trust(i)cur表示當(dāng)前周期的信任度,trust(i)pre表示上個(gè)周期的信任度。 通過λ來(lái)對(duì)當(dāng)前周期信任度計(jì)算進(jìn)行修正,添加節(jié)點(diǎn)信任歷史相關(guān)性,該參數(shù)可由用戶定義。 研究可知,修正方法主要是中和了該節(jié)點(diǎn)在上輪評(píng)審周期中的表現(xiàn)情況一旦某個(gè)節(jié)點(diǎn)出錯(cuò),則在下一輪對(duì)該節(jié)點(diǎn)可信度進(jìn)行評(píng)審的時(shí)候,惡意的節(jié)點(diǎn)會(huì)被乘以一個(gè)特別小的系數(shù)來(lái)降低下一輪評(píng)審中此節(jié)點(diǎn)的可信度。

    1.4 方案分析

    本方案的核心特點(diǎn)在于實(shí)現(xiàn)了一個(gè)基于可信度的PBFT 算法優(yōu)化方案、即NRPBFT,該方案具有以下優(yōu)勢(shì):

    (1)高可靠性:選可信度最高的前p個(gè)節(jié)點(diǎn)作為共識(shí)集群,在一定程度上保證了系統(tǒng)的安全性和可靠性。 研究中也對(duì)主節(jié)點(diǎn)的選舉做了一些改動(dòng),選取可信度最高的節(jié)點(diǎn)作為主節(jié)點(diǎn),大大降低了惡意節(jié)點(diǎn)成為主節(jié)點(diǎn)的概率。 從節(jié)點(diǎn)接收到主節(jié)點(diǎn)的廣播信息后,首先會(huì)對(duì)消息的簽名、消息的序號(hào)和消息的摘要進(jìn)行驗(yàn)證,3 個(gè)信息都驗(yàn)證通過后才能接收這個(gè)需要共識(shí)的內(nèi)容,這一過程也大大地保證了信息的可靠性和安全性。

    (2)高可用性:原本的PBFT 算法在進(jìn)行共識(shí)的過程中需要經(jīng)過1 次單點(diǎn)全廣播和2 次全點(diǎn)全廣播,基于可信度的PBFT 優(yōu)化算法只需要經(jīng)過一次一對(duì)多的傳輸、一次多對(duì)一的傳輸及一次全點(diǎn)全廣播。 區(qū)塊鏈中節(jié)點(diǎn)與節(jié)點(diǎn)之間的傳輸過程消耗的資源非常多,優(yōu)化后的方法減少了節(jié)點(diǎn)與節(jié)點(diǎn)之間信息傳輸?shù)拇螖?shù),因此可以降低達(dá)成共識(shí)的時(shí)間且提升系統(tǒng)的性能。

    (3)兼容性:本方案是對(duì)區(qū)塊鏈的共識(shí)算法進(jìn)行改進(jìn),共識(shí)算法是區(qū)塊鏈的核心技術(shù)之一,可以在以太坊中、聯(lián)盟鏈、或者其他區(qū)塊鏈平臺(tái)中直接進(jìn)行應(yīng)用。

    本方案的缺點(diǎn)是由于主節(jié)點(diǎn)一方面要接收來(lái)自客戶端的信息,另一方面還要對(duì)節(jié)點(diǎn)共識(shí)的結(jié)果進(jìn)行統(tǒng)計(jì)并回復(fù)給客戶端,一旦節(jié)點(diǎn)數(shù)量非常大,主節(jié)點(diǎn)容易過載。 除此以外,如果主節(jié)點(diǎn)是惡意節(jié)點(diǎn),會(huì)對(duì)整個(gè)系統(tǒng)的共識(shí)結(jié)果造成重大的影響,但是由于主節(jié)點(diǎn)是整個(gè)網(wǎng)路中可信度最高的節(jié)點(diǎn),因此主節(jié)點(diǎn)是惡意節(jié)點(diǎn)的可能性大大降低。

    2 NRPBFT 算法整體流程

    本節(jié)以上一節(jié)提出的NRPBFT 算法方案為基礎(chǔ),描述了NRPBFT 算法的整體流程,給出了更詳細(xì)的設(shè)計(jì)方案,包括一些關(guān)鍵模塊的實(shí)現(xiàn)方法和代碼分析,同時(shí)介紹了Hyperledger Fabric 的搭建,以及編寫鏈碼驗(yàn)證算法改進(jìn)的結(jié)果。

    2.1 NRPBFT 算法整體流程

    NRPBFT 算法按照運(yùn)行過程可以分成2 部分。一部分是共識(shí)過程,另一部分是視圖更換過程。 一旦共識(shí)過程出現(xiàn)問題會(huì)立即觸發(fā)視圖更換過程。 對(duì)此擬展開研究分述如下。

    (1)共識(shí)過程

    ①準(zhǔn)備階段。 這一步主要目的是讓客戶端知道哪個(gè)節(jié)點(diǎn)是主節(jié)點(diǎn)。 在交易請(qǐng)求階段,客戶端將交易發(fā)送給所有節(jié)點(diǎn),節(jié)點(diǎn)接收到交易信息后,驗(yàn)證簽名,驗(yàn)證成功后判斷交易是否為query 類型的交易,如果是,則執(zhí)行智能合約,查詢本地賬本的余額信息并返回結(jié)果,這個(gè)過程就結(jié)束了。 如果是deploy 或invoke 類型的請(qǐng)求交易,則需要利用共識(shí)機(jī)制來(lái)得到結(jié)果。 對(duì)于需要共識(shí)的交易,普通節(jié)點(diǎn)是無(wú)法處理的,只有主節(jié)點(diǎn)可以接收并進(jìn)行回復(fù),因此,在交易請(qǐng)求階段相當(dāng)于客戶端把需要共識(shí)的交易信息發(fā)送給了所有節(jié)點(diǎn),在驗(yàn)證階段,只有主節(jié)點(diǎn)能接收,也就是選出了主節(jié)點(diǎn)。 主節(jié)點(diǎn)接收到交易信息后,對(duì)信息進(jìn)行編號(hào),提取摘要并簽名后發(fā)送給共識(shí)集群中的節(jié)點(diǎn)進(jìn)行共識(shí),進(jìn)入認(rèn)證共識(shí)階段。準(zhǔn)備階段拓?fù)湟妶D3。

    圖3 準(zhǔn)備階段拓?fù)鋱DFig. 3 Topology diagram of preparation phase

    ②認(rèn)證共識(shí)階段。 在認(rèn)證階段,共識(shí)集群中節(jié)點(diǎn)收到主節(jié)點(diǎn)發(fā)送的信息后,對(duì)信息的簽名、摘要、編號(hào)進(jìn)行驗(yàn)證,驗(yàn)證通過后放入內(nèi)存,對(duì)信息進(jìn)行簽名并打包生成提交報(bào)文,在整個(gè)網(wǎng)絡(luò)的節(jié)點(diǎn)中進(jìn)行廣播,進(jìn)入提交認(rèn)證階段。 在任何一個(gè)階段如果驗(yàn)證失敗或者接收信息超時(shí),則認(rèn)為主節(jié)點(diǎn)可能是惡意節(jié)點(diǎn),觸發(fā)視圖更換協(xié)議對(duì)主節(jié)點(diǎn)和共識(shí)集群中的節(jié)點(diǎn)進(jìn)行更換并重啟共識(shí)過程。 認(rèn)證共識(shí)階段拓?fù)湟妶D4。

    圖4 認(rèn)證共識(shí)階段拓?fù)鋱DFig. 4 Topology diagram of authentication consensus phase

    在提交認(rèn)證階段,共識(shí)節(jié)點(diǎn)將信息在整個(gè)網(wǎng)絡(luò)中進(jìn)行廣播,普通節(jié)點(diǎn)收到廣播信息后,對(duì)信息的簽名、摘要、視圖編號(hào)進(jìn)行驗(yàn)證,驗(yàn)證通過后放入內(nèi)存,一旦普通節(jié)點(diǎn)收到了p/2 個(gè)驗(yàn)證通過的提交認(rèn)證消息,生成提交報(bào)文,提交給主節(jié)點(diǎn),進(jìn)入確認(rèn)提交階段。 在任何一個(gè)階段如果驗(yàn)證失敗或者接收信息超時(shí),則認(rèn)為主節(jié)點(diǎn)可能是惡意節(jié)點(diǎn),觸發(fā)視圖更換協(xié)議對(duì)主節(jié)點(diǎn)和共識(shí)集群中的節(jié)點(diǎn)進(jìn)行更換并重啟共識(shí)過程。

    ③確認(rèn)提交階段。 確認(rèn)提交階段拓?fù)湟妶D5。

    圖5 確認(rèn)提交階段拓?fù)鋱DFig. 5 Topology diagram of confirmation commit phase

    (2)視圖更換過程。 觸發(fā)節(jié)點(diǎn)更換的條件主要有以下幾點(diǎn):

    ①過了指定時(shí)間,普通節(jié)點(diǎn)或者共識(shí)集群的節(jié)點(diǎn)未收到主節(jié)點(diǎn)的共識(shí)請(qǐng)求。

    ②信息的格式不合法。

    ③沒有在規(guī)定時(shí)間內(nèi)完成主節(jié)點(diǎn)更換。

    ④在共識(shí)過程中,多個(gè)節(jié)點(diǎn)的視圖編號(hào)是舊的編號(hào)或者簽名摘要驗(yàn)證失敗。

    在NRPBFT 算法中,由原PBFT 算法根據(jù)節(jié)點(diǎn)編號(hào)順序選舉主節(jié)點(diǎn)改變?yōu)槔霉?jié)點(diǎn)的可信度來(lái)選擇主節(jié)點(diǎn),這種做法避免了主節(jié)點(diǎn)隨意選舉帶來(lái)的風(fēng)險(xiǎn),同時(shí)大大降低了主節(jié)點(diǎn)成為惡意節(jié)點(diǎn)的可能性。

    在主節(jié)點(diǎn)更換階段,視圖編號(hào)自加1 作為新的視圖編號(hào),所有節(jié)點(diǎn)封裝ViewChange 報(bào)文,報(bào)文中封裝了各個(gè)節(jié)點(diǎn)的可信度和簽名,在網(wǎng)絡(luò)中進(jìn)行廣播,如圖6(a)所示。

    圖6 視圖更換拓?fù)鋱DFig. 6 View replacement topology

    節(jié)點(diǎn)接收到其他節(jié)點(diǎn)的廣播信息后,選出可信度最高的節(jié)點(diǎn)作為主節(jié)點(diǎn),如果2f+1 個(gè)節(jié)點(diǎn)選出的可信度最高的節(jié)點(diǎn)是同一個(gè),則認(rèn)為這個(gè)節(jié)點(diǎn)就是下一個(gè)主節(jié)點(diǎn)。 在這里,每個(gè)節(jié)點(diǎn)都會(huì)計(jì)算除了主節(jié)點(diǎn)外可信度最好的p個(gè)節(jié)點(diǎn),組成該視圖下的共識(shí)集群。 在主節(jié)點(diǎn)確認(rèn)階段,新的主節(jié)點(diǎn)封裝newView報(bào)文并簽名,在網(wǎng)絡(luò)中進(jìn)行廣播。 如此,新的主節(jié)點(diǎn)就更換完成,如圖6(b)所示,N2節(jié)點(diǎn)是可信度最高的節(jié)點(diǎn),就會(huì)被選舉為下一個(gè)主節(jié)點(diǎn),接下來(lái)重新進(jìn)行共識(shí)過程。

    2.2 NRPBFT 算法結(jié)構(gòu)及實(shí)現(xiàn)

    整個(gè)NRPBFT 算法的代碼各部分功能見表2。

    表2 NRPBFT 各模塊功能表Tab. 2 Function table of each module of NRPBFT

    下面對(duì)NRPBFT 算法的具體實(shí)現(xiàn)進(jìn)行描述,包括數(shù)據(jù)結(jié)構(gòu)的類型定義和相關(guān)的實(shí)現(xiàn),還有關(guān)鍵變量和關(guān)鍵函數(shù)的調(diào)用過程。

    (1)數(shù)據(jù)結(jié)構(gòu)定義。 節(jié)點(diǎn)的定義如圖7 所示。其中,nodeID用來(lái)存儲(chǔ)屬于節(jié)點(diǎn)的編號(hào),addr用來(lái)存儲(chǔ)節(jié)點(diǎn)的 ip 地址+端口號(hào),rsaPrivKey和rsaPubKey分別存儲(chǔ)節(jié)點(diǎn)的公私鑰,credit存儲(chǔ)節(jié)點(diǎn)的可信度的值。

    圖7 節(jié)點(diǎn)定義圖Fig. 7 Node definition graph

    RPBFT 信息結(jié)構(gòu)的定義如圖8 所示。 其中,node存儲(chǔ)的是上述的節(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)信息,sequenceID存儲(chǔ)的是交易的序號(hào),會(huì)隨著交易數(shù)量的增加而自增。Lock定義了一個(gè)鎖,在多線程操作的過程中可以保證獲取數(shù)據(jù)的一致性和準(zhǔn)確性。messagePool、prePareConfirmCount、commitConfirmCount分別存儲(chǔ)消息本身、準(zhǔn)備階段的消息和確認(rèn)消息。isCommitBordcast是用來(lái)判斷是否進(jìn)行過廣播的標(biāo)志位,isReply是用來(lái)判斷是否回復(fù)信息給主節(jié)點(diǎn)的標(biāo)志位。

    圖8 RPBFT 信息結(jié)構(gòu)定義圖Fig. 8 RPBFT information structure definition diagram

    (2)變量定義。 該部分介紹在代碼中定義的全局變量及其含義。 變量定義見表3。 由表3 可知,nodeCount定義了節(jié)點(diǎn)的數(shù)量,根據(jù)這個(gè)變量值,生成nodeCount個(gè)節(jié)點(diǎn)的公私鑰對(duì)。nodeCredit定義了共識(shí)集群節(jié)點(diǎn)的數(shù)量,在共識(shí)過程中也是根據(jù)這個(gè)值判斷是否收到了所有共識(shí)節(jié)點(diǎn)的消息。clientAddr定義了客戶端的監(jiān)聽地址,nodeTable和credit_nodeTable都是map類型的數(shù)據(jù),分別存儲(chǔ)節(jié)點(diǎn)和地址的鍵值對(duì)及共識(shí)集群中的節(jié)點(diǎn)和地址的鍵值對(duì)。primaryNode記錄主節(jié)點(diǎn)的id,記錄每一個(gè)視圖下主節(jié)點(diǎn)的id。localMessagePool是一個(gè)未定義的數(shù)組,用于存儲(chǔ)客戶端發(fā)送的消息。start和end分別記錄算法的開始時(shí)間和結(jié)束時(shí)間,二者作差便可以得到算法的運(yùn)行時(shí)間,prefixCMDLength是命令名稱的長(zhǎng)度,憑借這個(gè)值取得消息的前12 位,分析前12位的消息即可得出目前處于共識(shí)的哪個(gè)階段。

    表3 合約變量定義表Tab. 3 Contract variable definition table

    (3)功能方法。 關(guān)鍵方法定義及介紹見表4。

    表4 關(guān)鍵方法定義表Tab. 4 Key method definition table

    3 實(shí)驗(yàn)結(jié)果

    3.1 實(shí)驗(yàn)環(huán)境

    本文的Windows 實(shí)驗(yàn)環(huán)境的參數(shù)見表5,基于此環(huán)境配置,利用端口號(hào)模擬節(jié)點(diǎn),實(shí)現(xiàn)了NRPBFT算法的運(yùn)行。

    表5 設(shè)備參數(shù)表Tab. 5 Equipment parameters table

    運(yùn)行上一節(jié)描述的NRPBFT 算法和原PBFT 算法,這里以4 個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)為例,分別運(yùn)行優(yōu)化前后的算法。 在PBFT 算法中,N0是主節(jié)點(diǎn),N1、N2、N3是普通節(jié)點(diǎn)。 在NRPBFT 算法中,設(shè)置4 個(gè)節(jié)點(diǎn)情況下,只能存在一個(gè)惡意節(jié)點(diǎn),根據(jù)p的范圍為2f≤p <3f,這里選擇節(jié)點(diǎn)N1和節(jié)點(diǎn)N2組成共識(shí)集群,主節(jié)點(diǎn)為節(jié)點(diǎn)N0,節(jié)點(diǎn)N3是普通節(jié)點(diǎn)。

    PBFT 算法4 個(gè)節(jié)點(diǎn)時(shí)的執(zhí)行時(shí)間見圖9。

    圖9 PBFT 算法執(zhí)行時(shí)間Fig. 9 Algorithm execution time of PBFT

    NRPBFT 算法4 個(gè)節(jié)點(diǎn)時(shí)的執(zhí)行時(shí)間見圖10。

    圖10 NRPBFT 算法執(zhí)行時(shí)間Fig. 10 Algorithm execution time of NRPBFT

    從上面的對(duì)比結(jié)果可以看出,本項(xiàng)研究對(duì)PBFT算法的修改可以有效減少節(jié)點(diǎn)之間達(dá)成共識(shí)的時(shí)間,提高了共識(shí)效率。 但是節(jié)點(diǎn)數(shù)量只有4 個(gè)的情況太過簡(jiǎn)單,尤其是在NRPBFT 算法中,普通節(jié)點(diǎn)只有N3, 并不能很好地體現(xiàn)算法優(yōu)化的程度。PBFT 算法的特點(diǎn)是隨著網(wǎng)絡(luò)規(guī)模的增大,通信時(shí)延呈指數(shù)增長(zhǎng),因此可以增大網(wǎng)絡(luò)規(guī)模做后續(xù)進(jìn)一步研究。

    將節(jié)點(diǎn)的數(shù)量分別設(shè)置成4 個(gè)、6 個(gè)、8 個(gè)、10個(gè)、12 個(gè)、14 個(gè)、16 個(gè)、18 個(gè)、20 個(gè),查看在不同節(jié)點(diǎn)數(shù)量下算法改進(jìn)前后達(dá)成共識(shí)所需的時(shí)間。 節(jié)點(diǎn)數(shù)量和達(dá)成共識(shí)的時(shí)間見表6。

    表6 改進(jìn)前后算法執(zhí)行時(shí)間表Tab. 6 Algorithm execution schedule before and after improvement

    將改進(jìn)前和改進(jìn)后的算法運(yùn)行時(shí)間繪制在一張圖上,可以更直觀地看出改進(jìn)前后性能的優(yōu)化,節(jié)點(diǎn)數(shù)量和達(dá)成共識(shí)的時(shí)間對(duì)比如圖11 所示。

    圖11 改進(jìn)前后PBFT 算法執(zhí)行時(shí)間與網(wǎng)絡(luò)規(guī)模關(guān)系圖Fig. 11 The relationship between the execution time of the PBFT algorithm and the network size before and after the improvement

    通過實(shí)驗(yàn)結(jié)果可知,NRPBFT 算法相比PBFT算法的改進(jìn)效果比較明顯。 從整體上分析,在相同節(jié)點(diǎn)數(shù)量和相同交易信息的條件下,NRPBFT 算法的時(shí)延總是低于PBFT 的時(shí)延。 從趨勢(shì)上看,隨著網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)量的增加,網(wǎng)絡(luò)中節(jié)點(diǎn)與節(jié)點(diǎn)之間的通信數(shù)量增加,NRPBFT 算法和PBFT 算法的時(shí)延都增大了。 這時(shí)候影響算法效率的是節(jié)點(diǎn)之間的通信開銷,并且NRPBFT 算法減少通信次數(shù)的優(yōu)點(diǎn)也體現(xiàn)出來(lái)了。 從圖11 中可以明顯看出,隨著節(jié)點(diǎn)數(shù)量的增加,NRPBFT 算法時(shí)延增長(zhǎng)速度比PBFT 的時(shí)延增長(zhǎng)速度慢。 在4 個(gè)節(jié)點(diǎn)1 筆交易的條件下,NRPBFT 算法的時(shí)延為10.063 8 ms,PBFT 算法的時(shí)延為16.709 6 ms,NRPBFT 算法相對(duì)PBFT 算法時(shí)延降低了39.77%。

    為了說(shuō)明其防作弊的特點(diǎn),這里還需要模擬惡意節(jié)點(diǎn),在網(wǎng)絡(luò)中節(jié)點(diǎn)總數(shù)為4 的情況下進(jìn)行模擬。具體來(lái)說(shuō),N0為主節(jié)點(diǎn),N1和N2為正常節(jié)點(diǎn),N3為惡意節(jié)點(diǎn),模擬的時(shí)候故意不開啟N3,模擬節(jié)點(diǎn)宕機(jī)的情況。

    在PBFT 中,當(dāng)不開啟N3節(jié)點(diǎn)的時(shí)候,經(jīng)測(cè)試,節(jié)點(diǎn)依然可以達(dá)成共識(shí),達(dá)成共識(shí)的時(shí)間見圖12。

    圖12 有惡意節(jié)點(diǎn)時(shí)PBFT 算法執(zhí)行時(shí)間Fig. 12 PBFT algorithm execution time when there are malicious nodes

    在NRPBFT 中,當(dāng)不開啟N3節(jié)點(diǎn)的時(shí)候,經(jīng)測(cè)試,節(jié)點(diǎn)依然可以達(dá)成共識(shí),達(dá)成共識(shí)的時(shí)間見圖13。

    圖13 有惡意節(jié)點(diǎn)時(shí)NRPBFT 算法執(zhí)行時(shí)間Fig. 13 NRPBFT algorithm execution time when there are malicious nodes

    從圖13 可以看出,在N3為惡意節(jié)點(diǎn)的情況下,2 個(gè)都能達(dá)成共識(shí),并且由于在4 個(gè)節(jié)點(diǎn)的情況下,如果有一個(gè)惡意節(jié)點(diǎn),則剩余的節(jié)點(diǎn)都是共識(shí)集群中的節(jié)點(diǎn),和PBFT 算法沒有區(qū)別,因此達(dá)成共識(shí)的時(shí)間也非常接近。 實(shí)驗(yàn)結(jié)果說(shuō)明,當(dāng)網(wǎng)絡(luò)中存在f(n >3f) 個(gè)節(jié)點(diǎn)時(shí),2 種算法都可以防止節(jié)點(diǎn)作弊,在規(guī)定時(shí)間內(nèi)達(dá)成共識(shí)。

    3.2 通信次數(shù)分析

    除了通信時(shí)間上有了直觀改善,在通信數(shù)量上也減少了很多。 這里定義網(wǎng)絡(luò)中節(jié)點(diǎn)總數(shù)為n, 定義NRPBFT 算法中共識(shí)集群中節(jié)點(diǎn)數(shù)量為p。

    在PBFT 算法中,核心有3 個(gè)階段。 在預(yù)準(zhǔn)備階段,主節(jié)點(diǎn)將待共識(shí)信息進(jìn)行廣播,這一階段的通信次數(shù)為n -1 次;進(jìn)入到準(zhǔn)備階段,每個(gè)節(jié)點(diǎn)進(jìn)行一次廣播,一共n個(gè)節(jié)點(diǎn),因此這一階段的通信次數(shù)為n(n -1);進(jìn)入提交階段,依然是每個(gè)節(jié)點(diǎn)進(jìn)行廣播,通信次數(shù)為n(n -1)。 因此,PBFT 算法總的通信次數(shù)為2n2- n -1。

    在NRPBFT 算法中,核心階段也是有3 個(gè)。 在認(rèn)證階段,主節(jié)點(diǎn)向共識(shí)集群中的節(jié)點(diǎn)發(fā)送待共識(shí)信息,這一階段的通信次數(shù)為p次;進(jìn)入到共識(shí)階段,每個(gè)共識(shí)節(jié)點(diǎn)進(jìn)行一次廣播,一共p個(gè)共識(shí)節(jié)點(diǎn),因此這一階段的通信次數(shù)為p(p -1);進(jìn)入確認(rèn)階段,這里是共識(shí)節(jié)點(diǎn)和主節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)中進(jìn)行廣播,通信次數(shù)為n(p+1)。 因此,NRPBFT 算法總的通信次數(shù)為p2+np+n,這里p?。?/3)n,遇到小數(shù)上取整,即總通信次數(shù)為:(10/9)n2+n。

    將節(jié)點(diǎn)的數(shù)量分別設(shè)置成4 個(gè)、6 個(gè)、8 個(gè)、10個(gè)、12 個(gè)、14 個(gè)、16 個(gè)、18 個(gè)、20 個(gè),查看在不同節(jié)點(diǎn)數(shù)量下的通信次數(shù)。 節(jié)點(diǎn)數(shù)量和通信次數(shù)的關(guān)系見表7。

    表7 改進(jìn)前后算法通信次數(shù)表Tab. 7 Algorithm communication times table before and after improvement

    將改進(jìn)前和改進(jìn)后的算法通信次數(shù)繪制在一張圖上,可以更直觀地看出改進(jìn)前后的優(yōu)化,節(jié)點(diǎn)數(shù)量和通信次數(shù)的時(shí)間對(duì)比如圖14 所示。

    圖14 改進(jìn)前后PBFT 算法執(zhí)行時(shí)間與通信次數(shù)關(guān)系圖Fig.14 The relationship between the execution time of the PBFT algorithm and the number of communications before and after the improvement

    通過實(shí)驗(yàn)結(jié)果可知,NRPBFT 算法相比PBFT算法的改進(jìn)效果比較明顯。 從整體上分析,在相同節(jié)點(diǎn)數(shù)量和相同交易信息的條件下,NRPBFT 算法的通信次數(shù)總是比PBFT 的通信次數(shù)少。 從趨勢(shì)上看,隨著網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)量的增加,網(wǎng)絡(luò)中節(jié)點(diǎn)與節(jié)點(diǎn)之間的通信數(shù)量都在增加,但是NRPBFT 算法中通信次數(shù)增加得比較緩慢。

    3.3 ubuntu 環(huán)境下性能測(cè)試

    編寫鏈碼,進(jìn)行交易的初始化和轉(zhuǎn)賬操作,部署鏈碼,進(jìn)行測(cè)試。 PBFT 算法共識(shí)時(shí)間的運(yùn)算見圖15。 由圖15 可知,在采用原PBFT 算法的時(shí)候,交易轉(zhuǎn)賬共識(shí)所需要的時(shí)間為0.029 s。

    圖15 PBFT 算法共識(shí)時(shí)間Fig. 15 Consensus time of PBFT algorithm

    NRPBFT 算法共識(shí)時(shí)間的運(yùn)算見圖16。 由圖16 可知,采用優(yōu)化后的NRPBFT 算法的時(shí)候,交易轉(zhuǎn)賬共識(shí)所需要的時(shí)間為0.005 s。

    圖16 NRPBFT 算法共識(shí)時(shí)間Fig. 16 Consensus time of NRPBFT algorithm

    在采用原PBFT 算法的時(shí)候,交易轉(zhuǎn)賬共識(shí)過程的性能指標(biāo)見圖17。

    圖17 PBFT 算法性能Fig. 17 Performance of PBFT algorithm

    采用優(yōu)化后的NRPBFT 算法的時(shí)候,交易轉(zhuǎn)賬共識(shí)過程的性能指標(biāo)見圖18。

    圖18 NRPBFT 算法性能Fig. 18 Performance of NRPBFT algorithm

    從圖18 可以看出, NRPBFT 算法的吞吐量更大,性能也提升了。

    4 本文研究結(jié)論

    4.1 共識(shí)節(jié)點(diǎn)數(shù)量取值證明

    在本項(xiàng)研究中,選舉了p個(gè)除了主節(jié)點(diǎn)外可信度最高的節(jié)點(diǎn)組成共識(shí)集群,p的取值范圍是2f≤p <3f。 接下來(lái),對(duì)p的取值范圍進(jìn)行證明,說(shuō)明為什么在這個(gè)范圍內(nèi)可以保證系統(tǒng)中的節(jié)點(diǎn)正常達(dá)成共識(shí)。

    要想證明P在2f≤p <3f的情況下能保證網(wǎng)絡(luò)在有f個(gè)惡意節(jié)點(diǎn)的情況下達(dá)成共識(shí),首先要證明PBFT 滿足的如下條件:

    證明假設(shè)節(jié)點(diǎn)總數(shù)為N,f為拜占庭錯(cuò)誤節(jié)點(diǎn),N滿足:N≥3f+1。

    如果網(wǎng)絡(luò)中一共有N個(gè)節(jié)點(diǎn),其中拜占庭節(jié)點(diǎn)的數(shù)量為f,那么非拜占庭節(jié)點(diǎn)的數(shù)量就是N - f。在共識(shí)的時(shí)候,如果一個(gè)普通節(jié)點(diǎn)收到N - f個(gè)信息,節(jié)點(diǎn)無(wú)法判斷這N - f個(gè)信息來(lái)自拜占庭節(jié)點(diǎn)、還是非拜占庭節(jié)點(diǎn)。 考慮最壞的情況,這N -f個(gè)信息中有f個(gè)信息來(lái)自拜占庭節(jié)點(diǎn),在這種情況下,只有N -2f個(gè)信息來(lái)自非拜占庭節(jié)點(diǎn)。 對(duì)于這個(gè)普通節(jié)點(diǎn),在收到2 種不同的信息,節(jié)點(diǎn)會(huì)按照少數(shù)服從多數(shù)的原則,選擇信息數(shù)量多的信息作為待共識(shí)信息。 因此,要想保證待共識(shí)信息是非拜占庭節(jié)點(diǎn)發(fā)送的信息,就需要保證N -2f >f,即N >3f,也就是N≥3f+1。

    在NRPBFT 算法中,p的范圍是2f≤p <3f,在認(rèn)證共識(shí)階段,主節(jié)點(diǎn)只會(huì)將待共識(shí)信息發(fā)送給p個(gè)共識(shí)集群中的節(jié)點(diǎn)進(jìn)行共識(shí)。 由于這p個(gè)節(jié)點(diǎn)是網(wǎng)絡(luò)中除了主節(jié)點(diǎn)外可信度最高的p個(gè)節(jié)點(diǎn),所以在一定程度上可以保證p個(gè)節(jié)點(diǎn)中拜占庭節(jié)點(diǎn)的數(shù)量比較少,也就是可以保證p - f >f,即p >2f。 在提交階段,p個(gè)節(jié)點(diǎn)會(huì)分別向N個(gè)節(jié)點(diǎn)發(fā)送信息,也就是進(jìn)行p次單點(diǎn)全廣播的過程,當(dāng)一個(gè)節(jié)點(diǎn)收到至少p/2 個(gè)相同的信息時(shí),也就是至少f個(gè)相同的消息,顯然這些消息不可能全是惡意節(jié)點(diǎn)發(fā)出的,只能是非拜占庭節(jié)點(diǎn)發(fā)出的消息。 在確認(rèn)階段的證明和PBFT 算法一致,這里不再重復(fù)。

    由上述論證可以說(shuō)明,在公式集群p的節(jié)點(diǎn)數(shù)量滿足2f≤p <3f時(shí),NRPBFT 算法可以保證能在有f個(gè)惡意節(jié)點(diǎn)的情況下,網(wǎng)絡(luò)中的非拜占庭節(jié)點(diǎn)達(dá)成共識(shí)。

    4.2 算法防作弊特性說(shuō)明

    接下來(lái)對(duì)算法的防作弊特點(diǎn)進(jìn)行說(shuō)明。 由于本項(xiàng)研究中默認(rèn)惡意節(jié)點(diǎn)數(shù)量f和網(wǎng)絡(luò)中節(jié)點(diǎn)總數(shù)n之間滿足n >3f的關(guān)系,且默認(rèn)誠(chéng)實(shí)節(jié)點(diǎn)一定能正常進(jìn)行共識(shí),不會(huì)出現(xiàn)信息丟失和宕機(jī)等情況,因此,本算法一定可以抵御51%攻擊。

    在區(qū)塊鏈中,DDoS 攻擊的主要目的是大量占用網(wǎng)絡(luò)中的節(jié)點(diǎn)資源,使得這些節(jié)點(diǎn)無(wú)法提供正常的服務(wù),如果受害的節(jié)點(diǎn)過多,很可能會(huì)影響整個(gè)區(qū)塊鏈網(wǎng)絡(luò)的運(yùn)行。 DDoS 攻擊是通過攻擊手段占用了受害者的大量資源,使得受害者不能提供正常服務(wù)。

    在區(qū)塊鏈中,DDOS 攻擊主要是計(jì)算集群對(duì)網(wǎng)絡(luò)中的節(jié)點(diǎn)進(jìn)行攻擊,占用節(jié)點(diǎn)資源,使得節(jié)點(diǎn)宕機(jī),無(wú)法進(jìn)行共識(shí)。 本課題中,最多只有f個(gè)節(jié)點(diǎn)可以遭受DDOS 攻擊,而剩余的n - f個(gè)誠(chéng)實(shí)節(jié)點(diǎn)依然可以正常達(dá)成共識(shí),不會(huì)對(duì)最后的結(jié)果造成影響。因此,本算法可以抵擋DDOS 攻擊。

    拜占庭將軍問題所描述的正是共謀攻擊的情境,惡意節(jié)點(diǎn)聯(lián)合起來(lái)修改信息或者丟失信息,以此影響網(wǎng)絡(luò)中的節(jié)點(diǎn)達(dá)成共識(shí)。 在上述證明中,已經(jīng)說(shuō)明為什么PBFT 算法和NRPBFT 算法能夠在共謀攻擊的情況下達(dá)成共識(shí),但是前提必須是n >3f,惡意節(jié)點(diǎn)的數(shù)量再多,就無(wú)法抵御共謀攻擊了。

    女巫攻擊是一種專門針對(duì)聯(lián)盟鏈的攻擊,惡意節(jié)點(diǎn)可以偽裝自己的身份來(lái)進(jìn)行攻擊。 由于PBFT機(jī)制的延展性不高,一般只能用在網(wǎng)絡(luò)規(guī)模小的網(wǎng)絡(luò)中,所以更易受到女巫攻擊。 在NRPBFT 算法中,對(duì)節(jié)點(diǎn)的可信度進(jìn)行評(píng)估,選取可信度最高的節(jié)點(diǎn)作為主節(jié)點(diǎn),除主節(jié)點(diǎn)外可信度最高的p個(gè)節(jié)點(diǎn)作為共識(shí)集群,核心的階段都在共識(shí)集群中進(jìn)行,最后只需要將共識(shí)集群共識(shí)完成的信息發(fā)送給普通節(jié)點(diǎn),避免了惡意節(jié)點(diǎn)過多參與共識(shí)過程,減少了惡意節(jié)點(diǎn)作惡的機(jī)會(huì)。

    從以上分析可以看出,改進(jìn)后的算法繼承了PBFT 算法的優(yōu)點(diǎn),且相對(duì)PBFT 算法更能抵抗女巫攻擊造成的影響,進(jìn)一步防止了節(jié)點(diǎn)作弊。

    5 結(jié)束語(yǔ)

    在聯(lián)盟鏈中難以避免會(huì)有惡意節(jié)點(diǎn)的存在,在節(jié)點(diǎn)達(dá)成共識(shí)的過程中,惡意節(jié)點(diǎn)可以會(huì)散布不實(shí)信息,影響數(shù)據(jù)的一致性,尤其是在金融或者一些特殊應(yīng)用領(lǐng)域,分布式系統(tǒng)需要確保一致性和正確性。使用PBFT 共識(shí)算法可以有效解決惡意節(jié)點(diǎn)的問題,但是PBFT 算法本身還存在性能和開銷上的問題。 本課題針對(duì)聯(lián)盟鏈中應(yīng)用的PBFT 共識(shí)算法在部署鏈碼進(jìn)行交易的過程中存在的問題展開了分析,通過部署鏈碼的方式實(shí)現(xiàn)交易,并根據(jù)交易過程中的性能和開銷對(duì)PBFT 算法進(jìn)行改進(jìn)。 提出了NRPBFT 算法,采用選舉集群的方式,將所有的節(jié)點(diǎn)分成普通節(jié)點(diǎn)和共識(shí)節(jié)點(diǎn)。 利用節(jié)點(diǎn)可信度評(píng)估公式對(duì)所有節(jié)點(diǎn)的可信度進(jìn)行評(píng)估,并對(duì)節(jié)點(diǎn)的可信度進(jìn)行排序,選可信度最高的前p個(gè)節(jié)點(diǎn)作為共識(shí)集群,選取可信度最高的節(jié)點(diǎn)作為主節(jié)點(diǎn),大大降低了惡意節(jié)點(diǎn)成為主節(jié)點(diǎn)的概率。

    未來(lái)的研究方向是將NRPBFT 算法進(jìn)行進(jìn)一步優(yōu)化,進(jìn)一步降低系統(tǒng)的消耗,提升系統(tǒng)的性能,或者考慮一些其他方法,來(lái)降低主節(jié)點(diǎn)的中心化風(fēng)險(xiǎn)。 除此以外,類似于RSA 這樣的簽名算法,簽名速度比較慢,可以考慮換成其他簽名算法來(lái)運(yùn)行簽名過程和驗(yàn)證過程。 還可以考慮其他的方式,使得在惡意節(jié)點(diǎn)數(shù)量更多的情況下,也能保證網(wǎng)絡(luò)中誠(chéng)實(shí)節(jié)點(diǎn)達(dá)成共識(shí)。 以上所討論的問題,還有待后續(xù)進(jìn)一步的研究。

    猜你喜歡
    共識(shí)集群廣播
    共識(shí) 共進(jìn) 共情 共學(xué):讓“溝通之花”綻放
    論思想共識(shí)凝聚的文化向度
    STK及IGS廣播星歷在BDS仿真中的應(yīng)用
    航天控制(2020年5期)2020-03-29 02:10:28
    商量出共識(shí)
    海上小型無(wú)人機(jī)集群的反制裝備需求與應(yīng)對(duì)之策研究
    一種無(wú)人機(jī)集群發(fā)射回收裝置的控制系統(tǒng)設(shè)計(jì)
    電子制作(2018年11期)2018-08-04 03:25:40
    廣播發(fā)射設(shè)備中平衡輸入與不平衡輸入的轉(zhuǎn)換
    電子制作(2018年10期)2018-08-04 03:24:48
    Python與Spark集群在收費(fèi)數(shù)據(jù)分析中的應(yīng)用
    勤快又呆萌的集群機(jī)器人
    網(wǎng)絡(luò)在現(xiàn)代廣播中的應(yīng)用
    国产高清有码在线观看视频| 亚洲精品日本国产第一区| 久久综合国产亚洲精品| 一级av片app| 亚洲精品中文字幕在线视频 | 精品久久久久久久久av| 激情五月婷婷亚洲| 国产一区亚洲一区在线观看| 亚洲国产av新网站| 欧美区成人在线视频| 国产精品美女特级片免费视频播放器| 能在线免费观看的黄片| 青春草国产在线视频| 欧美极品一区二区三区四区| av线在线观看网站| 免费在线观看成人毛片| 国产精品伦人一区二区| 日日啪夜夜爽| 欧美高清成人免费视频www| 亚洲图色成人| 成人午夜精彩视频在线观看| 人妻一区二区av| 欧美精品一区二区大全| 欧美另类一区| 日本黄色片子视频| 乱码一卡2卡4卡精品| 国产激情偷乱视频一区二区| 婷婷色麻豆天堂久久| 国国产精品蜜臀av免费| 男女那种视频在线观看| 1000部很黄的大片| 激情五月婷婷亚洲| 亚洲精品第二区| 可以在线观看毛片的网站| 国产一级毛片七仙女欲春2| 国产精品一及| 日韩欧美精品免费久久| 精品久久久噜噜| 九九在线视频观看精品| 国产精品一区二区三区四区久久| 中文字幕久久专区| 午夜福利网站1000一区二区三区| 91久久精品国产一区二区三区| 亚洲成人久久爱视频| 欧美潮喷喷水| 国产av在哪里看| or卡值多少钱| 国产精品久久久久久久久免| 波野结衣二区三区在线| 久久久久久久久久黄片| 在线免费十八禁| 夜夜爽夜夜爽视频| 国内精品美女久久久久久| 久久久亚洲精品成人影院| 你懂的网址亚洲精品在线观看| 亚洲成人精品中文字幕电影| 国产亚洲一区二区精品| 黄色配什么色好看| 色吧在线观看| 亚洲欧美中文字幕日韩二区| 午夜视频国产福利| 日韩在线高清观看一区二区三区| 可以在线观看毛片的网站| videos熟女内射| 十八禁国产超污无遮挡网站| 波多野结衣巨乳人妻| 国产精品一区二区在线观看99 | 中文天堂在线官网| 国产精品精品国产色婷婷| 久久精品国产亚洲网站| 国产成人一区二区在线| 婷婷六月久久综合丁香| 插阴视频在线观看视频| 99久久精品一区二区三区| 久久热精品热| 久久久久国产网址| 男女下面进入的视频免费午夜| 丝袜美腿在线中文| 久久久a久久爽久久v久久| 久久久久久久久久久免费av| www.av在线官网国产| 丝袜美腿在线中文| 国精品久久久久久国模美| 国产亚洲一区二区精品| 国产成人freesex在线| 97人妻精品一区二区三区麻豆| 观看美女的网站| 建设人人有责人人尽责人人享有的 | 你懂的网址亚洲精品在线观看| 国产精品国产三级国产av玫瑰| 午夜福利视频1000在线观看| 小蜜桃在线观看免费完整版高清| 美女大奶头视频| 久久97久久精品| 亚洲美女搞黄在线观看| 国产午夜福利久久久久久| 欧美精品国产亚洲| 亚洲成人久久爱视频| 97超碰精品成人国产| 自拍偷自拍亚洲精品老妇| 欧美日韩视频高清一区二区三区二| 又爽又黄无遮挡网站| 岛国毛片在线播放| 精品久久久久久电影网| 久久久久精品性色| 内射极品少妇av片p| 国产一区二区在线观看日韩| 国产精品熟女久久久久浪| 联通29元200g的流量卡| 亚洲欧美日韩无卡精品| 午夜老司机福利剧场| 久久久久久久亚洲中文字幕| 蜜臀久久99精品久久宅男| 亚洲精品久久午夜乱码| 国产精品麻豆人妻色哟哟久久 | 黄色一级大片看看| 国产一区亚洲一区在线观看| 又爽又黄无遮挡网站| 久久久久久久久久久免费av| videossex国产| 老司机影院成人| 午夜视频国产福利| 97人妻精品一区二区三区麻豆| 天天躁日日操中文字幕| 成年女人在线观看亚洲视频 | 深爱激情五月婷婷| 久久精品国产鲁丝片午夜精品| 成年女人看的毛片在线观看| 有码 亚洲区| 建设人人有责人人尽责人人享有的 | 一区二区三区乱码不卡18| 欧美一级a爱片免费观看看| 国内少妇人妻偷人精品xxx网站| 狂野欧美激情性xxxx在线观看| 又爽又黄无遮挡网站| 九草在线视频观看| 永久网站在线| 中文乱码字字幕精品一区二区三区 | 欧美性猛交╳xxx乱大交人| 欧美另类一区| 插阴视频在线观看视频| 欧美成人精品欧美一级黄| 久久这里有精品视频免费| 精品不卡国产一区二区三区| 婷婷色综合大香蕉| 成人特级av手机在线观看| 2021少妇久久久久久久久久久| 亚洲国产成人一精品久久久| 国产成人一区二区在线| 亚洲精品乱码久久久久久按摩| 国产 亚洲一区二区三区 | 在线a可以看的网站| 在线观看一区二区三区| 国产美女午夜福利| 人人妻人人澡人人爽人人夜夜 | 内地一区二区视频在线| 三级国产精品欧美在线观看| 高清日韩中文字幕在线| 18禁在线无遮挡免费观看视频| 水蜜桃什么品种好| 国产视频内射| 老女人水多毛片| 亚洲性久久影院| 欧美日韩综合久久久久久| 成人高潮视频无遮挡免费网站| 伦理电影大哥的女人| 麻豆久久精品国产亚洲av| 婷婷色综合大香蕉| 最近视频中文字幕2019在线8| 一二三四中文在线观看免费高清| 久久久精品欧美日韩精品| 免费观看性生交大片5| 亚洲高清免费不卡视频| 日韩一区二区三区影片| 亚洲不卡免费看| 色5月婷婷丁香| 国产乱人视频| 777米奇影视久久| 一区二区三区免费毛片| 九九爱精品视频在线观看| 久久精品国产亚洲av涩爱| 蜜臀久久99精品久久宅男| 精品一区在线观看国产| 简卡轻食公司| 欧美97在线视频| 精品熟女少妇av免费看| 99久久精品热视频| 69av精品久久久久久| 国产精品久久久久久久久免| 久久鲁丝午夜福利片| 少妇人妻一区二区三区视频| 一级毛片久久久久久久久女| 最近中文字幕2019免费版| 亚洲自偷自拍三级| 狂野欧美白嫩少妇大欣赏| 看免费成人av毛片| 激情五月婷婷亚洲| 精品亚洲乱码少妇综合久久| 亚洲欧美精品专区久久| 日韩亚洲欧美综合| 人人妻人人看人人澡| 免费观看a级毛片全部| 99久久精品国产国产毛片| 久久久久免费精品人妻一区二区| 亚洲av福利一区| 免费看av在线观看网站| 你懂的网址亚洲精品在线观看| 日韩强制内射视频| 国产成人精品一,二区| 国产精品无大码| 毛片女人毛片| 国产一区二区三区综合在线观看 | 中文字幕av成人在线电影| 国产综合精华液| 最近最新中文字幕大全电影3| 亚洲乱码一区二区免费版| 一区二区三区免费毛片| 日韩国内少妇激情av| 中文精品一卡2卡3卡4更新| 欧美3d第一页| 精品人妻偷拍中文字幕| 亚洲综合精品二区| 女人久久www免费人成看片| 国产亚洲午夜精品一区二区久久 | 国产乱来视频区| 内地一区二区视频在线| 国产色爽女视频免费观看| 少妇熟女aⅴ在线视频| 久久久亚洲精品成人影院| 久久久国产一区二区| 国产成人a∨麻豆精品| 亚洲久久久久久中文字幕| 99久久九九国产精品国产免费| 最新中文字幕久久久久| 欧美成人a在线观看| 国产在视频线在精品| 你懂的网址亚洲精品在线观看| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | www.色视频.com| 国模一区二区三区四区视频| 亚洲国产精品国产精品| 肉色欧美久久久久久久蜜桃 | av在线天堂中文字幕| 亚洲av电影不卡..在线观看| 国产黄频视频在线观看| 熟女人妻精品中文字幕| 免费观看在线日韩| videossex国产| 在线播放无遮挡| 亚洲一级一片aⅴ在线观看| 国产单亲对白刺激| 婷婷色麻豆天堂久久| 午夜福利视频1000在线观看| 免费av不卡在线播放| 欧美性猛交╳xxx乱大交人| 亚洲在线自拍视频| 又大又黄又爽视频免费| 国产精品伦人一区二区| 免费看a级黄色片| 日本欧美国产在线视频| 欧美不卡视频在线免费观看| 乱人视频在线观看| 午夜视频国产福利| 2018国产大陆天天弄谢| 免费黄频网站在线观看国产| 亚洲国产精品专区欧美| 亚洲国产成人一精品久久久| 亚洲国产精品sss在线观看| 能在线免费观看的黄片| 麻豆久久精品国产亚洲av| 六月丁香七月| 伊人久久精品亚洲午夜| 国产精品精品国产色婷婷| 日韩视频在线欧美| 国产成年人精品一区二区| 99热这里只有精品一区| 日本色播在线视频| 欧美3d第一页| 22中文网久久字幕| 午夜福利视频1000在线观看| 九九在线视频观看精品| 又黄又爽又刺激的免费视频.| 亚洲成人中文字幕在线播放| 免费黄色在线免费观看| 国产高潮美女av| 亚洲高清免费不卡视频| 成年版毛片免费区| 两个人视频免费观看高清| 欧美高清成人免费视频www| xxx大片免费视频| 日本三级黄在线观看| 自拍偷自拍亚洲精品老妇| 麻豆成人午夜福利视频| 成年女人看的毛片在线观看| 春色校园在线视频观看| 最近中文字幕2019免费版| 日日干狠狠操夜夜爽| 免费av观看视频| 亚洲18禁久久av| 99久久人妻综合| 日本午夜av视频| 三级国产精品片| 边亲边吃奶的免费视频| 男人爽女人下面视频在线观看| 国产老妇女一区| 色播亚洲综合网| 国产成人a区在线观看| 男女边摸边吃奶| 99热6这里只有精品| 亚洲图色成人| 亚洲成色77777| 亚州av有码| 亚洲最大成人手机在线| 亚洲在线观看片| 日本-黄色视频高清免费观看| 精品久久久久久久久av| 女人被狂操c到高潮| 成人亚洲欧美一区二区av| 亚洲av福利一区| 色视频www国产| 亚洲av二区三区四区| 亚洲国产欧美人成| 一级av片app| 欧美三级亚洲精品| 淫秽高清视频在线观看| 亚洲久久久久久中文字幕| av在线蜜桃| 舔av片在线| 国产在线一区二区三区精| 男女边摸边吃奶| 大片免费播放器 马上看| 小蜜桃在线观看免费完整版高清| 少妇丰满av| 秋霞在线观看毛片| 久久99精品国语久久久| 久久精品久久久久久久性| 亚洲精品日韩在线中文字幕| 99热全是精品| 午夜日本视频在线| 一级黄片播放器| 91午夜精品亚洲一区二区三区| 久久久久精品性色| 永久网站在线| 国产片特级美女逼逼视频| 你懂的网址亚洲精品在线观看| 一区二区三区免费毛片| 九九在线视频观看精品| 高清欧美精品videossex| 插逼视频在线观看| 亚洲最大成人手机在线| 两个人的视频大全免费| 麻豆成人午夜福利视频| 久久精品人妻少妇| 少妇人妻精品综合一区二区| 2022亚洲国产成人精品| 久久精品久久久久久久性| 蜜臀久久99精品久久宅男| 非洲黑人性xxxx精品又粗又长| 中文天堂在线官网| 51国产日韩欧美| 久久热精品热| 日韩一区二区三区影片| 精品人妻视频免费看| 欧美xxxx性猛交bbbb| 夜夜看夜夜爽夜夜摸| 亚洲国产欧美人成| 日韩欧美 国产精品| 久久6这里有精品| 国产精品不卡视频一区二区| 男女下面进入的视频免费午夜| 最近手机中文字幕大全| 不卡视频在线观看欧美| 国产精品爽爽va在线观看网站| 亚洲在线自拍视频| 国产黄色免费在线视频| 一区二区三区乱码不卡18| 久久久久免费精品人妻一区二区| 国产亚洲91精品色在线| 女的被弄到高潮叫床怎么办| 午夜福利在线观看免费完整高清在| 69人妻影院| 国产一区有黄有色的免费视频 | 久久久久精品久久久久真实原创| 久久久久性生活片| 欧美日韩综合久久久久久| 日日干狠狠操夜夜爽| 中国美白少妇内射xxxbb| 久久久国产一区二区| 亚洲精品国产av蜜桃| 免费看a级黄色片| 男人爽女人下面视频在线观看| 免费观看在线日韩| 美女内射精品一级片tv| 日韩国内少妇激情av| 欧美一区二区亚洲| 国产成人午夜福利电影在线观看| 免费av毛片视频| 欧美成人精品欧美一级黄| av网站免费在线观看视频 | 又黄又爽又刺激的免费视频.| 日韩制服骚丝袜av| 男人狂女人下面高潮的视频| 日韩av在线免费看完整版不卡| 人妻少妇偷人精品九色| 亚洲电影在线观看av| 久久韩国三级中文字幕| 一个人看视频在线观看www免费| 狂野欧美激情性xxxx在线观看| av专区在线播放| 精品午夜福利在线看| 午夜精品国产一区二区电影 | 亚洲真实伦在线观看| 久久精品夜色国产| 日韩,欧美,国产一区二区三区| 超碰av人人做人人爽久久| 秋霞伦理黄片| 国产成人91sexporn| a级毛色黄片| 神马国产精品三级电影在线观看| 亚洲成人久久爱视频| 寂寞人妻少妇视频99o| 欧美日韩国产mv在线观看视频 | 婷婷色av中文字幕| 免费观看在线日韩| 亚洲欧美清纯卡通| 国产老妇女一区| av卡一久久| 久久精品国产亚洲av涩爱| 成人漫画全彩无遮挡| 天堂av国产一区二区熟女人妻| 精品久久久久久电影网| 亚洲一区高清亚洲精品| 中文字幕av成人在线电影| 成年人午夜在线观看视频 | 又爽又黄无遮挡网站| 波野结衣二区三区在线| 91久久精品国产一区二区三区| 精品少妇黑人巨大在线播放| 亚洲精品视频女| 亚洲av免费高清在线观看| 免费av不卡在线播放| 久久韩国三级中文字幕| 欧美xxⅹ黑人| 婷婷色av中文字幕| 国产精品国产三级专区第一集| 日韩欧美精品免费久久| 内射极品少妇av片p| 一级毛片 在线播放| 欧美日韩亚洲高清精品| 永久免费av网站大全| 欧美日韩国产mv在线观看视频 | 日日摸夜夜添夜夜爱| 久久久精品免费免费高清| eeuss影院久久| 嘟嘟电影网在线观看| 国产精品一区二区性色av| 国产 亚洲一区二区三区 | 午夜福利成人在线免费观看| 中文欧美无线码| 建设人人有责人人尽责人人享有的 | 免费电影在线观看免费观看| 午夜福利成人在线免费观看| 人人妻人人澡欧美一区二区| 麻豆精品久久久久久蜜桃| 日韩国内少妇激情av| 我要看日韩黄色一级片| 成年女人在线观看亚洲视频 | 久久97久久精品| 麻豆成人av视频| or卡值多少钱| 在线播放无遮挡| 最近最新中文字幕免费大全7| 国产精品蜜桃在线观看| 蜜臀久久99精品久久宅男| 青春草国产在线视频| 亚洲成人精品中文字幕电影| 天堂俺去俺来也www色官网 | 最近视频中文字幕2019在线8| 成人综合一区亚洲| 亚洲综合色惰| 99久久人妻综合| 精品久久久久久电影网| 欧美成人午夜免费资源| 国内揄拍国产精品人妻在线| 成人二区视频| 国产av在哪里看| 成年免费大片在线观看| 亚洲精品日韩av片在线观看| 久久久久久久大尺度免费视频| 搡女人真爽免费视频火全软件| 99久国产av精品| 亚洲美女视频黄频| 中文字幕人妻熟人妻熟丝袜美| 色综合亚洲欧美另类图片| 亚洲av成人精品一区久久| 少妇的逼好多水| 成人综合一区亚洲| 少妇的逼好多水| 亚洲av中文字字幕乱码综合| 国产亚洲最大av| 亚洲精品一二三| 搡老妇女老女人老熟妇| 不卡视频在线观看欧美| 免费观看无遮挡的男女| 黄色配什么色好看| 偷拍熟女少妇极品色| 熟妇人妻久久中文字幕3abv| 一区二区三区四区激情视频| 亚洲成色77777| 一级毛片我不卡| 亚洲性久久影院| 女人十人毛片免费观看3o分钟| 国产成人精品福利久久| 亚洲精品影视一区二区三区av| 欧美区成人在线视频| 国产亚洲av嫩草精品影院| 插逼视频在线观看| 99久国产av精品国产电影| 免费无遮挡裸体视频| 国产在视频线精品| 成人亚洲精品一区在线观看 | 久久鲁丝午夜福利片| 观看美女的网站| 国产黄片美女视频| 成人无遮挡网站| 老司机影院毛片| 亚洲va在线va天堂va国产| 夜夜看夜夜爽夜夜摸| 国产美女午夜福利| 欧美精品一区二区大全| 亚洲欧美一区二区三区国产| 汤姆久久久久久久影院中文字幕 | 高清视频免费观看一区二区 | 日日干狠狠操夜夜爽| 麻豆成人av视频| 在线观看免费高清a一片| 久久久久久久久久人人人人人人| 天天躁日日操中文字幕| 美女脱内裤让男人舔精品视频| 国产精品熟女久久久久浪| 日韩av在线免费看完整版不卡| 亚洲成人一二三区av| 国内揄拍国产精品人妻在线| 亚洲av成人精品一区久久| 97在线视频观看| 国产又色又爽无遮挡免| 成人特级av手机在线观看| 小蜜桃在线观看免费完整版高清| 激情 狠狠 欧美| 国产亚洲av嫩草精品影院| 精品国产一区二区三区久久久樱花 | 超碰av人人做人人爽久久| 久久久久免费精品人妻一区二区| 成人性生交大片免费视频hd| av网站免费在线观看视频 | 非洲黑人性xxxx精品又粗又长| 亚洲av国产av综合av卡| 久久精品国产亚洲网站| 中文欧美无线码| 久久久久久久大尺度免费视频| 亚洲怡红院男人天堂| 久久久a久久爽久久v久久| 精品久久久久久久久av| 97超碰精品成人国产| 日本爱情动作片www.在线观看| 成年版毛片免费区| 亚洲综合精品二区| 午夜福利网站1000一区二区三区| 三级毛片av免费| 亚洲精品日韩av片在线观看| 高清毛片免费看| 高清日韩中文字幕在线| 啦啦啦韩国在线观看视频| 国产综合精华液| 色网站视频免费| 国内精品宾馆在线| 亚洲精品亚洲一区二区| 女的被弄到高潮叫床怎么办| 热99在线观看视频| 久久久久久久亚洲中文字幕| 精品久久久久久成人av| 国产91av在线免费观看| 久久精品国产自在天天线| 亚洲精品一区蜜桃| 欧美精品国产亚洲| 国产激情偷乱视频一区二区| 18禁在线播放成人免费| 日韩国内少妇激情av| 国产精品久久视频播放| 欧美三级亚洲精品| 精品人妻熟女av久视频| 亚洲欧美精品专区久久| 九九爱精品视频在线观看| 国产欧美另类精品又又久久亚洲欧美| av专区在线播放| 日本免费a在线| 国产高清不卡午夜福利| av女优亚洲男人天堂| 自拍偷自拍亚洲精品老妇| 欧美高清性xxxxhd video| 国产成年人精品一区二区| 看免费成人av毛片| 精品久久久精品久久久| 1000部很黄的大片| 国产69精品久久久久777片| 精品国产三级普通话版| 欧美一级a爱片免费观看看| 91久久精品国产一区二区三区| 岛国毛片在线播放| 禁无遮挡网站| 国产黄色免费在线视频| 亚洲久久久久久中文字幕| 亚洲av成人av| 亚洲在久久综合| 春色校园在线视频观看|