余淑良

摘 要: P2P網絡具有開放性、匿名性和自治性等特點。信任的缺乏導致節點之間的交易存在風險,阻礙了P2P網絡的進一步發展。針對P2P網絡所建立的信任機制能確保節點間正常交易,但由于P2P網絡的特點和網絡的復雜性,使P2P信任機制的部署不易實施。為此,分析了P2P網絡中信任機制面臨的網絡攻擊,詳細研究了相關的影響因素,發現信譽值的計算不僅應關注上傳節點,還應該關注下載節點。從上傳節點和下載節點兩個角度給出了影響因素的分布。這些影響因素的研究有助于對P2P信任機制的進一步研究。
關鍵詞: P2P網絡; 信任機制; 網絡攻擊; 信譽值
中圖分類號:TP393 文獻標志碼:A 文章編號:1006-8228(2013)06-23-03
Discussion of impact factors on trust mechanism in P2P networks
Yu Shuliang
(Chongqing Maritime Bureau Information Center, Wanzhou, Chongqing 404000, China)
Abstract: P2P network have characteristics of open, anonymity and autonomy. There are risks in transactions between peers due to the lack of trust, which limits the further development of P2P networks. P2P trust mechanism can ensure the success of transactions between peers. However, the implementation of P2P trust mechanism is difficult because of the inherent characteristics of P2P networks and the complexity of network. The network attacks confronted by P2P trust mechanism are analyzed and the impact factors are discussed in detail. It is found that the calculation of reputation value should be focused not only on upload peers, but also on download peers. The distribution of impact factors is given from both aspects of upload peers and download peers, and the research on impact factors will help the further research on P2P trust mechanism.
Key words: P2P networks; trust mechanism; network attack; reputation value
0 引言
P2P網絡是互聯網上非常重要的應用型網絡。P2P網絡的許多特性,如開放性,匿名性和自主性,使得任何人在任何時間都可以不受限制地進入P2P網絡,搜索并獲得感興趣的相關資源。下載資源時節點的角色是下載節點(Download Peer,DP),為其他節點提供資源下載時節點為上傳節點(Upload Peer,UP)。P2P網絡的特性給網絡攻擊提供了機會。缺乏管理的P2P網絡無法保證節點間的正常交易,導致新節點趨向于搭便車[1],即只當DP,不當UP,這嚴重限制了P2P網絡的進一步發展。
P2P信任機制管理每個節點的信譽值,以此確保節點間正常交易。傳統的P2P信任機制可以分為三類。①基于局部信譽的信任機制。該機制只關注節點之間的直接交易,信譽值計算簡單且網絡負載小,缺陷在于P2P網絡中節點往往需要與陌生節點交易,導致該信任機制不能準確地反映節點信譽和交易期望。HBDTM[2]就是一個典型的基于局部信譽的信任機制。②基于全局信譽的信任機制。該信任機制中,節點在交易前會關注UP與其他節點之間的歷史交易,UP的信譽值計算比較準確。缺陷在于計算過程較為復雜,收斂速度慢以及大型網絡應用時的負載大等。如Despotovic等[3]提出了最大似然法計算節點的信譽值,Song等[4]采用模糊邏輯推理規則計算全局信譽值,李等[5]提出了一種基于相似性的加權推薦信任模型。③綜合型信任機制。該機制中度量UP的信譽值,不僅關注節點與UP的直接歷史交易,同時也考慮UP與其他節點之間的歷史交易。在信譽值的計算過程中,該機制引入了置信因子,綜合考慮了全局信譽與局部信譽。姜等[6]提出了置信因子計算方法,所提出的信任機制取得了較好的抗攻擊能力。
相關工作也研究了影響信任機制的因素,但是缺乏對P2P網絡信任機制所面臨的網絡攻擊和影響因素的系統性研究。Josang等[7]研究了信譽值計算過程中需要考慮的因素,但該研究考慮不全面,信譽值的計算并不精確,無法對抗P2P網絡各種類型的網絡攻擊。
本文分析了針對P2P信任機制的各種攻擊,詳細討論了對P2P信任機制的影響因素。
1 P2P信任機制面臨的攻擊
P2P信任機制確保P2P網絡內每個節點正常交易,滿足P2P網絡正常運行的需要。節點應該只能通過正常交易逐步積累信譽值,如作為UP提供良好的資源,或作為DP正常下載資源并給出如實評價。信譽值的改變應該影響節點在P2P網絡中的活動能力。惡意節點加入P2P網絡后會攻擊其他節點,雖然有時也僅僅干擾P2P網絡的正常運行,如KaZaa網絡中有超過50%的受過污染的音頻文件[8],但多數情況下惡意節點會控制大量節點同時開展攻擊。惡意節點信譽值偏低時在P2P網絡內活動能力會下降,為了確保攻擊的持續性,會通過一些方法和手段提升自己的信譽值,同時降低正常節點的信譽值。
惡意節點作為UP時,提供的資源可以分為三類。①虛假資源。資源的虛假命名和描述,使正常節點花費大量時間和精力卻無法獲得想要的資源。②相似資源。資源是類似的,但不符合資源描述或DP的初衷,如高清視頻文件和普通視頻文件之間的差異。③惡意資源。這類資源被惡意程序感染,正常節點一旦下載并打開該資源,計算機將會被感染。這三類資源一旦在網絡中泛濫,P2P網絡將無法正常運行,嚴重降低網絡對用戶的吸引力,最終導致正常節點離開網絡。
對于惡意節點來說,最大的問題是如何在眾多的正常UP中脫穎而出,吸引正常節點選擇自己下載惡意資源。以下介紹惡意節點常采用的攻擊方法。
1.1 詆毀攻擊
為了降低正常節點的信譽值,惡意節點在與之交易后會進行惡意評價,其結果使得正常節點被其他節點看作惡意節點,減少正常節點被其他節點選為UP的機會。詆毀攻擊很簡單,但會嚴重破壞正常節點的信譽,但如果惡意節點將詆毀攻擊作為惟一的攻擊手段,P2P信任機制將會很容易識別并隔離惡意節點。在詆毀攻擊中,惡意節點的角色是DP,惡意節點的信譽值無法提高,而持續的詆毀攻擊使得其他正常節點傾向于認為惡意節點為挑剔類型或惡意類型,惡意評價的影響將會降低,所以詆毀攻擊通常與其他攻擊手段組合使用。
1.2 團隊攻擊
單個節點的攻擊產生的影響較小,所以惡意節點傾向于組成團隊開展攻擊。在團隊攻擊中,惡意節點會采用兩種攻擊方式。
⑴ 相互評價,共同攻擊。在一個團隊中,惡意節點相互交易并給予較高評價,用于提升彼此的信譽值,從而提高被選擇為UP的概率。同時惡意節點共同開展詆毀攻擊,用高信譽值增強惡意評價的可信度。。
⑵ 集中評價,集中攻擊。在團隊中選擇一個或少數幾個惡意節點作為服務節點為其他正常節點提供惡意資源,其他惡意節點偽裝成正常節點,與其他正常節點正常交易和評價。惡意節點會對指定的惡意服務節點進行夸張評價,從而維持該惡意服務節點的高信譽值,抵消正常節點對該惡意服務節點的低評價影響。
顯然,團隊攻擊中的第二種攻擊方式更隱蔽,更容易逃避P2P信任機制的檢測。
1.3 搖擺攻擊
在搖擺攻擊中,惡意節點在一段時間內表現正常,如正常提供下載資源,正常下載資源,完成交易后給予正常評價。但是在另一段時間內會開展攻擊。這種不規則的攻擊行為模式對P2P信任機制造成了極大的困擾,畢竟在某些情況下,正常節點也會表現出類似搖擺攻擊的行為,如下載的惡意資源未及時刪除而提供給其他節點,或用戶個人因素造成的不當評價等。搖擺攻擊的缺陷在于該攻擊的消耗太大,惡意節點需要消耗大量時間和資源去完成正常交易,逐步積累信譽值以開展后續攻擊,而在有效的P2P信任機制中,惡意行為會帶來信譽值的急劇下降,而提高信譽值卻需要漫長的積累過程。
1.4 女巫攻擊
女巫攻擊由Douceur等[9]首次提出,該攻擊指的是攻擊者在P2P網絡中輪番操控節點開展攻擊。惡意節點開展一段時間的攻擊后會被P2P信任機制識別和隔離,之后該惡意節點將被丟棄,攻擊者操控其他惡意節點加入網絡并持續攻擊。為了保證攻擊的持續性,攻擊者會注冊大量P2P網絡賬號,條件允許時還會逐步積累信譽。除非P2P網絡中存在一個可信任的身份鑒定中心,否則無法有效對抗女巫攻擊,但這在大規模的P2P網絡中很難部署。
1.5 洗白攻擊
洗白攻擊類似于女巫攻擊,區別在于,洗白攻擊并不需要信譽的積累,側重于攻擊并通常隨著其他攻擊手段進行。P2P網絡的開放性,使得用戶可以隨意登錄和退出。某些P2P網絡為了激勵新節點提供資源,賦予其較高的初始信譽值。洗白攻擊利用這一特點,以較小的代價獲得持續的攻擊能力。當惡意節點被P2P信任機制識別后,會退出網絡,以新節點身份重新登錄網絡并繼續攻擊。面對洗白攻擊,P2P網絡只能考慮可信的身份鑒定中心和新節點的約束來抵抗攻擊。
2 影響因素
在大多數交易中,UP的信譽值顯得更重要。DP在下載資源前,有很多待選的UP以供選擇,而DP傾向于選擇信譽值較高的UP。P2P信任機制在度量節點信譽值時,需要考慮很多影響因素,才可以為DP提供很好的參考。影響因素并不是彼此孤立的,實際的P2P信任機制會根據實際情況綜合考慮眾多因素。
2.1 節點初始值
新節點加入P2P網絡時,將被給定相應的初始值,從而幫助其他節點進行識別和選擇,進行交易。
⑴ 初始信譽值:給予新節點與其他節點交易的能力和機會。DP一般根據UP的信譽值大小進行選擇,如果初始信譽值很高,則洗白攻擊的代價很小,惡意節點可以通過洗白攻擊逃避P2P信任機制的隔離;如果初始值太小,則新節點被選為UP的機會就很小,不利于培養新節點參與正常交易的積極性。
⑵ 注冊時間:新節點注冊的時間是無法改變的,這個特性可以被P2P信任機制加以利用。如果UP的歷史交易中只包含新節點,則該UP信譽值的上升和下降應該在短時間內不受較大的影響,從而避免洗白攻擊和詆毀攻擊造成的影響。
2.2 資源大小
大型資源的上傳和下載會花費較大的代價。惡意節點在積累信譽值時,需要上傳或下載相應的資源,將資源大小引入P2P信任機制,可以避免惡意節點交易大量小資源,以此來快速積累信譽。另一方面,該因素的引入可以鼓勵節點上傳大資源加快信譽積累。
2.3 交易時間
在交易完成后應該記錄交易的時間。交易時間反映了交易發生時刻和過去一段時間節點的交易活動情況。可以根據交易時間和其他因素的分布情況預測該節點的行為趨勢。例如某節點在過去一段時間內頻繁交易且給出較低評價,則可將該節點列為可疑節點;計算其他有關節點信譽值時可以減少該節點對其他節點信譽值的影響程度,也可以避免選擇其為UP,如搖擺攻擊就可以被避免。
交易時間范圍的確定決定了信譽值計算時應該考慮的交易數量,所以交易時間范圍應該小心確定。P2P網絡內每時每刻存在大量交易。對于UP來說,需要考慮的歷史交易可能在時間范圍很小的時候數量也很大,考慮節點的所有歷史交易是不可取的,但時間范圍過小又無法精確體現節點的行為趨勢。
2.4 交易節點情況
在全局信譽機制里應該考慮節點曾經與哪類節點發生過交易,從而真實反應該節點的信譽值,影響DP是否將該節點選擇為UP。
⑴ 相關節點的信譽值。這些信譽值在UP信譽值計算過程中應該被詳細考察。考慮到信譽值積累需要消耗到一定程度的資源,在協同攻擊的第一種方式中,惡意節點的主要任務就是給予虛假的高評價,但這些節點的信譽值實際很低。
⑵ UP歷史交易中參與的實際節點數量也很重要。即使UP的歷史交易數量高,但是如果僅僅與一個節點進行交易,則實際節點數量為1。實際交易節點數量反應了UP交易的廣度。惡意節點如果開展協同攻擊,考慮到攻擊代價,其惡意節點總數是有限的。此時考慮實際交易節點數量可以減少惡意節點彼此虛假評價帶來的影響。
⑶ 在考察UP歷史交易中,即使相關DP的信譽值很高,仍然不可確定該UP是否可信。為了更好地評價眾多DP的信譽值是如何而來,避免類似協同攻擊中的第一類攻擊,在計算信譽值時,就需要詳細評估DP信譽值的形成過程。
2.5 交易數量
UP能否被信任,其歷史交易數量也可以作為一個參考點。歷史交易越多,參與交易的DP也越多。對于需要下載資源的DP來說,提供資源的UP經受越多的DP檢驗,該UP的信譽值就越可信。但是歷史交易數量應該與其他因素共同考慮。
2.6 評價
交易完成后雙方將給出評價。評價的內容可以包含很多,如資源正確與否,消耗時間長短,UP在線狀態短等。在評估評價是否有效時,需要注意三個方面。
⑴ 最近的評價可以恰當地反應UP最近的交易趨勢。如何區分最近的評價和指定的時間閾值相關,適當的時間閾值可以避免資源的消耗和時間的消耗。
⑵ 歷史交易的評價中,應該著重關注具有高信譽值的DP所作出的評價。由于高信譽值較難獲得,節點會相對珍惜自己的高信譽,在評價的時候也更客觀公正。在進行信譽值計算時,增加高信譽值節點評價的比重一定程度上有利于對抗詆毀攻擊。
⑶ 如果交易得到較低評價,應該對節點的信譽產生較大影響。畢竟在正常節點的正常交易中,低評價數量應該遠遠少與其他類型的評價。信譽值計算時關注較低評價帶來的資源消耗不多,但同時低評價的具體內容需要分析,如低評價如果是由惡意資源造成,則信譽值計算應該加大該評價比重,如果只是因為交易時長和網絡因素,則該因素所占比重應該調低。
2.7 節點行為習慣
除了上述因素外,節點的行為習慣也應該被P2P信任機制考慮。節點行為習慣可能并不參與到節點信譽值的計算中,如果引入節點行為模式模型則可以提高信譽值計算的精確度,幫助提高P2P信任機制的有效性。
⑴ 訪問習慣。很多節點在進入P2P網絡初期時,習慣訪問鄰居節點獲得資源,而不是在整個P2P網絡中訪問。節點在使用過程中逐漸以用戶興趣相同聚集在一起,方便相互之間共享資源,只有在鄰居節點無法找到資源時才查找整個P2P網絡。但有些節點從始至終只訪問鄰居節點。
⑵ 清除習慣。除去交易未完成的情況,失敗的交易表明資源有問題。如果節點不管理下載的錯誤資源,而只是專注尋找資源,錯誤的資源就會被其他節點下載,由此帶來的低評價會降低該節點的信譽值。
3 兩種角度
一次交易離不開UP和DP的參與。在大多數P2P網絡內,DP有權選擇UP,而UP只負責資源的提供,并不特意選擇DP。絕大多數P2P信任機制也僅僅是從DP角度關注信譽值的計算。如果可以從UP角度引入相關因素計算信譽值,雖然交易可能被限制,但可以對抗某些攻擊,如挑剔類型的節點、實施詆毀攻擊的節點,以及實施洗白攻擊的節點,都會給UP較低評價。引入UP視角可以完善P2P信任機制的完整性,更全面地評估節點信譽值。圖1從UP和DP兩類節點的角度,展示了影響因素的分布情況。
[詆毀攻擊][團隊攻擊][DP][UP][初始信譽值][行為習慣][資源大小][交易時間][注冊時間][評價][交易數量][搖擺攻擊][交易節點情況][女巫攻擊][洗白攻擊]
圖1 兩種視角下影響因素的分布
4 結束語
P2P信任機制的設計和部署是一個復雜的過程,其對節點信譽值的計算必須考慮復雜的影響因素。高效的P2P信任機制應該準確計算節點信譽值,推斷節點未來的行為趨勢,保證節點間的交易順利完成。本文研究了P2P網絡內針對信任機制的網絡攻擊,包括詆毀攻擊、團隊攻擊、搖擺攻擊和女巫攻擊等,以節點信譽值的計算為目標,詳細討論了相關的影響因素,發現交易雙方節點都會影響交易的順利完成,給出了從上傳節點和下載節點兩種視角下影響因素的分布情況,對P2P信任機制的研究和實施做出了貢獻。
參考文獻:
[1] Adar E, Huberman B. Free riding on gnutella[J].First Monday,
2000.5(10):134-139
[2] 袁巍,李津生,洪佩琳.一種P2P網絡分布式信任模型及仿真[J].系統
仿真學報,2006.18(4):938-942
[3] Despotovic Z, Aberer K. Maximum likelihood estimation of peers'
performance in P2P networks[A]. Proc. of the 2nd Workshop on the Economics of Peer-to-Peer Systems[C]. Cambridge:Harvard University,2004:1-9
[4] Song SS, Hwang K, Zhou RF, Kwok YK. Trusted P2P transactions
with fuzzy reputation aggregation[J]. IEEE Internet Computing,2005.9(6):24-34
[5] 李景濤,荊一楠,肖曉春等.基于相似度加權推薦的P2P環境下的信
任模型[J].軟件學報,2007.18(1):157-167
[6] 姜守旭,李建中.一種P2P電子商務系統中基于聲譽的信任機制[J].
軟件學報,2007.18(10):2551-2563
[7] Josang, Audun, Ismail, Roslan, Boyd, Colin A. A survey of trust
and reputation systems for online service provision. Decision Support Systems[J]. 2007,43(2):618-644
[8] Liang J, Kumar R, Xi Y, Ross K. Pollution in P2P file sharing
systems[A]. Proc. of the IEEE Infocom[C]. Miami:IEEE Press,2005:1174-1185
[9] Douceur J.R.. The Sybil attack[A]. First International Workshop on
Peer-to-Peer Systems[C]. Cambridge:Springer,2002:1-6