王 君,冀常鵬,汪 洋,王連鵬
(1. 遼寧工程技術大學 a. 研究生學院;b. 電子與信息工程學院,遼寧 葫蘆島125105;2. 特變電工沈陽變壓器集團有限公司,沈陽 1 10144)
P2P網絡中基于云模型的信任機制研究
王 君1a,冀常鵬1b,汪 洋1a,王連鵬2
(1. 遼寧工程技術大學 a. 研究生學院;b. 電子與信息工程學院,遼寧 葫蘆島125105;2. 特變電工沈陽變壓器集團有限公司,沈陽 1 10144)
針對近年來對等網絡中存在大量不安全服務的問題,提出一種基于云模型的信任機制。在符合查詢操作的節點中,根據前若干周期的信任向量,利用灰色預測模型預測各個節點在當前周期的信任向量,設計云模型算法分別建立云模型,依據信任云決策算法和信任云相似度度量算法選出值得信任的節點為請求節點提供服務。仿真結果表明,該機制在選擇目標服務節點時,不僅考慮節點信任值的平均值,而且還考慮信任值的離散性,可以從多個角度更全面、合理地選出最值得信任的目標服務節點,達到提高網絡服務質量、增強網絡安全性的目的。
對等網絡;云模型;灰色預測模型;信任向量;網絡安全
從Napster和Gnutella網絡開始,對等(Peer-to-Peer, P2P)網絡系統就成為Internet吸引數百萬用戶不可分割的部分。P2P技術使得資源共享網絡結構從傳統的C/S模式過渡到P2P模式[1]。由于P2P網絡淡化了對中央服務器的依賴,秉承了分布式計算的特點,使得它更加徹底地暴露在攻擊者面前。服務質量(Quality of Service, QoS)不可靠、欺詐行為、網絡可用性差等問題成為影響P2P網絡向安全性能要求更高的應用擴展的主要障礙[2]。調查結果表明,就文件共享而言,有25%的文件是虛假文件,此外也有惡意節點利用網絡散播病毒等一系列不良行為,使得QoS無法得到較好的保證[3]。針對諸如此類的情況,建立一個安全、充滿信任的P2P網絡體系,為用戶提供放心、可靠的服務環境勢在必行。
通過網絡中其他節點對目標節點歷史行為的評價信息可以得到該目標節點的信任值,而通過信任值的高低可以判定是否與其進行交易,該信任機制可以在一定程度上區分出好節點與壞節點,提高了P2P網絡的安全性[4]。但信任具有很大的主觀性、模糊性以及隨機性。而傳統的信任模型中沒有考慮到信任的不確定性,或是將信任的不確定性簡單地等同于隨機性或模糊性[5]。例如文獻[6]中的Eigent Trust模型是經典的解決信任機制的模型,也只考慮了信任的隨機性,而沒有考慮信任的模糊性。研究發現,文獻[7]提出的云模型能將定性概念的主觀性、模糊性和隨機性有機地結合起來,實現概念的定性與定量間的轉換。在基于云模型的信任機制中,信任決策機制通過收集節點在過去時段其他節點對該節點的評價信息(稱為信任向量)并為之建立云模型,從而判定出此節點是否值得信任。文獻[8-10]都是將云模型應用到信任機制中,但又因為網絡中有惡意節點的存在,此類節點并不是每時每刻都向其他節點提供信任的服務。因此,本文提出一種用灰色預測模型[11]預測節點行為的信任機制,以保證查詢節點得到安全的服務。
2.1 云的基本概念
云與云滴:設U是一個用精確數值表示的定量論域(一維的,二維的或多維的),C是U上的定性概念,對于論域中的任意一個元素x,且x是定性概念C的一次隨機實現,x對C的確定度μ(x)∈[0, 1]是有穩定傾向的隨機數:

