張 方, 王鳳英
(山東理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 山東 淄博 255049)
P2P與傳統(tǒng)的C/S和CDN[1-2]網(wǎng)絡(luò)模式相比,打破了傳統(tǒng)的計(jì)算模式,即網(wǎng)絡(luò)中節(jié)點(diǎn)間的地位不再是一對(duì)多的關(guān)系,而是一對(duì)一的關(guān)系,每個(gè)節(jié)點(diǎn)為其他節(jié)點(diǎn)提供服務(wù)同時(shí)也享有其他節(jié)點(diǎn)提供的服務(wù)。此特性將互聯(lián)網(wǎng)的計(jì)算任務(wù)或存儲(chǔ)資料分布到各個(gè)散布的節(jié)點(diǎn)上,利用節(jié)點(diǎn)閑置的計(jì)算能力或存儲(chǔ)空間,達(dá)到高性能計(jì)算和海量存儲(chǔ)的目的[3]。P2P網(wǎng)絡(luò)由此完美解決了傳統(tǒng)網(wǎng)絡(luò)模式中的服務(wù)瓶頸與信息孤島問題,具有更廣闊的應(yīng)用前景。其活動(dòng)節(jié)點(diǎn)的去中心化與當(dāng)下流行的區(qū)塊鏈特性不謀而合。通過類比P2P技術(shù)[4]與區(qū)塊鏈[5]技術(shù),發(fā)現(xiàn)兩者有很大的相似,都有非中心化、健壯性、可擴(kuò)展、去信任等特點(diǎn)。研究具有可信、可運(yùn)營(yíng)的大規(guī)模分布式系統(tǒng)一直是近年來的熱點(diǎn),融合區(qū)塊鏈的hash鏈與P2P技術(shù)則是構(gòu)建大規(guī)模分布式系統(tǒng)的關(guān)鍵技術(shù)之一,成為目前研究熱點(diǎn)。
1994年Marsh首次對(duì)信任進(jìn)行闡述,建立了主觀信任模型。此后專家學(xué)者在此基礎(chǔ)上針對(duì)不同應(yīng)用場(chǎng)景和實(shí)際需求,從多方位建立了大量信任評(píng)價(jià)模型和評(píng)價(jià)標(biāo)準(zhǔn)。孫玉星等[6]基于最小損失,對(duì)貝葉斯決策模型的推薦信任進(jìn)行了修正。Zheng等[7]以節(jié)點(diǎn)連續(xù)行為狀態(tài)為參考,創(chuàng)建置信因子函數(shù),修改局部與全局信譽(yù)比以提高信任可靠性。Sabrina等[8]將市場(chǎng)激勵(lì)機(jī)制運(yùn)用到P2P節(jié)點(diǎn)的信任評(píng)價(jià)和管理。王小峰[9]基于線性馬爾可夫構(gòu)建具有偏差預(yù)測(cè)的信任評(píng)價(jià)模型。Koaczek[10]引入有限狀態(tài)機(jī),在P2P網(wǎng)絡(luò)中對(duì)鄰居節(jié)點(diǎn)實(shí)施動(dòng)態(tài)建模。
國(guó)內(nèi)外針對(duì)節(jié)點(diǎn)的信任評(píng)價(jià)進(jìn)行了多角度、多層次的研究,但通過梳理相關(guān)文獻(xiàn)發(fā)現(xiàn),部分研究設(shè)計(jì)存在問題,如評(píng)價(jià)指標(biāo)過于單一,只使用節(jié)點(diǎn)局部信任、間接信任[6]等;計(jì)算開銷大,文獻(xiàn)[9]算法時(shí)間復(fù)雜度的數(shù)量級(jí)達(dá)到n2。本文通過分析P2P節(jié)點(diǎn)對(duì)等傳輸特點(diǎn)與信用評(píng)價(jià)因素,將節(jié)點(diǎn)認(rèn)證、激勵(lì)機(jī)制、綜合信任、時(shí)間敏感函數(shù)、時(shí)間戳等指標(biāo)納入信用指標(biāo)體系,融合SEC(Social-Ecommerce Chain 社交電商行業(yè)區(qū)塊鏈)及Patricia Tree(帕特里夏樹)的hash鏈存儲(chǔ)結(jié)構(gòu)改進(jìn)節(jié)點(diǎn)信任評(píng)價(jià),在傳統(tǒng)分析方法上融合數(shù)學(xué)理論,更利于決策的合理性。
P2P節(jié)點(diǎn)信任評(píng)價(jià)經(jīng)典模型評(píng)價(jià)因素包括:在直接信任模型下由節(jié)點(diǎn)直接交易產(chǎn)生的直接評(píng)價(jià),在間接信任模型下由其他節(jié)點(diǎn)推薦產(chǎn)生的間接評(píng)價(jià),再將兩者按一定規(guī)則組成節(jié)點(diǎn)綜合評(píng)價(jià)。
1)直接信任模型。節(jié)點(diǎn)的直接信任用向量D表示,使用Dempster組合規(guī)則的置信函數(shù)m()合成m(D),節(jié)點(diǎn)直接信任D由三種正值α,β,γ表示,分別用m({T})代表信任,m({~T})不信任,m({T,~T})信任待定,且α+β+γ=1。如在i、j節(jié)點(diǎn)未交互前的t0時(shí)間,由于彼此關(guān)系不清晰,m(D)表達(dá)為Dij(t0)=(0,0,1),隨后節(jié)點(diǎn)進(jìn)行即時(shí)更新,同時(shí)根據(jù)規(guī)則選擇不同的權(quán)重系數(shù)修正節(jié)點(diǎn)信任,可抵御不良節(jié)點(diǎn)極速提升自身信任。

