王 錚,翁 濤
(重慶大學(xué) 計(jì)算機(jī)學(xué)院,重慶400044)
P2P網(wǎng)絡(luò)是一個(gè)開放的、動(dòng)態(tài)的網(wǎng)絡(luò),沒有權(quán)威中心對(duì)這些節(jié)點(diǎn)進(jìn)行管理,使P2P網(wǎng)絡(luò)也受到如冒名、詆毀等各種形式的攻擊行為,因此需要建立一種信任模型來遏制這些攻擊行為。
不同拓?fù)涞腜2P網(wǎng)絡(luò)環(huán)境有不同的信任解決策略。非結(jié)構(gòu)式P2P網(wǎng)絡(luò)中的信任模型,如Beth信任模型[1-3]、J?sang信任模型[4]等,都是通過泛洪方式迭代方式獲得節(jié)點(diǎn)的全局信任度,但會(huì)帶來大量的資源開銷。在結(jié)構(gòu)式 P2P網(wǎng)絡(luò)中的信任模型利用 Chord、CAN和 Pastry等算法快速定位查詢?nèi)中湃味?,但?duì)高度動(dòng)態(tài)性的P2P網(wǎng)絡(luò),不具有信任模型規(guī)模的擴(kuò)展性。因此,針對(duì)結(jié)構(gòu)式P2P信任模型的信任計(jì)算開銷大和非結(jié)構(gòu)式P2P信任模型的網(wǎng)絡(luò)規(guī)模不易擴(kuò)展等缺點(diǎn),本文以P2P電子商務(wù)為研究背景,設(shè)計(jì)了一種基于信任向量的混合結(jié)構(gòu)式P2P網(wǎng)絡(luò)信任模型(P2P-CRep)。利用混合結(jié)構(gòu)式P2P網(wǎng)絡(luò)存取信任向量存儲(chǔ)的歷史交易數(shù)據(jù),利用信任的衰減性計(jì)算信譽(yù)度。通過仿真實(shí)驗(yàn)驗(yàn)證了P2P-CRep信譽(yù)模型的合理性和對(duì)惡意行為的防御能力。
信譽(yù)是在特定的前提和時(shí)間下,基于其他實(shí)體對(duì)該實(shí)體以往信任的總結(jié)。
本文P2P-CRep信任模型的系統(tǒng)應(yīng)用環(huán)境采用基于簇域的信譽(yù)管理系統(tǒng)。該系統(tǒng)拓?fù)浣Y(jié)構(gòu)融合了集中式P2P網(wǎng)絡(luò)拓?fù)浜徒Y(jié)構(gòu)化P2P網(wǎng)絡(luò)拓?fù)涞膬?yōu)點(diǎn),提高了資源定位的效率,降低了網(wǎng)絡(luò)消耗,同時(shí)增加了網(wǎng)絡(luò)擴(kuò)展性。
該系統(tǒng)模型由兩層網(wǎng)絡(luò)組成:索引網(wǎng)絡(luò)層和簇域子網(wǎng)層,拓?fù)浣Y(jié)構(gòu)如圖1所示。
索引網(wǎng)絡(luò)層由性能較強(qiáng)的超級(jí)節(jié)點(diǎn)SP(Super Peer)構(gòu)成,主要負(fù)責(zé)資源信息發(fā)布、索引、信任數(shù)據(jù)的存儲(chǔ)和信譽(yù)評(píng)估。索引網(wǎng)絡(luò)層在系統(tǒng)中是較為穩(wěn)定的子網(wǎng),因而采用結(jié)構(gòu)化DHT P2P網(wǎng)絡(luò)協(xié)議Chord協(xié)議[5]進(jìn)行路由。
簇域子網(wǎng)層由若干普通節(jié)點(diǎn)CP(Common Peer)和一個(gè)備份節(jié)點(diǎn)BSP(BackupPeer)構(gòu)成,CP節(jié)點(diǎn)根據(jù)自己的興趣愛好加入不同的簇域,并與其他節(jié)點(diǎn)進(jìn)行交易。BSP節(jié)點(diǎn)負(fù)責(zé)SP節(jié)點(diǎn)的數(shù)據(jù)備份,是SP的后備節(jié)點(diǎn)。為了便于網(wǎng)絡(luò)擴(kuò)展,簇域子網(wǎng)采用集中式P2P網(wǎng)絡(luò)構(gòu)成。
在不同的應(yīng)用背景環(huán)境下,信譽(yù)評(píng)估模型會(huì)有不同的設(shè)計(jì)要求,本文的P2P-CRep信譽(yù)評(píng)估模型是針對(duì)電子商務(wù)的應(yīng)用環(huán)境設(shè)計(jì)的。
在電子商務(wù)中,交易的因素呈現(xiàn)多樣化和層次化,適合應(yīng)用模糊數(shù)學(xué)的綜合評(píng)估方法推理[6]。其流程如圖2所示。
圖2 模糊推理流程
由于電子商務(wù)交易記錄中含有許多模糊量的交易指標(biāo),所以適合應(yīng)用模糊邏輯推理規(guī)則推理交易評(píng)估因子。
假設(shè)在電子商務(wù)交易中的交易指標(biāo)集合為:H={x1,x2,… ,xn,k1,k2,… ,kn},其 中 :X={x1,x2,… ,xn}為 模 糊 指標(biāo)子集,如 After Service 等;K={k1,k2,…,kn}是精確指標(biāo)子集,如Transaction Amount等。下面給出利用模糊推理規(guī)則對(duì)這些指標(biāo)推理交易評(píng)估因子ξ的具體過程:
(1)為精確指標(biāo)子集K中各項(xiàng)指標(biāo)和交易評(píng)價(jià)度ξ,設(shè)定模糊評(píng)價(jià)集 V={v1,v2,…,vm};
(2)設(shè)定隸屬度函數(shù),將精確指標(biāo)子集模糊化。為精確指標(biāo)子集的評(píng)價(jià)集設(shè)定隸屬度函數(shù):U={Uk1,Uk2,…,Ukn},Ukn={uv1(x),uv2(x), … ,uvm(x)}, 根 據(jù) 最 大 隸 屬 度 原 則 :max(uv1(x),uv2(x),…,uvm(x))確定精確指標(biāo)所屬的評(píng)價(jià)等級(jí):kn=vm;
(3)利用交易指標(biāo)集建立模糊邏輯推理規(guī)則庫,并進(jìn)行推理。針對(duì)交易指標(biāo)集合H中各項(xiàng)交易指標(biāo)對(duì)應(yīng)的不同評(píng)價(jià)集vm,建立多條模糊邏輯推理規(guī)則,以此形成一個(gè)模糊推理規(guī)則庫R。推理時(shí),找到規(guī)則庫R里滿足所有推理?xiàng)l件的一條推理規(guī)則Rn,推導(dǎo)出相應(yīng)的結(jié)論(交易評(píng)估因子);
(4)交易評(píng)估因子的解模糊化。經(jīng)過模糊數(shù)學(xué)的綜合評(píng)判推理,得到的交易評(píng)價(jià)度ξ是一個(gè)模糊評(píng)價(jià)值,為了引入信譽(yù)評(píng)估的精確計(jì)算,需要將模糊值轉(zhuǎn)換為相應(yīng)的精確值。本文采用加權(quán)平均法(WFM)[7-8]解模糊化,將交易評(píng)價(jià)度ξ解模糊化。
每次交易結(jié)束后,節(jié)點(diǎn)將交易記錄存儲(chǔ)在自身節(jié)點(diǎn)上,并根據(jù)滑動(dòng)窗口更新歷史交易記錄。計(jì)算此時(shí)對(duì)交易節(jié)點(diǎn)的本次直接信任度,并信譽(yù)代理更新之前的直接信任度。因此,直接信任計(jì)算可以分為以下幾個(gè)步驟:
(1)本次直接信任度的計(jì)算
設(shè)某次交易后的滑動(dòng)窗口Win內(nèi)存儲(chǔ)了節(jié)點(diǎn)i與節(jié)點(diǎn)j最近發(fā)生的k次交易記錄,每次交易的時(shí)間、評(píng)價(jià)度和交易量分別為 TSk、ξk和 mk。 由滑動(dòng)窗口 Win得到的本次直接信任度Tcurd(i,j)可按式(1)進(jìn)行計(jì)算:
其中初始直接信任度為0.5,是信任與不信任的臨界值,交易評(píng)價(jià)度的計(jì)算權(quán)重時(shí)間衰減因子μl和交易量ml確定。
(2)時(shí)間衰減因子的確定
(3)直接信任度的更新
用戶將本次直接信任度提交給本簇域的信譽(yù)代理,信譽(yù)代理節(jié)點(diǎn)要將用戶節(jié)點(diǎn)的直接信任度更新。直接信任度更新的公式為:
其中直接信任度的初始值為0.5,即為信任和不信任的臨界值。α為更新權(quán)重因子,由系統(tǒng)管理員確定。
信任度的提升越困難,信任度在商業(yè)上的價(jià)值就越大。本文通過系數(shù)調(diào)整控制信任度的收斂速度。由于直接信任度的初始值為0.5,所以系數(shù)調(diào)節(jié)的是直接信任度的變化值。直接信任度調(diào)節(jié)公式為:
由式(4)可以看出,隨著交易次數(shù)和交易量的增加,節(jié)點(diǎn)就越容易獲取信任度,反之則否。此外,交易量M作為其中的一個(gè)因素,可以起到防止用戶積累小交易信任度行騙的行為的作用。用戶的交易量越小,直接信任度的提升越難。
為了增加信譽(yù)評(píng)估的可靠性,信譽(yù)評(píng)估應(yīng)收集并綜合計(jì)算其他節(jié)點(diǎn)對(duì)評(píng)估客體節(jié)點(diǎn)的信任度。本文的推薦信譽(yù)度計(jì)算引入以下幾個(gè)因素:推薦信任度、推薦可信度Cr(i,j)、推薦節(jié)點(diǎn)的數(shù)目Num和推薦閾值 λ。推薦信譽(yù)度的計(jì)算分為以下幾個(gè)步驟:
(1)推薦可信度的計(jì)算
節(jié)點(diǎn)根據(jù)興趣愛好加入不同的簇域,因此簇域差異間接表現(xiàn)為節(jié)點(diǎn)間興趣愛好的差異。所以簇域和評(píng)估差異可以作為推薦可信度計(jì)算的兩個(gè)重要因素。
①評(píng)估相似度
令推薦節(jié)點(diǎn)j和評(píng)估主體節(jié)點(diǎn)i對(duì)信譽(yù)評(píng)估客體節(jié)點(diǎn) k的直接信任度分別為 Td(j,k)和 Td(i,k),所以推薦節(jié)點(diǎn)j與評(píng)估主體節(jié)點(diǎn)之間由于信譽(yù)評(píng)估誤差而導(dǎo)致的推薦可信度為:
②簇域相似度
簇域可以根據(jù)興趣愛好的細(xì)分生成子簇域。所以兩個(gè)節(jié)點(diǎn)所在的簇域可以分為:節(jié)點(diǎn)i和節(jié)點(diǎn)j在相同的簇域,簇域相似度θj=1。節(jié)點(diǎn)j的簇域是節(jié)點(diǎn)i所在簇域的子簇域或有相同的父簇域。假設(shè)節(jié)點(diǎn)i和節(jié)點(diǎn)j的簇域路徑長度為 k,則簇域相似度 θj=e-rk。節(jié)點(diǎn)j與節(jié)點(diǎn)i沒有相同的簇域或父簇域,則簇域相似度θj=0。
綜合評(píng)估相似度和簇相似度,推薦節(jié)點(diǎn)的推薦可信度為:
(2)推薦信譽(yù)度的計(jì)算
收集推薦節(jié)點(diǎn)的推薦信任度并計(jì)算相應(yīng)推薦節(jié)點(diǎn)的推薦可信度后,便聚斂計(jì)算所有推薦節(jié)點(diǎn)對(duì)評(píng)估客體節(jié)點(diǎn)的推薦信譽(yù)度。推薦信譽(yù)度的計(jì)算公式為:
根據(jù)推薦可信度得到每一個(gè)推薦節(jié)點(diǎn)推薦信任度計(jì)算權(quán)重。為了防止電子商務(wù)中少數(shù)節(jié)點(diǎn)共謀的惡意行為,利用推薦節(jié)點(diǎn)數(shù)目Num來調(diào)節(jié)推薦信譽(yù)度的增長。推薦信譽(yù)度的調(diào)節(jié)計(jì)算公式為:
此外,為了降低熱點(diǎn)節(jié)點(diǎn)的信譽(yù)評(píng)估復(fù)雜度,設(shè)置推薦信任度閾值λ>M,減少小交易量的節(jié)點(diǎn)推薦。
如何準(zhǔn)確綜合直接信任度和推薦信譽(yù)度計(jì)算信譽(yù)評(píng)估客體節(jié)點(diǎn)的最終信譽(yù)度,是信譽(yù)評(píng)估模型設(shè)計(jì)的一個(gè)關(guān)鍵問題。本文采用置信因子法計(jì)算綜合信譽(yù)度,其計(jì)算公式為:
置信因子α、β是綜合信譽(yù)度計(jì)算中的權(quán)重,表明對(duì)直接信任度和推薦信譽(yù)度的倚重程度。其值的確定主要根據(jù)以下兩個(gè)因素:
綜合所有推薦節(jié)點(diǎn)的推薦可信度,計(jì)算得到平均推薦可信度。根據(jù)平均推薦可信度,可以設(shè)置推薦信譽(yù)度的計(jì)算權(quán)重β。系統(tǒng)管理員根據(jù)需求對(duì)[0,1]進(jìn)行推薦可信度區(qū)間劃分,確定區(qū)間相對(duì)應(yīng)的推薦信譽(yù)度置信因子β1的值,形成如表1的推薦置信因子表。
表1 推薦信譽(yù)度置信因子
(2)平均交易量M
綜合所有推薦節(jié)點(diǎn)與評(píng)估客體節(jié)點(diǎn)交易量,計(jì)算得到平均值交易量。令評(píng)估主體節(jié)點(diǎn)與客體節(jié)點(diǎn)之間的交易量為M,則推薦信譽(yù)度的置信因子β為:
綜合以上兩個(gè)因素,便可確定置信因子:
為了分析基于簇域的信譽(yù)評(píng)估模型的性能,首先作如下假設(shè):
(1)假設(shè)索引網(wǎng)絡(luò)層中有M個(gè)SP節(jié)點(diǎn),在該層中每次索引查詢需要經(jīng)過的跳數(shù)為h;
(2)假設(shè)電子商務(wù)中有N個(gè)CP節(jié)點(diǎn),則平均每個(gè)SP節(jié)點(diǎn)為CP節(jié)點(diǎn)提供服務(wù)的節(jié)點(diǎn)數(shù)目為:β=N/M;
(3)假設(shè)節(jié)點(diǎn)加入網(wǎng)絡(luò)系統(tǒng)的過程服從Poisson分布,且加入的速率是λ;
(4)假設(shè)CP在網(wǎng)絡(luò)系統(tǒng)內(nèi)平均逗留時(shí)間是D。并且逗留時(shí)間 T服從 f(T)分布,那么 D=∫T×f(T)dT,參考文獻(xiàn)[10]指出D大約是 60 min;
(5)假設(shè)平均每個(gè)CP每秒發(fā)出 q個(gè)請(qǐng)求(資源索引和信譽(yù)評(píng)估請(qǐng)求)。
基于以上假設(shè),可知:網(wǎng)絡(luò)模型中平均有N=λ×D個(gè)Common Peer[11]。如果知道參數(shù)λ和D,則可以由此得出模型中CP節(jié)點(diǎn)的數(shù)目。反之,如果通過測(cè)量知道N,則可以由此得出節(jié)點(diǎn)到達(dá)速率λ。假設(shè)N=1 000 000,D=3 600 s,則得出 λ=278個(gè)/s。這表明,該信任模型中每秒可以有278個(gè)普通節(jié)點(diǎn)的加入和離開,因而該信任模型具有高度動(dòng)態(tài)性和可擴(kuò)展性。
由假設(shè)可知對(duì)于SP節(jié)點(diǎn)平均要處理查詢個(gè)數(shù)為:R=q×β,每秒要轉(zhuǎn)發(fā)的查詢數(shù)為:Z=(q×N×h)/M,如果每個(gè)查詢消息的數(shù)據(jù)包為C字節(jié),那么轉(zhuǎn)發(fā)消息所占的帶寬為:W=Z×C=q×β×h×C。
仿真實(shí)驗(yàn)利用斯坦福大學(xué)開發(fā)的P2P模擬器Query Cycle simulator進(jìn)行仿真,并與模擬器自帶的EigenTrust信譽(yù)模型進(jìn)行對(duì)比。
(1)交易成功率
仿真電子商務(wù)網(wǎng)在不同查詢周期時(shí)的交易成功率。實(shí)驗(yàn)設(shè)定惡意節(jié)點(diǎn)的占用率為20%,隨著仿真周期增長,P2P-CRep信譽(yù)評(píng)估算法、沒有信譽(yù)評(píng)估算法以及EigenTrust信譽(yù)評(píng)估算法對(duì)交易成功率的影響變化曲線如圖3所示。從圖中可以明顯地看出,在沒有信譽(yù)評(píng)估模型的電子商務(wù)網(wǎng)絡(luò)中的交易成功率急劇下降,由此,證明對(duì)于存在惡意節(jié)點(diǎn)的電子商務(wù),很難保證交易的安全性。此外,在不同的仿真周期時(shí),P2P-CRep信譽(yù)評(píng)估算法比EigenTrust信譽(yù)評(píng)估算法有較高的交易成功率。
(2)“積小交易信任行大騙”行為
本次實(shí)驗(yàn)通過仿真節(jié)點(diǎn)對(duì)于惡意節(jié)點(diǎn)的直接信任度變化曲線來表明信譽(yù)模型在“積小交易信任行大騙”行為方面的防御能力。直接信任度的變化曲線如圖4所示,虛線和實(shí)線分別是對(duì)惡意節(jié)點(diǎn)PeerA和PeerB的直接信任度變化曲線,其中,虛線中的前6次交易的交易評(píng)估因子是0.8,第 7次交易的評(píng)估因子是 0.16,實(shí)線中的前11次交易評(píng)估因子是0.4,第12次交易評(píng)估因子為0.8的交易。由圖可以看出:PeerA經(jīng)過11次小交易積累的信任度,1次大的失敗交易就損耗完積累的信任度,另外,獎(jiǎng)懲的幅度也跟交易規(guī)模的大小有關(guān),由此表明P2PCRep具有防御“積小交易信任行大騙”行為的能力。
(3)共謀欺詐的抵御性能
本次實(shí)驗(yàn)設(shè)定網(wǎng)絡(luò)中惡意節(jié)點(diǎn)為共謀行為的惡意節(jié)點(diǎn),買家惡意節(jié)點(diǎn)對(duì)商品的評(píng)價(jià)取值為1的交易評(píng)價(jià)度。實(shí)驗(yàn)仿真惡意節(jié)點(diǎn)不斷增加時(shí)的交易成功率,其仿真結(jié)果如圖5所示。由圖可以明顯看出,隨著惡意節(jié)點(diǎn)數(shù)不斷曾加,交易成功率都有所下降,但P2P-CRep下降幅度較小,表明P2P-CRep具有較強(qiáng)的抵御能力。
根據(jù)基于簇域的P2P拓?fù)浣Y(jié)構(gòu)的特點(diǎn),本文提出了P2P-CRep信譽(yù)評(píng)估模型,以此解決電子商務(wù)中的信譽(yù)問題?;诖赜虻腜2P網(wǎng)絡(luò)大大降低了信譽(yù)評(píng)估帶來的資源開銷,解決了信譽(yù)數(shù)據(jù)存儲(chǔ)和查詢的問題,并且使信譽(yù)評(píng)估網(wǎng)絡(luò)系統(tǒng)模型具有高度動(dòng)態(tài)性和可擴(kuò)展性。在信譽(yù)評(píng)估算法中實(shí)現(xiàn)對(duì)電子商務(wù)中惡意推薦、積小交易信譽(yù)行騙等惡意行為的有效抵御機(jī)制,為電子商務(wù)中的交易安全提供保障。
[1]Gnutella.[EB/OL].http://www.gnutella.com.
[2]Kazaa.[EB/OL].http://www.kazaa.com.
[3]BETH T,BORCHERDING M,KLEIN B.Valuation of trust in open networks[C].In Gollmann,D.,ed.Proceedings of the 3rd European Symposium on Research in Computer Security-ESORICS’94.Volume 875 of Lecture Notes in Computer Science.,Brighton,UK,Springer-Verlag.1994:3-18.
[4]J?SANG A.A model for trust in security systems[C].In:Proceedings of the 2nd Nordic Workshop on Secure Computer Systems.1997.http://security.dstc.edu.au/staff/ajosang/papers.html.
[5]STOICA I,MORRIS R,KARGER D,et al.Chord:a scalable Peer-to-peer lookup service for internet applications[A].Proceedings of ACM SIGCOMM’01[C],San Diego California,2001:35-89.
[6]韓存,張玉忠.企業(yè)績效評(píng)價(jià)方法取向研究[J].財(cái)會(huì)通訊,2005(5):3-7.
[7]夏啟志,謝高崗,閔應(yīng)驊,等.IS-P2P:一種基于索引的結(jié)構(gòu)化 P2P 網(wǎng)絡(luò)模型[J].計(jì)算機(jī)學(xué)報(bào),2006,29(4):602-610.
[8]李玲娟,姬同亮,王汝傳.一種基于信任機(jī)制的混合式P2P模型[J].計(jì)算機(jī)應(yīng)用,2006,26(12):2900-2902.
[9]張春瑞,徐恪,王開云,等.基于信任向量的 P2P網(wǎng)絡(luò)信任管理模型[J].清華大學(xué)學(xué)報(bào)(自然科學(xué)版),2007,47(7):35-37.
[10]SAROIU S,GUMMADI P.K,GRIBBLE S.D.A measurement study of Peer2to 2Peer file sharing systems[C].In:Proceed-in gs of the Multimedia Computing and Networking Conference,San Jose,alifornia,USA,2002.
[11]宋金龍,董健全,鄒亮亮.一種P2P網(wǎng)絡(luò)安全的信譽(yù)度模型設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用.2006,26(4):833-835.
[12]SCHOLLMIER R.Why P2P(Peer-to-Peer)does scale:analysis of P2P traffic patterns[C].In:Proceeding of the IEEE P2P Computing Conference,Linkoping,Sweden,2002:112-119.