則將x在論域U上的分布稱為云模型,簡稱為云。每一個x稱為一個云滴。
2.2 云的數字特征
云的數字特征用期望Ex、熵En和超熵He這3個數值來表示,它們的定義及特點描述如下:
(1)期望Ex:在論域空間中最能代表這個定性概念的點,是這個概念量化的最典型樣本點。
(2)熵En:代表一個定性概念的可度量粒度,熵越大概念越宏觀。熵也反映定性概念的不確定性,是定性概念亦此亦彼性的度量。
(3)超熵He:熵的不確定性度量,它反映代表定性概念值的樣本出現的隨機性,揭示了模糊性和隨機性的關聯[12]。
2.3 云發生器
云模型中2個最重要的算法是正向云發生器和逆向云發生器。正向云發生器是已知3個數字特征得到一定數量的云滴,是定性概念轉化為定量的表示。逆向云發生器是已知一定數量的樣本數據得到云模型的3個數字特征,是定量映射到定性的表示。正向云發生器和逆向云發生器簡單的算法描述如下:
算法1 正向云發生器
輸入 表示定性概念C的Ex,En,He和云滴數N
輸出 N個云滴的定量值以及每個云滴代表概念C的確定度
以En為期望值、He為標準差生成一個正態隨機數En’,以Ex為期望值、En’為標準差生成正態隨機數x,x即為定性概念C的一次具體量化值,稱為云滴。計算:

y即為x屬于A的確定度,則{x,y}可以完整地反映出這一次定性到定量轉換的全部內容,由此重復以上操作,直到產生N個云滴為止[13]。
算法2 逆向云發生器
輸入 N個云滴xi(1≤i≤N)
輸出 這N個云滴表示的定性概念C的Ex,En和He
根據xi計算這組數據的樣本均值x、樣本方差S2和樣本2階中心矩B:


從而計算出期望值Ex、熵En和超熵He:
3.1 信任云的定義
信任云是一種特殊的云模型,它將對信任的表達用云模型的方式反映出來,具體的云模型定義如下:
定義1 信任云是以一維正態云的形式描述實體間的信任關系,形式化表述為:

其中,Ex是期望值,反映信任的一般水平;En是熵,反映信任的不確定性;He是超熵,反映熵的不確定性[14-15]。
3.2 信任向量的定義
通常,實體間的信任評估取決于對對方服務行為滿意度的高低。對節點服務質量的評價,本文采用離散標度(1, 0.75, 0.5, 0.25, 0)來描述不同的滿意度高低(分別對應為非常滿意、滿意、一般、不滿意、非常不滿意)。當查詢節點從目標服務節點N獲得所需的資源后,對目標服務節點N給出其服務滿意度的評價。如此在一段時間T后,可以整理出節點N在時間T內的滿意度評價集合,稱為節點N在時間T內的信任向量。具體的定義如下:
定義2 信任向量V是一個五維向量,是與滿意度評價高低描述相對應的對目標服務節點在時間T內的服務評價的集合。
節點N在周期Ti的信任向量為VNi(10, 20, 15, 0, 0),表示在周期Ti其他節點對N的服務滿意度評價中有10次非常滿意、20次滿意和15次一般。
3.3 信任云的生成
已知節點N在某周期Ti的信任向量為VNi(10, 20, 15, 0, 0),可通過算法2(逆向云發生器)得到信任向量VNi對應的信任云模型CNi的3個數字特征:

從而實現定量到定性概念的轉換。再通過算法1(正向云發生器)由CNi的3個數字特征得到信任云模型CNi的云滴圖,以此來描述出信任值的分布情況。具體的云滴圖如圖1所示。

圖1 VNi(10, 20, 15, 0, 0)對應的云滴圖
3.4 灰色預測模型
每當節點執行完一次查詢服務,模型都會對目標服務節點給出其服務質量的滿意度評價。如此,每個節點都維持一個信任值表格(Trust-value Neighbor),記錄自己在當前周期Ti之前4個周期Ti–1,Ti–2,Ti–3,Ti–4的滿意度評價集合。因為信任值表格中總是記錄當前周期之前4個周期的信任值,所以信任值表格是每隔時間T更新一次的。節點N在當前周期的信任值如表1所示。