(1)



(2)


在P2P網(wǎng)絡(luò)環(huán)境下,節(jié)點(diǎn)可信度的求解方法一般是根據(jù)節(jié)點(diǎn)滿意度的不同評(píng)判標(biāo)準(zhǔn)來構(gòu)建信任評(píng)價(jià)函數(shù),經(jīng)典模型[11]區(qū)別于典型的全局信任模型EigenRep,其信用指標(biāo)包括直接信任、間接信任及修正后合成的綜合信任三部分,優(yōu)點(diǎn)如下:
1)首先運(yùn)用Dempster-Shafer證據(jù)理論,降低P2P去中心化特性引起的信任出現(xiàn)的隨機(jī)性、主觀不確定性,證據(jù)隨時(shí)間不斷積累,可在先驗(yàn)分布未知情況下縮小假設(shè)集。
2)權(quán)重系數(shù)與折扣系數(shù)的選定。修正了節(jié)點(diǎn)的直接信任與間接信任,從而量化節(jié)點(diǎn)的可信程度得到綜合信任,降低了惡意節(jié)點(diǎn)行為,提高網(wǎng)絡(luò)安全性與魯棒性。
3)通過理論分析與仿真結(jié)果表明[11],該模型能抵御網(wǎng)絡(luò)部分攻擊,有效檢測(cè)惡意節(jié)點(diǎn),提高了P2P網(wǎng)絡(luò)利用率與安全性。
PCB(P2P node credit evaluation model combined with blockchain)在節(jié)點(diǎn)互相評(píng)價(jià)前,首先要確認(rèn)對(duì)方身份的真?zhèn)闻c接收消息的時(shí)效,用節(jié)點(diǎn)身份認(rèn)證與時(shí)間戳實(shí)現(xiàn)。身份認(rèn)證保證節(jié)點(diǎn)存在的唯一性;時(shí)間戳保證消息只在特定時(shí)間內(nèi)有效,避免被第三方非法使用,此外考慮到節(jié)點(diǎn)的信任具有時(shí)間衰減性。綜上所述在經(jīng)典模型中加入以下信用指標(biāo):
1)節(jié)點(diǎn)認(rèn)證包括身份及消息認(rèn)證。為實(shí)現(xiàn)節(jié)點(diǎn)可信性度量必須保證節(jié)點(diǎn)的身份唯一,需要為每個(gè)活動(dòng)的節(jié)點(diǎn)編id號(hào),任意節(jié)點(diǎn)都不能發(fā)動(dòng)重放攻擊。身份認(rèn)證和隨機(jī)密鑰的使用防止Sybil攻擊。加入時(shí)間戳Time,根據(jù)時(shí)間戳即可判斷消息的時(shí)效。
2)加入時(shí)間衰減因素即時(shí)間敏感函數(shù),實(shí)現(xiàn)節(jié)點(diǎn)信任的動(dòng)態(tài)反饋。由于P2P網(wǎng)絡(luò)特性,節(jié)點(diǎn)可隨意加入或離開網(wǎng)絡(luò),因此信任要依交互次數(shù)和交易狀態(tài)而定,即信任需動(dòng)態(tài)更新。當(dāng)節(jié)點(diǎn)在規(guī)定時(shí)間內(nèi)未處于活動(dòng)狀態(tài)時(shí),其信任隨之衰減,具體在2.3節(jié)說明。
3) 樹結(jié)構(gòu)的hash區(qū)塊鏈應(yīng)用。hash鏈主要應(yīng)用于信任認(rèn)證與信任存儲(chǔ),在P2P網(wǎng)絡(luò)中,融合區(qū)塊鏈的優(yōu)勢(shì),可簡(jiǎn)化驗(yàn)證且存儲(chǔ)記錄不可更改,更安全高效。
在PCB模型中引入樹結(jié)構(gòu)主要應(yīng)用在兩個(gè)方面,其一是節(jié)點(diǎn)身份與消息的認(rèn)證,其二是存儲(chǔ)P2P網(wǎng)絡(luò)節(jié)點(diǎn)交易信息的單向hash鏈。用Patricia Tree 存儲(chǔ)有效信息,根據(jù)樹的特性確定指針的引用,提高操作效率;操作簡(jiǎn)單多樣;狀態(tài)信息存儲(chǔ)于區(qū)塊的最后區(qū)域,節(jié)省空間。PCB模型參考Bitcoin使用的輕客戶端Merkle Proof的五部分結(jié)構(gòu),僅需驗(yàn)證hash鏈的區(qū)塊頭,而無需下載每次交易及每個(gè)區(qū)塊,簡(jiǎn)化驗(yàn)證操作。
2.2.1 節(jié)點(diǎn)身份與消息認(rèn)證
初始交易節(jié)點(diǎn)采用對(duì)稱密鑰密碼體系進(jìn)行消息認(rèn)證,網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都有唯一身份標(biāo)識(shí)即id號(hào)。若節(jié)點(diǎn)A、B進(jìn)行認(rèn)證,先利用NTRU-KE算法[12]產(chǎn)生共享密鑰KAB,利用在高維度格找尋最短向量的數(shù)學(xué)難題,計(jì)算多項(xiàng)式環(huán)上的乘法和較小整數(shù)求模運(yùn)算得到共享密鑰KAB,再通過廣播使密鑰事先共享,具體算法參考文獻(xiàn)[11]。加入時(shí)間戳阻止重放攻擊,用Hash函數(shù)H(.)保證消息的完整性。
認(rèn)證消息:
A→B:(idA,MACA,Time1,FA)
B→A:(idB,MACB,Time2,FB)
認(rèn)證步驟:
1)節(jié)點(diǎn)A將消息發(fā)送給B,其中FA=fKAB(n1),f是加密函數(shù)用密鑰KAB對(duì)隨機(jī)數(shù)rs1加密;Time1是時(shí)間戳;MACA是哈希函數(shù)H(rs1,idA,idB,Time1)。
2)節(jié)點(diǎn)B根據(jù)時(shí)間戳Time1判斷消息的時(shí)效性,若是新消息,則用Time1解密FA,得到rs1′,并計(jì)算H(rs1′,idA,idB,Time1) ,判斷rs1是否與rs1′相等,若相等B信任A。同時(shí)B生成一個(gè)隨機(jī)數(shù)rs2(rs1≠rs2),并發(fā)送(idB,MACB,Time2,FB) 給節(jié)點(diǎn)A。
3)節(jié)點(diǎn)A收到消息后,同理驗(yàn)證B的身份。這樣初始交易節(jié)點(diǎn)A、B就確認(rèn)了彼此的身份信息。
2.2.2 區(qū)塊鏈信任存儲(chǔ)與獎(jiǎng)懲
本節(jié)將區(qū)塊鏈的hash鏈應(yīng)用到信任值的存儲(chǔ)中,通過hash鏈對(duì)節(jié)點(diǎn)信任與信任評(píng)價(jià)推薦進(jìn)行有效控制。確保在分布式環(huán)境中對(duì)節(jié)點(diǎn)進(jìn)行有效地驗(yàn)證與刷新[12]。PCB模型區(qū)塊存儲(chǔ)分兩部分:區(qū)塊頭與區(qū)塊身,區(qū)塊頭主要記錄賬戶信息,區(qū)塊身主要記錄交易信息。其中區(qū)塊頭主要包含上一區(qū)塊頭的哈希值、時(shí)間戳、個(gè)人資產(chǎn)(分為三種類型)、該區(qū)塊交易的Merkle Tree(默克爾樹)的根哈希,區(qū)塊存儲(chǔ)結(jié)構(gòu)見表1。
表1 區(qū)塊存儲(chǔ)結(jié)構(gòu)表
Tab.1 Block storage structure table

