江浩偉,譚玉波
(河南工業(yè)大學(xué) 信息科學(xué)與工程學(xué)院,河南 鄭州450001)
CA在公鑰基礎(chǔ)設(shè)施PKI體系中占有核心地位,現(xiàn)實(shí)世界中,不同行業(yè)往往有各自不同的CA,每個(gè)CA只可能覆蓋一定的作用范圍,其頒發(fā)證書都只在行業(yè)范圍內(nèi)有效,終端用戶只信任本行業(yè)的CA。由于PKI體系結(jié)構(gòu)各不相同,有的是單CA信任模型,有的是其他信任模型,而這些不同的PKI體系在實(shí)際中需要相互聯(lián)系,因此解決PKI中的多級信任模型問題就顯得尤為重要[1]。而將PKI引入P2P網(wǎng)絡(luò)中后則使得中心CA被去除,每一個(gè)節(jié)點(diǎn)都既可以作為CA為其他節(jié)點(diǎn)頒發(fā)證書,又可作為客戶端請求其他節(jié)點(diǎn)為其頒發(fā)證書。因此在基于P2P的網(wǎng)絡(luò)環(huán)境下的PKI具有區(qū)別于一般PKI的特征。解決對節(jié)點(diǎn)CA的信任問題成為重中之重。在PKI中,網(wǎng)絡(luò)實(shí)體信任關(guān)系的處理實(shí)際上是對標(biāo)識實(shí)體身份的數(shù)字證書的驗(yàn)證過程。證書的驗(yàn)證一般包括3個(gè)方面:證書的數(shù)字簽名,證書是否被撤銷以及證書是否仍在有效期內(nèi)[2]。
有的技術(shù)借鑒了P2P的相關(guān)技術(shù),采用基于P2P的查詢技術(shù)P-Grid來解決證書分發(fā)的困難[3]。非集中式PKI體系通過實(shí)體間信任關(guān)系的傳遞形成信任網(wǎng)從而解決集中式PKI中CA單點(diǎn)失效的問題。由于信任網(wǎng)的整體強(qiáng)度取決于強(qiáng)度最弱的網(wǎng)絡(luò)實(shí)體,因此系統(tǒng)的安全性很難保證。文獻(xiàn)[3]通過多重?cái)?shù)字簽名中可度量的信任來提高系統(tǒng)的可靠性和安全性。而本文則在文獻(xiàn)[3]的基礎(chǔ)之上引入節(jié)點(diǎn)的行為特征,從而進(jìn)一步提高系統(tǒng)的可靠性。
P-Grid是一種基于虛擬分布式查詢樹的P2P查詢技術(shù),每個(gè)節(jié)點(diǎn)存儲(chǔ)整個(gè)查詢樹的部分信息,所有節(jié)點(diǎn)存儲(chǔ)的信息構(gòu)成了整個(gè)查詢樹。節(jié)點(diǎn)通過相互間隨機(jī)的訪問,連續(xù)不斷地分割搜索空間,這樣就能夠快速查詢到相關(guān)信息。每個(gè)節(jié)點(diǎn)均保存足夠的信息以便在以后轉(zhuǎn)發(fā)搜索請求時(shí)與其他節(jié)點(diǎn)通信,最終形成的分布式訪問結(jié)構(gòu)就是P-Grid。它在邏輯上表現(xiàn)為二進(jìn)制樹型結(jié)構(gòu),稱為二進(jìn)制搜索樹[4]。在基于P2P的PKI體系中可以利用P-Grid技術(shù)來完成實(shí)體證書的分發(fā)?;赑2P的PKI信任模型,主要有:
1)傳統(tǒng)CA引入的模型 這類模型的安全性主要依賴于成熟的PKI中的相關(guān)安全技術(shù)所提供。在這類模型中一般存在所謂的超級節(jié)點(diǎn),這些少數(shù)超級節(jié)點(diǎn)在P2P網(wǎng)絡(luò)中承擔(dān)了諸如監(jiān)督整個(gè)網(wǎng)絡(luò)的運(yùn)行狀況,定時(shí)向網(wǎng)絡(luò)發(fā)出通告通知存在信任風(fēng)險(xiǎn)的節(jié)點(diǎn)等遠(yuǎn)遠(yuǎn)大于一般節(jié)點(diǎn)所承擔(dān)的責(zé)任。但這類模型存在和傳統(tǒng)PKI相類似的中心依賴性問題。
2)基于P2P的非集中式PKI 此類模型一般通過實(shí)體之間關(guān)系的傳遞形成信任網(wǎng),從而解決集中式PKI中CA節(jié)點(diǎn)單點(diǎn)失效問題,但具有證書驗(yàn)證的復(fù)雜性和證書撤銷的局限性。尤其由于每個(gè)節(jié)點(diǎn)都可以對其他節(jié)點(diǎn)進(jìn)行頒發(fā)證書和向其他節(jié)點(diǎn)申請證書,而每個(gè)節(jié)點(diǎn)的能力信用方面又各不相同,從而導(dǎo)致在證書頒發(fā)過程中信任度的計(jì)算標(biāo)準(zhǔn)和準(zhǔn)確度難以達(dá)到令人滿意的程度。
本文提出了一種引入節(jié)點(diǎn)行為特征的信任模型,此模型有效解決了基于P2P的PKI體系中信任度計(jì)算的任意性,提高了信任度計(jì)算的準(zhǔn)確性,并且由于在多重?cái)?shù)字簽名過程中,每個(gè)節(jié)點(diǎn)的證書由多個(gè)來自于其他節(jié)點(diǎn)的簽名構(gòu)成從而提高了證書的可信程度,一定程度上避免了惡意節(jié)點(diǎn)對信任度數(shù)值的任意更改。
算法結(jié)合了多重?cái)?shù)字簽名算法和基于節(jié)點(diǎn)信息交換行為的信任度數(shù)值的計(jì)算,既具有數(shù)字簽名算法的安全性和不可否認(rèn)性,又具有信任度計(jì)算中的動(dòng)態(tài)適應(yīng)性和靈活性,能有效的解決P2P中的信任問題。
1)服務(wù)質(zhì)量 ①GOOD服務(wù)節(jié)點(diǎn)提供了高質(zhì)量服務(wù),交換非常順利;②NORMAL服務(wù)節(jié)點(diǎn)提供了正確服務(wù),但服務(wù)有些延遲或降低;③BAD服務(wù)節(jié)點(diǎn)提供錯(cuò)誤信息,甚至提供惡意的文件下載。
2)信息價(jià)值 IW(information worth)IW1,IW2 ,IW3…,比如[0、100]、(100,200]、(200,500]等。
多重?cái)?shù)字簽名是指某個(gè)實(shí)體為申請一個(gè)有效的證書,需要一定數(shù)目的有效實(shí)體同時(shí)對該實(shí)體的身份進(jìn)行核實(shí),并在證書的基本信息后附上自身的數(shù)字簽名作為簽署證書的憑證。當(dāng)實(shí)體的身份被多個(gè)有效實(shí)體核實(shí)后,就得到一個(gè)附有多個(gè)實(shí)體數(shù)字簽名的有效數(shù)字證書。多重?cái)?shù)字簽名能夠盡量保證實(shí)體身份的真實(shí)性,在一定程度上提高了系統(tǒng)的安全性,同時(shí)在某個(gè)實(shí)體的安全性無法得到保證時(shí),也不影響整個(gè)系統(tǒng)的使用,提高了整個(gè)系統(tǒng)的可用性[5]。
由于采用多重?cái)?shù)字簽名和可度量信任2種技術(shù),基于P2P的PKI體系對實(shí)體證書有特別的要求。如圖1所示,實(shí)體證書的內(nèi)容包括證書基本信息、頒發(fā)實(shí)體信息和實(shí)體自身簽名3部分。而其中對實(shí)體信任度的計(jì)算是基于節(jié)點(diǎn)行為特征的計(jì)算,既要考慮節(jié)點(diǎn)服務(wù)的質(zhì)量,又要考慮節(jié)點(diǎn)提供信息的價(jià)值。
1)加分規(guī)則 當(dāng)服務(wù)質(zhì)量為GOOD時(shí)進(jìn)行加分,第一次加 1 分,以后每次加 Mi其中 Mi=N(IWi)/N(ΣIWi)。例如:某服務(wù)節(jié)點(diǎn)依次提供信息價(jià)值為 :IW1,IW2,IW2,IW3,IW4,IW2,IW2。 則加分如下:1,1/2,2/3,1/4,1/5,1/2,1/2。 這樣,提供服務(wù)質(zhì)量相同的情況下提供信息價(jià)值越大的節(jié)點(diǎn)加分越多[6]。
圖1 多重?cái)?shù)字簽名Fig.1 Multiple digital signatures
2)減分規(guī)則 以往的信任模型對于惡意行為采用簡單的統(tǒng)一減分,這對于防止惡意節(jié)點(diǎn)的周期性惡意行為效果不太理想,因此本文采用有區(qū)別的減分原則。第i信用級的服務(wù)節(jié)點(diǎn)一次“差評”扣 Ui。Ui是扣分系數(shù),i 在具體的P2P網(wǎng)絡(luò)環(huán)境下,假設(shè)將節(jié)點(diǎn)間的交換信息的價(jià)值分段如圖2所示。 圖2 交換信息的價(jià)值Fig.2 Value of exchange information 根據(jù)信用值將信用等級分為10級,信用值初值為0。每個(gè)級別的扣分系數(shù)的設(shè)定依據(jù)遵循高信用值、高成功交換率的原則,對每個(gè)信用等級設(shè)定相應(yīng)的交換失敗率閾值。λi是本文預(yù)期的交換失敗率的最大值,在這個(gè)值的范圍內(nèi),該信息交換是安全可行的,或者說是可以接受的。設(shè)定λi值如表1所示,為了對超過預(yù)期的懲罰和保證超過閾值范圍的交換,將使服務(wù)節(jié)點(diǎn)的信用值降低一個(gè)級別。設(shè)信用值等級區(qū)間為[c,d],已經(jīng)在該區(qū)間內(nèi)的服務(wù)節(jié)點(diǎn)上升到更高一個(gè)信用級別,需要的交換數(shù)至少是d-c。在這個(gè)交換數(shù)中,服務(wù)節(jié)點(diǎn)若希望不被降級,失敗的交換次數(shù)n應(yīng)該小于 X(d-c)。假設(shè)服務(wù)節(jié)點(diǎn)當(dāng)前的信用值為y,那么要使得在λi條件下,超過n次的失敗交換將使服務(wù)節(jié)點(diǎn)的信用值降級,需要滿足的條件是 y-nki≤c,ki為當(dāng)前級別的扣分系數(shù)。于是,ki≥(y-c)/n,而n≤λi(d-c), 所 以 ki≥(y-c)/[λi(d-c)], 又 max((y-c)/[(d-c)])=1/λi,所以 ki≥1/λi,因此,表 1 顯示了交換失敗率與扣分系數(shù)的關(guān)系。 表1 交換失敗率與扣分系數(shù)的關(guān)系Tab.1 Relationship failure rate of exchange marking coefficient 經(jīng)過基于節(jié)點(diǎn)行為特征的加分和減分后節(jié)點(diǎn)的的信任度達(dá)到一個(gè)新的值,本模型中的行為特征既可以是接受服務(wù)節(jié)點(diǎn)的直接信任值,也可以是其他節(jié)點(diǎn)的推薦信任值,根據(jù)不同的信任策略,對直接信任值和推薦信任值賦予不同的權(quán)重,從而計(jì)算出最終的信任度。 證書中的信任度信息是整個(gè)PKI體系實(shí)現(xiàn)可度量信任的基礎(chǔ),它使得在證書驗(yàn)證時(shí)對信任度的計(jì)算成為可能。另外為方便系統(tǒng)實(shí)現(xiàn)和管理,需要定義3個(gè)信任常量: 1)簽發(fā)證書信任常量Q1證書簽署過程中的門信任量。在證書申請與簽署自身簽名過程中,如果對一個(gè)實(shí)體的信任度小于該值,則既不允許向該實(shí)體申請證書,也不允許為該實(shí)體簽署證書。 2)驗(yàn)證證書信任常量Q2證書可信性驗(yàn)證的門檻任量。在對證書可信性驗(yàn)證完成后,如果對該證書的信任度小于該值,則認(rèn)為該證書實(shí)體是不可信的。 3)信任度計(jì)算常量Q3信任度計(jì)算過程中的門檻信任量。在多路信任度的計(jì)算過程中,如果某路信任度小于該值,則認(rèn)為該信任度對總信任度基本沒有影響,可以忽略。 3個(gè)信任常量值的選取可以在一定程度上影響系統(tǒng)的安全可靠性以及系統(tǒng)實(shí)現(xiàn)的復(fù)雜性。3個(gè)信任常量問的關(guān)系為O≤Q3≤Q2≤Q1≤1。 實(shí)體的身份被系統(tǒng)中多個(gè)有效實(shí)體核實(shí)后,就獲得一個(gè)具有多重?cái)?shù)字簽名的數(shù)字證書。利用P-Grid技術(shù)將該證書存放在系統(tǒng)中,實(shí)體就完成了證書的申請,成為體系中一個(gè)有效的實(shí)體。 在基于P2P的PKI體系中,實(shí)體證書的撤銷并不由證書頒發(fā)實(shí)體完成,而由實(shí)體本身完成。并且,實(shí)體證書的撤銷信息也具有特殊的格式,如圖3所示,它主要包括證書撤銷基本信息和證書撤銷數(shù)字簽名2部分。在該體系中,實(shí)體由于某種原因需要撤銷證書時(shí),無需向頒發(fā)者提出申請,只需利用自身私鑰生成證書撤銷信息并發(fā)布到系統(tǒng)中即可,大大簡化了實(shí)體證書的撤銷過程。 圖3 證書的撤銷Fig.3 Certificate revocation 系統(tǒng)中每個(gè)實(shí)體都需要配置信任實(shí)體和對應(yīng)的信任度,以作為驗(yàn)證信任度的依據(jù)。實(shí)體本身是信任度為1的信任實(shí)體。在基于P2P的PKI體系中,實(shí)體證書的驗(yàn)證包括實(shí)體證書有效性的驗(yàn)證和實(shí)體證書可信性的驗(yàn)證2個(gè)方面。 1)實(shí)體證書有效性的驗(yàn)證 此過程包括驗(yàn)證證書內(nèi)容的完整性、證書的有效期以及證書是否被撤銷。由于證書和證書撤銷信息均采用了自簽名技術(shù),因此從證書中讀取公鑰信息即可驗(yàn)證內(nèi)容的完整性。如果證書撤銷信息存在且數(shù)字簽名正確,則說明證書撤銷。 2)實(shí)體證書可信性的驗(yàn)證 只有當(dāng)實(shí)體配置了信任實(shí)體且存在有效的信任實(shí)體時(shí),才能開始對其他實(shí)體證書可信性的驗(yàn)證。信任實(shí)體的有效性驗(yàn)證與上述普通實(shí)體有效性的驗(yàn)證方法相同。實(shí)體證書可信性驗(yàn)證是通過計(jì)算實(shí)體證書的信任度完成的。 基于P2P的PKI信任模型,引入在P2P網(wǎng)絡(luò)中基于節(jié)點(diǎn)行為特征的信任度的計(jì)算方法,使得在對節(jié)點(diǎn)進(jìn)行數(shù)字簽名的證書中對于節(jié)點(diǎn)的信任度的計(jì)算更加科學(xué)合理,尤其是在對每個(gè)節(jié)點(diǎn)的行為進(jìn)行細(xì)分之后,使得在不同分段上的行為的節(jié)點(diǎn)的扣分系數(shù)不同,從而使得對其最終的信譽(yù)度產(chǎn)生關(guān)鍵性的影響,一定程度防止了惡意節(jié)點(diǎn)通過提供低價(jià)值信息獲取較高信譽(yù)后,對于P2P網(wǎng)絡(luò)的周期性攻擊。但是本文在信任度的計(jì)算中未考慮基于全局的信任計(jì)算還是基于局部的信任計(jì)算對節(jié)點(diǎn)信譽(yù)度結(jié)果影響的不同,這可以作為以后進(jìn)一步的研究。 [1]史偉奇.基于PKI信任模型的研究[J].電腦開發(fā)與應(yīng)用,2005,18(3):36-38.SHI Wei-qi.Research on turst model based on PKI[J].Computer development and application,2005,18(3):36-38. [2]李勝勇,陳文元,張衛(wèi)平.PKI技術(shù)及其存在問題的分析[J].微計(jì)算機(jī)信息,2005,21(1):171-172.LI Sheng-yong,CHEN Wen-yuan,ZHANG Wei-ping.The PKI technology and analysis of the existing problems[J].Micro Computer Information, 2005,21(1):171-172. [3]Aberer K,Datta A,Hauswirth M.A decentralised public key infrastructure for customer-to-customer e-commerce[J].International Journal of Business Process Integration and Management,2005, 1(1):26-33. [4]楊靜,夏素貞,顧君忠.基于P-Gr i d的數(shù)字媒體信息共享研究[J].計(jì)算機(jī)應(yīng)用,2004,24 (5):10-13.YANG Jing,XIA Shu-zhen,GU Jun-zhong.Information sharing of digital media based on P-Grid[J].Computer Applications,2004,24 (5):10-13. [5]李之棠,陳福生.一種基于P2P的PKI體系[J].計(jì)算機(jī)工程與科學(xué),2006,28(9):1-3,32.LI Zhi-tang,CHEN Fu-sheng.A P2P-based PKI system[J].Computer Engineering and Science,2006,28(9):1-3,32. [6]文朱穆,盧正鼎,唐卓,等.P2P網(wǎng)絡(luò)環(huán)境中節(jié)點(diǎn)信息交換的信任機(jī)制研究[J].計(jì)算機(jī)工程與科學(xué),2009,31(7):5-9,24.WE Zhu-mu,LU Zheng-ding,TANG Zuo,et al.Research of the trust mechanism for information exchange between P2P nodes[J].Computer Engineering and Science, 2009,31(7):5-9,24.1.3 實(shí)體證書的撤銷
1.4 實(shí)體證書的驗(yàn)證
2 結(jié)束語