表1 節點在當前時刻的信任值
從表1可以看出,節點N在周期Ti–4的信任向量VNi–4為(5, 20, 18, 3, 0),在周期Ti–3的信任向量為VNi–3為(7, 18, 15, 5, 0),在周期Ti–2的信任向量VNi–2為(10, 18, 20, 5, 0),在周期Ti–1的信任向量VNi–1為(10, 15, 16, 4, 0)。
根據灰色預測模型可以預測出N在當前周期Ti的信任向量VNi。下面以單序列一階線性微分方程GM(1, 1)為例,介紹灰色預測的具體步驟。
設有原始數據序列S(0)=(S(0)(1), S(0)(2), …, S(0)(n)),n為數據的個數。
(1)為了弱化原始隨機序列的波動性和隨機性,對原始數據累加得到新的數據序列S(1)為:



(5)對函數表達式S(1)(t+1)及S(1)(t)作差,還原出S(0)序列,得到的S(0)(t+1)為:S(0)(t+1)=S(1)(t+1)–S(1)(t)。
(6)利用該模型對原始數據序列S(0)進行預測,得到的數據如下:

經過上述灰色預測,現對周期Ti信任向量中的非常滿意的評價次數進行預測。由表1得到非常滿意的初始數據序列為S(0)=(5, 7, 10, 10),經灰色預測模型預測得到S(0)(5)= 12.213 4,四舍五入得S(0)(5)=12。同理可以預測出周期Ti信任向量中的滿意、一般、不滿意與非常不滿意的評價次數,得出VNi(12, 14, 18, 4, 0)。
3.5 信任云決策算法
當節點A執行查詢服務后,系統會返回滿足查詢條件的節點。A要在滿足查詢操作的節點中選出值得信任的節點作為目標服務節點,本文使用信任云決策算法對多個云模型進行是否信任的選擇。本文首先設定作為標準的信任云,稱為基準云,表示為CS(Exs, Ens, Hes);要進行比較的云稱為比較云,記為Cm(Exm, Enm, Hem)。因此,節點A信任一個目標服務節點與否,需要將此目標服務節點與基準云比較,然后得出是否值得信任的結論。
云模型中的Ex和En參數是決定云形狀的2個最直觀的參數,分別反映云所代表的知識的平均值和離散程度,而He是En的熵。一般來說,En與He的比值在一定范圍內時He對云的影響力較小。因此,在本文的信任云決策算法中,主要比較Ex和En這2個參數。
算法3信任云決策算法
輸入基準云CS(Exs, Ens, Hes),比較云Cm(Exm, Enm, Hem)
輸出比較云Cm是否值得信任


算法4信任云相似度度量算法
輸入信任云C1(Ex1, En1, He1),記為向量V1(Ex1, En1, He1);信任云C2(Ex2, En2, He2),記為向量V2(Ex2, En2, He2)
輸出2個云是否相似

該算法中的θ是設定的一個閾值,可以根據具體的情況設置其值大小。
以上算法描述可總結為:源節點A需要某個目標資源,執行查詢后若網絡中有節點(假設有3個節點B,C,D)存有A所需要的目標資源,故應對3個節點進行是否值得信任的判斷。首先從3個節點各自的信任值表格中取出前四個周期的信任向量,然后使用灰色預測模型預測出當前周期Ti的信任向量VBi,VCi,VDi,在利用算法2(逆向云發生器)得到對應云模型分別記為CBi(Ex, En, He)、CCi(Ex, En, He)、CDi(Ex, En, He)。最后通過算法3(信任云決策算法)和算法4(信任云相似度度量算法)判斷3個節點哪個節點值得信任,從而選擇此節點作為目標服務節點。如在B,C,D中通過判斷得出節點D不值得A信任,B、C節點值得信任,則A從B或C中選出一個節點與之發生交互即可。或3個節點都不符合信任要求,則為了保證網絡服務安全,節點A放棄下載此資源。
為對提出的模型算法進行驗證,本文采用Matlab2010b進行仿真。在一個簡單的P2P網絡(如圖2所示)中,假定A需要某文件f,經過查詢B,C中有f文件。系統查詢到B,C中有目標文件后,從B,C的信任值表格中取出各自前4個周期的信任向量,然后通過灰色預測模型預測出B,C節點在當前周期Ti的信任向量。B,C節點具體的信任值數據如表2、表3所示。