區(qū)塊數(shù)據(jù)項(xiàng)描述大小/B版本號(hào)區(qū)塊版本號(hào)4上一區(qū)塊記錄記錄前一區(qū)塊的Hash值8頭部個(gè)人資產(chǎn)資產(chǎn)分區(qū),公平獎(jiǎng)懲32時(shí)間戳記錄生成當(dāng)前區(qū)塊時(shí)間4Merkle樹的根哈希值記錄當(dāng)前區(qū)塊所有交易Merkle樹的根哈希值32交易數(shù)當(dāng)前區(qū)塊記錄的交易數(shù)量1-9身部交易關(guān)系當(dāng)前區(qū)塊保存的所有交易明細(xì)變長(zhǎng)信任指數(shù)記錄當(dāng)前區(qū)塊信任值區(qū)間10
1)區(qū)塊頭
為了減少非正常節(jié)點(diǎn)行為,引入代價(jià)費(fèi)用。費(fèi)用從區(qū)塊頭部的個(gè)人資產(chǎn)中扣除,即節(jié)點(diǎn)每次評(píng)價(jià)、申訴階段都要預(yù)先從個(gè)人資產(chǎn)中扣除一部分抵押費(fèi),類似區(qū)塊鏈的押金背書,同時(shí)結(jié)合節(jié)點(diǎn)的誠(chéng)實(shí)行為實(shí)行激勵(lì)機(jī)制。其中非正常、惡意、不良節(jié)點(diǎn)指以快速增加自己或他人的資產(chǎn)為目的,與其他節(jié)點(diǎn)合謀頻繁進(jìn)行惡意評(píng)價(jià)、錯(cuò)誤申訴、提供虛假信息和有連續(xù)失信等不良行為的節(jié)點(diǎn)。個(gè)人資產(chǎn)包含三部分:個(gè)人可支配資產(chǎn)、待確定獎(jiǎng)勵(lì)資產(chǎn)和待確定懲罰資產(chǎn)。個(gè)人可支配資產(chǎn)可用來交易支付與獎(jiǎng)勵(lì)他人;待確定獎(jiǎng)勵(lì)資產(chǎn)為未確認(rèn)的其他節(jié)點(diǎn)獎(jiǎng)勵(lì)自己的、將來歸入個(gè)人可支配資產(chǎn)的資產(chǎn);待確定懲罰資產(chǎn)是未確定的由于自己違背約定的不良行為而從個(gè)人可支配資產(chǎn)拿出的懲罰資產(chǎn),將來歸入檢舉節(jié)點(diǎn)的待確定獎(jiǎng)勵(lì)資產(chǎn)中。除去個(gè)人可支配資產(chǎn),其余兩部分資產(chǎn)均放入資金池中,并加以時(shí)間限制。每一次的輸入都是基于上一次的輸出,避免雙支問題。個(gè)人資產(chǎn)構(gòu)成關(guān)系如圖1所示。 個(gè)人資產(chǎn)使用規(guī)則具體見表2。

