專利名稱:一種p2p網(wǎng)絡(luò)中面向資源的信任評(píng)價(jià)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種信任評(píng)價(jià)方法,尤其涉及一種P2P網(wǎng)絡(luò)中面向資源的信任評(píng)價(jià)方法, 屬于網(wǎng)絡(luò)安全技術(shù)領(lǐng)域。
背景技術(shù):
P2P網(wǎng)絡(luò)的出現(xiàn)在很大程度上改變了互聯(lián)網(wǎng)的發(fā)展模式,許多網(wǎng)絡(luò)應(yīng)用程序依托P2P 網(wǎng)絡(luò)技術(shù)得到迅速發(fā)展,尤其是廣泛應(yīng)用的多種文件共享系統(tǒng),如eMule, BT等。但是由 于P2P網(wǎng)絡(luò)天生的開放性、匿名性和難以追蹤性等特點(diǎn),惡意節(jié)點(diǎn)很容易加入到網(wǎng)絡(luò)中來, 因此,P2P網(wǎng)絡(luò)在帶來便利的同時(shí),也帶來一些安全威脅,甚至成為了病毒傳播的途徑。 為了解決這一問題,人們借鑒現(xiàn)實(shí)社會(huì)中人際關(guān)系網(wǎng)絡(luò)的特征,在P2P網(wǎng)絡(luò)中引入了信任 模型機(jī)制,該機(jī)制對(duì)網(wǎng)絡(luò)中惡意節(jié)點(diǎn)的活動(dòng)起到了比較好的抑制作用。
現(xiàn)有的信任模型的共同特征是面向節(jié)點(diǎn),把節(jié)點(diǎn)作為信任值度量的最小單位,根據(jù) 節(jié)點(diǎn)間的交互歷史來反映節(jié)點(diǎn)的信任值,同時(shí)通過對(duì)具有不同信任值的節(jié)點(diǎn)的區(qū)別對(duì)待, 達(dá)到遏制網(wǎng)絡(luò)中惡意節(jié)點(diǎn)行為的目的。在實(shí)際實(shí)現(xiàn)中又分為集中式與分布式,局部信任模 型與全局信任模型等多種類型。
但是,目前P2P網(wǎng)絡(luò)出現(xiàn)的一些新變化逐漸導(dǎo)致這種基于個(gè)體(節(jié)點(diǎn))的信任模型越來 越不能滿足現(xiàn)實(shí)的需要第一,惡意資源的擴(kuò)散程度遠(yuǎn)遠(yuǎn)超出一般人的想象。惡意資源的 存在不再是一個(gè)可以忽視的小問題,必須引起足夠的重視和警惕;第二,惡意資源不再僅
僅存在于所謂的"惡意節(jié)點(diǎn)",許多非"惡意節(jié)點(diǎn)"也往往保存和共享了許多惡意資源,
盡管這些節(jié)點(diǎn)往往是在無意中保存和共享的;第三,與節(jié)點(diǎn)是否惡意相比,人們更關(guān)心的 是資源的性質(zhì),來自所謂正常節(jié)點(diǎn)的惡意資源一樣是不能接受的。
因此,在目前的P2P網(wǎng)絡(luò)環(huán)境下,面向節(jié)點(diǎn)的信任模型的局限性越來越明顯 1)面向節(jié)點(diǎn)的信任模型僅將節(jié)點(diǎn)簡單劃分為正常節(jié)點(diǎn)與惡意節(jié)點(diǎn),而不考慮資源的 具體情況。這一做法已經(jīng)不適應(yīng)當(dāng)前的現(xiàn)實(shí)情況。如前所述,在惡意資源大量泛濫的形勢(shì) 下,惡意資源已經(jīng)不再是所謂"惡意節(jié)點(diǎn)"的獨(dú)有現(xiàn)象,對(duì)用戶行為的研究表明,大量用 戶無意中下載和共享惡意資源,使得惡意資源大量滲透到正常用戶節(jié)點(diǎn)中去,并通過這些 正常節(jié)點(diǎn)繼續(xù)擴(kuò)散。在這種情況下,面向節(jié)點(diǎn)的信任模型劃分正常節(jié)點(diǎn)與惡意節(jié)點(diǎn)的做法
已經(jīng)不再適用,我們不能再簡單地以節(jié)點(diǎn)是否惡意判定它所保存的資源是否惡意。
2) 面向節(jié)點(diǎn)的信任模型以單個(gè)節(jié)點(diǎn)為管理對(duì)象和管理單位,只能將節(jié)點(diǎn)作為一個(gè)整 體管理,對(duì)于節(jié)點(diǎn)中的資源則鞭長莫及。在目前P2P網(wǎng)絡(luò)中惡意資源泛濫的情況下,面向 節(jié)點(diǎn)的信任模型無法具體管理到節(jié)點(diǎn)中的資源,管理粒度相對(duì)較粗,不能適應(yīng)目前的新形 勢(shì)。面向節(jié)點(diǎn)的信任模型盡管可以阻止一部分惡意資源的傳播,但是仍有相當(dāng)一部分惡意 資源(特別是那些保存于所謂正常節(jié)點(diǎn)上的惡意資源)仍然可以繼續(xù)傳播,這反映了面向節(jié) 點(diǎn)的信任模型在遏制惡意資源傳播方面的局限性。
3) 面向節(jié)點(diǎn)的信任模型從節(jié)點(diǎn)的角度管理網(wǎng)絡(luò),對(duì)用戶來說針對(duì)性不強(qiáng),不能真正 滿足用戶的需要。因?yàn)閷?duì)用戶來說,資源才是用戶所真正關(guān)心的對(duì)象,節(jié)點(diǎn)只是承載資源 的載體。用戶一般不關(guān)心他所要下載的資源保存于何處、保存該資源的節(jié)點(diǎn)是什么樣的節(jié) 點(diǎn)等,他更關(guān)心的是他所要下載的資源是否可信以及是否是他真正想要下載的資源,而面 向節(jié)點(diǎn)的信任模型無法回答用戶所關(guān)心的這些問題。
鑒于面向節(jié)點(diǎn)的信任模型的上述局限性,以及目前P2P網(wǎng)絡(luò)所面臨的安全威脅,本發(fā) 明提出一種可以有效解決上述問題的面向資源的信任模型ROTrust(Resource Oriented Trust),實(shí)現(xiàn)對(duì)資源的信任評(píng)價(jià),該信任模型是一種完全面向資源的信任模型,與傳統(tǒng)的面 向節(jié)點(diǎn)的信任模型相比,該模型杜絕了滲透到"正常節(jié)點(diǎn)"的惡意資源的擴(kuò)散問題,同時(shí) 提出了若干安全措施,提高了信任模型對(duì)資源評(píng)價(jià)結(jié)果的可靠性,特別是有效的防止了節(jié) 點(diǎn)捏造評(píng)價(jià)的問題,只有真正下載過資源的節(jié)點(diǎn)方可提交評(píng)價(jià),大大提高了惡意節(jié)點(diǎn)攻擊 的難度。
發(fā)明內(nèi)容
本發(fā)明的目的是提出一種P2P網(wǎng)絡(luò)中面向資源的信任評(píng)價(jià)方法,以資源本身的信任值 為考慮重點(diǎn),不再考慮節(jié)點(diǎn)本身信任值的影響,避免了上述面向節(jié)點(diǎn)信任模型進(jìn)行評(píng)價(jià)的 種種局限性,即使在惡意資源廣泛散布的網(wǎng)絡(luò)環(huán)境中,依然可以正常運(yùn)行。
本發(fā)明的技術(shù)內(nèi)容 一種P2P網(wǎng)絡(luò)中面向資源的信任評(píng)價(jià)方法。具體實(shí)現(xiàn)步驟如下 首先,當(dāng)資源加入到網(wǎng)絡(luò)中時(shí),系統(tǒng)為每個(gè)資源隨機(jī)分配相應(yīng)的信任管理節(jié)點(diǎn);資源 的信任管理節(jié)點(diǎn)負(fù)責(zé)匯總其他節(jié)點(diǎn)對(duì)該資源的所有評(píng)價(jià)信息,在此基礎(chǔ)上計(jì)算得到該資源 的全局信任值;節(jié)點(diǎn)在下載資源之前首先向相關(guān)信任管理節(jié)點(diǎn)該資源詢問該資源的信任 值;節(jié)點(diǎn)根據(jù)反饋結(jié)果決定是否下載該資源;下載完成后做出自己對(duì)該資源的評(píng)價(jià),并提 交給資源的信任管理節(jié)點(diǎn)。
本發(fā)明的技術(shù)方案為
一種P2P網(wǎng)絡(luò)中面向資源的信任評(píng)價(jià)方法,其步驟為
1) 為網(wǎng)絡(luò)中每個(gè)資源分配一個(gè)信任管理節(jié)點(diǎn);
2) 每個(gè)資源的信任管理節(jié)點(diǎn)匯總其它節(jié)點(diǎn)對(duì)該資源的評(píng)價(jià)數(shù)據(jù),并計(jì)算該資源的全局 信任值以及響應(yīng)其他節(jié)點(diǎn)的信任査詢請(qǐng)求;
3) 節(jié)點(diǎn)下載資源之前向資源的信任管理節(jié)點(diǎn)查詢?cè)撡Y源的全局信任值,根據(jù)返回結(jié)果 決定是否下載該資源;
4) 下載該資源的節(jié)點(diǎn)將對(duì)該資源的評(píng)價(jià)數(shù)據(jù)報(bào)告給該資源的信任管理節(jié)點(diǎn),以便該信 任管理節(jié)點(diǎn)更新該資源的全局信任值。
進(jìn)一步的,所述方法中采用分布式Hash表建立資源與信任管理節(jié)點(diǎn)之間的對(duì)應(yīng)關(guān)系, 從而實(shí)現(xiàn)為網(wǎng)絡(luò)中每個(gè)資源分配所述信任管理節(jié)點(diǎn);所述評(píng)價(jià)數(shù)據(jù)包括下載資源的節(jié)點(diǎn) ID、下載來源節(jié)點(diǎn)ID、資源ID、評(píng)價(jià)結(jié)果。
進(jìn)一步的,所述方法中采取如下安全措施保證所述全局信任值的計(jì)算結(jié)果可靠性 1 )采用加密措施保證評(píng)價(jià)數(shù)據(jù)在傳輸過程中不被泄漏或者篡改;
2) 通過記錄節(jié)點(diǎn)的下載行為防止節(jié)點(diǎn)提交偽造的評(píng)價(jià)數(shù)據(jù);
3) 采用IP檢測(cè)機(jī)制防止某些節(jié)點(diǎn)共謀行為。
所述加密措施如下下載資源的節(jié)點(diǎn)向該資源的信任管理節(jié)點(diǎn)提交評(píng)價(jià)數(shù)據(jù)前,首先 獲得該信任管理節(jié)點(diǎn)的公鑰并對(duì)該評(píng)價(jià)數(shù)據(jù)進(jìn)行加密,然后再將其傳輸?shù)皆撔湃喂芾砉?jié) 點(diǎn);信任管理節(jié)點(diǎn)在收到評(píng)價(jià)數(shù)據(jù)后,使用自己的私鑰對(duì)該評(píng)價(jià)數(shù)據(jù)進(jìn)行解密,對(duì)于無法 正確解密的提交數(shù)據(jù)視為無效數(shù)據(jù)予以廢棄。
所述防止節(jié)點(diǎn)提交偽造評(píng)價(jià)數(shù)據(jù)的方法如下節(jié)點(diǎn)i從節(jié)點(diǎn)j中成功下載資源k之后, 節(jié)點(diǎn)j提交本次下載描述信息給資源k的信任管理節(jié)點(diǎn)M,,所述下載描述信息包括下載 節(jié)點(diǎn)ID、下載來源節(jié)點(diǎn)ID、下載資源ID;當(dāng)節(jié)點(diǎn)i向信任管理節(jié)點(diǎn)Mt提交關(guān)于資源k的 評(píng)價(jià)數(shù)據(jù)時(shí),信任管理節(jié)點(diǎn)M^檢索下載記錄列表,如果沒有節(jié)點(diǎn)i的下載記錄,則將節(jié)點(diǎn) i所提交的評(píng)價(jià)數(shù)據(jù)標(biāo)記為無效數(shù)據(jù),不予考慮;如果存在節(jié)點(diǎn)i的下載記錄,則匯總節(jié)點(diǎn) i所提交的評(píng)價(jià)數(shù)據(jù),同時(shí)信任管理節(jié)點(diǎn)^將該下載記錄刪除。
所述IP檢測(cè)機(jī)制的步驟為
a) 信任管理節(jié)點(diǎn)收集所有下載資源的節(jié)點(diǎn)的IP地址,將這些IP地址組成集合P;
b) 對(duì)集合P中的IP地址進(jìn)行聚類運(yùn)算,按照運(yùn)算結(jié)果將集合P中的節(jié)點(diǎn)IP分成多個(gè) 聚類;C)當(dāng)接收到新的節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)時(shí),對(duì)節(jié)點(diǎn)IP進(jìn)行聚類計(jì)算如果該節(jié)點(diǎn)IP相似度計(jì) 算結(jié)果表示它屬于現(xiàn)有的聚類中的某一類,則將其加入到現(xiàn)有聚類中,并更新該聚 類的節(jié)點(diǎn)數(shù)量,如果該聚類的節(jié)點(diǎn)數(shù)量超過規(guī)模閾值,則認(rèn)為存在團(tuán)體共謀;如果 該節(jié)點(diǎn)IP不屬于任何現(xiàn)有聚類,則為其單獨(dú)建立一個(gè)聚類,將該節(jié)點(diǎn)加入到該新聚 類中,并重復(fù)步驟C),繼續(xù)處理下一個(gè)節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)。 所述對(duì)集合P中的節(jié)點(diǎn)IP的聚類方法如下
O將節(jié)點(diǎn)的IP地址以32位二進(jìn)制形式表示,
2) 引入一個(gè)32位二進(jìn)制數(shù)字序列R,所述i -llll…l5^S^,其中,后面0的個(gè)數(shù) n取值為8到16, n越小,聚類的要求越嚴(yán)格;
3) 將二進(jìn)制形式的節(jié)點(diǎn)IP與數(shù)字序列R進(jìn)行"與"運(yùn)算,將計(jì)算結(jié)果相同的節(jié)點(diǎn)劃分
為同一聚類。
所述信任管理節(jié)點(diǎn)匯總評(píng)價(jià)數(shù)據(jù)的方法為信任管理節(jié)點(diǎn)清除被認(rèn)為具有團(tuán)體共謀的
聚類中的節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)后重新計(jì)算該資源的全局信任值。
本發(fā)明的積極效果為
在一般的面向節(jié)點(diǎn)的信任模型中,用戶只能査詢到節(jié)點(diǎn)的信任值,無法把握所要下載 的資源的可信度,導(dǎo)致惡意資源可以通過混跡于可信節(jié)點(diǎn)中而大肆傳播。
本發(fā)明通過為每個(gè)資源分配信任管理節(jié)點(diǎn),使用戶可以直接掌握資源的可信程度,可 以更加有效地阻止惡意資源在網(wǎng)絡(luò)中的擴(kuò)散。同時(shí),本發(fā)明在資源信任管理節(jié)點(diǎn)的分配以 及匯總計(jì)算資源信任值等方面都采取了若干安全措施,提高了信任模型對(duì)資源信任評(píng)價(jià)的 安全性。
圖1為面向資源的信任模型示意圖。
圖2為面向資源的信任評(píng)價(jià)方法流程圖。
具體實(shí)施例方式
首先為每個(gè)資源分配信任管理節(jié)點(diǎn),其次由信任管理節(jié)點(diǎn)匯總計(jì)算資源信任值,建立 資源的信任管理體系,然后,當(dāng)節(jié)點(diǎn)需要下載資源時(shí),預(yù)先向信任管理節(jié)點(diǎn)査詢?cè)撡Y源的信任值,根據(jù)返回結(jié)果決定是否下載。 參考附圖,下面給出詳細(xì)過程 第一步,為每個(gè)資源分配信任管理節(jié)點(diǎn)
評(píng)價(jià)數(shù)據(jù)本身的安全對(duì)于所有的信任模型來說都是至關(guān)重要的,不合適的數(shù)據(jù)存儲(chǔ)方 式容易導(dǎo)致評(píng)價(jià)數(shù)據(jù)遭受篡改、偽造等攻擊。 一般來說,首先要避免將評(píng)價(jià)數(shù)據(jù)本地存儲(chǔ), 因?yàn)樵谶@種情況下,評(píng)價(jià)數(shù)據(jù)很容易被篡改,我們無法保證評(píng)價(jià)數(shù)據(jù)的可靠性與完整性; 其次要保證信任管理節(jié)點(diǎn)分配的隨機(jī)性,不但資源無法自主選擇信任管理節(jié)點(diǎn),而且信任 管理節(jié)點(diǎn)也不能自主選擇它的管理對(duì)象,避免雙方串通作弊。
為了保證評(píng)價(jià)數(shù)據(jù)的安全,ROTrust采用分布式處理機(jī)制保存和管理資源評(píng)價(jià)數(shù)據(jù)。 R0Trust通過分布式Hash表建立資源A:與信任管理節(jié)點(diǎn)之間的對(duì)應(yīng)關(guān)系。具體實(shí)現(xiàn)過 程是通過P2P網(wǎng)絡(luò)定位算法得到負(fù)責(zé)管理該資源信任值的節(jié)點(diǎn)^ ,從而在資源it與信任管 理節(jié)點(diǎn)^之間建立對(duì)應(yīng)關(guān)系,信任管理節(jié)點(diǎn)^負(fù)責(zé)計(jì)算和保存資源)t的信任值,同時(shí)也 負(fù)責(zé)響應(yīng)其他節(jié)點(diǎn)對(duì)資源A信任值的查詢請(qǐng)求。
由于Hash運(yùn)算的隨機(jī)性和單向性,資源無法指定自己的信任管理節(jié)點(diǎn),同時(shí),節(jié)點(diǎn) 也無法指定自己所管理的資源,這樣,就避免了節(jié)點(diǎn)惡意操縱評(píng)價(jià)數(shù)據(jù)的情況,保證了評(píng) 價(jià)數(shù)據(jù)的安全性。
第二步,通過信任管理節(jié)點(diǎn)匯總計(jì)算資源信任值
信任管理節(jié)點(diǎn)M,根據(jù)其他節(jié)點(diǎn)提交的評(píng)價(jià)數(shù)據(jù)計(jì)算資源的全局信任值,計(jì)算結(jié)果的
可靠是建立在接收到數(shù)據(jù)可靠的基礎(chǔ)上的,但是在實(shí)際網(wǎng)絡(luò)環(huán)境中,節(jié)點(diǎn)所提交的數(shù)據(jù)可 能在提交過程中被其他節(jié)點(diǎn)截獲并篡改,甚至某些節(jié)點(diǎn)故意提交偽造數(shù)據(jù)。如果不能對(duì)這 些數(shù)據(jù)進(jìn)行有效的檢測(cè)和甄別,我們將無法相信由此而得出的計(jì)算結(jié)果。因此為保證正常 運(yùn)行,安全的信任模型必須要有一定的檢測(cè)和防范措施,這也是信任值計(jì)算過程中最為重 要和復(fù)雜的一部分。
ROTrust模型分別就信任模型中常見的數(shù)據(jù)泄漏、篡改、偽造以及節(jié)點(diǎn)共謀等問題采 取了相應(yīng)的解決方案,分別具體說明如下 1數(shù)據(jù)泄漏、篡改問題
數(shù)據(jù)的泄漏和篡改是指在節(jié)點(diǎn)向信任管理節(jié)點(diǎn)提交數(shù)據(jù)的過程中,如果以明文傳輸, 則所提交的評(píng)價(jià)數(shù)據(jù)很容易被第三方截獲,造成敏感數(shù)據(jù)的泄漏。同時(shí),截獲數(shù)據(jù)的第三 方也可以將此數(shù)據(jù)進(jìn)行一定的修改,然后重新發(fā)送到信任管理節(jié)點(diǎn)。這樣不但嚴(yán)重威脅到
原始數(shù)據(jù)的安全性,也使得某些節(jié)點(diǎn)可以很方便的冒用其他節(jié)點(diǎn)的身份發(fā)起攻擊。
為避免此類問題,我們?cè)赗OTrust中引入公鑰機(jī)制對(duì)傳送信息進(jìn)行加密處理。評(píng)價(jià)數(shù) 據(jù)提交者在向信任管理節(jié)點(diǎn)提交數(shù)據(jù)前,首先獲得該信任管理節(jié)點(diǎn)的公鑰并對(duì)該評(píng)價(jià)數(shù)據(jù) 進(jìn)行加密,然后再將其傳輸?shù)皆撔湃喂芾砉?jié)點(diǎn)。這樣,在傳輸過程中,即使評(píng)價(jià)數(shù)據(jù)被某 些節(jié)點(diǎn)截獲,也無法解讀其內(nèi)容,更無法進(jìn)行篡改。該信任管理節(jié)點(diǎn)在收到該評(píng)價(jià)數(shù)據(jù)后, 使用自己的私鑰對(duì)該評(píng)價(jià)數(shù)據(jù)進(jìn)行解密,對(duì)于無法正確解密的提交數(shù)據(jù)視為無效數(shù)據(jù)予以 廢棄。
我們對(duì)此過程舉例說明如下
節(jié)點(diǎn)i準(zhǔn)備向資源A的信任管理節(jié)點(diǎn)&提交它對(duì)資源k的信任評(píng)價(jià),則它首先與信任 管理節(jié)點(diǎn)A取得聯(lián)系,節(jié)點(diǎn)^返回自己的公鑰p給節(jié)點(diǎn)i,節(jié)點(diǎn)i使用公鑰p加密所要提 交的評(píng)價(jià)數(shù)據(jù),并傳送給信任管理節(jié)點(diǎn)^。在這個(gè)過程中,除了信任管理節(jié)點(diǎn)A之外, 其他節(jié)點(diǎn)因?yàn)椴恢缹?duì)應(yīng)的私鑰,無法閱讀和修改此數(shù)據(jù),保證了評(píng)價(jià)數(shù)據(jù)的保密性和完 整性。
需要說明的是,雖然我們?cè)谶@里使用了公鑰機(jī)制,但是并不需要中心CA的存在,因 為我們不需要將公鑰與節(jié)點(diǎn)身份一一對(duì)應(yīng),只需保證信任管理節(jié)點(diǎn)私鑰的私密性即可。 2數(shù)據(jù)偽造問題
數(shù)據(jù)偽造是指節(jié)點(diǎn)在沒有訪問過某資源的情況下,憑空捏造對(duì)該資源的信任評(píng)價(jià)數(shù)據(jù) 并將其提交給信任管理節(jié)點(diǎn),使信任管理節(jié)點(diǎn)得到錯(cuò)誤的計(jì)算結(jié)果,企圖以此操縱資源信 任值。
下面我們考慮一種典型的偽造數(shù)據(jù)攻擊過程。
節(jié)點(diǎn)i并未下載過資源k,但是它偽造了一個(gè)對(duì)于資源k的信任評(píng)價(jià),并將其提交給 資源k的信任管理節(jié)點(diǎn)A4。如果沒有有效的檢測(cè)機(jī)制,資源k的信任管理節(jié)點(diǎn)^將無從 分辨評(píng)價(jià)數(shù)據(jù)的真?zhèn)?,同時(shí),如果不能有效的剔除偽造數(shù)據(jù),整個(gè)信任模型的可靠性將受 到嚴(yán)重?fù)p害?,F(xiàn)有的信任管理機(jī)制尚缺乏對(duì)此類攻擊的抵御措施。
在ROTrust模型中,我們提出了一種檢測(cè)數(shù)據(jù)偽造行為的新方案,該方案的核心思想 是,信任管理節(jié)點(diǎn)除了對(duì)資源的信任值進(jìn)行管理外,同時(shí)也負(fù)責(zé)對(duì)資源的下載情況進(jìn)行跟 蹤記錄,以便識(shí)別那些偽造評(píng)價(jià)的節(jié)點(diǎn)并將其排除在外。具體過程如下
當(dāng)節(jié)點(diǎn)i從節(jié)點(diǎn)j中成功下載資源k之后,節(jié)點(diǎn)j提交如下的下載描述信息給資源k
的信任管理節(jié)點(diǎn)A^:
該數(shù)據(jù)表示節(jié)點(diǎn)i從節(jié)點(diǎn)j中成功的下載了資源k,信任管理節(jié)點(diǎn)^通過匯總所有接 收到的下載記錄數(shù)據(jù),就可以掌握所有真正下載過資源k的節(jié)點(diǎn)的完整記錄。由此,當(dāng)節(jié) 點(diǎn)i向信任管理節(jié)點(diǎn)&提交關(guān)于資源k的信任評(píng)價(jià)數(shù)據(jù)時(shí),信任管理節(jié)點(diǎn)^檢索下載記錄 列表,如果沒有發(fā)現(xiàn)關(guān)于節(jié)點(diǎn)i的下載記錄,則認(rèn)為節(jié)點(diǎn)i企圖提交偽造數(shù)據(jù),將節(jié)點(diǎn)i 所提交的評(píng)價(jià)數(shù)據(jù)標(biāo)記為無效數(shù)據(jù),不予考慮,從而阻止了節(jié)點(diǎn)i的攻擊行為。如果發(fā)現(xiàn) 存在節(jié)點(diǎn)i的下載記錄,則認(rèn)為節(jié)點(diǎn)i所提交的評(píng)價(jià)數(shù)據(jù)是真實(shí)的,予以采納,同時(shí),為 了避免下載記錄數(shù)據(jù)過多占用信任管理節(jié)點(diǎn)^的存儲(chǔ)空間,在查詢過之后,^將該下載
記錄刪除,這樣使得針對(duì)每個(gè)下載記錄只能提交一次信任評(píng)價(jià)數(shù)據(jù),可以保證1)避免節(jié) 點(diǎn)i重復(fù)多次提交信任評(píng)價(jià);2)避免其他節(jié)點(diǎn)利用節(jié)點(diǎn)i的下載記錄提交偽造數(shù)據(jù)。
我們通過信任管理節(jié)點(diǎn)匯總保存資源下載記錄的方法,只釆信真正下載過該資源的節(jié) 點(diǎn)所提交的評(píng)價(jià)數(shù)據(jù),從而避免了未曾下載過資源的節(jié)點(diǎn)提交偽造數(shù)據(jù)的攻擊行為。
3節(jié)點(diǎn)共謀問題
實(shí)踐證明,在分布式結(jié)構(gòu)的P2P網(wǎng)絡(luò)中,單個(gè)節(jié)點(diǎn)的攻擊所能造成的損害比較有限, 真正能造成威脅的是多個(gè)節(jié)點(diǎn)共謀協(xié)同發(fā)起攻擊,而且,參與共謀的節(jié)點(diǎn)數(shù)量越多,能夠 造成的危害就越大。如何阻止網(wǎng)絡(luò)中多個(gè)節(jié)點(diǎn)共謀一直是P2P網(wǎng)絡(luò)安全研究的重點(diǎn)問題之
如前所述,ROTmst模型通過匯總資源保存節(jié)點(diǎn)所提交的下載記錄,可以有效識(shí)別沒 有下載過該資源的虛假數(shù)據(jù)提交者,并將這些節(jié)點(diǎn)所提交的偽造數(shù)據(jù)自動(dòng)濾除,在這種情 況下,沒有真正下載過該資源的節(jié)點(diǎn)無法參與共謀攻擊。對(duì)于意圖發(fā)起協(xié)同攻擊的節(jié)點(diǎn)來 說,發(fā)起攻擊的第一步,就是要集合足夠數(shù)量的真正下載過該資源的節(jié)點(diǎn),由于下載過某 一特定資源的節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)中的分布一般是隨機(jī)的和稀疏的,這就使得集合足夠數(shù)量的 下載節(jié)點(diǎn)成為一件相當(dāng)困難的任務(wù),從而大大提高了多個(gè)節(jié)點(diǎn)共謀發(fā)起攻擊的難度,增強(qiáng) 了 ROTmst信任模型的安全性。
盡管如此,多個(gè)節(jié)點(diǎn)發(fā)起共謀攻擊的可能性依然存在,尤其在某些特殊情況下, ROTrust模型中的偽造數(shù)據(jù)檢測(cè)機(jī)制甚至可能被繞過而無法發(fā)揮作用。我們考慮下面兩種 情形-
1) 資源保存節(jié)點(diǎn)與其他節(jié)點(diǎn)一起參與共謀攻擊;
2) 多個(gè)真正下載過該資源的節(jié)點(diǎn)參與共謀攻擊;
在情形1中,當(dāng)資源保存節(jié)點(diǎn)本身直接參與共謀時(shí),由于信任管理節(jié)點(diǎn)所保存的下載 記錄就是由資源保存節(jié)點(diǎn)提交的,在這種情況下,即使某節(jié)點(diǎn)從未下載過資源,它也可以 在資源保存節(jié)點(diǎn)的配合下向信任管理節(jié)點(diǎn)提交偽造的評(píng)價(jià)數(shù)據(jù),所以,這些節(jié)點(diǎn)可以輕而 易舉的發(fā)起共謀攻擊。
在情形2中,足夠多的下載過資源的節(jié)點(diǎn)集合在一起,組成共謀團(tuán)體發(fā)起攻擊。由于 該團(tuán)體的成員都是真正下載過資源的節(jié)點(diǎn),所以他們可以越過ROTrust模型的檢測(cè)機(jī)制發(fā) 起共謀攻擊。
上述兩種情況雖然都屬于小概率事件,但是在復(fù)雜多變的現(xiàn)實(shí)網(wǎng)絡(luò)環(huán)境中確實(shí)可能發(fā) 生并被攻擊者利用發(fā)起攻擊。為了阻止上述兩種情況下的攻擊行為,進(jìn)一步增強(qiáng)信任模型 的安全性,我們?cè)赗OTrust模型中引入IP檢測(cè)機(jī)制。
IP檢測(cè)機(jī)制的原理是由于節(jié)點(diǎn)無法自由選擇自己的IP地址,所以多個(gè)共謀節(jié)點(diǎn)的 IP分布往往呈現(xiàn)與正常狀態(tài)不同的聚集狀態(tài),通過檢測(cè)這種IP分布上的差異,我們可以 檢測(cè)出節(jié)點(diǎn)的共謀行為。
IP檢測(cè)的兩個(gè)重要參數(shù)是規(guī)模閾值和相似度閾值,前者規(guī)定了屬于同一聚類的節(jié)點(diǎn)數(shù) 量的可接受上限,后者規(guī)定了可歸為同一聚類的節(jié)點(diǎn)相似度下限。這兩個(gè)參數(shù)的具體取值 可以根據(jù)實(shí)際情況的需要設(shè)定。
進(jìn)行IP檢測(cè)時(shí),將信任管理節(jié)點(diǎn)已經(jīng)接收到并通過審核的評(píng)價(jià)數(shù)據(jù)的來源IP進(jìn)行聚 類運(yùn)算,將其分成若干個(gè)聚類。當(dāng)接收到新的評(píng)價(jià)數(shù)據(jù)時(shí),將此數(shù)據(jù)的來源IP進(jìn)行同樣的 聚類運(yùn)算,根據(jù)聚類運(yùn)算結(jié)果將其加入現(xiàn)有的某聚類中或者自己單獨(dú)構(gòu)成一個(gè)新聚類。若 新人加入某聚類后該聚類的節(jié)點(diǎn)數(shù)量超過規(guī)模閾值,則認(rèn)為存在共謀攻擊的嫌疑,將新數(shù) 據(jù)標(biāo)記為可疑數(shù)據(jù)。按照ROTrust模型的規(guī)定,可疑數(shù)據(jù)不參與全局信任值的計(jì)算。
更詳細(xì)的IP檢測(cè)過程AuditIP(ip)算法如下所述
1,收集所有下載資源的節(jié)點(diǎn)的IP地址,將這些IP地址組成集合P;
2,對(duì)集合P中的IP地址進(jìn)行聚類運(yùn)算,按照運(yùn)算結(jié)果將集合P中的節(jié)點(diǎn)IP分成多 個(gè)聚類;
具體聚類過程如下
首先,我們將節(jié)點(diǎn)的IP地址以32位二進(jìn)制形式表示,如IP地址126.59.2.3表示
為
0111 1110 0011 1011 0000 0010 0000 0011
其次,我們引入一個(gè)形式如下的32位二進(jìn)制數(shù)字序列R:
niii…ibooo…ci
其中,后面0的個(gè)數(shù)n—般取值為8到16。我們可以通過改變n的大小以調(diào)節(jié)相 似度閾值的高低,n越小,聚類的要求越嚴(yán)格,可以根據(jù)實(shí)際情況采取合適的聚 類標(biāo)準(zhǔn)。
然后,將二進(jìn)制形式的節(jié)點(diǎn)IP與數(shù)字序列R進(jìn)行與(AND)運(yùn)算,將計(jì)算結(jié)果相同 的節(jié)點(diǎn)劃分為同一聚類。 3,接收到新的節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)時(shí),按照節(jié)點(diǎn)IP聚類計(jì)算的不同結(jié)果處理如下
1) 如果該節(jié)點(diǎn)IP相似度計(jì)算結(jié)果表示它屬于現(xiàn)有的聚類中的某一類,則將 其加入到現(xiàn)有聚類中,并更新該聚類的節(jié)點(diǎn)數(shù)量,如果超過規(guī)模閾值, 則認(rèn)為存在團(tuán)體共謀,轉(zhuǎn)到步驟4;
2) 如果該節(jié)點(diǎn)IP不屬于任何現(xiàn)有聚類,即與現(xiàn)有節(jié)點(diǎn)IP差別很大,則為其 單獨(dú)建立一個(gè)聚類,將該節(jié)點(diǎn)加入到該新聚類中,并轉(zhuǎn)到步驟3,繼續(xù)處 理下一個(gè)節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)。
4,信任管理節(jié)點(diǎn)清除被認(rèn)為具有團(tuán)體共謀可能的聚類中的節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)后重新計(jì)算 該資源的全局信任值,不允許具有共謀嫌疑的節(jié)點(diǎn)所提交的數(shù)據(jù)參與對(duì)資源全局 信任值的計(jì)算,以保證計(jì)算結(jié)果的可靠性。 通過引入IP檢測(cè)機(jī)制,進(jìn)一步提高了多個(gè)節(jié)點(diǎn)協(xié)同作弊與攻擊的難度,實(shí)踐表明, 相當(dāng)一部分共謀企圖可以在IP檢測(cè)過程中被識(shí)別出來,即使在上述兩種特殊情況下,也很 難發(fā)起真正有效的共謀攻擊,使節(jié)點(diǎn)的共謀攻擊行為得到有效的遏制。
本發(fā)明提出的信任模型通過上述的加密和檢測(cè)過程之后,我們將通過篩選的數(shù)據(jù)都認(rèn) 為是真實(shí)可信的,信任管理節(jié)點(diǎn)將經(jīng)過篩選的數(shù)據(jù)集中起來,計(jì)算得到資源的全局信任值。
第三步,節(jié)點(diǎn)在下載前向信任管理節(jié)點(diǎn)査詢資源的信任值
節(jié)點(diǎn)在下載資源之前,首先根據(jù)資源ID得到該資源的信任管理節(jié)點(diǎn),然后向該信任 管理節(jié)點(diǎn)査詢?cè)撡Y源的全局信任值。信任管理節(jié)點(diǎn)在接收到查詢請(qǐng)求后,返回相應(yīng)資源的 全局信任值。節(jié)點(diǎn)根據(jù)從信任管理節(jié)點(diǎn)接收到的資源信任值,判斷該資源的惡意程度,從 而決定是否下載該資源。
由于同一節(jié)點(diǎn)可能同時(shí)是多個(gè)資源的信任管理節(jié)點(diǎn),所以節(jié)點(diǎn)在査詢信任值時(shí)需要說明査詢目標(biāo)資源ID。信任管理節(jié)點(diǎn)根據(jù)目標(biāo)資源ID得到相應(yīng)的信任值并返回。
第四步,對(duì)于信任值滿足要求的資源,節(jié)點(diǎn)執(zhí)行下載過程,在下載完畢后,下載來源 節(jié)點(diǎn)需要立即把本次下載行為報(bào)告給該資源的信任管理節(jié)點(diǎn),下載節(jié)點(diǎn)在得出對(duì)資源的評(píng) 價(jià)后,將評(píng)價(jià)數(shù)據(jù)報(bào)告給該資源的信任管理節(jié)點(diǎn)。
報(bào)告下載行為時(shí),數(shù)據(jù)格式如下所示
<々0附>_/<,0附> 々。>/<々。>
其中,i為下載節(jié)點(diǎn),j為來源節(jié)點(diǎn),k為被下載的資源。上述數(shù)據(jù)描述了這樣一個(gè)事 實(shí)節(jié)點(diǎn)i從節(jié)點(diǎn)j成功下載了資源k。
評(píng)價(jià)數(shù)據(jù)的格式如下所示
<#。附>7'<,0附> 〈潛ow尸cc > &</i^o >
其中,i為作出評(píng)價(jià)的節(jié)點(diǎn),k為被評(píng)價(jià)的資源,^為i對(duì)k的評(píng)價(jià)結(jié)果。上述數(shù)據(jù)主
要包含了如下信息節(jié)點(diǎn)i對(duì)資源k做出的評(píng)價(jià)為& 。
上述過程基本描述了面向資源的信任模型的結(jié)構(gòu)和運(yùn)行流程,本發(fā)明的核心在于將資 源作為信任管理的基本單位。對(duì)于本領(lǐng)域技術(shù)人員,還可以根據(jù)該模型的設(shè)計(jì)思想設(shè)計(jì)自
己的算法和利用方法,在具體環(huán)境中達(dá)到最好的效果,從而更有效地提高P2P網(wǎng)絡(luò)的安全 性。
盡管為說明目的公開了本發(fā)明的具體實(shí)施例和附圖,其目的在于幫助理解本發(fā)明的內(nèi) 容并據(jù)以實(shí)施,但是本領(lǐng)域的技術(shù)人員可以理解在不脫離本發(fā)明及所附的權(quán)利要求的精 神和范圍內(nèi),各種替換、變化和修改都是可能的。因此,本發(fā)明不應(yīng)局限于最佳實(shí)施例和 附圖所公開的內(nèi)容,本發(fā)明要求保護(hù)的范圍以權(quán)利要求書界定的范圍為準(zhǔn)。
權(quán)利要求
1.一種P2P網(wǎng)絡(luò)中面向資源的信任評(píng)價(jià)方法,其步驟為1)為網(wǎng)絡(luò)中每個(gè)資源分配一個(gè)信任管理節(jié)點(diǎn);2)每個(gè)資源的信任管理節(jié)點(diǎn)匯總其它節(jié)點(diǎn)對(duì)該資源的評(píng)價(jià)數(shù)據(jù),并計(jì)算該資源的全局信任值以及響應(yīng)其他節(jié)點(diǎn)的信任查詢請(qǐng)求;3)節(jié)點(diǎn)下載資源之前向資源的信任管理節(jié)點(diǎn)查詢?cè)撡Y源的全局信任值,根據(jù)返回結(jié)果決定是否下載該資源;4)下載該資源的節(jié)點(diǎn)將對(duì)該資源的評(píng)價(jià)數(shù)據(jù)報(bào)告給該資源的信任管理節(jié)點(diǎn),以便該信任管理節(jié)點(diǎn)更新該資源的全局信任值。
2. 如權(quán)利要求l所述的方法,其特征在于釆用分布式Hash表建立資源與信任管理節(jié)點(diǎn)之 間的對(duì)應(yīng)關(guān)系,從而實(shí)現(xiàn)為網(wǎng)絡(luò)中每個(gè)資源分配所述信任管理節(jié)點(diǎn);所述評(píng)價(jià)數(shù)據(jù)包 括下載資源的節(jié)點(diǎn)ID、下載來源節(jié)點(diǎn)ID、資源ID、評(píng)價(jià)結(jié)果。
3. 如權(quán)利要求1所述的方法,其特征在于采取如下安全措施保證所述全局信任值的計(jì)算 結(jié)果可靠性1 )采用加密措施保證評(píng)價(jià)數(shù)據(jù)在傳輸過程中不被泄漏或者篡改;2) 通過記錄節(jié)點(diǎn)的下載行為防止節(jié)點(diǎn)提交偽造的評(píng)價(jià)數(shù)據(jù);3) 采用IP檢測(cè)機(jī)制防止某些節(jié)點(diǎn)共謀行為。
4. 如權(quán)利要求3所述的方法,其特征在于所述加密措施如下下載資源的節(jié)點(diǎn)向該資源 的信任管理節(jié)點(diǎn)提交評(píng)價(jià)數(shù)據(jù)前,首先獲得該信任管理節(jié)點(diǎn)的公鑰并對(duì)該評(píng)價(jià)數(shù)據(jù)進(jìn) 行加密,然后再將其傳輸?shù)皆撔湃喂芾砉?jié)點(diǎn);信任管理節(jié)點(diǎn)在收到評(píng)價(jià)數(shù)據(jù)后,使用 自己的私鑰對(duì)該評(píng)價(jià)數(shù)據(jù)進(jìn)行解密,對(duì)于無法正確解密的提交數(shù)據(jù)視為無效數(shù)據(jù)予以 廢棄。
5. 如權(quán)利要求3所述的方法,其特征在于所述防止節(jié)點(diǎn)提交偽造評(píng)價(jià)數(shù)據(jù)的方法如下 節(jié)點(diǎn)i從節(jié)點(diǎn)j中成功下載資源k之后,節(jié)點(diǎn)j提交本次下載描述信息給資源k的信任 管理節(jié)點(diǎn)A4,所述下載描述信息包括下載節(jié)點(diǎn)ID、下載來源節(jié)點(diǎn)ID、下載資源ID; 當(dāng)節(jié)點(diǎn)i向信任管理節(jié)點(diǎn)A提交關(guān)于資源k的評(píng)價(jià)數(shù)據(jù)時(shí),信任管理節(jié)點(diǎn)^檢索下載 記錄列表,如果沒有節(jié)點(diǎn)i的下載記錄,則將節(jié)點(diǎn)i所提交的評(píng)價(jià)數(shù)據(jù)標(biāo)記為無效數(shù)據(jù), 不予考慮;如果存在節(jié)點(diǎn)i的下載記錄,則匯總節(jié)點(diǎn)i所提交的評(píng)價(jià)數(shù)據(jù),同時(shí)信任管 理節(jié)點(diǎn)A將該下載記錄刪除。
6. 如權(quán)利要求3所述的方法,其特征在于所述IP檢測(cè)機(jī)制的步驟為a)信任管理節(jié)點(diǎn)收集所有下載資源的節(jié)點(diǎn)的IP地址,將這些IP地址組成集合P;b)對(duì)集合P中的IP地址進(jìn)行聚類運(yùn)算,按照運(yùn)算結(jié)果將集合P中的節(jié)點(diǎn)IP分成多個(gè) 聚類;C)當(dāng)接收到新的節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)時(shí),對(duì)節(jié)點(diǎn)IP進(jìn)行聚類計(jì)算如果該節(jié)點(diǎn)IP相似度計(jì)算結(jié)果表示它屬于現(xiàn)有的聚類中的某一類,則將其加入到現(xiàn)有聚類中,并更新該聚類的節(jié)點(diǎn)數(shù)量,如果該聚類的節(jié)點(diǎn)數(shù)量超過規(guī)模閾值,則認(rèn)為存在團(tuán)體共謀;如果 該節(jié)點(diǎn)IP不屬于任何現(xiàn)有聚類,則為其單獨(dú)建立一個(gè)聚類,將該節(jié)點(diǎn)加入到該新聚 類中,并重復(fù)步驟C),繼續(xù)處理下一個(gè)節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)。
7. 如權(quán)利要求6所述的方法,其特征在于所述對(duì)集合P中的節(jié)點(diǎn)IP的聚類方法如下1) 將節(jié)點(diǎn)的IP地址以32位二進(jìn)制形式表示;2) 引入一個(gè)32位二進(jìn)制數(shù)字序列R,所述及4111…l5^S^B,其中,后面0的個(gè)數(shù) n取值為8到16, n越小,聚類的要求越嚴(yán)格;3) 將二進(jìn)制形式的節(jié)點(diǎn)IP與數(shù)字序列R進(jìn)行"與"運(yùn)算,將計(jì)算結(jié)果相同的節(jié)點(diǎn)劃 分為同一聚類。
8. 如權(quán)利要求6所述的方法,其特征在于所述信任管理節(jié)點(diǎn)匯總評(píng)價(jià)數(shù)據(jù)的方法為信 任管理節(jié)點(diǎn)清除被認(rèn)為具有團(tuán)體共謀的聚類中的節(jié)點(diǎn)評(píng)價(jià)數(shù)據(jù)后重新計(jì)算該資源的全 局信任值。
全文摘要
本發(fā)明公開了一種P2P網(wǎng)絡(luò)中面向資源的信任評(píng)價(jià)方法,屬于網(wǎng)絡(luò)安全技術(shù)領(lǐng)域。本方法為首先為網(wǎng)絡(luò)中每個(gè)資源分配一信任管理節(jié)點(diǎn);然后每個(gè)資源的信任管理節(jié)點(diǎn)匯總其它節(jié)點(diǎn)對(duì)該資源的評(píng)價(jià)數(shù)據(jù),并計(jì)算該資源的全局信任值以及響應(yīng)其他節(jié)點(diǎn)的信任查詢;節(jié)點(diǎn)下載資源之前向資源的信任管理節(jié)點(diǎn)查詢?cè)撡Y源的全局信任值,根據(jù)返回結(jié)果決定是否下載該資源;最后下載該資源的節(jié)點(diǎn)將對(duì)該資源的評(píng)價(jià)數(shù)據(jù)報(bào)告給該資源的信任管理節(jié)點(diǎn),以便更新該資源的全局信任值。同時(shí)本發(fā)明針對(duì)信任評(píng)價(jià)中常見的泄漏、篡改、偽造、共謀等問題提出了相應(yīng)的解決方案,使用戶可以直接掌握資源的可信度,從而有效解決了惡意資源的擴(kuò)散問題,大大提高了P2P網(wǎng)絡(luò)的安全性。
文檔編號(hào)H04L29/06GK101345753SQ20081011825
公開日2009年1月14日 申請(qǐng)日期2008年8月12日 優(yōu)先權(quán)日2008年8月12日
發(fā)明者馮登國, 蘇璞睿, 苗光勝 申請(qǐng)人:中國科學(xué)院軟件研究所