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

    基于信用模型的工作量證明算法

    2018-09-12 03:06:28王纘田有亮李秋賢楊新歡
    通信學(xué)報 2018年8期
    關(guān)鍵詞:信用度挖礦共識

    王纘,田有亮,李秋賢,楊新歡

    ?

    基于信用模型的工作量證明算法

    王纘1,2,3,田有亮1,2,3,李秋賢1,2,3,楊新歡1,2,3

    (1. 貴州大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院,貴州 貴陽 550025;2. 貴州省公共大數(shù)據(jù)重點(diǎn)實驗室(貴州大學(xué)),貴州 貴陽 550025; 3. 貴州大學(xué)密碼學(xué)與數(shù)據(jù)安全研究所,貴州 貴陽 550025)

    提出了一種基于信用模型的共識協(xié)議。首先,該共識協(xié)議借鑒了個人信用風(fēng)險評估的思想,設(shè)計了一種基于BP神經(jīng)網(wǎng)絡(luò)的節(jié)點(diǎn)信用度模型。其次,構(gòu)造了一種分片輪轉(zhuǎn)模型,它可以根據(jù)節(jié)點(diǎn)的信用度高低分割搜索空間產(chǎn)生新區(qū)塊,同時對協(xié)議所面臨的可能攻擊進(jìn)行分析,修復(fù)了協(xié)議存在的漏洞。最后,仿真實驗表明共識協(xié)議既能有效地降低新區(qū)塊產(chǎn)生過程中重復(fù)計算的巨大資源消耗,也能抑制大型礦池的產(chǎn)生,使整個區(qū)塊鏈系統(tǒng)變得更加安全可靠。

    PoW共識;BP神經(jīng)網(wǎng)絡(luò);信用度模型;搜索空間;區(qū)塊鏈

    1 引言

    文獻(xiàn)[1]是公認(rèn)最早的關(guān)于區(qū)塊鏈的描述性文章,但該文獻(xiàn)并沒有明確提出區(qū)塊鏈的定義和概念,只是提出了一種電子現(xiàn)金系統(tǒng)。在該文獻(xiàn)中,區(qū)塊鏈被描述為用于記錄虛擬貨幣交易的一種分布式賬本技術(shù)[2],它通過密碼學(xué)中的橢圓曲線數(shù)字簽名算法實現(xiàn)去中心化的P2P系統(tǒng)。但區(qū)塊鏈的應(yīng)用不只局限于虛擬貨幣等電子貨幣系統(tǒng),還涉及隱私保護(hù)[3]、金融服務(wù)、物聯(lián)網(wǎng)與供應(yīng)鏈等眾多領(lǐng)域。

    區(qū)塊鏈技術(shù)原理來源于數(shù)學(xué)上的拜占庭將軍問題[4-7]。在互聯(lián)網(wǎng)活動大背景下,拜占庭將軍問題是指當(dāng)與不熟悉的對方進(jìn)行價值交換時,參與者如何才能不會因為惡意攻擊者的欺騙和迷惑而做出錯誤的決策;從互聯(lián)網(wǎng)技術(shù)領(lǐng)域的角度看,拜占庭將軍問題是指當(dāng)不存在可信第三方(TTP, trusted third party)時,分布在網(wǎng)絡(luò)中的各個節(jié)點(diǎn)應(yīng)如何達(dá)成共識[8]。從這些角度看,區(qū)塊鏈技術(shù)在不需要單個信任節(jié)點(diǎn)的情況下可以很好地解決拜占庭將軍問題。

    區(qū)塊鏈具有可追溯、不可篡改、去中心化等優(yōu)勢。然而和基于傳統(tǒng)分布式一致性算法[5,9]的分布式系統(tǒng)一樣,區(qū)塊鏈系統(tǒng)也會存在傳輸消息延時、損壞、丟失、篡改等問題。此外,去中心化的特點(diǎn)決定系統(tǒng)不存在被信任節(jié)點(diǎn),甚至存在惡意節(jié)點(diǎn),以及各種原因?qū)е碌臄?shù)據(jù)不一致等問題。為了實現(xiàn)必要的容錯,區(qū)塊鏈系統(tǒng)需要一個高效的共識機(jī)制來確保每一個節(jié)點(diǎn)都有唯一公認(rèn)的全局賬本?;谶@種訴求,專家學(xué)者相繼提出了工作量證明(PoW, proof of work)、權(quán)益證明(PoS, proof of stake)、股份授權(quán)證明(DPoS, delegated proof of stake)、活動證明(PoA, proof of activity)等在內(nèi)的多種共識機(jī)制。其中,權(quán)益證明機(jī)制是利用區(qū)塊生成難度與節(jié)點(diǎn)所占股權(quán)成反比來進(jìn)行“挖礦”[10];股份授權(quán)證明機(jī)制的是利用股東投票數(shù)最多的幾位代表按既定時間段輪流產(chǎn)生區(qū)塊[11]。Vitalik提出了類PoS共識Casper。Bentov等[12]提出了活動證明,用來代替虛擬貨幣的激勵結(jié)構(gòu)。Sawtooth項目應(yīng)用了基于Intel SGX可信硬件的逝去時間證明(PoET, proof of elapsed time)機(jī)制。Burstcoin 加密貨幣是基于硬盤容量空間的能力證明(PoC, proof of capacity)。這些共識機(jī)制在資源消耗、安全性或共識時間等方面各有側(cè)重。作為區(qū)塊鏈技術(shù)最成功的應(yīng)用,虛擬貨幣系統(tǒng)就是采用工作量證明,非常巧妙地解決這些問題,實現(xiàn)交易的不可偽造性和不可篡改性,而該共識機(jī)制也是虛擬貨幣系統(tǒng)安全模型的基石,是虛擬貨幣正常運(yùn)行約10年的關(guān)鍵所在。

    所謂的工作量證明,其核心思想就是各個節(jié)點(diǎn)通過算力競爭來解決一個hash難題,以此來保證數(shù)據(jù)的一致性和共識的安全性。具體地,各個節(jié)點(diǎn)不斷猜測并驗證隨機(jī)數(shù)值是否為一個SHA256數(shù)學(xué)難題的解,其中,最快解決該難題的節(jié)點(diǎn)將獲得區(qū)塊鏈記賬權(quán)和虛擬貨幣獎勵。當(dāng)某個節(jié)點(diǎn)成功解決該難題并產(chǎn)生區(qū)塊,就會廣播這個合法區(qū)塊。同時,收到的用戶會驗證這個區(qū)塊,如果驗證通過,就會將這個區(qū)塊接入?yún)^(qū)塊鏈上,并在此基礎(chǔ)上繼續(xù)嘗試解決新的hash難題。目前,除了暴力計算外,還沒有有效的算法來解決這些求解復(fù)雜但驗證簡單的hash難題。換而言之,如果成功解決了該hash難題,則說明在概率上該節(jié)點(diǎn)付出了對應(yīng)的算力。即PoW共識機(jī)制會導(dǎo)致算力越大,解決問題的概率就越大的問題。當(dāng)某個節(jié)點(diǎn)或礦池控制超過全網(wǎng)一半的算力時,從概率上就能掌控區(qū)塊鏈的走向,這也是所謂的51%攻擊。很顯然,參與PoW共識的節(jié)點(diǎn)將付出很大的經(jīng)濟(jì)成本(硬件、電力、維護(hù)等)。當(dāng)沒有成為首個算出合理hash值的節(jié)點(diǎn)時,這些成本都將是沒有回報的。

    在虛擬貨幣系統(tǒng)中,產(chǎn)生區(qū)塊的過程稱為挖礦,從事挖礦活動的參與者稱為礦工[13]。由于虛擬貨幣大約每10 min產(chǎn)生一個區(qū)塊,這就意味著大部分礦工在一定時間內(nèi)很難產(chǎn)生區(qū)塊并獲得獎勵。因此,礦工們會選擇加入開放礦池進(jìn)行合作挖礦,以此來獲得穩(wěn)定的收益。礦池[14]一般分為2種,一種是托管礦池,另一種是P2P礦池。具體地,P2P礦池是一種去中心化的礦池服務(wù)器,其原理與區(qū)塊鏈系統(tǒng)類似,也被稱為份額鏈。份額鏈的工作量證明難度低于虛擬貨幣區(qū)塊鏈,其上記錄了貢獻(xiàn)工作量證明的礦工份額。當(dāng)一個份額區(qū)塊的難度達(dá)到了虛擬貨幣網(wǎng)絡(luò)的難度目標(biāo)時,就會獎勵所有已經(jīng)在份額鏈區(qū)塊中取得份額的礦工。P2P礦池雖然實現(xiàn)了去中心化,但其挖礦方式復(fù)雜,對節(jié)點(diǎn)性能要求非常高,效率遠(yuǎn)不如托管礦池,所以沒能吸引太多算力;托管礦池中的礦工需要消耗資源來不斷嘗試產(chǎn)生新的合法區(qū)塊,即發(fā)送完整工作量證明給礦池管理者。但是完整工作量很難產(chǎn)生,礦工可以選擇發(fā)送部分工作量證明獲得相應(yīng)收益。無論是哪個礦工產(chǎn)生區(qū)塊,獲得的收益將按貢獻(xiàn)比例分給每個礦工。這種集中式的礦池通過這樣的方式不斷聚集算力,已經(jīng)開始引起51%攻擊的擔(dān)憂。同時,由于中心化控制的礦池存在礦池管理者,很容易出現(xiàn)管理者出于利益而實施攻擊的風(fēng)險。

    針對PoW共識計算過程中所有節(jié)點(diǎn)(包括無法獲得獎勵的節(jié)點(diǎn))資源消耗大、達(dá)成共識周期較長及礦池中心化等問題,本文提出了一種基于信用模型的工作量證明(CPoW, proof of work based on credit)算法。在這個新的共識機(jī)制中,本文利用BP神經(jīng)網(wǎng)絡(luò)[15-17]設(shè)計了一種基于節(jié)點(diǎn)信用評估體系的節(jié)點(diǎn)信用度評估模型,根據(jù)這個模型,可以定量地計算各個參與PoW共識節(jié)點(diǎn)的信用度并進(jìn)行信用度排名。然后,根據(jù)這個信用度排名按比例劃分SHA256數(shù)學(xué)難題的搜索空間給計算節(jié)點(diǎn),讓每個節(jié)點(diǎn)計算驗證搜索空間是否滿足這個hash難題,直到有某個節(jié)點(diǎn)通過驗證的方式成功解決hash難題,此時這個節(jié)點(diǎn)將獲得區(qū)塊鏈的記賬權(quán)并得到相應(yīng)獎勵。如果某個節(jié)點(diǎn)已經(jīng)計算驗證完劃分給自己的搜索空間,但是本輪計算還沒有解決hash難題,那么這個節(jié)點(diǎn)還可以繼續(xù)根據(jù)信用度排名來獲取新一輪的搜索空間。本文將這種劃分搜索空間的方案叫作分片輪轉(zhuǎn)模型。

    CPoW算法通過分片輪轉(zhuǎn)模型,讓所有參與工作量證明的節(jié)點(diǎn)一起合作驗證搜索空間來解決hash難題,實現(xiàn)了搜索空間分配的去中心化,大大提高了解決hash難題的效率,從而縮短了共識達(dá)成的周期,也避免了巨大資源消耗的重復(fù)。由于驗證搜索空間存在概率性,在一定程度上抑制了大型礦池的產(chǎn)生。

    2 系統(tǒng)模型

    2.1 虛擬貨幣節(jié)點(diǎn)信用度模型

    2.1.1 節(jié)點(diǎn)信用度評估指標(biāo)體系

    所謂節(jié)點(diǎn)“信用”是指節(jié)點(diǎn)在參與共識機(jī)制過程中的表現(xiàn),是對節(jié)點(diǎn)運(yùn)行狀況、節(jié)點(diǎn)賬戶財富水平和誠信水平的全面考察。對于節(jié)點(diǎn)信用度評估,首先要建立評估指標(biāo)體系。根據(jù)節(jié)點(diǎn)在網(wǎng)絡(luò)中運(yùn)行的實際情況,本文提出了一種分層結(jié)構(gòu)指標(biāo)體系,如表1所示。其中,二級指標(biāo)10項,為反映節(jié)點(diǎn)運(yùn)行情況、節(jié)點(diǎn)賬戶財富水平和誠信水平的具體指標(biāo)信息;一級指標(biāo)3項,為對二級指標(biāo)的歸納,反映了節(jié)點(diǎn)信用評估的3個方面。

    表1 節(jié)點(diǎn)信用度評估指標(biāo)體系

    2.1.2 數(shù)據(jù)的標(biāo)準(zhǔn)化處理

    在節(jié)點(diǎn)信用度評估要素中,包含網(wǎng)絡(luò)延時時間段、節(jié)點(diǎn)離線次數(shù)段、節(jié)點(diǎn)離線時間段、節(jié)點(diǎn)獲取搜索空間次數(shù)段、節(jié)點(diǎn)加入網(wǎng)絡(luò)時間段、節(jié)點(diǎn)提供分叉區(qū)塊次數(shù)段、節(jié)點(diǎn)是否提供無效區(qū)塊這7項離散數(shù)據(jù),對于這些數(shù)據(jù),要進(jìn)行統(tǒng)一量化,即根據(jù)不同屬性值在共識過程中的重要性對其屬性值賦予不同的值。屬性值量化如表2所示。

    按照表2統(tǒng)一量化后,可以通過最小—最大規(guī)范化方法按比例進(jìn)行縮放,使之落入[0,1]區(qū)間,再作為神經(jīng)網(wǎng)絡(luò)模型的輸入。具體方法為:設(shè)min和max分別為某一屬性的最小值和最大值,最小—最大規(guī)范方法是指通過計算

    將屬性值映射到[0,1]中。例如,對節(jié)點(diǎn)加入網(wǎng)絡(luò)時間段,如果屬性值為28 h,則記分為8,該屬性的記分中最大值為11,最小值為1,根據(jù)式(1),新屬性值為

    通過這種方法,可以處理所有給定的最大、最小的離散屬性的數(shù)據(jù)。

    表2 節(jié)點(diǎn)信用度離散數(shù)據(jù)記分表

    在節(jié)點(diǎn)信用評估的輸入要素中,有coin age、虛擬貨幣流動比率、節(jié)點(diǎn)上一輪的信用度這3個屬性值數(shù)據(jù),其中,節(jié)點(diǎn)上一輪的信用度是標(biāo)準(zhǔn)化的數(shù)據(jù),其他2個近似于正態(tài)分布,這些要素的屬性值可以通過正態(tài)分布函數(shù)進(jìn)行轉(zhuǎn)化,將屬性值映射在(0,1)的數(shù)值。正態(tài)分布函數(shù)如圖1所示,其函數(shù)為

    圖1 正態(tài)分布函數(shù)曲線

    表3 和的取值對應(yīng)表

    例如,某節(jié)點(diǎn)的虛擬貨幣流動比率為0.6,根據(jù)式(3),得

    其中,1為轉(zhuǎn)換后的屬性值。

    通過這種方法,就可以將節(jié)點(diǎn)信用評估要素中的屬性值映射到[0,1]區(qū)間的值,便于信用度模型的處理。

    2.1.3 節(jié)點(diǎn)信用度模型構(gòu)造

    在這里,本文選擇的轉(zhuǎn)移函數(shù)為單極性sigmoid函數(shù),函數(shù)表達(dá)式為

    該函數(shù)是一個實數(shù)域到[0,1]閉集的非減連續(xù)函數(shù),代表了狀態(tài)連續(xù)的神經(jīng)元模型。

    對于隱層,有

    對于輸出層,有

    其中,()為轉(zhuǎn)移函數(shù)。節(jié)點(diǎn)的信用評估3層神經(jīng)網(wǎng)絡(luò)模型如圖2所示。

    圖2 節(jié)點(diǎn)信用評估3層神經(jīng)網(wǎng)絡(luò)模型

    神經(jīng)網(wǎng)絡(luò)通過不斷學(xué)習(xí),會對各個權(quán)值進(jìn)行調(diào)整,使誤差不斷減少。根據(jù)BP算法,得出模型的權(quán)值調(diào)整式為

    當(dāng)和1的誤差達(dá)到要求的精度時,算法停止,學(xué)習(xí)過程結(jié)束。

    2.1.4 模型評價

    基于BP神經(jīng)網(wǎng)絡(luò)的算法思想,通過對節(jié)點(diǎn)歷史數(shù)據(jù)的訓(xùn)練和學(xué)習(xí),調(diào)整模型神經(jīng)單元之間的連接權(quán)重,確定輸入和輸出的內(nèi)在聯(lián)系,建立了節(jié)點(diǎn)的信用度模型,使模型具備了對節(jié)點(diǎn)信用進(jìn)行評估的能力。通過該模型進(jìn)行節(jié)點(diǎn)信用的評估,挑選出了性能高的、網(wǎng)絡(luò)環(huán)境良好的非拜占庭節(jié)點(diǎn),淘汰那些拜占庭節(jié)點(diǎn),使參與共識的節(jié)點(diǎn)都能獲得一致的信用度。

    2.2 分片輪轉(zhuǎn)模型

    所謂分片是指對hash難題的搜索空間進(jìn)行劃分,每個節(jié)點(diǎn)按照自己的信用度排名去獲取自己需要驗證的搜索空間。所謂輪轉(zhuǎn)是指每個節(jié)點(diǎn)計算驗證完成自己獲取到的搜索空間之后,如果hash難題仍未解決,它依舊可以再次獲取需要驗證的一定范圍的搜索空間。如此不斷地獲取需要驗證的搜索空間,直至hash難題得到解決。

    2.2.1 搜索空間的問題

    “挖礦”本質(zhì)是執(zhí)行hash函數(shù)的過程,而hash函數(shù)是一個單輸入單輸出函數(shù),輸入數(shù)據(jù)被稱為區(qū)塊頭(blockheader),所以本節(jié)首先解析區(qū)塊頭結(jié)構(gòu)。例如,虛擬貨幣區(qū)塊頭中共6個字段,介紹如下。

    nVersion:區(qū)塊版本號,存儲空間為4 B。

    hashPrevBlock:上一個區(qū)塊的區(qū)塊頭的hash值,存儲空間為32 B。

    hashMerkleRoot:包含進(jìn)本區(qū)塊的所有交易構(gòu)造的Merkle根,存儲空間為32 B。

    nTime:Unix時間戳,存儲空間為4 B。

    nBits:區(qū)塊的難度值,存儲空間為4 B。

    nNonce:隨機(jī)數(shù),存儲空間為4 B。

    對于虛擬貨幣系統(tǒng)中的PoW共識機(jī)制而言,礦工可以自由調(diào)整的字段就3個,分別是nTime、nBits、nNonce。nTime合理的區(qū)塊時間是有一定范圍的,比前一個區(qū)塊時間太早會被其他節(jié)點(diǎn)拒絕;nNonce提供232種可能取值;hashMerkleRoot理論上提供2256種可能,對包含進(jìn)區(qū)塊的交易進(jìn)行增刪、調(diào)整順序或修改Coinbase交易的輸入字段都會導(dǎo)致本字段變化。

    對于CPoW共識機(jī)制而言,礦工可以自由調(diào)整的字段就只有2個,分別是nNonce和nTime字段。nNonce提供232種可能取值;nTime取值范圍是上一個區(qū)塊產(chǎn)生時間至產(chǎn)生后的2 min。hashMerkleRoot的值是固定的,并嚴(yán)格規(guī)定了交易格式的填充,這保證了同一筆交易填充的一致性。對于所有在2 min內(nèi)產(chǎn)生的交易全部按照時間順序納入?yún)^(qū)塊,并指定Coinbasse交易為這段時間中產(chǎn)生的第一筆交易。通過以上方法,即可保證hashMerkleRoot值的一致性。

    2.2.2 分片輪轉(zhuǎn)模型構(gòu)造

    在這里,劃分搜索空間是指劃分nNonce字段的搜索空間,而對于nTime字段,模型不做搜索空間的劃分,即每個節(jié)點(diǎn)都擁有完整的nTime字段搜索空間。

    假設(shè)待驗證的每一輪的nNonce搜索空間的一個標(biāo)準(zhǔn)范圍為,為輪轉(zhuǎn)次數(shù),總的節(jié)點(diǎn)數(shù)為,節(jié)點(diǎn)的信用度排名為aa值越小,排名越低),則排名為a的節(jié)點(diǎn)對應(yīng)的第一輪的nNonce的搜索空間的范圍大小為

    這樣做的目的是信用度排名較高的節(jié)點(diǎn)可以一次獲取更多的nNonce字段搜索空間,避免每次獲取搜索空間的計算消耗,本文根據(jù)信用度排名順序按照比例劃分搜索空間,則排名為a的節(jié)點(diǎn)對應(yīng)的第一輪nNonce的搜索空間的范圍為

    如果某節(jié)點(diǎn)已經(jīng)驗證完分配的nNonce的搜索空間和nTime字段搜索空間的組合后,但并沒有找到符合hash難題要求的nNonce值,該節(jié)點(diǎn)先會查看有沒有收到來自網(wǎng)絡(luò)的其他節(jié)點(diǎn)解決該難題的nNonce值。如果沒有,則它可以通過計算獲取輪(下一輪)的搜索空間的范圍為

    2.2.3 模型評價

    根據(jù)信用模型產(chǎn)生節(jié)點(diǎn)信用度,并進(jìn)行排名,通過排名的順序,節(jié)點(diǎn)按照分片輪轉(zhuǎn)模型來獲取自己的搜索空間,從而實現(xiàn)了搜索空間分配的去中心化。由于nTime字段的搜索空間非常有限,因此并沒有對其搜索空間進(jìn)行劃分,而是給每個節(jié)點(diǎn)都分配全部搜索空間。當(dāng)然,由于在分片輪轉(zhuǎn)模型中對區(qū)塊頭的規(guī)定限制了搜索空間的大小,這也是模型有待改進(jìn)之處。

    3 共識算法

    參與共識的節(jié)點(diǎn)必須擁有一定的信用度排名。這個信用度排名不是每輪共識都要計算的,只有當(dāng)產(chǎn)生1 440個區(qū)塊后,系統(tǒng)才會提前更新排名順序,各個參與共識的節(jié)點(diǎn)根據(jù)新一輪的排名進(jìn)行搜索空間的驗證。

    每個參與共識的節(jié)點(diǎn)需要維護(hù)一個信用度排名數(shù)組和節(jié)點(diǎn)狀態(tài)記錄表。系統(tǒng)為每一個參與共識的節(jié)點(diǎn)分配一個序號,從1開始,最后一個節(jié)點(diǎn)的編號為,數(shù)組的下標(biāo)即為節(jié)點(diǎn)的編號,數(shù)組存儲的就是節(jié)點(diǎn)的信用度排名,而對于[0]存儲的是參與共識節(jié)點(diǎn)的個數(shù)。狀態(tài)記錄表記錄了所有參與共識節(jié)點(diǎn)的網(wǎng)絡(luò)延時情況、離線情況、節(jié)點(diǎn)提供分叉區(qū)塊的情況、節(jié)點(diǎn)是否提供違法區(qū)塊的情況、節(jié)點(diǎn)獲取搜索空間的次數(shù)、節(jié)點(diǎn)上一輪的信用度等。整個算法分為4個步驟:初始化階段、構(gòu)建區(qū)塊、校驗新區(qū)塊和區(qū)塊鏈的組裝。

    3.1 一般流程

    算法要求每次產(chǎn)生區(qū)塊的時間間隔大約為2 min,執(zhí)行的一般流程如下所示。

    1) 初始化階段

    該算法初始由主節(jié)點(diǎn)新建一個空的數(shù)組,由于信用度的范圍為(0,1),因此主節(jié)點(diǎn)設(shè)置一個初始值=0.5(范圍為[0.5,0.51))。

    主節(jié)點(diǎn)將發(fā)給每個節(jié)點(diǎn),每個節(jié)點(diǎn)比較自己的信用度與發(fā)過來的,如果自己的信用度在的區(qū)間,則向主節(jié)點(diǎn)返回message=<,,,,>和對message的簽名,其中,是一個標(biāo)志碼,是時間戳,是節(jié)點(diǎn)編號,是節(jié)點(diǎn)自己的信用度。主節(jié)點(diǎn)先驗證簽名是否合法,然后查看狀態(tài)記錄表,核實此節(jié)點(diǎn)是否已經(jīng)“報到”,如果沒有就將這些“報到”的節(jié)點(diǎn)按照信用度從小到大進(jìn)行排名并寫入排名數(shù)組中,最后在狀態(tài)記錄表中標(biāo)記這個節(jié)點(diǎn)。

    重復(fù)上一步,直到達(dá)到1時,算法終止。

    算法1 信用度排名算法

    1)[]={0},=0.5

    2) repeat

    3) master廣播

    4) ifC≥&&C<+0.01 then

    5) slave發(fā)送message

    6) end if

    7) if 簽名合法&&未報到 then

    8) 在中添加C

    9) 標(biāo)記C

    10) end if

    11)0.01

    12) until1

    13)

    算法2 信用度排名分發(fā)算法

    1)為排名數(shù)組

    2) for 從第1到第+1個階段 do

    3) 執(zhí)行信用度排名算法進(jìn)行排名

    4) 廣播()

    5) if接收到至少num?次then

    6) 廣播()

    7) end if

    8) if 接收()至少次then

    9)

    10) end if

    11) 設(shè)節(jié)點(diǎn)v是第個階段的主節(jié)點(diǎn)

    12) 主節(jié)點(diǎn)v廣播它當(dāng)前的值

    13) if 接收()的次數(shù)嚴(yán)格少于?次then

    14)

    15) end if

    16) end for

    初始化階段,CPoW共識通過算法1實現(xiàn)了節(jié)點(diǎn)信用度的排名,通過算法2實現(xiàn)了節(jié)點(diǎn)排名的無差錯分發(fā),從而使每個節(jié)點(diǎn)獲取自己的信用度排名,以便構(gòu)建區(qū)塊。

    2) 構(gòu)建區(qū)塊

    CPoW共識機(jī)制的第二步是構(gòu)建新的區(qū)塊。當(dāng)節(jié)點(diǎn)通過初始化階段獲取了自己的排名后,根據(jù)分片輪轉(zhuǎn)模型獲取自己的搜索空間,對區(qū)塊頭進(jìn)行重復(fù)SHA256散列函數(shù)運(yùn)算,根據(jù)搜索空間不斷修改參數(shù),直到散列運(yùn)算的結(jié)果小于某一難度值。當(dāng)某一節(jié)點(diǎn)驗證出滿足問題難度的目標(biāo)值時,該節(jié)點(diǎn)立刻將所構(gòu)成的區(qū)塊發(fā)給它的所有相鄰節(jié)點(diǎn)。這些相鄰節(jié)點(diǎn)成功驗證并接收這個新區(qū)塊后,繼續(xù)向全網(wǎng)傳播此區(qū)塊。當(dāng)這個新區(qū)塊被驗證通過,每個節(jié)點(diǎn)都會將它加到自身節(jié)點(diǎn)的區(qū)塊鏈副本中。當(dāng)節(jié)點(diǎn)收到并驗證了新的區(qū)塊后,它們會放棄構(gòu)建相同高度區(qū)塊的計算,并立即轉(zhuǎn)向計算下一個區(qū)塊的工作。

    3) 校驗新區(qū)塊

    當(dāng)新區(qū)塊在網(wǎng)絡(luò)中擴(kuò)散時,每一個節(jié)點(diǎn)接收它之前,都需要進(jìn)行一系列的驗證,確保只有有效的區(qū)塊才會在網(wǎng)絡(luò)中傳播。因為這些校驗都是獨(dú)立進(jìn)行的,只有確保誠實的節(jié)點(diǎn)生成的區(qū)塊才會被納入?yún)^(qū)塊鏈,從而獲得獎勵。反之,由于區(qū)塊的無效性會導(dǎo)致節(jié)點(diǎn)失去獎勵,并會將這種“不誠實行為”寫入節(jié)點(diǎn)狀態(tài)記錄表,影響節(jié)點(diǎn)信用度。

    當(dāng)一個節(jié)點(diǎn)驗證收到的新區(qū)塊時,與標(biāo)準(zhǔn)驗證流程清單一一核對,若沒有通過驗證,該區(qū)塊將被拒絕,其標(biāo)準(zhǔn)一般如下。

    ①驗證提交新區(qū)塊節(jié)點(diǎn)信用度的真實性。

    ②區(qū)塊的數(shù)據(jù)結(jié)構(gòu)語法上有效。

    ③搜索空間屬于記賬節(jié)點(diǎn)需要驗證的搜索空間。

    ④區(qū)塊頭的hash值小于目標(biāo)難度。

    ⑤區(qū)塊大小符合長度限制。

    4) 區(qū)塊鏈的組裝

    共識機(jī)制的最后一步是將區(qū)塊裝配至區(qū)塊鏈的主鏈中。一旦某個節(jié)點(diǎn)驗證通過了新的區(qū)塊,它會嘗試將新的區(qū)塊連接到現(xiàn)有的區(qū)塊鏈上,并將它們組裝起來。

    節(jié)點(diǎn)進(jìn)行區(qū)塊組裝一般分為3種情況。第一種情況,由于區(qū)塊的hashPrevBlock字段是該區(qū)塊對其父區(qū)塊的引用,如果該父區(qū)塊是區(qū)塊鏈的“頂點(diǎn)”,那么該區(qū)塊就可以直接連接到區(qū)塊鏈的父區(qū)塊后。第二種情況,當(dāng)主鏈出現(xiàn)了分支,即所謂的備用鏈,在這種情況下,節(jié)點(diǎn)會將新的區(qū)塊添加到備用鏈,同時,節(jié)點(diǎn)會比較備用連和主鏈的長度,如果備用鏈長度更長,那么節(jié)點(diǎn)將收斂于備用鏈,這就意味著備用鏈成為新的主鏈,原來的主鏈變成備用鏈。第三種情況,如果節(jié)點(diǎn)沒有在區(qū)塊鏈上找到該區(qū)塊的父區(qū)塊,那么這個區(qū)塊就是“孤塊”。孤塊會被保存到孤塊池中,當(dāng)其父區(qū)塊出現(xiàn)并成功連接到區(qū)塊鏈上,孤塊才會被連接到父區(qū)塊后,成為區(qū)塊鏈的一部分。

    隨著越來越多的區(qū)塊被加入?yún)^(qū)塊鏈上,鏈上的工作量證明就更多,鏈的暫時性差異最終會得到解決。

    由于CPoW共識機(jī)制的初始階段節(jié)點(diǎn)太少,所以獲得的節(jié)點(diǎn)狀態(tài)數(shù)據(jù)較少。在這種情況下,由于節(jié)點(diǎn)狀態(tài)數(shù)據(jù)缺乏,導(dǎo)致訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)效果不佳,因此在CPoW共識機(jī)制開始運(yùn)行前,會采集一些虛擬貨幣系統(tǒng)的節(jié)點(diǎn)狀態(tài)數(shù)據(jù)來訓(xùn)練信用模型,同時,還要保證采集數(shù)據(jù)的全面性,以保障初始階段模型的準(zhǔn)確性,同時,需要將學(xué)習(xí)好的權(quán)值保存下來,以節(jié)省再次訓(xùn)練的時間。

    4 安全性分析

    4.1 區(qū)塊鏈分叉

    CPoW共識因為解決hash難題的時間更短,所以比PoW算法更容易產(chǎn)生分叉,因此,本文在信用模型還考慮了區(qū)塊鏈分叉這一因素,在一定程度上抑制了區(qū)塊鏈的分叉。

    當(dāng)出現(xiàn)分叉后,節(jié)點(diǎn)會依據(jù)2個準(zhǔn)則來判斷主鏈,且這2個準(zhǔn)則的優(yōu)先級由高到低。第一準(zhǔn)則:當(dāng)出現(xiàn)2個或多個鏈分叉時,節(jié)點(diǎn)會優(yōu)先選擇在更長的鏈上進(jìn)行“挖礦”,如圖3所示。其中,區(qū)塊B、D所在鏈等長,區(qū)塊E所在的鏈更長,所以節(jié)點(diǎn)會選擇以區(qū)塊E作為父區(qū)塊。第二準(zhǔn)則:當(dāng)出現(xiàn)等長的2個或多個鏈出現(xiàn)分叉時,節(jié)點(diǎn)會優(yōu)先選擇在信用度更高的節(jié)點(diǎn)產(chǎn)生的父區(qū)塊上進(jìn)行“挖礦”,如圖4所示。其中,區(qū)塊B、C、D等長,故節(jié)點(diǎn)會選擇在信用度更高的節(jié)點(diǎn)產(chǎn)生的區(qū)塊C上進(jìn)行挖礦。

    圖3 在更長鏈上進(jìn)行“挖礦”

    圖4 在信用度更高的節(jié)點(diǎn)產(chǎn)生的區(qū)塊上進(jìn)行“挖礦”

    為了防止惡意節(jié)點(diǎn)不斷進(jìn)行區(qū)塊分叉來實現(xiàn)“雙花”或擴(kuò)大區(qū)塊鏈的暫時差異性的時間,CPoW機(jī)制會將因產(chǎn)生新區(qū)塊導(dǎo)致區(qū)塊鏈分叉的節(jié)點(diǎn)記錄在節(jié)點(diǎn)狀態(tài)記錄表中,通過這樣的方法,使下一輪節(jié)點(diǎn)在信用度排名時降低其排名甚至是無法參與共識計算。由于區(qū)塊鏈的分叉會導(dǎo)致一定程度的資源浪費(fèi),CPoW機(jī)制還加入了全網(wǎng)心跳機(jī)制,通過不斷地詢問周圍節(jié)點(diǎn)是否收到待驗證的新區(qū)塊,以此來降低產(chǎn)生區(qū)塊鏈分叉的風(fēng)險。

    4.2 心跳機(jī)制

    當(dāng)節(jié)點(diǎn)獲得自己的排名,通過分片輪轉(zhuǎn)模型計算獲得自己的搜索空間。值得注意的是,這里會存在因為節(jié)點(diǎn)故障、網(wǎng)絡(luò)分區(qū)等原因而沒有獲得信用度排名的節(jié)點(diǎn),或節(jié)點(diǎn)斷電離線導(dǎo)致無法進(jìn)行搜索空間的驗證計算。對于以上這些情況,CPoW共識中出現(xiàn)的非常少,這是由于該共識機(jī)制中的信用度模型保證了更多的好節(jié)點(diǎn)會參與共識機(jī)制。

    即使有這樣的保證,CPoW共識還提供了容錯機(jī)制,即全網(wǎng)心跳機(jī)制,具體如下。排名為的節(jié)點(diǎn)每隔s向全網(wǎng)發(fā)送一個心跳消息(這種心跳消息可以是詢問是否收到新區(qū)塊),收到心跳消息的節(jié)點(diǎn)會回復(fù)心跳消息給節(jié)點(diǎn)。如果排名為+1的節(jié)點(diǎn)在s(>)內(nèi)都沒有收到節(jié)點(diǎn)的心跳消息,即心跳超時,那么+1的節(jié)點(diǎn)會向全網(wǎng)發(fā)送詢問是否收到節(jié)點(diǎn)心跳消息,等收到?的答復(fù)(收到的不需要答復(fù),沒有收到的就會答復(fù))后,就會代替節(jié)點(diǎn)驗證它的搜索空間,同時網(wǎng)絡(luò)上任何監(jiān)測到心跳超時的節(jié)點(diǎn)都會在狀態(tài)記錄表中進(jìn)行日志記錄。另外,+1節(jié)點(diǎn)還會檢查?1節(jié)點(diǎn)的心跳是否正常,如果不正常則進(jìn)行類似的操作,同時詢問?2節(jié)點(diǎn)心跳是否正常,直至檢查到心跳正常的節(jié)點(diǎn)為止。

    4.3 共識攻擊

    共識機(jī)制依賴于這樣一個前提:絕大多數(shù)的礦工因為考慮自己利益的最大化,所以都會通過誠實地挖礦來獲取獎勵,從而維持整個系統(tǒng)安全。單個礦工因自身算力的限制,理論上實施欺騙或破壞的難度很大。然而,當(dāng)一群擁有了整個系統(tǒng)51%算力的礦工們通過合作攻擊共識機(jī)制,這樣就會破壞系統(tǒng)的安全性和可靠性,產(chǎn)生51%攻擊。

    當(dāng)?shù)V工們發(fā)動51%攻擊,CPoW共識會比虛擬貨幣系統(tǒng)的PoW共識代價更高,在虛擬貨幣系統(tǒng)的PoW共識中,當(dāng)攻擊者的算力達(dá)到51%這個閾值時,其發(fā)起的攻擊嘗試幾乎肯定會成功,而對于CPoW共識,影響51%攻擊的因素不是算力而是信用度,因為BP神經(jīng)網(wǎng)絡(luò)可以通過參數(shù)調(diào)整進(jìn)一步弱化算力的權(quán)重。無論對于PoW共識還是CPoW共識來說,所謂的51%攻擊只是來說明節(jié)點(diǎn)能夠驗證的搜索空間的大小而已。對于PoW共識而言,51%攻擊意味著該礦工或礦池可以驗證51%的搜索空間。對于CPoW共識算法,由于弱化算力的原因,其遠(yuǎn)不能達(dá)到能夠驗證51%的搜索空間的程度。很顯然,攻擊者花費(fèi)更大的代價才能實現(xiàn)51%攻擊。

    4.4 抑制礦池的產(chǎn)生

    雖然由于全網(wǎng)算力的急劇增加使單個礦工已經(jīng)不可能占據(jù)全網(wǎng)1%的算力,但是托管礦池的引入導(dǎo)致算力大量集中,同時帶來了礦池操作者出于利益而施行攻擊的風(fēng)險。對于虛擬貨幣系統(tǒng)中的PoW共識來說,礦池操作者不僅能夠控制候選塊的生成,也能控制交易的填充,即礦池操作者擁有剔除特定交易或雙重支付的權(quán)利。

    但對于CPoW共識來說卻不是這樣。雖然礦池占據(jù)大量算力,但是其仍需要獲取待驗證的搜索空間,這就意味著它獲取搜索空間本身也是需要花費(fèi)時間的,相對于同等算力的多個單礦工節(jié)點(diǎn),他們獲取搜索空間是并發(fā)執(zhí)行的,這無疑節(jié)省了時間成本。其次,占據(jù)大量算力的礦池由于信用模型的原因無法獲得算力所對應(yīng)的搜索空間,導(dǎo)致礦工會選擇逃離礦池。最后,因為節(jié)點(diǎn)需要獲取待驗證的搜索空間,而成功在某一搜索空間上解決hash難題具有概率性,這大大降低了大算力對解決hash難題的影響。總之,一方面,CPoW算法抑制了大型礦池和中心化節(jié)點(diǎn)的出現(xiàn),避免了算力的集中化;另一方面,由于某一搜索空間恰好“命中”hash難題具有隨機(jī)性,這也降低了節(jié)點(diǎn)之間硬件惡性升級的可能性。

    4.5 信用度攻擊

    對于節(jié)點(diǎn)信用度的攻擊可以分為2種,一種是直接攻擊,另一種是間接攻擊。直接攻擊是指節(jié)點(diǎn)直接篡改自己的信用度,然后提交給主節(jié)點(diǎn)進(jìn)行排名,以此來獲得更高的信用度排名和更大的搜索空間。間接攻擊是指節(jié)點(diǎn)修改節(jié)點(diǎn)狀態(tài)記錄表,通過修改其他節(jié)點(diǎn)的記錄參數(shù)降低其他節(jié)點(diǎn)的信用度;通過修改自己的記錄參數(shù)提升自己的信用度。

    對于直接攻擊,由于CPoW共識機(jī)制的維護(hù)有2張記錄表,一張是上一輪節(jié)點(diǎn)的狀態(tài)記錄表,另一張是本輪正在記錄的狀態(tài)記錄表。由于每個節(jié)點(diǎn)在進(jìn)行新區(qū)塊驗證時,會根據(jù)上一輪狀態(tài)記錄表和區(qū)塊鏈交易數(shù)據(jù)并通過信用度模型再次核算節(jié)點(diǎn)信用度,如果驗證失敗,就會丟棄此區(qū)塊并在本輪狀態(tài)表中記錄提供無效區(qū)塊的節(jié)點(diǎn)。

    對于間接攻擊,它主要修改的是本輪狀態(tài)記錄表。為了預(yù)防這種攻擊,CPoW共識機(jī)制要求每一個節(jié)點(diǎn)在向狀態(tài)記錄表中寫入記錄時,必須經(jīng)過預(yù)寫入過程。這種預(yù)寫入過程是指節(jié)點(diǎn)先將數(shù)據(jù)寫入狀態(tài)記錄表,但標(biāo)記數(shù)據(jù)為預(yù)寫入數(shù)據(jù),同時向全網(wǎng)廣播本條記錄,收到此記錄的節(jié)點(diǎn)查看自己狀態(tài)記錄表是否有此條記錄,如果有則也廣播這條記錄,否則只是將此條記錄預(yù)寫入狀態(tài)記錄表,不做廣播操作。當(dāng)節(jié)點(diǎn)收到?條記錄,就會將預(yù)寫入標(biāo)志去掉。節(jié)點(diǎn)通過這種方式實現(xiàn)了狀態(tài)記錄表的一致性和不可篡改性。

    5 實驗仿真及分析

    5.1 信用度模型的仿真及結(jié)果分析

    CPoW共識機(jī)制利用BP神經(jīng)網(wǎng)絡(luò)構(gòu)建了節(jié)點(diǎn)信用模型來評估節(jié)點(diǎn)的信用度,然后利用信用度排名算法實現(xiàn)了各個節(jié)點(diǎn)的信用度排名,并利用算法2將排名結(jié)果分發(fā)至每一個參與共識的節(jié)點(diǎn)。CPoW機(jī)制產(chǎn)生的一次排名結(jié)果將用于產(chǎn)生1 440個區(qū)塊后,才會重新計算排名。由于評估信用度、計算排名和分發(fā)排名這3個過程與hash計算是并行進(jìn)行的(除了首次運(yùn)行共識協(xié)議需要等待排名結(jié)果,才能執(zhí)行hash計算)。這些都使CPoW共識機(jī)制的初始化階段的時間復(fù)雜度相對于產(chǎn)生1 440區(qū)塊的時間可以忽略不計。所以在初始化階段,本節(jié)主要關(guān)注BP神經(jīng)網(wǎng)絡(luò)是否能夠準(zhǔn)確地構(gòu)建信用模型。

    選取110個節(jié)點(diǎn)指標(biāo)數(shù)據(jù)及其信用評估結(jié)果,根據(jù)信用評估模型的方法,對選取的指標(biāo)數(shù)據(jù)首先進(jìn)行標(biāo)準(zhǔn)化處理,將其轉(zhuǎn)化為[0,1]的數(shù)據(jù),以便于神經(jīng)網(wǎng)絡(luò)處理。每次用100個節(jié)點(diǎn)的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),剩余10個節(jié)點(diǎn)的數(shù)據(jù)作為測試數(shù)據(jù),共進(jìn)行380次測試。實驗時設(shè)定學(xué)習(xí)速率為0.001,誤差變化如圖5所示。

    圖5 誤差變化曲線

    模型輸出和目標(biāo)輸出之間的對比如圖6所示。

    圖6 模型輸出和目標(biāo)輸出的對比

    如圖5和圖6所示,BP神經(jīng)網(wǎng)絡(luò)構(gòu)建的信用度模型具有非常好的準(zhǔn)確性,但是其仍存在學(xué)習(xí)效率慢、網(wǎng)絡(luò)的學(xué)習(xí)和記憶具有不穩(wěn)定性等問題,有許多改進(jìn)之處。

    5.2 hash計算的仿真及結(jié)果分析

    對于PoW共識機(jī)制而言,隨著難度值(二進(jìn)制以0開頭位數(shù))的增加,hash難題解決時間會不斷增大。對于CPoW共識機(jī)制而言,同樣如此。但由于CPoW共識機(jī)制將搜索空間進(jìn)行了劃分,使“挖礦”行為由一種競爭行為變成了一種合作行為,從而提高了“挖礦”效率,降低了資源消耗。所以本節(jié)主要對區(qū)塊生成階段進(jìn)行仿真實驗。

    5.2.1 實驗準(zhǔn)備

    此仿真實驗主機(jī)有12臺,CPU為Intel Core i5-7500U,內(nèi)存為8 GB,操作系統(tǒng)為Window 10 企業(yè)版。實驗選用Python3.5為主要編程語言,并使用其Matplotlib-2.1.0rc1模塊實現(xiàn)數(shù)據(jù)的可視化。

    5.2.2 仿真過程

    通過Python語言模擬了一個簡單的PoW算法,該算法通過不斷調(diào)整hash問題的難度然后統(tǒng)計“挖礦”成功的時間。因為PoW算法是競爭“挖礦”,實驗只需要在一臺CPU為i7-7500U的主機(jī)上運(yùn)行。

    而對于CPoW算法,因為它是一個劃分搜索空間的合作“挖礦”,所以除了核心的“挖礦”模塊,還需要有通信模塊和劃分搜索空間模塊。為了簡化實驗,仿真實驗指定了各個節(jié)點(diǎn)的信用度排名。實驗主要比較CPoW與PoW的算法效率和隨機(jī)性,探索解決hash難題時間和難度值,節(jié)點(diǎn)個數(shù)的關(guān)系,以及節(jié)點(diǎn)解決hash難題個數(shù)的分布情況。

    5.2.3 仿真結(jié)果

    PoW共識與CPoW共識解決難題的時間對比如圖7所示。其中,橫軸代表hash難題的難度值,縱軸代表解決hash難題的時間。由圖7可知,在難度值相同時,CPoW共識機(jī)制解決hash難題的時間明顯小于PoW共識機(jī)制。并且,3個節(jié)點(diǎn)合作“挖礦”的效率會好于2個節(jié)點(diǎn)“挖礦”的效率,即節(jié)點(diǎn)越多,“挖礦”效率越高,圖8和圖9更能夠說明這一點(diǎn)。但是,在圖7中仍出現(xiàn)了2個節(jié)點(diǎn)合作“挖礦”所用時間小于3個節(jié)點(diǎn)合作“挖礦”的情況,這種情況約占考察總數(shù)的14.3%,這是由于合理hash值的產(chǎn)生具有不確定性。

    圖7 PoW共識與CPoW共識解決難題時間對比

    圖8 節(jié)點(diǎn)個數(shù)為2、3、5時對CPoW共識解決hash難題的影響

    圖9 節(jié)點(diǎn)個數(shù)為3、7、11時對CPoW共識解決hash難題的影響

    圖10和圖11其難度值分別為29和30,通過增加節(jié)點(diǎn)數(shù)量,可以發(fā)現(xiàn)隨著節(jié)點(diǎn)數(shù)量的增加,hash難題的解決時間總體上呈遞減的趨勢。圖10和圖11中出現(xiàn)了與預(yù)期不符的波動節(jié)點(diǎn),這是由于在尋找合理hash值的過程中,CPoW共識算法良好的隨機(jī)性,導(dǎo)致在尋找nNonce值時具有不確定性,致使在“挖礦”時間上出現(xiàn)了波動,但其整體呈下降趨勢。

    圖10 CPoW共識解決hash難題的時間趨勢(1)

    圖11 CPoW共識解決hash難題的時間趨勢(2)

    實驗還在難度值相同的情況下,通過改變區(qū)塊填充內(nèi)容,嘗試“挖礦”100次,分別統(tǒng)計了12個節(jié)點(diǎn)和11個節(jié)點(diǎn)解決hash難題的次數(shù)的分布情況,如表3所示和表4所示。從表3和表4可以發(fā)現(xiàn),尋找合理hash值是一種不確定事件,但是排名的高低(排名值越大,排名越高)對解決hash難題還是有影響的,如2個表中都出現(xiàn)了低排名解決hash難題個數(shù)偏少的情況。但這也不意味著最高的排名就一定能夠更多地解決hash難題,如表4所示。

    表3 12個節(jié)點(diǎn)解決hash難題

    表4 11個節(jié)點(diǎn)解決hash難題

    圖12 尋找合理hash值的過程

    綜上所述,CPoW共識機(jī)制大大提高了“挖礦”的效率,隨著參與共識的節(jié)點(diǎn)數(shù)的增加,其效率提高越明顯。同時,新的CPoW共識機(jī)制在選擇記賬節(jié)點(diǎn)的問題上具有很好的隨機(jī)性,但仍存在信用度高低對“挖礦”成功的影響。仿真實驗也從側(cè)面反映了解決相同難度的hash難題時,由于時間的減少,其資源消耗會減少。

    5.3 性能分析

    本節(jié)主要從尋找合理hash值時間和資源消耗這2個角度對CPoW共識機(jī)制進(jìn)行性能分析。

    節(jié)點(diǎn)執(zhí)行CPoW共識尋找合理hash值的過程如圖12所示。其中,虛線框代表分片,實線框代表輪次,其中,五角星代表合理hash位置(忽略其具體位置,默認(rèn)其在這個搜索空間的最后),它位于第輪排名為a的節(jié)點(diǎn)的搜索空間中。

    假設(shè)用節(jié)點(diǎn)的平均算力代替網(wǎng)絡(luò)中節(jié)點(diǎn)的算力,用表示獲取搜索空間的時間,由于節(jié)點(diǎn)信用度的排名和分發(fā)都是與CPoW共識的hash計算并發(fā)執(zhí)行的,因此時間可以忽略,則在CPoW共識下尋找到合理hash值的時間為

    而對于PoW共識而言,尋找合理hash值的時間為

    在資源消耗方面,假設(shè)進(jìn)行一次hash運(yùn)算需要消耗的資源為s,獲取一次搜索空間需要消耗的資源為s,進(jìn)行一次信用度排名和分發(fā)需要消耗的資源為s,則CPoW共識所消耗的資源為

    而對于PoW共識而言,所消耗的資源為

    在尋找一次合理hash值的情況下,1和2無法進(jìn)行大小的比較,因為無法確定ss的大小。但是當(dāng)在成功尋找了1 440個合理hash值的情況下(產(chǎn)生1 440個區(qū)塊后,系統(tǒng)會提前更新信用度排名),并假設(shè)在這1 440次計算中合理hash值的位置不變,則CPoW共識下所消耗的資源為

    而對于PoW共識而言,所消耗的資源為

    5.4 適用性分析

    目前,根據(jù)區(qū)塊鏈開放等級的不同,區(qū)塊鏈被分為3類:私有鏈、公有鏈、聯(lián)盟鏈。PoW共識機(jī)制就是經(jīng)典的公有鏈共識算法,它很好地適應(yīng)了公有鏈的發(fā)展,且設(shè)計精簡。CPoW共識機(jī)制主要包含信用度評估、信用度排名(算法1)、排名分發(fā)(算法2)和共識計算這4個主要算法,其在算法設(shè)計上較為復(fù)雜,但是它同樣適用于公有鏈。但是,其區(qū)塊鏈網(wǎng)絡(luò)的規(guī)模(參與共識的節(jié)點(diǎn)數(shù)量)遠(yuǎn)少于PoW共識機(jī)制所適用的區(qū)塊鏈網(wǎng)絡(luò)規(guī)模。因為理論上PoW共識機(jī)制可以使參與共識節(jié)點(diǎn)的數(shù)量接近無窮大,而CPoW共識機(jī)制受限于信用度排名(算法1)和排名分發(fā)(算法2),雖然本文在算法流程設(shè)計上已經(jīng)進(jìn)行了優(yōu)化,但本質(zhì)上其算法執(zhí)行時間仍與參與共識節(jié)點(diǎn)的數(shù)量相關(guān)。

    綜上所述,CPoW共識算法適用公有鏈。其算法性能決定了它能夠滿足大多數(shù)區(qū)塊鏈應(yīng)用場景的共識計算,不僅適用于虛擬貨幣等電子貨幣系統(tǒng),還適用于智能電網(wǎng)[19]、供應(yīng)鏈系統(tǒng)、數(shù)據(jù)存儲與溯源、食品安全等眾多領(lǐng)域。

    6 結(jié)束語

    對于虛擬貨幣的PoW共識機(jī)制而言,尋找合理hash值是一種概率事件,占有更多的算力會有更大的概率成功“挖礦”。對于點(diǎn)點(diǎn)幣的PoS共識機(jī)制而言,同樣是尋找合理的hash值,其過程也是一個概率事件,擁有coin age的多少會等比例地降低“挖礦”難度,從而增加“挖礦”成功的概率。而對于CPoW共識而言,尋找合理hash值還是一個概率事件,擁有更高的信用度會獲得更多的搜索空間,從而增加“挖礦”成功的概率。同時,某一節(jié)點(diǎn)獲得的搜索空間恰好能夠產(chǎn)生新區(qū)塊,這也是一個概率事件,從而又給成功“挖礦”增加了隨機(jī)性。

    一方面,CPoW共識機(jī)制降低了資源消耗,另一方面,信用排名的機(jī)制確保了節(jié)點(diǎn)們致力于獲得更高的信用排名,而不是進(jìn)行盲目的算力升級和惡意的區(qū)塊分叉??傊?,CPoW共識機(jī)制能夠消耗更少的計算資源產(chǎn)生一個區(qū)塊,同時也使記賬節(jié)點(diǎn)的產(chǎn)生更具隨機(jī)性,很好地適應(yīng)了公有鏈的發(fā)展。

    此外,對于PoS共識機(jī)制而言,同樣可以設(shè)計基于信用模型的共識算法,讓其根據(jù)信用度的高低等比例地降低“挖礦”的難度,從而防止幣齡攻擊(save-up attack),提高共識機(jī)制的安全性。后續(xù)工作將對PoS共識機(jī)制及PoS共識的變種機(jī)制(如DPoS)進(jìn)行信用模型的構(gòu)造和分析,從而設(shè)計更加高效的共識機(jī)制。

    [1] NAKAMOTO S. Bitcoin: a peer-to-peer electronic cash system[J]. Consulted, 2008.

    [2] MCCONAGHY T, MARQUES R, MüLLER A, et al. BigchainDB: a scalable blockchain database[R]. White Paper, BigChainDB, 2016.

    [3] ZYSKIND G, NATHAN O A. Decentralizing privacy: using blockchain to protect personal data[C]// IEEE Security and Privacy Workshops. 2015:180-184.

    [4] STOLZ D, WATTENHOFER R. Byzantine agreement with median validity[C]//19th International Conference on Priniciples of Distributed Systems (OPODIS). 2015.

    [5] CASTRO M, LISKOV B. Practical Byzantine fault tolerance and proactive recovery[J]. ACM Transactions on Computer Systems, 2002, 20(4): 398-461.

    [6] CASTRO M, LISKOV B. Practical byzantine fault tolerance[C]//The Third Symposium on Operating Systems Design and Implementation. 1999: 173-186.

    [7] 范捷, 易樂天, 舒繼武. 拜占庭系統(tǒng)技術(shù)研究綜述[J]. 軟件學(xué)報, 2013, 24(6): 1346-1360. FAN J, YI L T, SHU J W. Research on the technologies of Byzantine system[J]. Journal of Software, 2013, 24(6): 1346-1360.

    [8] 唐長兵, 楊珍, 鄭忠龍, 等. PoW共識算法中的博弈困境分析與優(yōu)化[J]. 自動化學(xué)報, 2017, 43(9):1520-1531. TANG C B, YANG Z, ZHENG Z L, et al. Game dilemma analysis and optimization of PoW consensus algorithm[J]. Acta Automatica Sinica, 2017, 43(9):1520-1531.

    [9] LAMPORT L. Paxos made simple[J]. ACM Sigact News, 2001, 32(4): 18-25.

    [10] KING S, NADAL S. PPCoin: peer-to-peer crypto-currency with proof-of-stake[J]. 2012.

    [11] LARIMER D. Delegated proof-of-stake[R]. White Paper, 2014.

    [12] BENTOV I, LEE C, MIZRAHI A, et al. Proof of activity: extending bitcoin0s proof of work via proof of stake[J]. ACM Sigmetrics Performance Evaluation Review, 2014, 42(3): 34-37.

    [13] ROSENFELD M. Analysis of bitcoin pooled mining reward systems[J]. Computer Science, 2011.

    [14] ANDREAS M. Antonopoulos. mastering bitcoin [M]. O’Reilly Media, 2014.

    [15] DING S F, JIA W K, SU C Y, et al. An improved BP neural network algorithm based on factor analysis[J]. Journal of Convergence Information Technology, 2010, 5(4):103-108.

    [16] MA Y X, WANG S G. The application of artificial neural network in the forecasting on incidence of a disease[C]//International Conference on Biomedical Engineering and Informatics. 2010:1269-1272.

    [17] JIN W, LI Z J, WEI L S, et al. The improvements of BP neural network learning algorithm[C]// International Conference on Signal Processing Proceedings. 2002:1647-1649.

    [18] BERMAN P, GARAY J A, PERRY K J. Towards optimal distributed consensus[C]//Symposium on Foundations of Computer Science. 1989:410-415.

    [19] RAHBARI A N, OJHA U, ZHANG Z, et al. Incremental welfare consensus algorithm for cooperative distributed generation/demand response in smart grid[J]. IEEE Transactions on Smart Grid, 2017, 5(6):2836-2845.

    Proof of work algorithm based on credit model

    WANG Zuan1,2,3,TIAN Youliang1,2,3, LI Qiuxian1,2,3, YANG Xinhuan1,2,3

    1. College of Computer Science & Technology, Guizhou University, Guiyang 550025, China 2. Guizhou Provincial Key Labortory of Public Big Data (Guizhou University), Guiyang 550025, China 3. Institute of Cryptography & Data Security, Guizhou University, Guiyang 550025, China

    A consensus protocol based on the credit model was proposed. Firstly, the consensus agreement drew on the idea of personal credit risk assessment and a node credit model based on BP neural network was designed. Secondly, a piecewise rotation model was also constructed to segment the search space according to the node’s credit level to generate new blocks. At the same time, the possible attack of the protocol was analyzed and the vulnerability of this protocol was fixed. Finally, the simulation experiments show that the protocol not only effectively reduces the huge resource consumption in the process of new block generation, but also suppresses the generation of the large mine pool, making the whole blockchain system more secure and reliable.

    PoW consensus, BP neural network, credit model, search space, blockchain

    TP302

    A

    10.11959/j.issn.1000?436x.2018138

    王纘(1992–),男,安徽安慶人,貴州大學(xué)碩士生,主要研究方向為信息安全、區(qū)塊鏈應(yīng)用與共識機(jī)制、機(jī)器學(xué)習(xí)。

    田有亮(1982–),男,貴州盤縣人,博士,貴州大學(xué)教授、博士生導(dǎo)師,主要研究方向為算法博弈論、密碼學(xué)與安全協(xié)議、大數(shù)據(jù)安全與隱私保護(hù)等。

    李秋賢(1992–),女,河南焦作人,貴州大學(xué)碩士生,主要研究方向為密碼學(xué)與安全協(xié)議。

    楊新歡(1993–),女,山西運(yùn)城人,貴州大學(xué)碩士生,主要研究方向為信息安全、數(shù)據(jù)通信安全。

    2017?10?30;

    2018?07?20

    youliangtian@163.com

    國家自然科學(xué)基金資助項目(No.61662009, No.61772008);貴州省教育廳科技拔尖人才基金資助項目(No.[2016] 060);貴州省科技重大專項計劃基金資助項目(No.20183001);貴州省科技計劃基金資助項目(No.[2017]5788);教育部—中國移動科研基金研發(fā)資助項目(No.MCM20170401);貴州大學(xué)培育基金資助項目(No. [2017]5788);貴州省聯(lián)合基金資助項目(No. LH20147476)

    The National Natural Science Foundation of China (No.61662009, No.61772008), Topnotch Talent in Science and Technology Support Program of Guizhou Province Education Department (No.[2016] 060), Science and Technology Major Support Program of Guizhou Province (No.20183001), Guizhou Provincial Science and Technology Plan Project (No.[2017]5788), Ministry of Educatio China Mobile Research Fund Project (No.MCM20170401), Guizhou University Cultivation Project (No. [2017]5788), The Joint Science and Technology Foundation of Guizhou Province (No.LH20147476)

    猜你喜歡
    信用度挖礦共識
    分 析
    意林(2023年7期)2023-06-13 13:00:55
    合力攻堅 全面治理高?!巴诘V”
    多措并舉 全流程整治“挖礦”
    共識 共進(jìn) 共情 共學(xué):讓“溝通之花”綻放
    論思想共識凝聚的文化向度
    商量出共識
    挖礦木馬的攻擊手段及防御策略研究
    挖礦的史蒂夫
    基于AHP和k-means算法的電力用戶信用度評價
    基于聲譽(yù)的C2C電子商務(wù)信用評價模型研究
    丝袜美足系列| 精品国产乱码久久久久久男人| 国产精华一区二区三区| 中文字幕最新亚洲高清| 亚洲精品一卡2卡三卡4卡5卡| 国产一区二区三区视频了| 国产一区在线观看成人免费| 极品教师在线免费播放| aaaaa片日本免费| 制服人妻中文乱码| 欧美日韩精品网址| 久久婷婷人人爽人人干人人爱 | 成人18禁在线播放| 国产精品免费视频内射| 亚洲自拍偷在线| 亚洲熟妇熟女久久| 国产av又大| 国产高清videossex| 咕卡用的链子| 亚洲欧美日韩无卡精品| 午夜亚洲福利在线播放| 热99re8久久精品国产| 脱女人内裤的视频| 12—13女人毛片做爰片一| 欧美黄色片欧美黄色片| 后天国语完整版免费观看| 国产高清videossex| 老司机在亚洲福利影院| 国产精品久久久久久精品电影 | 精品欧美一区二区三区在线| 又黄又粗又硬又大视频| 国产xxxxx性猛交| 欧美日韩亚洲综合一区二区三区_| 国产欧美日韩综合在线一区二区| 精品高清国产在线一区| 好男人电影高清在线观看| 亚洲av美国av| 久久久国产成人免费| 久久人人爽av亚洲精品天堂| 麻豆久久精品国产亚洲av| 免费在线观看完整版高清| 麻豆av在线久日| svipshipincom国产片| 老熟妇乱子伦视频在线观看| 他把我摸到了高潮在线观看| 又大又爽又粗| 高潮久久久久久久久久久不卡| 亚洲成人免费电影在线观看| 亚洲久久久国产精品| 亚洲五月婷婷丁香| 曰老女人黄片| 午夜福利欧美成人| 日本a在线网址| 性欧美人与动物交配| 国产亚洲精品av在线| 日韩欧美国产一区二区入口| 大陆偷拍与自拍| 人人妻人人澡人人看| 丁香六月欧美| 精品电影一区二区在线| 日韩视频一区二区在线观看| 久99久视频精品免费| 国内精品久久久久精免费| 动漫黄色视频在线观看| 美女高潮到喷水免费观看| 69精品国产乱码久久久| 真人做人爱边吃奶动态| 村上凉子中文字幕在线| 99国产精品一区二区蜜桃av| 在线播放国产精品三级| 久久香蕉精品热| 在线免费观看的www视频| 亚洲精品久久国产高清桃花| 久久国产精品人妻蜜桃| 日韩中文字幕欧美一区二区| АⅤ资源中文在线天堂| 亚洲人成伊人成综合网2020| 在线观看舔阴道视频| 国产三级在线视频| 日韩av在线大香蕉| 午夜成年电影在线免费观看| 亚洲人成网站在线播放欧美日韩| 亚洲成人国产一区在线观看| 欧美人与性动交α欧美精品济南到| 亚洲色图综合在线观看| 嫩草影视91久久| 91成年电影在线观看| 久久久精品国产亚洲av高清涩受| 国产亚洲精品av在线| 午夜影院日韩av| 欧美激情高清一区二区三区| 午夜成年电影在线免费观看| 在线观看免费视频日本深夜| 久久久水蜜桃国产精品网| 午夜精品久久久久久毛片777| 欧美最黄视频在线播放免费| 男人舔女人的私密视频| 精品久久久久久久毛片微露脸| e午夜精品久久久久久久| 韩国av一区二区三区四区| 亚洲欧美日韩无卡精品| 99riav亚洲国产免费| 日韩欧美国产在线观看| 97碰自拍视频| 久久精品国产亚洲av高清一级| 成人三级做爰电影| 国产亚洲精品久久久久久毛片| 国产精品免费一区二区三区在线| 午夜老司机福利片| 一边摸一边抽搐一进一出视频| 婷婷六月久久综合丁香| 国产熟女午夜一区二区三区| 成人精品一区二区免费| 中文字幕人成人乱码亚洲影| 给我免费播放毛片高清在线观看| 午夜日韩欧美国产| 亚洲国产精品sss在线观看| 日日干狠狠操夜夜爽| 亚洲avbb在线观看| 亚洲一区二区三区色噜噜| 亚洲精品美女久久av网站| 国产成人一区二区三区免费视频网站| 免费在线观看视频国产中文字幕亚洲| 午夜福利欧美成人| 在线观看免费日韩欧美大片| 一级毛片高清免费大全| 国产av在哪里看| 制服丝袜大香蕉在线| 成年女人毛片免费观看观看9| 9热在线视频观看99| 1024香蕉在线观看| 国产欧美日韩一区二区精品| 又黄又粗又硬又大视频| 亚洲男人天堂网一区| 亚洲一卡2卡3卡4卡5卡精品中文| 中文字幕精品免费在线观看视频| 岛国视频午夜一区免费看| 久9热在线精品视频| 一级毛片高清免费大全| 久久精品国产亚洲av香蕉五月| 又大又爽又粗| 精品高清国产在线一区| 国产蜜桃级精品一区二区三区| 一本久久中文字幕| 国产亚洲精品av在线| 午夜福利欧美成人| 精品熟女少妇八av免费久了| 精品久久久久久久人妻蜜臀av | 欧美日韩亚洲综合一区二区三区_| 亚洲五月婷婷丁香| 99国产精品99久久久久| 欧美黑人精品巨大| 午夜老司机福利片| 一边摸一边做爽爽视频免费| 亚洲av日韩精品久久久久久密| 精品久久蜜臀av无| 侵犯人妻中文字幕一二三四区| 精品乱码久久久久久99久播| 两人在一起打扑克的视频| 亚洲自偷自拍图片 自拍| 黄色女人牲交| 别揉我奶头~嗯~啊~动态视频| 国产亚洲精品综合一区在线观看 | ponron亚洲| 国产精品精品国产色婷婷| 91麻豆av在线| 999久久久国产精品视频| 久久中文字幕一级| 亚洲欧美日韩高清在线视频| 欧美在线黄色| 一进一出抽搐动态| 黄色成人免费大全| 久久久久久久午夜电影| 成人18禁在线播放| 91成人精品电影| 人成视频在线观看免费观看| 国产99久久九九免费精品| 91成人精品电影| 极品人妻少妇av视频| 亚洲av片天天在线观看| 午夜福利欧美成人| 精品无人区乱码1区二区| 日韩精品中文字幕看吧| 亚洲精品国产精品久久久不卡| 十分钟在线观看高清视频www| 国产精品1区2区在线观看.| 免费高清视频大片| 亚洲成a人片在线一区二区| 美女国产高潮福利片在线看| 亚洲无线在线观看| 久久人妻av系列| 亚洲自拍偷在线| 亚洲九九香蕉| 黄色视频不卡| 美女高潮喷水抽搐中文字幕| 欧美成人性av电影在线观看| x7x7x7水蜜桃| 久久午夜综合久久蜜桃| 欧美不卡视频在线免费观看 | 亚洲 欧美 日韩 在线 免费| 欧美激情高清一区二区三区| 啦啦啦韩国在线观看视频| 久久人人精品亚洲av| 午夜福利在线观看吧| 亚洲精品av麻豆狂野| 欧美在线黄色| x7x7x7水蜜桃| 黑人巨大精品欧美一区二区mp4| 久久久久久国产a免费观看| 午夜福利成人在线免费观看| 91字幕亚洲| cao死你这个sao货| 中文字幕高清在线视频| av在线播放免费不卡| 欧美日韩一级在线毛片| 女同久久另类99精品国产91| 狠狠狠狠99中文字幕| 免费在线观看日本一区| 午夜a级毛片| 日本一区二区免费在线视频| 精品国产亚洲在线| 亚洲黑人精品在线| 99精品在免费线老司机午夜| 国产不卡一卡二| 99香蕉大伊视频| 色婷婷久久久亚洲欧美| 91成年电影在线观看| 丰满人妻熟妇乱又伦精品不卡| 成人国产一区最新在线观看| 黄片大片在线免费观看| 久久精品亚洲精品国产色婷小说| 琪琪午夜伦伦电影理论片6080| 亚洲avbb在线观看| 亚洲成人精品中文字幕电影| 制服诱惑二区| 色老头精品视频在线观看| 国产亚洲欧美在线一区二区| 久久影院123| 免费看a级黄色片| 亚洲五月婷婷丁香| 国产精品1区2区在线观看.| 一个人免费在线观看的高清视频| 怎么达到女性高潮| 国产91精品成人一区二区三区| 亚洲免费av在线视频| 动漫黄色视频在线观看| 两个人视频免费观看高清| 夜夜躁狠狠躁天天躁| 巨乳人妻的诱惑在线观看| 欧美日韩福利视频一区二区| 动漫黄色视频在线观看| 午夜福利在线观看吧| 精品久久久精品久久久| 久久久久久国产a免费观看| 丰满人妻熟妇乱又伦精品不卡| 午夜免费成人在线视频| 91国产中文字幕| 欧美国产精品va在线观看不卡| 91精品三级在线观看| 亚洲国产中文字幕在线视频| 97人妻精品一区二区三区麻豆 | 桃色一区二区三区在线观看| 亚洲电影在线观看av| 制服丝袜大香蕉在线| 欧美最黄视频在线播放免费| 99热只有精品国产| 亚洲第一电影网av| 午夜a级毛片| 性少妇av在线| 黑人巨大精品欧美一区二区蜜桃| 波多野结衣一区麻豆| 成年版毛片免费区| 国产精品精品国产色婷婷| 黄色a级毛片大全视频| 久久狼人影院| 成年女人毛片免费观看观看9| 纯流量卡能插随身wifi吗| www.www免费av| 国产成+人综合+亚洲专区| 亚洲熟妇熟女久久| 久久久久精品国产欧美久久久| 亚洲国产毛片av蜜桃av| 很黄的视频免费| 亚洲电影在线观看av| 欧美在线一区亚洲| 亚洲va日本ⅴa欧美va伊人久久| 19禁男女啪啪无遮挡网站| 法律面前人人平等表现在哪些方面| 99久久久亚洲精品蜜臀av| 高清黄色对白视频在线免费看| 50天的宝宝边吃奶边哭怎么回事| avwww免费| 午夜精品久久久久久毛片777| 岛国在线观看网站| 淫秽高清视频在线观看| 欧美一级a爱片免费观看看 | 国产aⅴ精品一区二区三区波| 此物有八面人人有两片| 成年人黄色毛片网站| 不卡av一区二区三区| 99精品欧美一区二区三区四区| 欧美一级毛片孕妇| www.自偷自拍.com| 午夜精品在线福利| 一级黄色大片毛片| 国产成人精品久久二区二区91| 丁香六月欧美| 亚洲视频免费观看视频| 久久久久国产一级毛片高清牌| 老汉色∧v一级毛片| 亚洲黑人精品在线| 老司机深夜福利视频在线观看| 18禁国产床啪视频网站| 精品久久久久久成人av| 亚洲精品一区av在线观看| 亚洲五月婷婷丁香| 亚洲一区中文字幕在线| 亚洲狠狠婷婷综合久久图片| 亚洲在线自拍视频| 亚洲视频免费观看视频| www.精华液| 亚洲 国产 在线| 又大又爽又粗| 9热在线视频观看99| 亚洲av电影在线进入| 精品第一国产精品| 日本 av在线| 性少妇av在线| 999久久久国产精品视频| 中国美女看黄片| 欧美乱色亚洲激情| 变态另类丝袜制服| 精品一区二区三区av网在线观看| 一进一出好大好爽视频| 亚洲第一电影网av| 亚洲激情在线av| 成人18禁在线播放| 91麻豆精品激情在线观看国产| 午夜久久久在线观看| 亚洲国产毛片av蜜桃av| 亚洲欧美精品综合久久99| 涩涩av久久男人的天堂| 国产成人欧美在线观看| 免费少妇av软件| 两人在一起打扑克的视频| 日韩欧美国产一区二区入口| 99久久精品国产亚洲精品| 日本免费一区二区三区高清不卡 | 国产亚洲精品第一综合不卡| 桃色一区二区三区在线观看| 在线视频色国产色| 少妇的丰满在线观看| 精品人妻1区二区| 久久这里只有精品19| 91字幕亚洲| 国产麻豆成人av免费视频| 亚洲精品中文字幕一二三四区| 好看av亚洲va欧美ⅴa在| 亚洲av电影在线进入| 亚洲中文日韩欧美视频| 久久久久久大精品| 女人爽到高潮嗷嗷叫在线视频| 日韩视频一区二区在线观看| 成人永久免费在线观看视频| 一夜夜www| 国产免费男女视频| 99国产精品一区二区蜜桃av| 亚洲精品一卡2卡三卡4卡5卡| 久久亚洲真实| 一二三四在线观看免费中文在| 老鸭窝网址在线观看| 日韩精品中文字幕看吧| 啪啪无遮挡十八禁网站| 国产亚洲av高清不卡| 免费看十八禁软件| 国产午夜福利久久久久久| 青草久久国产| ponron亚洲| 18禁黄网站禁片午夜丰满| 91字幕亚洲| 久久这里只有精品19| 久久久久亚洲av毛片大全| 精品国产一区二区久久| 亚洲精品在线观看二区| 国产成人欧美在线观看| 亚洲第一av免费看| 多毛熟女@视频| 久久精品国产亚洲av香蕉五月| svipshipincom国产片| av视频免费观看在线观看| 亚洲欧洲精品一区二区精品久久久| 国产av在哪里看| 精品欧美国产一区二区三| 高清在线国产一区| 老司机福利观看| 天天一区二区日本电影三级 | 国产欧美日韩综合在线一区二区| 欧美绝顶高潮抽搐喷水| 男女床上黄色一级片免费看| 亚洲欧美激情综合另类| 亚洲人成网站在线播放欧美日韩| 黄色视频,在线免费观看| 亚洲天堂国产精品一区在线| 午夜福利18| 久久午夜亚洲精品久久| 搞女人的毛片| 亚洲av日韩精品久久久久久密| 久久影院123| 免费少妇av软件| 久久久精品国产亚洲av高清涩受| 精品国产亚洲在线| 日韩av在线大香蕉| 欧美乱码精品一区二区三区| 天堂动漫精品| 日本三级黄在线观看| 村上凉子中文字幕在线| 69精品国产乱码久久久| 国产精品免费视频内射| 欧美成人一区二区免费高清观看 | 99精品久久久久人妻精品| 男人舔女人的私密视频| 国产成人欧美在线观看| 午夜a级毛片| 国产高清videossex| 99精品欧美一区二区三区四区| 亚洲色图综合在线观看| 99国产综合亚洲精品| 国产精品乱码一区二三区的特点 | 欧美亚洲日本最大视频资源| 日本一区二区免费在线视频| 亚洲国产毛片av蜜桃av| 国内久久婷婷六月综合欲色啪| 黄片小视频在线播放| 精品国产乱子伦一区二区三区| av有码第一页| 精品卡一卡二卡四卡免费| 免费女性裸体啪啪无遮挡网站| 日韩精品中文字幕看吧| 久久久久九九精品影院| 女人被躁到高潮嗷嗷叫费观| 老司机午夜十八禁免费视频| 国产成人欧美| x7x7x7水蜜桃| 在线观看一区二区三区| 国产精品一区二区免费欧美| 午夜福利免费观看在线| 亚洲自偷自拍图片 自拍| 老鸭窝网址在线观看| 亚洲国产高清在线一区二区三 | 老司机午夜福利在线观看视频| 久久亚洲精品不卡| 精品一区二区三区av网在线观看| 亚洲人成77777在线视频| 不卡av一区二区三区| 色精品久久人妻99蜜桃| 12—13女人毛片做爰片一| 日本vs欧美在线观看视频| 亚洲国产精品sss在线观看| 日本三级黄在线观看| 男女床上黄色一级片免费看| 久久精品国产综合久久久| 日日干狠狠操夜夜爽| 国产亚洲av高清不卡| 99香蕉大伊视频| 国产亚洲精品第一综合不卡| 免费久久久久久久精品成人欧美视频| 男女床上黄色一级片免费看| 国产亚洲精品av在线| 大型av网站在线播放| 一边摸一边做爽爽视频免费| 99久久国产精品久久久| 久久狼人影院| 亚洲在线自拍视频| av在线天堂中文字幕| 97人妻天天添夜夜摸| 亚洲成av人片免费观看| 久久久久亚洲av毛片大全| 色av中文字幕| www.999成人在线观看| 国产亚洲精品av在线| av网站免费在线观看视频| 不卡一级毛片| 久久久久久亚洲精品国产蜜桃av| 日韩欧美一区视频在线观看| 午夜免费鲁丝| 免费观看人在逋| 国产精品99久久99久久久不卡| 欧美色视频一区免费| 婷婷精品国产亚洲av在线| 午夜久久久在线观看| www.999成人在线观看| 香蕉久久夜色| 电影成人av| 一区二区三区高清视频在线| 国产精品亚洲av一区麻豆| 国产精品久久久人人做人人爽| 国产精品电影一区二区三区| 亚洲七黄色美女视频| 亚洲人成网站在线播放欧美日韩| 久久久精品国产亚洲av高清涩受| 一区福利在线观看| 免费在线观看日本一区| 亚洲精品中文字幕一二三四区| 亚洲中文字幕日韩| x7x7x7水蜜桃| 少妇被粗大的猛进出69影院| 可以在线观看毛片的网站| 精品免费久久久久久久清纯| 亚洲中文字幕日韩| e午夜精品久久久久久久| 日韩欧美一区二区三区在线观看| 一级毛片高清免费大全| 夜夜爽天天搞| 精品电影一区二区在线| 熟女少妇亚洲综合色aaa.| 亚洲av成人av| 中文字幕精品免费在线观看视频| 大香蕉久久成人网| 欧美日本亚洲视频在线播放| 成人18禁高潮啪啪吃奶动态图| 女性生殖器流出的白浆| 亚洲av五月六月丁香网| 日韩有码中文字幕| 日韩精品免费视频一区二区三区| 亚洲色图综合在线观看| cao死你这个sao货| 午夜福利高清视频| 成人三级做爰电影| 在线天堂中文资源库| 欧美绝顶高潮抽搐喷水| 久久九九热精品免费| av中文乱码字幕在线| 天堂影院成人在线观看| 免费高清在线观看日韩| 国产视频一区二区在线看| 亚洲欧美激情综合另类| 国产一卡二卡三卡精品| 香蕉久久夜色| 久久九九热精品免费| 欧美av亚洲av综合av国产av| 精品国产乱子伦一区二区三区| 18禁美女被吸乳视频| 妹子高潮喷水视频| www国产在线视频色| 中文字幕人妻丝袜一区二区| 在线十欧美十亚洲十日本专区| 成人手机av| 亚洲国产精品sss在线观看| 国产成人av激情在线播放| 一夜夜www| 丝袜在线中文字幕| 国产亚洲欧美精品永久| 国产精品日韩av在线免费观看 | 午夜精品久久久久久毛片777| 美女午夜性视频免费| 日日夜夜操网爽| 男女下面插进去视频免费观看| 悠悠久久av| 精品久久久久久成人av| 成人亚洲精品一区在线观看| 国产一区二区激情短视频| 手机成人av网站| 国产精品美女特级片免费视频播放器 | 亚洲成av片中文字幕在线观看| 又黄又粗又硬又大视频| 99在线视频只有这里精品首页| 天天躁狠狠躁夜夜躁狠狠躁| 人人澡人人妻人| 日本免费a在线| 麻豆久久精品国产亚洲av| 亚洲av电影不卡..在线观看| 成人免费观看视频高清| 亚洲欧美日韩另类电影网站| aaaaa片日本免费| 欧美黄色片欧美黄色片| 亚洲最大成人中文| 日韩有码中文字幕| 欧美午夜高清在线| 国产成人精品久久二区二区免费| 一本久久中文字幕| 搡老岳熟女国产| 日日爽夜夜爽网站| 视频在线观看一区二区三区| 久久国产乱子伦精品免费另类| 日韩大尺度精品在线看网址 | 老汉色∧v一级毛片| 欧美日韩亚洲国产一区二区在线观看| 色综合站精品国产| 在线观看免费视频日本深夜| 久久精品国产99精品国产亚洲性色 | 日韩大码丰满熟妇| 欧美av亚洲av综合av国产av| 可以在线观看毛片的网站| 国产精品久久视频播放| 亚洲美女黄片视频| 亚洲色图综合在线观看| 18美女黄网站色大片免费观看| 久久人人精品亚洲av| 国产99久久九九免费精品| 久久天躁狠狠躁夜夜2o2o| 91成人精品电影| 亚洲 欧美一区二区三区| 啪啪无遮挡十八禁网站| 女人高潮潮喷娇喘18禁视频| 国产成人av激情在线播放| 国产精品久久久久久人妻精品电影| 成人国产一区最新在线观看| 久久伊人香网站| 欧美激情高清一区二区三区| 国产精品综合久久久久久久免费 | 久久久国产欧美日韩av| 50天的宝宝边吃奶边哭怎么回事| 夜夜爽天天搞| 涩涩av久久男人的天堂| 日日夜夜操网爽|