圖1 個(gè)人資產(chǎn)構(gòu)成Fig.1 The parts of personal assets
表2 資產(chǎn)使用規(guī)則
Tab.2 Asset usage rules

大小關(guān)系效用說明評(píng)價(jià)獎(jiǎng)勵(lì)>不評(píng)價(jià)懲罰降低節(jié)點(diǎn)惰性評(píng)價(jià)、促進(jìn)主動(dòng)評(píng)價(jià)申訴的獎(jiǎng)勵(lì)>評(píng)價(jià)的獎(jiǎng)勵(lì)促進(jìn)誤判節(jié)點(diǎn)申訴獎(jiǎng)賞的力度<懲罰的力度防止惡意節(jié)點(diǎn)攻擊同一正常節(jié)點(diǎn)而獲得信任的快速增長(zhǎng)二次惡意申訴節(jié)點(diǎn)懲罰>首次的防止其他惡意節(jié)點(diǎn)為被復(fù)審發(fā)現(xiàn)的惡意節(jié)點(diǎn)申訴,保證恢復(fù)被誤判節(jié)點(diǎn)信任獎(jiǎng)勵(lì)、懲罰財(cái)產(chǎn)凍結(jié)時(shí)間>交易時(shí)間為了確保獎(jiǎng)賞、懲罰的正確性,個(gè)人資產(chǎn)設(shè)置時(shí)間限制,直至相關(guān)行為被確定才歸入個(gè)人可支配資產(chǎn)
2)區(qū)塊身
針對(duì)高并發(fā)性問題,采用類似SEC多鏈并行的底層架構(gòu)解決,建立多鏈自治的雙鏈并行系統(tǒng)。雙鏈包括主鏈和副鏈兩種,其中主鏈(交易鏈)負(fù)責(zé)執(zhí)行交易、維護(hù)交易歷史等;副鏈(賬戶和關(guān)系鏈)負(fù)責(zé)維護(hù)賬戶信息和信任指數(shù),再次驗(yàn)證只需驗(yàn)證副鏈區(qū)塊頭部信息即可。兩條鏈各司其職互不干擾,又通過交易互相聯(lián)系,降低了信息冗余的同時(shí)使操作更簡(jiǎn)單高效。同時(shí)主鏈和副鏈采用異步更新機(jī)制,保證信息的完備性。多鏈自治指所有的交易不僅僅限于并行的雙鏈,可以同一時(shí)間N條雙鏈同時(shí)記錄上鏈,由于P2P網(wǎng)絡(luò)特性,每條鏈地位都是對(duì)等的,不存在先后順序問題,每條鏈按照各自的交易如實(shí)完成信息記錄。多鏈自治的雙鏈并行系統(tǒng)有效緩解了并發(fā)性問題。
3)獎(jiǎng)懲實(shí)施
采用SEC對(duì)多方交易關(guān)系進(jìn)行分布式記賬,并引入信任背書概念,只記錄交易關(guān)系和信任,通過智能合約實(shí)現(xiàn)記錄交易。以交易賣家、買家兩方節(jié)點(diǎn)為例,交易完成后,如果買家認(rèn)定商品為假冒偽劣產(chǎn)品,可向自動(dòng)合約地址發(fā)出不信任,賣家除從個(gè)人可支配資產(chǎn)中扣除懲罰金外,還會(huì)被扣信任指數(shù)。當(dāng)信任指數(shù)降為-1時(shí),即信用關(guān)系表示為完全不信任,則永久性被網(wǎng)絡(luò)禁用。懲罰金由智能合約約束收入資金池,買家相應(yīng)會(huì)從資金池獲得一定的補(bǔ)償,為防止節(jié)點(diǎn)為獲得補(bǔ)償虛報(bào)產(chǎn)品信息,規(guī)定買家補(bǔ)償金必須小于賣家懲罰金。押金背書是以一定的個(gè)人資產(chǎn)為擔(dān)保,承認(rèn)信任的一種代價(jià)手段。如果買家覺得賣家值得信任,可推薦該賣家,但需要抵押一定押金性質(zhì)的個(gè)人可支配資產(chǎn)為其背書,之后賣家有交易成交,為其背書的人可以獲得一定的記賬權(quán),買家可收回押金并獲得資金池的獎(jiǎng)勵(lì)金,若該賣家不被信任,就會(huì)被反扣押金到資金池。抵押金、獎(jiǎng)勵(lì)金數(shù)目不定,隨交易失敗次數(shù)動(dòng)態(tài)調(diào)整。失敗次數(shù)越多,抵押金越大,獎(jiǎng)勵(lì)金越少,但獎(jiǎng)勵(lì)金永遠(yuǎn)不會(huì)超過抵押金。此外由于記錄在鏈?zhǔn)遣豢纱鄹牡?,增加了安全性。同時(shí)帶有獎(jiǎng)勵(lì)的推薦機(jī)制,使越來越多人愿意付出抵押金為某個(gè)商家背書,意味著越相信越能給自己“獎(jiǎng)勵(lì)”而非“懲罰”,提高了節(jié)點(diǎn)的主動(dòng)性。這種主動(dòng)推薦的信任機(jī)制,比淘寶刪評(píng)論和好評(píng)返現(xiàn)等小獎(jiǎng)勵(lì)小回報(bào)手段,以影響其后的買家選擇而不用付出代價(jià)的評(píng)級(jí)機(jī)制更有效。
將時(shí)間軸劃分成均等、長(zhǎng)度為t0的時(shí)間段,節(jié)點(diǎn)i在經(jīng)典模型中綜合信任記為Trust(i),規(guī)定每隔t0衰減一次,tin、tend為節(jié)點(diǎn)進(jìn)入、離開網(wǎng)絡(luò)的時(shí)間。則加入時(shí)間敏感函數(shù)的節(jié)點(diǎn)信任度評(píng)價(jià)函數(shù)為
sensitive(Trust(i))=

