吳 旭,何涇沙,張 曦,徐 菲
(1.北京工業(yè)大學(xué)計(jì)算機(jī)學(xué)院,北京 100124;2.北京工業(yè)大學(xué)軟件學(xué)院,北京 100124;3.博仁吉瑞網(wǎng)絡(luò)科技有限責(zé)任公司,北京 100099)
對(duì)等網(wǎng)絡(luò)(Peer-to-Peer,簡(jiǎn)稱(chēng) P2P)的應(yīng)用為個(gè)人用戶提供了前所未有的便利,同時(shí)也有效地整合了網(wǎng)絡(luò)的潛在資源,使互聯(lián)網(wǎng)成為了自由交換信息的媒介,大大便利了用戶對(duì)信息的獲取.雖然目前 P2P應(yīng)用日益廣泛,但是正像 P2P網(wǎng)絡(luò)所宣揚(yáng)的平等共享精神一樣,在這類(lèi)系統(tǒng)中往往缺乏有效的機(jī)制以提高系統(tǒng)整體的可用性,資源的共享是用戶的自愿行為,用戶不用承擔(dān)法律道義上的責(zé)任.傳統(tǒng)的基于密碼學(xué)的網(wǎng)絡(luò)安全主流技術(shù),如數(shù)字簽名和數(shù)字身份證書(shū)等,雖然在 P2P中仍然適用,可以確保每次交易的保密性、完整性、不可抵賴(lài)性等,但對(duì)于交易雙方的可信度的評(píng)估是沒(méi)有辦法完成的.建立有效的信任模型能成功地規(guī)避風(fēng)險(xiǎn).
國(guó)內(nèi)外研究人員在信任模型領(lǐng)域進(jìn)行了一些研究,現(xiàn)存的大多數(shù)信任模型都著力于為資源提供者計(jì)算信任度,其中,基于聲譽(yù)的信任模型[1-2]通過(guò)節(jié)點(diǎn)間交互的歷史經(jīng)驗(yàn)為網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)計(jì)算一個(gè)唯一的信任度,節(jié)點(diǎn)下載文件時(shí)選擇信任度最高的節(jié)點(diǎn)進(jìn)行下載;在基于 PKI的信任模型[3]中節(jié)點(diǎn)的信任通過(guò) CA頒發(fā)的證書(shū)加以保證,這類(lèi)系統(tǒng)存在可擴(kuò)展性差、單點(diǎn)失效等問(wèn)題;基于推薦的信任模型[4-5]由于在信譽(yù)度的計(jì)算方式上靈活多樣,目前得到了廣泛的研究.然而,已有的這些機(jī)制還存在不足之處.首先,根據(jù)專(zhuān)家經(jīng)驗(yàn)給出簡(jiǎn)單的特征組合公式[6]欠缺理論根據(jù);其次,模型本身存在脆弱之處,不能有效地抵御惡意節(jié)點(diǎn)通過(guò)良好的交互行為來(lái)建立較高的信任值,然后利用建立的信任值突然改變行為的攻擊等.
另外這些模型缺乏對(duì)信息的充分分析,同時(shí)也沒(méi)有解決新進(jìn)入節(jié)點(diǎn)的信任問(wèn)題.為了解決這些問(wèn)題,本文提出了一種基于推薦的信任模型,對(duì)影響節(jié)點(diǎn)信任度的幾個(gè)向量進(jìn)行了定義與說(shuō)明,并給出該模型數(shù)學(xué)表述和分布式實(shí)現(xiàn)方法,從而使任意節(jié)點(diǎn)可以隨時(shí)地、較方便地獲取其他節(jié)點(diǎn)的全局可信度.
信任是人際網(wǎng)絡(luò)中一個(gè)復(fù)雜的概念,難以嚴(yán)格地定義和理解.實(shí)體的信任具有很大的主觀性和復(fù)雜性,信任關(guān)系應(yīng)該包含不確定性一面[7].基于 P2P環(huán)境,本文給出這樣的一個(gè)定義:信任是一個(gè)實(shí)體根據(jù)相關(guān)信息而對(duì)其他實(shí)體的未來(lái)可靠的、安全的、期望的行為的主觀可能性判斷,也可以說(shuō)信任是對(duì)實(shí)體行為可靠性的判斷.信任屬性有主觀性、上下文相關(guān)性、動(dòng)態(tài)性.
對(duì)信任的度量不是在信息充分的條件下做出的,因此信任有很強(qiáng)的主觀性,對(duì)客體的信任判斷會(huì)依評(píng)價(jià)主體不同而得出不同的結(jié)論,信任判斷也會(huì)受多種因素影響.信任是內(nèi)容相關(guān)的,對(duì)目標(biāo)的一個(gè)方面的信任可能不會(huì)影響到在另一個(gè)方面的不信任,信任只有在一定的上下文中才有意義.目標(biāo)的信任會(huì)隨著信任信息的更新、實(shí)體行為等的變化而動(dòng)態(tài)變化.
P2P網(wǎng)絡(luò)中的實(shí)體以目標(biāo)實(shí)體的交互經(jīng)驗(yàn)對(duì)其進(jìn)行信任評(píng)估,實(shí)體間可以通過(guò)交換和傳播信任評(píng)估信息以獲取目標(biāo)實(shí)體的信任.一般來(lái)說(shuō),對(duì)目標(biāo)實(shí)體的信任除了考察直接交互經(jīng)驗(yàn)外,還需要考察目標(biāo)實(shí)體在網(wǎng)絡(luò)中聲望,尤其是在缺乏同目標(biāo)實(shí)體的交互經(jīng)驗(yàn)時(shí),因此,對(duì)實(shí)體的信任由 2個(gè)部分組成:本地的交互經(jīng)驗(yàn)(或稱(chēng)直接經(jīng)驗(yàn))和來(lái)自其他實(shí)體的信任推薦(或稱(chēng)聲望),形式地表示為
式中,Tobject是對(duì)目標(biāo)實(shí)體總的信任;D是由直接交互經(jīng)驗(yàn)而得直接信任;R來(lái)自其他實(shí)體的推薦信任;α代表了二者的不同影響力.
P2P網(wǎng)絡(luò)是由許多節(jié)點(diǎn)組成的覆蓋(overlay)網(wǎng)絡(luò),為了描述方便,本文以文件共享系統(tǒng)(file sharing system)為例,稱(chēng)請(qǐng)求節(jié)點(diǎn)從響應(yīng)節(jié)點(diǎn)處下載文件的過(guò)程為節(jié)點(diǎn)之間的交易或交互.本文的信任模型在計(jì)算信任值時(shí)引入了以下 6個(gè)參數(shù).
1)交易量因子 交易量因子的大小直接反映了此次交易的重要程度,這個(gè)因素可以防止一些隱諱的信任攻擊.例如:一些惡意節(jié)點(diǎn)可以通過(guò)多次小規(guī)模成功交易提高它們的信任值,然后在大規(guī)模的交易中作假.
2)交易滿意程度 這是一個(gè)主觀的參數(shù),反映了一方對(duì)另一方行為的滿意程度.有了這個(gè)值,可以使得交易雙方在交易中有更加良好的表現(xiàn).按照下載的文件質(zhì)量狀況,交易滿意程度取值區(qū)間為(-1,1).
3)交易次數(shù) 這個(gè)參數(shù)反映的是交易雙方相互的重視和熟悉程度.請(qǐng)求節(jié)點(diǎn)從響應(yīng)節(jié)點(diǎn)處下載文件的次數(shù)越多,表示交易雙方越熟悉,直接信任和間接信任也就越準(zhǔn)確.
4)時(shí)間影響因子 這個(gè)參數(shù)反映的是文件下載距離當(dāng)前時(shí)間的遠(yuǎn)近程度.因?yàn)殡S著時(shí)間的變化,交易的個(gè)體也是在不停地變化的.所以說(shuō)越是近期的下載行為,它的時(shí)間影響因子越大,對(duì)于本次下載行為的影響也越大.
5)推薦準(zhǔn)確因子 本文的模型采用基于投票協(xié)議的推薦方式.這個(gè)參數(shù)反映了節(jié)點(diǎn)在投票過(guò)程中的準(zhǔn)確程度.引入推薦準(zhǔn)確因子的目的是刺激節(jié)點(diǎn)積極地正確投票.
6)風(fēng)險(xiǎn)因子 這個(gè)參數(shù)反映的是節(jié)點(diǎn)進(jìn)行交易所面臨的風(fēng)險(xiǎn),如信息泄露、病毒傳播等.
假設(shè)在 y請(qǐng)求從 x下載文件之前,x計(jì)算對(duì) y的直接信任.本模型中的直接信任是采用二元組D(Tx(y),S)的形式表示.其中,Tx(y)是 x對(duì) y的直接信任值;S是 x賦予 y的交易量權(quán)限,體現(xiàn)交易規(guī)模的大小.交易量權(quán)限 S滿足下面 2個(gè)規(guī)則:1)對(duì)于新進(jìn)入網(wǎng)絡(luò)的節(jié)點(diǎn),賦予最低的交易量;2)只有交易成功次數(shù)達(dá)到規(guī)定的次數(shù)后交易量才能增加,出現(xiàn)惡意攻擊行為后,交易成功次數(shù)也隨之增加.交易量的引入有效地解決了新進(jìn)入節(jié)點(diǎn)的信任問(wèn)題.
直接信任值為
式中,tnow為當(dāng)前時(shí)間;ti為此次交易時(shí)間;pen(i)為交易欺騙后的懲罰因子.pen(i)定義如下:pen(i)=-1表示第 i次交易因?yàn)槠垓_或者惡意攻擊而失敗;pen(i)=0表示第 i次交易成功.當(dāng)交易失敗時(shí),γ值增加從而使節(jié)點(diǎn)信任值迅速下降;Risk(y)是節(jié)點(diǎn) y的風(fēng)險(xiǎn)因子.
對(duì)于曾經(jīng)有過(guò)交易歷史的 2個(gè)實(shí)體來(lái)說(shuō),可以通過(guò) 2.1計(jì)算出對(duì)方的直接信任值,并據(jù)此做出是否與之交易的判斷.但如果 2個(gè)實(shí)體間從沒(méi)有過(guò)交易或是交易經(jīng)驗(yàn)較少時(shí),就需要其他實(shí)體的推薦,綜合它們給出的推薦值,就可以得到一個(gè)推薦信任值.在本模型中,計(jì)算推薦信任是采取投票協(xié)議[8]實(shí)現(xiàn)的.假設(shè)y主動(dòng)請(qǐng)求從 x下載,推薦信任計(jì)算過(guò)程如下:
1)x計(jì)算出對(duì) y的直接信任,并用二元組 D(Tx(y),S)表示.假設(shè) y此次要求的下載交易量為 Q.
①如果 Q≤S的交易量上限,Tx(y)達(dá)到 x規(guī)定的標(biāo)準(zhǔn) x與 y直接交易;但 Tx(y)未達(dá)到 x規(guī)定的標(biāo)準(zhǔn),這時(shí) x會(huì)廣播請(qǐng)求消息,要求網(wǎng)絡(luò)里的節(jié)點(diǎn)對(duì) y進(jìn)行投票;
② Q>S的交易量上限,如果 Tx(y)沒(méi)有達(dá)到標(biāo)準(zhǔn),x就拒絕與 y交易;如果 Tx(y)值很大,x廣播請(qǐng)求消息,要求網(wǎng)絡(luò)里的節(jié)點(diǎn)對(duì) y進(jìn)行投票.
2)收到投票請(qǐng)求之后,每個(gè) peer通過(guò)下面的公式計(jì)算是否投贊成票(假設(shè)一個(gè)投票的 peer為 E),
式中,DTe(y)為 E對(duì) y的投票;Ne(y)為 E與 y的交易次數(shù);S(e,y)為 E對(duì) y的滿意程度;M(e,y)為在此交易量權(quán)限內(nèi)的交易量因子;pen(i)為交易欺騙后的懲罰因子,Z與式(2)中相同.得到 DTe(y)后,E投票.若 DTe(y)>θ,投贊成票 p=1;反之 p=0(θ由 x決定),E將投票結(jié)果返回給 x.
3)x將收到的所有投票結(jié)果進(jìn)行總票.總票的公式為
式中,T為間接推薦信任值;N(w)為總共得票數(shù);R(w)為投票節(jié)點(diǎn) w的推薦準(zhǔn)確因子,即
式中 γ為對(duì)投票錯(cuò)誤的懲罰因子.
仿真環(huán)境使用 java編寫(xiě),說(shuō)明如下:
1)網(wǎng)絡(luò)由 120個(gè)節(jié)點(diǎn)組成,每個(gè)節(jié)點(diǎn)同時(shí)作為服務(wù)點(diǎn)和消費(fèi)點(diǎn).每個(gè)節(jié)點(diǎn)發(fā)出 300次下載請(qǐng)求后停止交易,對(duì)于每個(gè)節(jié)點(diǎn),每次交易間隔在[0.5,2]s隨機(jī)分布.網(wǎng)絡(luò)中發(fā)生的下載請(qǐng)求總共36000次.
2)網(wǎng)絡(luò)提供 500種文件(可能包含虛假文件)下載,每個(gè)節(jié)點(diǎn)在仿真開(kāi)始時(shí)提供 5個(gè)特有的文件下載.
3)為盡量模擬真實(shí)網(wǎng)絡(luò),網(wǎng)絡(luò)中的節(jié)點(diǎn)分為 4類(lèi),分別為 Best peers、Normal peers、Bad peers、Worst peers.
4)假定消費(fèi)節(jié)點(diǎn)可以找到任何所需文件以及文件所在節(jié)點(diǎn).消費(fèi)節(jié)點(diǎn)選擇信任最大的服務(wù)節(jié)點(diǎn)進(jìn)行下載,并把下載后的文件作為共享文件提供下載.
本文設(shè)計(jì)了幾種情景分別進(jìn)行仿真來(lái)測(cè)試本文模型的有效性.仿真結(jié)果如圖 1、2所示.圖 1的虛線代表有惡意節(jié)點(diǎn)參與投票得到的間接推薦信任值 Tm.實(shí)線代表沒(méi)有惡意節(jié)點(diǎn)參與投票得到的間接推薦信任值 Tr.
圖1 惡意推薦次數(shù)與推薦信任值關(guān)系Fig.1 The relationship between the w rong recommendation number and the recommendation trust
從圖 1(a)可以看到,如果所有節(jié)點(diǎn)都屬于 Best peers或 Normal peers節(jié)點(diǎn),它們通過(guò)投票計(jì)算出目標(biāo)節(jié)點(diǎn)的間接推薦信任值為 0.3,但是實(shí)際情況可能是目標(biāo)節(jié)點(diǎn)串通 Bad peers或Worstpeers來(lái)提高其推薦信任值,以致于讓交易節(jié)點(diǎn)對(duì)目標(biāo)節(jié)點(diǎn)的信任評(píng)估做出 0.9的錯(cuò)誤判斷.從圖 1(b)中明顯可以看出,基于本文提出的信任模型,Tm值一直是圍繞 Tr值上下波動(dòng),而且波動(dòng)變化很小.隨著惡意節(jié)點(diǎn)錯(cuò)誤推薦次數(shù)的增加,對(duì)整個(gè)推薦信任評(píng)估的最終真實(shí)結(jié)果影響很小.因此,本文提出的信任模型可以很好地抑制這種合謀的惡意信任攻擊.
第 2個(gè)實(shí)驗(yàn)被設(shè)置在 2種攻擊模型下,分別包括惡意節(jié)點(diǎn)獨(dú)立攻擊和惡意節(jié)點(diǎn)群組攻擊.從圖 2中看出,不管是獨(dú)立攻擊還是群組攻擊,節(jié)點(diǎn)的不真實(shí)文件下載率均被控制在 3%~5%.因此本文提出的信任模型能有效抑制節(jié)點(diǎn)的攻擊行為.
圖 2 獨(dú)立攻擊和群組攻擊下的模擬結(jié)果Fig.2 Simulation resu lts of peers under independent cheat and group cheat
本文提出了一種新的基于推薦的信任機(jī)制,該機(jī)制在計(jì)算信任值時(shí)引入了 6個(gè)參數(shù),詳細(xì)設(shè)計(jì)了節(jié)點(diǎn)信任度的計(jì)算方法.理論分析和實(shí)驗(yàn)結(jié)果表明,本文提出的信任機(jī)制可以有效地對(duì)抗共謀等惡意行為,防止通過(guò)多次小規(guī)模交易積累信任度,然后在大規(guī)模交易中進(jìn)行欺騙的行為,同時(shí)解決了新進(jìn)入節(jié)點(diǎn)的信任問(wèn)題.由于 P2P網(wǎng)絡(luò)的復(fù)雜性及信任問(wèn)題的難解性,本文的信任機(jī)制仍需要進(jìn)行不斷的改進(jìn).今后,本研究將主要集中進(jìn)行信任信息的更新方法與更新策略的研究;繼續(xù)研究分析 P2P環(huán)境中的不同攻擊類(lèi)型,開(kāi)發(fā)針對(duì)不同惡意行為的激勵(lì)機(jī)制,以便使信任機(jī)制具有更強(qiáng)的對(duì)抗惡意行為的能力.
[1]XIONG L,LI U L.Supporting reputation-based trust for peer-to-peer electronic communities[J].IEEE Transactions on Knowledge and Data Engineering,2004,16(7):843-857.
[2]SELCUK A A,UZUN E,PARIENTE M R.A reputation-based trustmanagementsystem for P2P networks[C]∥Proc of the 2004 IEEE International Symposium on Cluster Computing and the Grid.Washington:IEEE Computer Society Press,2004:251-258.
[3]ALTMAN J.PKIsecurity for JXTA overlay networks[R].Palo Alto,USA:Sun Microsystem,2003:1-22.
[4]竇文,王懷民,賈焰,等.構(gòu)造基于推薦的Peer to Peer環(huán)境下的Trust模型[J].軟件學(xué)報(bào),2004,15(4):571-583.DOUWen,WANGHuai-min,JIA Yan,etal.A recommendation-based peer to peer trustmodel[J].Journal Software,2004,15(4):571-583.(in chinese)
[5]田春岐,鄒仕洪,王文東,等.一種基于推薦證據(jù)的有效抗攻擊 P2P網(wǎng)絡(luò)信任模型[J].計(jì)算機(jī)學(xué)報(bào),2008,31(2):271-281.TIAN Chun-qi,ZOU Shi-hong,WANG Wen-dong,et al.A new trust model based on recommendation evidence for P2P networks[J].Chinese Journal of Computers,2008,31(2):271-281.(in chinese)
[6]SONG S S,HWANG K,ZHOU R F.Trusted P2P transactions with fuzzy reputation aggregation[J].IEEE Internet Computing,2005,9(6):24-34.
[7]SUN Y L,HAN Z,YU W,et al.A trust evaluation framework in distributed network:vulnerability analysis and defense againstattacks[C]∥Proc of the 25thIEEE International Conference on Computer Communications.Barcelona,Spain:IEEE Computer Society Press,2006:1-13
[8]CHHABRA S,DAMIANIE,VIMERCATISDC.A protocol for reputation management in super-peernet works[C]∥Proc of the 15thInternational Workshop on Database and Expert Systems App lication.Zaragoza,Spain:IEEE Computer Society Press,2004:979-983.