江浩偉,譚玉波
(河南工業(yè)大學 信息科學與工程學院,河南 鄭州450001)
CA在公鑰基礎設施PKI體系中占有核心地位,現(xiàn)實世界中,不同行業(yè)往往有各自不同的CA,每個CA只可能覆蓋一定的作用范圍,其頒發(fā)證書都只在行業(yè)范圍內(nèi)有效,終端用戶只信任本行業(yè)的CA。由于PKI體系結構各不相同,有的是單CA信任模型,有的是其他信任模型,而這些不同的PKI體系在實際中需要相互聯(lián)系,因此解決PKI中的多級信任模型問題就顯得尤為重要[1]。而將PKI引入P2P網(wǎng)絡中后則使得中心CA被去除,每一個節(jié)點都既可以作為CA為其他節(jié)點頒發(fā)證書,又可作為客戶端請求其他節(jié)點為其頒發(fā)證書。因此在基于P2P的網(wǎng)絡環(huán)境下的PKI具有區(qū)別于一般PKI的特征。解決對節(jié)點CA的信任問題成為重中之重。在PKI中,網(wǎng)絡實體信任關系的處理實際上是對標識實體身份的數(shù)字證書的驗證過程。證書的驗證一般包括3個方面:證書的數(shù)字簽名,證書是否被撤銷以及證書是否仍在有效期內(nèi)[2]。
有的技術借鑒了P2P的相關技術,采用基于P2P的查詢技術P-Grid來解決證書分發(fā)的困難[3]。非集中式PKI體系通過實體間信任關系的傳遞形成信任網(wǎng)從而解決集中式PKI中CA單點失效的問題。由于信任網(wǎng)的整體強度取決于強度最弱的網(wǎng)絡實體,因此系統(tǒng)的安全性很難保證。文獻[3]通過多重數(shù)字簽名中可度量的信任來提高系統(tǒng)的可靠性和安全性。而本文則在文獻[3]的基礎之上引入節(jié)點的行為特征,從而進一步提高系統(tǒng)的可靠性。
P-Grid是一種基于虛擬分布式查詢樹的P2P查詢技術,每個節(jié)點存儲整個查詢樹的部分信息,所有節(jié)點存儲的信息構成了整個查詢樹。節(jié)點通過相互間隨機的訪問,連續(xù)不斷地分割搜索空間,這樣就能夠快速查詢到相關信息。每個節(jié)點均保存足夠的信息以便在以后轉發(fā)搜索請求時與其他節(jié)點通信,最終形成的分布式訪問結構就是P-Grid。它在邏輯上表現(xiàn)為二進制樹型結構,稱為二進制搜索樹[4]。在基于P2P的PKI體系中可以利用P-Grid技術來完成實體證書的分發(fā)?;赑2P的PKI信任模型,主要有:
1)傳統(tǒng)CA引入的模型 這類模型的安全性主要依賴于成熟的PKI中的相關安全技術所提供。在這類模型中一般存在所謂的超級節(jié)點,這些少數(shù)超級節(jié)點在P2P網(wǎng)絡中承擔了諸如監(jiān)督整個網(wǎng)絡的運行狀況,定時向網(wǎng)絡發(fā)出通告通知存在信任風險的節(jié)點等遠遠大于一般節(jié)點所承擔的責任。但這類模型存在和傳統(tǒng)PKI相類似的中心依賴性問題。
2)基于P2P的非集中式PKI 此類模型一般通過實體之間關系的傳遞形成信任網(wǎng),從而解決集中式PKI中CA節(jié)點單點失效問題,但具有證書驗證的復雜性和證書撤銷的局限性。尤其由于每個節(jié)點都可以對其他節(jié)點進行頒發(fā)證書和向其他節(jié)點申請證書,而每個節(jié)點的能力信用方面又各不相同,從而導致在證書頒發(fā)過程中信任度的計算標準和準確度難以達到令人滿意的程度。
本文提出了一種引入節(jié)點行為特征的信任模型,此模型有效解決了基于P2P的PKI體系中信任度計算的任意性,提高了信任度計算的準確性,并且由于在多重數(shù)字簽名過程中,每個節(jié)點的證書由多個來自于其他節(jié)點的簽名構成從而提高了證書的可信程度,一定程度上避免了惡意節(jié)點對信任度數(shù)值的任意更改。
算法結合了多重數(shù)字簽名算法和基于節(jié)點信息交換行為的信任度數(shù)值的計算,既具有數(shù)字簽名算法的安全性和不可否認性,又具有信任度計算中的動態(tài)適應性和靈活性,能有效的解決P2P中的信任問題。
1)服務質量 ①GOOD服務節(jié)點提供了高質量服務,交換非常順利;②NORMAL服務節(jié)點提供了正確服務,但服務有些延遲或降低;③BAD服務節(jié)點提供錯誤信息,甚至提供惡意的文件下載。
2)信息價值 IW(information worth)IW1,IW2 ,IW3…,比如[0、100]、(100,200]、(200,500]等。
多重數(shù)字簽名是指某個實體為申請一個有效的證書,需要一定數(shù)目的有效實體同時對該實體的身份進行核實,并在證書的基本信息后附上自身的數(shù)字簽名作為簽署證書的憑證。當實體的身份被多個有效實體核實后,就得到一個附有多個實體數(shù)字簽名的有效數(shù)字證書。多重數(shù)字簽名能夠盡量保證實體身份的真實性,在一定程度上提高了系統(tǒng)的安全性,同時在某個實體的安全性無法得到保證時,也不影響整個系統(tǒng)的使用,提高了整個系統(tǒng)的可用性[5]。
由于采用多重數(shù)字簽名和可度量信任2種技術,基于P2P的PKI體系對實體證書有特別的要求。如圖1所示,實體證書的內(nèi)容包括證書基本信息、頒發(fā)實體信息和實體自身簽名3部分。而其中對實體信任度的計算是基于節(jié)點行為特征的計算,既要考慮節(jié)點服務的質量,又要考慮節(jié)點提供信息的價值。
1)加分規(guī)則 當服務質量為GOOD時進行加分,第一次加 1 分,以后每次加 Mi其中 Mi=N(IWi)/N(ΣIWi)。例如:某服務節(jié)點依次提供信息價值為 :IW1,IW2,IW2,IW3,IW4,IW2,IW2。 則加分如下:1,1/2,2/3,1/4,1/5,1/2,1/2。 這樣,提供服務質量相同的情況下提供信息價值越大的節(jié)點加分越多[6]。
圖1 多重數(shù)字簽名Fig.1 Multiple digital signatures
2)減分規(guī)則 以往的信任模型對于惡意行為采用簡單的統(tǒng)一減分,這對于防止惡意節(jié)點的周期性惡意行為效果不太理想,因此本文采用有區(qū)別的減分原則。第i信用級的服務節(jié)點一次“差評”扣 Ui。Ui是扣分系數(shù),i 在具體的P2P網(wǎng)絡環(huán)境下,假設將節(jié)點間的交換信息的價值分段如圖2所示。 圖2 交換信息的價值Fig.2 Value of exchange information 根據(jù)信用值將信用等級分為10級,信用值初值為0。每個級別的扣分系數(shù)的設定依據(jù)遵循高信用值、高成功交換率的原則,對每個信用等級設定相應的交換失敗率閾值。λi是本文預期的交換失敗率的最大值,在這個值的范圍內(nèi),該信息交換是安全可行的,或者說是可以接受的。設定λi值如表1所示,為了對超過預期的懲罰和保證超過閾值范圍的交換,將使服務節(jié)點的信用值降低一個級別。設信用值等級區(qū)間為[c,d],已經(jīng)在該區(qū)間內(nèi)的服務節(jié)點上升到更高一個信用級別,需要的交換數(shù)至少是d-c。在這個交換數(shù)中,服務節(jié)點若希望不被降級,失敗的交換次數(shù)n應該小于 X(d-c)。假設服務節(jié)點當前的信用值為y,那么要使得在λi條件下,超過n次的失敗交換將使服務節(jié)點的信用值降級,需要滿足的條件是 y-nki≤c,ki為當前級別的扣分系數(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ù)的關系。 表1 交換失敗率與扣分系數(shù)的關系Tab.1 Relationship failure rate of exchange marking coefficient 經(jīng)過基于節(jié)點行為特征的加分和減分后節(jié)點的的信任度達到一個新的值,本模型中的行為特征既可以是接受服務節(jié)點的直接信任值,也可以是其他節(jié)點的推薦信任值,根據(jù)不同的信任策略,對直接信任值和推薦信任值賦予不同的權重,從而計算出最終的信任度。 證書中的信任度信息是整個PKI體系實現(xiàn)可度量信任的基礎,它使得在證書驗證時對信任度的計算成為可能。另外為方便系統(tǒng)實現(xiàn)和管理,需要定義3個信任常量: 1)簽發(fā)證書信任常量Q1證書簽署過程中的門信任量。在證書申請與簽署自身簽名過程中,如果對一個實體的信任度小于該值,則既不允許向該實體申請證書,也不允許為該實體簽署證書。 2)驗證證書信任常量Q2證書可信性驗證的門檻任量。在對證書可信性驗證完成后,如果對該證書的信任度小于該值,則認為該證書實體是不可信的。 3)信任度計算常量Q3信任度計算過程中的門檻信任量。在多路信任度的計算過程中,如果某路信任度小于該值,則認為該信任度對總信任度基本沒有影響,可以忽略。 3個信任常量值的選取可以在一定程度上影響系統(tǒng)的安全可靠性以及系統(tǒng)實現(xiàn)的復雜性。3個信任常量問的關系為O≤Q3≤Q2≤Q1≤1。 實體的身份被系統(tǒng)中多個有效實體核實后,就獲得一個具有多重數(shù)字簽名的數(shù)字證書。利用P-Grid技術將該證書存放在系統(tǒng)中,實體就完成了證書的申請,成為體系中一個有效的實體。 在基于P2P的PKI體系中,實體證書的撤銷并不由證書頒發(fā)實體完成,而由實體本身完成。并且,實體證書的撤銷信息也具有特殊的格式,如圖3所示,它主要包括證書撤銷基本信息和證書撤銷數(shù)字簽名2部分。在該體系中,實體由于某種原因需要撤銷證書時,無需向頒發(fā)者提出申請,只需利用自身私鑰生成證書撤銷信息并發(fā)布到系統(tǒng)中即可,大大簡化了實體證書的撤銷過程。 圖3 證書的撤銷Fig.3 Certificate revocation 系統(tǒng)中每個實體都需要配置信任實體和對應的信任度,以作為驗證信任度的依據(jù)。實體本身是信任度為1的信任實體。在基于P2P的PKI體系中,實體證書的驗證包括實體證書有效性的驗證和實體證書可信性的驗證2個方面。 1)實體證書有效性的驗證 此過程包括驗證證書內(nèi)容的完整性、證書的有效期以及證書是否被撤銷。由于證書和證書撤銷信息均采用了自簽名技術,因此從證書中讀取公鑰信息即可驗證內(nèi)容的完整性。如果證書撤銷信息存在且數(shù)字簽名正確,則說明證書撤銷。 2)實體證書可信性的驗證 只有當實體配置了信任實體且存在有效的信任實體時,才能開始對其他實體證書可信性的驗證。信任實體的有效性驗證與上述普通實體有效性的驗證方法相同。實體證書可信性驗證是通過計算實體證書的信任度完成的。 基于P2P的PKI信任模型,引入在P2P網(wǎng)絡中基于節(jié)點行為特征的信任度的計算方法,使得在對節(jié)點進行數(shù)字簽名的證書中對于節(jié)點的信任度的計算更加科學合理,尤其是在對每個節(jié)點的行為進行細分之后,使得在不同分段上的行為的節(jié)點的扣分系數(shù)不同,從而使得對其最終的信譽度產(chǎn)生關鍵性的影響,一定程度防止了惡意節(jié)點通過提供低價值信息獲取較高信譽后,對于P2P網(wǎng)絡的周期性攻擊。但是本文在信任度的計算中未考慮基于全局的信任計算還是基于局部的信任計算對節(jié)點信譽度結果影響的不同,這可以作為以后進一步的研究。 [1]史偉奇.基于PKI信任模型的研究[J].電腦開發(fā)與應用,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技術及其存在問題的分析[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].計算機應用,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].計算機工程與科學,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)絡環(huán)境中節(jié)點信息交換的信任機制研究[J].計算機工程與科學,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 實體證書的撤銷
1.4 實體證書的驗證
2 結束語