(3)

加入時(shí)間敏感函數(shù)的節(jié)點(diǎn)信任度評(píng)價(jià)函數(shù)sensitive(Trustij(i))作為最終信任能較好地反應(yīng)在一定時(shí)間內(nèi)信任隨時(shí)間衰減的特性,使節(jié)點(diǎn)的信任值更合理,且計(jì)算復(fù)雜度較低。
1)進(jìn)行節(jié)點(diǎn)認(rèn)證
(1) 計(jì)算共享密鑰KAB并生成認(rèn)證消息;
(2) 驗(yàn)證交易雙方節(jié)點(diǎn)id號(hào),核對(duì)時(shí)間戳、隨機(jī)數(shù)等認(rèn)證節(jié)點(diǎn)身份信息。
2)計(jì)算節(jié)點(diǎn)信任度
(2) 計(jì)算合成后節(jié)點(diǎn)的綜合信任Cij;
(3) 更新節(jié)點(diǎn)信任。
3)融入時(shí)間敏感函數(shù)
(1) 分別計(jì)算時(shí)間tin,tend;
(2) 更新加入時(shí)間敏感函數(shù)的節(jié)點(diǎn)信任度評(píng)價(jià)函數(shù)sensitive(Trustij(i)),并作為最終信任。
4)節(jié)點(diǎn)信任存儲(chǔ)與資產(chǎn)分區(qū)
(1)將節(jié)點(diǎn)交易信息存儲(chǔ)到區(qū)塊身部;
(2)根據(jù)交易信息完成情況,結(jié)合個(gè)人資產(chǎn)使用規(guī)則與獎(jiǎng)懲情況對(duì)節(jié)點(diǎn)個(gè)人資產(chǎn)重新分區(qū),同時(shí)將時(shí)間戳等上一區(qū)塊信息存入?yún)^(qū)塊頭部。
1)隨機(jī)性強(qiáng)。本文選擇多項(xiàng)式環(huán)上的乘法和較小整數(shù)求模運(yùn)算得到密鑰的隨機(jī)數(shù)再生成密鑰,同樣使用加密函數(shù)的隨機(jī)數(shù)驗(yàn)證消息,安全性依賴于NTRU格中的困難問題,相比非環(huán)上計(jì)算和偽隨機(jī)數(shù)驗(yàn)證,其有效性依賴于元素的概率[13];在NTRU中多項(xiàng)式與環(huán)上卷積乘法運(yùn)算的階級(jí)相差很大,因此密鑰生成速度快。這使得節(jié)點(diǎn)的行為更加不可預(yù)測(cè),從而進(jìn)一步降低攻擊成功的可能性。
2)效率高、能耗低。SEC分布式記賬交易關(guān)系和信任背書模式,通過資產(chǎn)實(shí)現(xiàn)激勵(lì)機(jī)制,很大程度上提高了節(jié)點(diǎn)的積極主動(dòng)性[14];以區(qū)塊鏈的抵押金作為擔(dān)保對(duì)不良節(jié)點(diǎn)約束策略,有效抑制了不良節(jié)點(diǎn)由于提供虛假信息等不良行為對(duì)系統(tǒng)造成的惡性影響;使用Patricia Tree作為節(jié)點(diǎn)交易信息的存儲(chǔ)結(jié)構(gòu),分塊存儲(chǔ)更加高效[15],文獻(xiàn)[16]已證明度為d、存儲(chǔ)結(jié)構(gòu)是d-tree的拓?fù)渚S護(hù)開銷為O(d);多鏈并行的底層架構(gòu)解決了并發(fā)性問題;時(shí)間敏感函數(shù)處理上使用累加與除法運(yùn)算計(jì)算開銷較??;sensitive(Trust(i))只記錄信任分布,而不是具體的值,減少了存儲(chǔ)開銷。