圖2 一個簡單的P2P網絡

表2 節點B的信任值

表3 節點C的信任值
通過灰色預測模型預測出B在Ti的信任向量VBi(5.257 0, 70.010 5, 4.725 5, 0, 0),四舍五入得VBi(5, 70, 5, 0, 0);預測出C在Ti的信任向量VCi(28.241 3, 0, 27.651 4, 0, 0),四舍五入規則得VCi(28, 0, 28, 0, 0)。再通過算法2(逆向云發生器)分別對2個信任向量得出信任云模型CBi(0.75, 0.088 4, 0.009 9)和CCi(0.75, 0.25, 0.033 7)。節點A的基準云設為CS(0.6, 0.1, 0.02),因此,只需對CBi和CCi分別于CS執行算法3(信任云決策算法)即可。對于CBi,調用算法3(信任云決策算法),因為0.088 4<0.1并且0.75>0.6,所以判斷出B值得A信任。對于CCi,通過調用算法3(信任云決策算法)和算法4(信任云相似度度量算法)計算出CCi和CS的相似度Sim=0.987 7。而因為0.987 7<0.99(算法4中設置的閾值θ=0.99),所以C不值得A信任。通過算法1(正向云發生器),可以得到CBi和CCi的云滴圖,分別與CS的云滴圖進行對比,結果如圖3和圖4所示。從圖3可以看出,CBi的云滴圖基本上在CS云滴圖的右側,且CBi的離散度也比CS的小。而圖4中CCi的云滴圖可以看出,雖然期望值比CS大,但是離散性也較大,故不確定性大。對于目標服務節點的信任云模型CBi(0.75, 0.088 4, 0.009 9)和CCi(0.75, 0.25, 0.033 7),如果單從期望值來看,兩者的期望值即信任值的平均水平都為0.75,因此,不能判斷出哪個更信任。但是本文從云模型的3個特征參數分析,可以更全面合理地判斷出哪個節點更值得信任,從而給用戶提供更可靠的服務,保證了網絡的安全性。

圖3 CBi與CS的云滴圖對比