4)防止第三方介入。加入時(shí)間戳,保證信息只在特定時(shí)間內(nèi)有效,避免被第三方非法使用,區(qū)塊鏈在比較第三方時(shí)間戳與實(shí)際節(jié)點(diǎn)交互時(shí)間長(zhǎng)短后,若長(zhǎng)舍棄,否則進(jìn)一步驗(yàn)證密鑰;雙向認(rèn)證,發(fā)送方與接收方的認(rèn)證非發(fā)送方單向認(rèn)證,而是雙向認(rèn)證的,使接受方也能認(rèn)證發(fā)送方,但在一定程度上阻礙代理的產(chǎn)生。
5)建立的信用指標(biāo)體系有效、合理。融合時(shí)間敏感函數(shù)的sensitive(Trustij(i))保證了節(jié)點(diǎn)信任資質(zhì)的時(shí)效性,主要體現(xiàn)在時(shí)間戳的運(yùn)用;節(jié)點(diǎn)的直接評(píng)價(jià)和間接信任參與運(yùn)算,且記錄在鏈,可溯源,多信任參與運(yùn)算保證了信任計(jì)算的合理性,記錄可溯源保證了節(jié)點(diǎn)的可信性;采用時(shí)間戳與加密函數(shù)的隨機(jī)數(shù)雙驗(yàn)證,保證了節(jié)點(diǎn)相關(guān)信任評(píng)價(jià)的時(shí)效性和有效性。
6) 多模型抵抗攻擊情況對(duì)比見表3。通過表3的對(duì)比,發(fā)現(xiàn)本文基于區(qū)塊鏈的PCB模型在抵御重放攻擊、多假名攻擊、共謀攻擊、偽裝攻擊、DoS攻擊中,綜合抵抗攻擊力較強(qiáng)。
表3 多模型對(duì)抗攻擊比較表
Tab.3 Multi-model confrontation attack comparison table

方法模型重放攻擊多假名攻擊共謀攻擊偽裝攻擊DoS攻擊多人評(píng)價(jià)累加Amazon模型YNNYYAARE模型NNNYN折扣方法TRAVOS模型NNNNN信念機(jī)制Trunits模型NNNYN過濾方法聚類過濾模型YNYNY本文方法PCB模型YNYYY
本文分析了P2P網(wǎng)絡(luò)與區(qū)塊鏈特點(diǎn),在對(duì)經(jīng)典模型分析后,融合hash鏈的帕特里夏樹與電商行業(yè)區(qū)塊鏈,構(gòu)建了PCB模型,根據(jù)節(jié)點(diǎn)交易的直接信任和間接信任,并融合時(shí)間敏感函數(shù)計(jì)算節(jié)點(diǎn)的綜合信任,采用激勵(lì)機(jī)制對(duì)個(gè)人財(cái)產(chǎn)進(jìn)行明確分類,進(jìn)而更加明確衡量P2P中節(jié)點(diǎn)之間的信任問題,為實(shí)現(xiàn)相對(duì)準(zhǔn)確的節(jié)點(diǎn)信任評(píng)估提供了一種較為全面的解決方案。