圖4 CCi與CS的云滴圖對比
本文提出一種在P2P網絡中基于節點的信任向量建立云模型的算法。當某節點符合某次查詢條件時,可以首先利于灰色預測模型根據節點前4個周期的信任向量預測出節點在當前周期的信任向量,再通過逆向云發生器得出當前周期信任向量對應的信任云模型,并依據信任云決策算法和信任云相似度度量算法對若干符合某次查詢條件節點的信任云模型進行選擇,最終選出值得信任的節點(或一個節點都不信任)給查詢節點提供服務,從而保證了網絡服務的安全可靠性。從仿真結果來看,本文算法可以更全面、合理地對目標服務節點做出評價選擇。但該算法中信任云的相似度閾值以及每個節點的基準云大小設置,將會影響到節點是否得到可靠安全的網絡服務,進而影響整個網絡的安全性,因此,如何設置信任云的相似度閾值和每個節點的基準云大小是下一步研究的重點內容。
[1] S teinmetz R, Wehrle K. P 2P系統及其應用[M]. 王玲芳, 陳 焱, 譯. 北京: 機械工業出版社, 2008.
[2] 孔 杰, 張新有. 一種基于組群的P2P網絡信任模型[J].計算機應用研究, 2010, 27(12): 4676-4679.
[3] 陳 燦. P 2P網絡中基于信譽的信任模型研究[D]. 長沙:湖南大學, 2010.
[4] 張秋景, 曾凡平. 一種信譽機制與云模型相結合的P2P環境信任模型[J]. 小型微型計算機系統, 20 10, 3 1(7): 1328-1332.
[5] 林 軍, 姜文君, 王國軍. P 2P環境中基于信譽與云理論的信任模型[J]. 計算機工程, 2012, 38(2): 141-143, 145.
[6] Feldman M, Papadimitriou C, Chuang J, et al. Free Riding and Whitewashing in Peer to Peer Sy stems[J]. IEEE J ournal on Selected Areas in Communications, 2006, 24(5): 1010-1019.
[7] 李德毅, 史雪梅, 孟海軍. 隸屬云和隸屬云發生器[J]. 計算機研究與發展, 1995, 32(6): 15-20.
[8] 蔡紅云, 杜瑞忠, 田俊峰, 等. 基于云模型和風險評估的信任模型研究[J]. 計算機工程, 2012, 38(23): 139-142.
[9] 王守信, 張 莉, 李鶴松. 一種基于云模型的主觀信任評價方法[J]. 軟件學報, 2010, 21(6): 1341-1352.
[10] 任樂華. P 2P網絡中基于云模型的信任度評估研究[D].濟南: 山東師范大學, 2012.
[11] 鄧聚龍. 灰理論基礎[M]. 武漢: 華中科技大學出版社, 2002.
[12] 李德毅, 劉常昱. 論正態云的普適性[J]. 中國工程科學, 2004, 6(8): 28-34.
[13] 楊 宇, 周小煥, 宋淑麗. 云理論在高速公路安全評價中的應用[J]. 交通信息與安全, 2011, 29(2): 92-94.
[14] 路 峰, 吳慧中. 基于云模型的信任評估研究[J]. 中國工程科學, 2008, 10(10): 84-90.
[15] 路 峰, 吳慧中. 網格環境下基于云模型的信任評估與決策方法研究[J]. 系統仿真學報, 2009, 21(2): 421-426.
編輯 金胡考
Research on Trust Mechanism Based on Cloud Model in P2P Network
WANG Jun1a, JI Chang-peng1b, WANG Yang1a, WANG Lian-peng2
(1a. Institute of Graduate; 1b. School of Electronics and Information Engineering, Liaoning Technical University, Huludao 125105, China; 2. TBEA Shenyang Transformer Group Co., Ltd., Shenyang 110144, China)
With the rapid development of Peer-to-Peer(P2P) network in recent years, there exist a lot of unsafe service problems. Aiming at this problem, a trust mechanism based on cloud model is proposed. A kind of cloud model algorithm based on node’s trust vector is proposed. For several nodes which matching the query condition, it uses gray theory to predict trust vector of current cycle based on its previous trust ve ctors, and creates cloud mod el for several current t rust vectors, sele cts the trustworthy node to service the source query node depending on the decision algorithm of trust-cloud and the similarity measure algorithm of trust-cloud. Simulation experimental result shows that when selecting the target service nodes, this mechanism can not only depend on node’s mean trust-value, but also take trust-value discreteness into considering. So it can select the most trust node from different angles, improve the quality of network service, and achieve the purpose of enhancing network security.
Peer-to-Peer(P2P) network; cloud model; grey prediction model; trust vector; network security
10.3969/j.issn.1000-3428.2014.05.026
王 君(1989-),女,碩士研究生,主研方向:對等網絡安全;冀常鵬,教授;汪 洋,碩士研究生;王連鵬,工程師。
2013-04-10
2013-06-05E-mail:june1016@126.com
1000-3428(2014)05-0124-05
A
TP309