專利名稱:一種基于p2p的證書管理方法及其裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于P2P的證書管理方法及其裝置。
背景技術(shù):
利用信息安全技術(shù)來保障在開放的網(wǎng)絡(luò)環(huán)境中傳輸敏感信息的問題是信息化建設(shè)中的重要基礎(chǔ)問題。在這ー領(lǐng)域中,目前的主流技術(shù)是公鑰基礎(chǔ)設(shè)施(Public KeyInfrastructure, PKI)。PKI是利用公鑰密碼技術(shù)在開放的網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)加密以及數(shù)字簽名服務(wù)的統(tǒng)ー密鑰管理平臺(tái),其基本機(jī)制是定義、建立身份認(rèn)證以及授權(quán)證書,然后分發(fā)、交換證書,并在網(wǎng)絡(luò)之間解釋、管理這些證書。利用PKI技術(shù)可以使用戶通過證書信任鏈進(jìn)行安全交流,從而建立起相對(duì)安全、值得信賴的網(wǎng)絡(luò)環(huán)境。出于安全的角度考慮,PKI中由證書管理機(jī)構(gòu)即認(rèn)證中心(CertificateAuthority, CA)頒發(fā)的姆ー份證書都有其生存期,過期的證書必須作廢。此外,在某些情況下,如用戶名的更換、私鑰泄露、機(jī)構(gòu)重組等,盡管用戶證書還沒有過期,但也必須撤銷。證 書撤銷列表(Certificate Revocation List7CRL)是數(shù)字證書應(yīng)用中關(guān)于證書撤銷管理的
ー種方式。CRL是指已經(jīng)被撤銷或掛起的證書的列表,存儲(chǔ)于網(wǎng)絡(luò)上的任何節(jié)點(diǎn)。CRL中還包含一個(gè)頒發(fā)日期以及下ー個(gè)CRL的頒發(fā)日期。根據(jù)這兩個(gè)日期,用戶可及時(shí)地對(duì)當(dāng)前擁有的CRL進(jìn)行更新,并根據(jù)CRL中是否包含待驗(yàn)證的證書來判斷給定證書的有效性。按照數(shù)字證書格式的X. 509標(biāo)準(zhǔn),CRL的URL地址作為數(shù)字證書的ー項(xiàng)條目包含在證書中,用戶可據(jù)此查找CRL,驗(yàn)證對(duì)應(yīng)證書是否已經(jīng)被撤銷。在網(wǎng)絡(luò)的規(guī)模不大、證書的撤銷率不是很高的情況下,采用CRL是ー種簡單有效的方法。但是,網(wǎng)絡(luò)規(guī)模增長會(huì)導(dǎo)致CRL迅速增長,這將導(dǎo)致以下問題問題一由于大量用戶同時(shí)請(qǐng)求CRL的更新,CRL發(fā)布節(jié)點(diǎn)的峰值負(fù)載較大并可能成為系統(tǒng)性能的瓶頸;問題ニ 多個(gè)證書共享ー個(gè)CRL給證書管理與證書驗(yàn)證帶來了額外的負(fù)擔(dān)。首先,由于頒發(fā)證書時(shí)無法實(shí)現(xiàn)估計(jì)證書何時(shí)將被撤銷,實(shí)際撤銷的證書將會(huì)隨意分散在各個(gè)CRL中,會(huì)出現(xiàn)雖然ー個(gè)CRL中大部分證書已經(jīng)被撤銷,仍然要為其中沒有被撤銷的幾個(gè)證書不斷維護(hù)和更新這個(gè)CRL的情況,給證書管理帶來負(fù)擔(dān);其次,某個(gè)證書的CRL會(huì)包含其他證書的撤銷信息,給證書狀態(tài)查詢帶來額外負(fù)擔(dān),如果需要同時(shí)查詢的多個(gè)證書CRL不同,則需要分別下載各自的CRL ;最后,因?yàn)镃RL的維護(hù)開銷,其簽發(fā)與更新需要一定的間隔時(shí)間,導(dǎo)致證書的撤銷狀態(tài)發(fā)布有相應(yīng)延遲,増加了非授權(quán)訪問的安全風(fēng)險(xiǎn)?,F(xiàn)有技術(shù)還提供了基于P2P的證書管理機(jī)制。P2P的核心思想是通過參與系統(tǒng)節(jié)點(diǎn)(peer)之間的直接交互來實(shí)現(xiàn)系統(tǒng)資源和信息的共享。P2P系統(tǒng)強(qiáng)調(diào)節(jié)點(diǎn)之間的對(duì)等性,信息資源分散存儲(chǔ)在各個(gè)參與節(jié)點(diǎn),每個(gè)參與節(jié)點(diǎn)兼有服務(wù)器和客戶端兩種身份,都可以請(qǐng)求服務(wù)和提供服務(wù),內(nèi)容傳輸直接在節(jié)點(diǎn)間進(jìn)行,避免了 C/S(即,Client/Server,客戶端/服務(wù)器)架構(gòu)中容易出現(xiàn)的網(wǎng)絡(luò)和服務(wù)器瓶頸問題。因此,相比C/S架構(gòu)而言,P2P系統(tǒng)能夠充分利用網(wǎng)絡(luò)終端的空閑資源,大大降低了系統(tǒng)的建設(shè)和運(yùn)營成本,同時(shí),節(jié)點(diǎn)越多服務(wù)資源也越多,系統(tǒng)因此具有良好的可擴(kuò)展性和高度的自適應(yīng)性,能夠滿足各種突發(fā)環(huán)境下的業(yè)務(wù)需求?;ヂ?lián)網(wǎng)協(xié)議國際標(biāo)準(zhǔn)化組織正在制定P2P資源定位與發(fā)現(xiàn)基礎(chǔ)協(xié)議(ResourceLocation and Discovery Base Protocol,簡稱RELOAD),希望為制定提供統(tǒng)一的疊加網(wǎng)peer和client協(xié)議,為各類P2P應(yīng)用實(shí)現(xiàn)抽象的存儲(chǔ)和路由服務(wù)。為解決節(jié)點(diǎn)間相互協(xié)作缺乏前提信任的問題,RELOAD提出了基于集中認(rèn)證框架的安全解決方案,在peer/client接入網(wǎng)絡(luò)之初,在集中部署的認(rèn)證服務(wù)器(Enrollment Server, ES)在線申請(qǐng)證書,并在后續(xù)業(yè)務(wù)交互過程中必要時(shí)出示有效證書以獲取對(duì)應(yīng)的操作授權(quán)。為避免ES集中存放節(jié)點(diǎn)證書造成的性能與安全瓶頸,RELOAD提出可以利用P2P系統(tǒng)本身來實(shí)現(xiàn)節(jié)點(diǎn)證書的分布式存放事先約定好系統(tǒng)使用的關(guān)鍵字選擇與映射算法,每個(gè)節(jié)點(diǎn)維護(hù)映射到自己id所在空間范圍之內(nèi)的節(jié)點(diǎn)證書。當(dāng)某個(gè)節(jié)點(diǎn)需要下載自己或其他節(jié)點(diǎn)的證書時(shí),只需提交相關(guān)請(qǐng)求到系統(tǒng)中的任意peer節(jié)點(diǎn),RELOAD將自動(dòng)路由請(qǐng)求消息到對(duì)應(yīng)的維護(hù)peer節(jié)點(diǎn)。
然而,RELOAD中缺乏對(duì)應(yīng)的證書撤銷機(jī)制。為處理持有有效證書的已識(shí)別惡意節(jié)點(diǎn),RELOAD在節(jié)點(diǎn)配置文件中添加了一個(gè)簡單的黑名單字段,列出近期被撤銷授權(quán)的節(jié)點(diǎn)id,并利用配置更新消息在節(jié)點(diǎn)之間進(jìn)行授權(quán)撤銷信息的發(fā)布。這種簡單方案里然避免了維護(hù)CRL列表的繁瑣處理與查詢開銷,但卻存在不小的安全風(fēng)險(xiǎn),因?yàn)榕渲酶虏⒎羌磿r(shí)生效,而是經(jīng)由節(jié)點(diǎn)之間交互核對(duì)配置文件版本號(hào)來依次傳播,從首次發(fā)布到最終實(shí)現(xiàn)全系統(tǒng)范圍內(nèi)的配置更新存在不小的延遲。對(duì)于配置仍未更新的授權(quán)檢查節(jié)點(diǎn)而言,惡意節(jié)點(diǎn)只需提供自己仍然有效的證書就可騙得操作授權(quán)。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種基于P2P的證書管理方法及其裝置,用以降低現(xiàn)有技術(shù)因使用配置信息消息方式發(fā)布證書撤銷信息所帯來的安全風(fēng)險(xiǎn)。本發(fā)明實(shí)施例提供的基于P2P的證書管理方法,包括負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收P2P系統(tǒng)中管理節(jié)點(diǎn)的證書撤銷信息,并根據(jù)接收到的證書撤銷信息,刪除其所存儲(chǔ)的相應(yīng)證書,將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ);當(dāng)所述負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收到證書狀態(tài)查詢請(qǐng)求后,根據(jù)其所存儲(chǔ)的證書狀態(tài)信息,返回證書狀態(tài)查詢響應(yīng)。本發(fā)明實(shí)施例提供的P2P網(wǎng)絡(luò)通信設(shè)備,包括證書維護(hù)模塊,用于在接收到P2P系統(tǒng)中的管理節(jié)點(diǎn)發(fā)布的證書撤銷信息后,根據(jù)接收到的證書撤銷信息,刪除其所存儲(chǔ)的相應(yīng)證書,將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ);查詢響應(yīng)模塊,用于當(dāng)接收到證書狀態(tài)查詢請(qǐng)求后,根據(jù)其所存儲(chǔ)的證書狀態(tài)信息,返回證書狀態(tài)查詢響應(yīng)。本發(fā)明實(shí)施例提供的另ー種P2P網(wǎng)絡(luò)通信設(shè)備,包括緩存模塊,用于在接收到證書狀態(tài)查詢響應(yīng)后緩存該證書狀態(tài)查詢響應(yīng)中攜帶的證書狀態(tài)查詢結(jié)果;其中,所述證書狀態(tài)查詢結(jié)果是負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收到證書狀態(tài)查詢請(qǐng)求后返回的,其中,所述負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)根據(jù)P2P系統(tǒng)中的管理節(jié)點(diǎn)所發(fā)布的證書撤銷信息進(jìn)行證書狀態(tài)維護(hù);查詢響應(yīng)模塊,用于在接收到證書狀態(tài)查詢請(qǐng)求后,判斷自己是否緩存有相應(yīng)證書的狀態(tài)查詢結(jié)果,并在判斷為是時(shí),返回緩存的所述證書狀態(tài)查詢結(jié)果。通過上述本發(fā)明實(shí)施例的描述可以看出,一方面,本發(fā)明實(shí)施例由P2P系統(tǒng)的管理節(jié)點(diǎn)在需要對(duì)節(jié)點(diǎn)的授權(quán)證書撤銷吋,發(fā)送證書撤銷信息給負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn),與現(xiàn)有技術(shù)中采用配置信息消息方式發(fā)布證書撤銷狀態(tài)信息相比,可以使負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)及時(shí)進(jìn)行證書狀態(tài)維護(hù),進(jìn)而可以提高安全性;另ー方面,本發(fā)明實(shí)施例利用P2P系統(tǒng)分布式地存儲(chǔ)節(jié)點(diǎn)證書撤銷信息和處理相關(guān)的信息查詢請(qǐng)求,與現(xiàn)有技術(shù)相比,無需在CA服務(wù)器集中維護(hù)CRL列表,消除了 CRL信息發(fā)布與查詢訪問的單點(diǎn)性能與安全瓶頸。
圖I為本發(fā)明實(shí)施例提供證書簽發(fā)流程示意圖;圖2為本發(fā)明實(shí)施例提供的證書撤銷流程示意圖;圖3為圖2所示流程中節(jié)點(diǎn)RP的處理流程示意圖;圖4為本發(fā)明實(shí)施例提供的證書狀態(tài)的基本查詢流程示意圖;圖5為本發(fā)明實(shí)施例提供的結(jié)合中間節(jié)點(diǎn)緩存的查詢流程示意圖;圖6為本發(fā)明實(shí)施例提供的證書管理信令流程示意圖;圖7為本發(fā)明實(shí)施例提供的P2P網(wǎng)絡(luò)通信設(shè)備的結(jié)構(gòu)示意圖之ー;圖8為本發(fā)明實(shí)施例提供的P2P網(wǎng)絡(luò)通信設(shè)備的結(jié)構(gòu)示意圖之ニ。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例進(jìn)行詳細(xì)描述。 本發(fā)明實(shí)施例所應(yīng)用的P2P系統(tǒng)中,包括Admin(系統(tǒng)管理實(shí)體)、CA(CertificateAuthority,認(rèn)證中心)和Peer (節(jié)點(diǎn))三類實(shí)體。其中,Admin負(fù)責(zé)管理系統(tǒng)內(nèi)各Peer的用戶信息,獲知Peer的證書是否需要撤銷'Ck負(fù)責(zé)發(fā)布證書。本發(fā)明實(shí)施例主要涉及證書簽發(fā)、證書撤銷和證書狀態(tài)查詢?nèi)齻€(gè)流程。P2P網(wǎng)絡(luò)中的節(jié)點(diǎn)在不同流程中可能承擔(dān)不同的角色,為了描述方便,本發(fā)明實(shí)施例中定義以下幾種節(jié)點(diǎn)被認(rèn)證節(jié)點(diǎn),包括證書簽發(fā)場景下的JP(Joining Peer,加入節(jié)點(diǎn)),以及證書撤銷場景下的UP (Unauthorized Peer,授權(quán)撤銷節(jié)點(diǎn));NP (Neighboring Peer,鄰居節(jié)點(diǎn));請(qǐng)求消息或響應(yīng)消息路由過程途徑的CP (Current Peer,當(dāng)前處理節(jié)點(diǎn));維護(hù)對(duì)應(yīng)證書相關(guān)信息的RP (Responsible Peer,負(fù)責(zé)節(jié)點(diǎn))。下面結(jié)合上述P2P網(wǎng)絡(luò)架構(gòu),對(duì)本發(fā)明實(shí)施例進(jìn)行詳細(xì)描述。參見圖I,本發(fā)明實(shí)施例提供證書簽發(fā)流程(Initial issue for originalcertificate)示意圖,對(duì)應(yīng)的信令流程可參見圖6中的證書簽發(fā)流程,包括以下步驟步驟101,JP加入網(wǎng)絡(luò),向CA發(fā)送證書申請(qǐng)。
具體實(shí)現(xiàn)時(shí),首先,JP加入網(wǎng)絡(luò)后的初始化過程中,獲取CA的訪問方式渠道(對(duì)于在線申請(qǐng)形式,可能是CA服務(wù)器的URL (Uniform Resource Locator,統(tǒng)ー資源定位符);對(duì)于離線申請(qǐng)形式,可能是CA營業(yè)廳的街道地址)。 其次,JP在本地產(chǎn)生ー個(gè)非對(duì)稱密鑰對(duì)(PKjP,SKjp),其中,SKjp作為私鑰被JP保存在本地的可信存儲(chǔ)空間,PKjp作為公鑰被用于生成后續(xù)的證書請(qǐng)求。最后,JP針對(duì)PKjp向CA發(fā)起證書申請(qǐng)請(qǐng)求Cert_Req,并用SKjp對(duì)請(qǐng)求消息進(jìn)行簽名,用于向CA證明其對(duì)PKjp的所有權(quán)。進(jìn)ー步的,除公鑰PKjp和請(qǐng)求簽名之外,Cert_Req之中還可包含JP在網(wǎng)絡(luò)中的標(biāo)識(shí),其具體形式和數(shù)量與應(yīng)用系統(tǒng)相關(guān),例如可以包含ー個(gè)可讀的用戶名字User_name和/或若干個(gè)節(jié)點(diǎn)標(biāo)識(shí)Node_id。步驟102,CA根據(jù)系統(tǒng)證書存儲(chǔ)策略將證書發(fā)送至該JP和/或該證書的RP保存。進(jìn)ー步的,JP在收到證書后,可向維護(hù)該證書的RP發(fā)布該證書。 具體實(shí)現(xiàn)時(shí),首先,CA驗(yàn)證申請(qǐng)請(qǐng)求Cert_Req提交者身份與其中所包含內(nèi)容的對(duì)應(yīng)性,結(jié)合應(yīng)用系統(tǒng)的標(biāo)識(shí)授權(quán)規(guī)則對(duì)請(qǐng)求具體內(nèi)容進(jìn)行合法性檢查。例如,標(biāo)識(shí)授權(quán)規(guī)則要求確保系統(tǒng)中用戶名與節(jié)點(diǎn)標(biāo)識(shí)Nodejd的全局唯一性吋,CA檢查所請(qǐng)求用戶名與節(jié)點(diǎn)標(biāo)識(shí)是否已在系統(tǒng)中注冊并授權(quán)使用過。然后,CA依據(jù)系統(tǒng)指定的證書信息生成規(guī)范來填充節(jié)點(diǎn)證書具體內(nèi)容。例如,是否采用Cert_Req中提供的內(nèi)容,直接拒絕不合法或有沖突的請(qǐng)求,還是根據(jù)規(guī)范本地生成具體內(nèi)容(例如隨機(jī)生成用戶名和/或節(jié)點(diǎn)標(biāo)識(shí))??蛇x地,CA還可在證書中包含時(shí)間參數(shù)該證書的簽發(fā)時(shí)間和/或到期時(shí)間,用于指定該證書的有效時(shí)間區(qū)間。最后,CA使用自身私鑰對(duì)生成的證書內(nèi)容進(jìn)行簽名,并根據(jù)系統(tǒng)證書存儲(chǔ)策略將簽名后的證書發(fā)送給該JP和用于維護(hù)該證書的RP,該RP是第三方節(jié)點(diǎn)。該步驟中,CA將證書發(fā)送給JP后,也可以由JP轉(zhuǎn)而提交給RP,這樣CA不參與證書向RP的發(fā)布,因此也無需了解P2P系統(tǒng)映射規(guī)則細(xì)節(jié)。實(shí)際部署中,CA服務(wù)器與Peer可能是不同廠商提供的設(shè)備,邏輯上的獨(dú)立劃分可以實(shí)現(xiàn)更高的靈活性。當(dāng)節(jié)點(diǎn)證書到期或快到期時(shí),用戶維護(hù)該證書的RP和/或擁有該證書的節(jié)點(diǎn),會(huì)發(fā)起到期證書重簽發(fā)流程(Renewal for expired certificate)。到期證書重簽發(fā)流程與原始證書簽發(fā)流程類似,取決于系統(tǒng)策略,例如,證書重簽發(fā)請(qǐng)求節(jié)點(diǎn)可向CA提供已到期證書作為參考。對(duì)于證書重簽發(fā)流程的具體實(shí)現(xiàn)此處不再贅述。通過以上證書簽發(fā)流程可以看出,被核準(zhǔn)簽發(fā)的證書由用于維護(hù)該證書的節(jié)點(diǎn)保存,從而實(shí)現(xiàn)證書在P2P網(wǎng)絡(luò)中的分布式存儲(chǔ)。如前所述,出于對(duì)節(jié)點(diǎn)誠信狀態(tài)的不確定性考慮,CA會(huì)在節(jié)點(diǎn)證書中包含有效期限參數(shù),強(qiáng)制節(jié)點(diǎn)在證書到期之后提交證書的重新簽發(fā)申請(qǐng)。這就要求CA不斷重復(fù)地為每個(gè)合法節(jié)點(diǎn)簽發(fā)新的有效證書。為此,證書的有效期一般設(shè)置的比較長(例如,以天為單位),以免給必須集中部署的可信CA服務(wù)器造成過重負(fù)擔(dān),使其成為系統(tǒng)瓶頸。特別是,對(duì)于以離線方式申請(qǐng)的公鑰證書,出于方便用戶簡化管理成本的角度考慮也不宜設(shè)置過于頻繁的證書更新周期。為此,針對(duì)持有有效證書但必須立即被排除出系統(tǒng)中的惡意節(jié)點(diǎn),CA服務(wù)器可以根據(jù)系統(tǒng)需要,即時(shí)響應(yīng)系統(tǒng)管理需求觸發(fā)啟動(dòng)證書撤銷流程。特別是,對(duì)于P2P系統(tǒng)這種具有開放用戶群體、用戶同時(shí)參與服務(wù)提供的應(yīng)用環(huán)境,惡意用戶的出現(xiàn)概率和影響范圍是不容低估的。因此,有必要為其提供高效可靠的證書撤銷機(jī)制,以確保應(yīng)用系統(tǒng)的健康與穩(wěn)定。參見圖2,為本發(fā)明實(shí)施例提供的證書撤銷流程示意圖,對(duì)應(yīng)的信令流程可參見圖6中的證書撤銷流程,該流程可包括步驟201, Admin向CA提交證書撤銷請(qǐng)求。在具體實(shí)現(xiàn)時(shí),根據(jù)監(jiān)控信息,Admin可以依據(jù)系統(tǒng)既定的授權(quán)規(guī)范,在某個(gè)證書有效期范圍內(nèi)向CA發(fā)起證書撤銷請(qǐng)求,要求CA立即發(fā)布針對(duì)該證書的撤銷信息,以收回對(duì)應(yīng)用戶或節(jié)點(diǎn)所有的全部資源訪問權(quán)限。步驟202,CA簽發(fā)證書撤銷信息,并返回簽發(fā)的證書撤銷信息給Admin。
在具體實(shí)現(xiàn)時(shí),證書撤銷信息的簽發(fā)是以單個(gè)證書為単位的。如果采用撤銷列表的角度來看,也就是所謂的“ー證ー表”。與證書簽發(fā)過程類似的,撤銷信息中指定被撤銷的證書標(biāo)識(shí),并用CA私鑰進(jìn)行簽名。進(jìn)ー步的,撤銷信息中還可包括對(duì)應(yīng)的用戶名和/或節(jié)點(diǎn)標(biāo)識(shí)。步驟203,Admin向維護(hù)該被撤銷證書的RP發(fā)布證書撤銷信息,RP根據(jù)該證書撤銷信息對(duì)相應(yīng)證書進(jìn)行證書狀態(tài)維護(hù)處理。在具體實(shí)現(xiàn)吋,證書撤銷信息原則上返回給提交證書撤銷請(qǐng)求的Admin,并由Admin交由負(fù)責(zé)維護(hù)和存儲(chǔ)該節(jié)點(diǎn)證書的節(jié)點(diǎn)RP保存,當(dāng)然也可以將證書撤銷信息發(fā)送給負(fù)責(zé)維護(hù)和存儲(chǔ)該節(jié)點(diǎn)證書的節(jié)點(diǎn)RP。RP在接收到證書撤銷請(qǐng)求后(其中攜帶證書撤銷信息),在確認(rèn)對(duì)應(yīng)證書是否由自己負(fù)責(zé)保存且仍在有效期,以及使用CA公鑰對(duì)撤銷信息中的簽名進(jìn)行有效性驗(yàn)證通過后,刪除本地保存的對(duì)應(yīng)證書,保存對(duì)應(yīng)證書的撤銷信息,進(jìn)一歩的,可將該證書撤銷信息的有效期截止時(shí)間設(shè)置為與該證書中指定的有效期截止時(shí)間相同,即設(shè)置其保存該證書撤銷信息的有效期至該證書中指定的有效期截止時(shí)間。圖3示出了ー種RP的處理流程RP收到證書撤銷請(qǐng)求后(步驟301),檢查對(duì)應(yīng)證書是否由自己負(fù)責(zé)保存且仍在有效期(步驟302),若是,則使用CA公鑰驗(yàn)證撤銷信息中簽名的有效性,以確認(rèn)其內(nèi)容的完整性與來源的真實(shí)性(步驟303);否則,丟棄該證書撤銷請(qǐng)求(步驟304)。如果簽名有效性驗(yàn)證通過,則刪除本地保存的對(duì)應(yīng)證書,保存該證書的撤銷信息,并設(shè)置該證書的撤銷信息保存有效期至該證書中指定的有效期截止時(shí)間(步驟305);如果簽名有效性驗(yàn)證未通過,則丟棄該證書撤銷請(qǐng)求(步驟306)。進(jìn)ー步的,根據(jù)系統(tǒng)既定策略,RP處理證書撤銷請(qǐng)求后,可能需要進(jìn)ー步確認(rèn)被撤銷授權(quán)的節(jié)點(diǎn)UP (Unauthorized Peer)是否在線,若在線,則觸發(fā)如下流程以迫使該UP立即退出網(wǎng)絡(luò)。該流程的發(fā)起者既可以是Admin也可以是完成撤銷信息本地保存操作的RP。圖2示出了由Admin觸發(fā)UP退出網(wǎng)絡(luò)的流程步驟204,Admin向被撤銷授權(quán)的UP的鄰居節(jié)點(diǎn)NP發(fā)送該UP被撤銷授權(quán)的通知,接到通知的NP切斷與該UP的連接關(guān)系。在具體實(shí)施吋,首先,觸發(fā)UP退出網(wǎng)絡(luò)的發(fā)起者(Admin或RP,本流程中為Admin,)通過網(wǎng)管系統(tǒng)或路由算法,定位與UP直接相連的所有在線節(jié)點(diǎn)集合NPs ( S卩,UP的鄰居節(jié)點(diǎn),Neighboring Peers);其次,發(fā)起者將UP的授權(quán)撤銷消息通告NPs。具體方式可能包括
i.發(fā)起者直接向NPs群發(fā)有關(guān)UP的證書撤銷信息;或ii.發(fā)起者向NPs中的某個(gè)或某些節(jié)點(diǎn)發(fā)送直接通知,而后者繼而借助鄰居間的路由更新機(jī)制通知所述NPs中的其他節(jié)點(diǎn)。最后,接到通告的NP確認(rèn)自己與UP的鄰居身份,使用CA公鑰驗(yàn)證撤銷信息合法性后,切斷與UP的連接關(guān)系。當(dāng)UP的全部鄰居均切斷與其連接關(guān)系之后,UP就被迫下線了??蛇x地,系統(tǒng)的配置服務(wù)器和/或公共的引導(dǎo)節(jié)點(diǎn)也可包括在上述被通告群體的范圍之內(nèi)。上述流程中,ー種替代實(shí)施例是Admin向CA提交證書撤銷請(qǐng)求,并且CA簽發(fā)證書撤銷信息后,與步驟203中Admin向維護(hù)該被撤銷證書的RP發(fā)布證書撤銷信息不同的 是在CA 了解P2P映射規(guī)則以及且負(fù)荷不重的情況下,由CA向維護(hù)該被撤銷證書的RP發(fā)布證書撤銷信息。通過以上證書撤銷流程可以看出,當(dāng)需要將某節(jié)點(diǎn)的授權(quán)證書撤銷吋,由Admin實(shí)時(shí)發(fā)起證書撤銷流程,從而及時(shí)將證書撤銷信息發(fā)布到相應(yīng)證書的RP,與現(xiàn)有技術(shù)采用配置信息消息更新方式相比,提高了證書撤銷信息發(fā)布的及時(shí)性。另外,在證書撤銷流程中,還可以通過向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送通知,以要求其斷開與該被撤銷授權(quán)的節(jié)點(diǎn)的連接,迫使該被撤銷授權(quán)的節(jié)點(diǎn)退出網(wǎng)絡(luò),從而進(jìn)ー步提高了安全性。本發(fā)明實(shí)施例還對(duì)證書狀態(tài)查詢過程提出了解決方案。本發(fā)明實(shí)施例中,根據(jù)應(yīng)用、系統(tǒng)、管理等不同層面需求,給定應(yīng)用環(huán)境可能采用以下原則之ー或組合來觸發(fā)相關(guān)節(jié)點(diǎn)的證書狀態(tài)查詢流程i.每連接查詢原則任何節(jié)點(diǎn)的P2P連接建立請(qǐng)求將觸發(fā)ー個(gè)由對(duì)方節(jié)點(diǎn)針對(duì)連接請(qǐng)求發(fā)起者節(jié)點(diǎn)的證書狀態(tài)查詢請(qǐng)求。ii.姆會(huì)話查詢原則對(duì)于并不直連的節(jié)點(diǎn)對(duì),任何節(jié)點(diǎn)發(fā)起的涉及認(rèn)證、授權(quán)或?qū)徲?jì)管理需求的應(yīng)用會(huì)話請(qǐng)求,將觸發(fā)一個(gè)由對(duì)方節(jié)點(diǎn)針對(duì)該會(huì)話請(qǐng)求發(fā)起者節(jié)點(diǎn)的證書狀態(tài)查詢請(qǐng)求。iii.每周期查詢原則對(duì)于已經(jīng)建立的涉及認(rèn)證、授權(quán)或?qū)徲?jì)管理需求的應(yīng)用會(huì)話連接,每隔固定周期(可做系統(tǒng)級(jí)、應(yīng)用級(jí)或會(huì)話級(jí)配置),可由安全策略執(zhí)行方節(jié)點(diǎn)發(fā)起針對(duì)對(duì)方節(jié)點(diǎn)的證書狀態(tài)查詢請(qǐng)求。參見圖4,為本發(fā)明實(shí)施例提供的證書狀態(tài)的基本查詢流程示意圖,對(duì)應(yīng)的信令流程可參見圖6中的證書狀態(tài)查詢流程。如圖所示,該流程可包括步驟401,證書狀態(tài)查詢者節(jié)點(diǎn)QP發(fā)送證書狀態(tài)查詢請(qǐng)求。在具體實(shí)施時(shí),首先,證書狀態(tài)查詢者節(jié)點(diǎn)QP (Querying Peer)本地生成證書狀態(tài)查詢請(qǐng)求Veri_Req,其中指定如下信息之一或任意組合待驗(yàn)證證書標(biāo)識(shí)Cert, id、證書對(duì)應(yīng)的用戶名Cert, username、節(jié)點(diǎn)標(biāo)識(shí)Cert, nodeid。其次,QP根據(jù)系統(tǒng)指定的證書撤銷信息存儲(chǔ)路由規(guī)則,根據(jù)Veri_Req中的Cert,id、Cert, username或Cert, nodeid計(jì)算查詢請(qǐng)求的路由。最后,根據(jù)計(jì)算出的路由,將Veri_Req發(fā)給第一跳路由鄰居節(jié)點(diǎn)NP。步驟402,接收到證書狀態(tài)查詢請(qǐng)求的節(jié)點(diǎn)CP確認(rèn)證書是否由自己保存,若是,則轉(zhuǎn)入步驟403 ;否則,轉(zhuǎn)入步驟404。
在具體實(shí)施時(shí),接收到來自節(jié)點(diǎn)QP的證書狀態(tài)查詢請(qǐng)求Veri_Req的節(jié)點(diǎn)CP,首先確認(rèn)相應(yīng)證書是否由自己保存(即是否是該證書的RP),若是由自己保存,則轉(zhuǎn)入步驟403 ;若不是由自己保存,則轉(zhuǎn)入步驟404。步驟403,CP根據(jù)所請(qǐng)求查詢的證書的狀態(tài),返回證書狀態(tài)查詢結(jié)果。在具體實(shí)施時(shí),可首先檢查對(duì)應(yīng)證書是否存在,若不存在,則返回證書被撤銷的錯(cuò)誤響應(yīng);如果存在,則進(jìn)ー步檢查證書是否到期,如果到期,則返回證書到期的錯(cuò)誤響應(yīng),并本地刪除對(duì)應(yīng)證書;如果沒有到期,則返回證書有效的響應(yīng)。步驟404,CP作為中間節(jié)點(diǎn)繼續(xù)按照指定路徑或本地迭代計(jì)算路徑向下一跳節(jié)點(diǎn)轉(zhuǎn)發(fā)該請(qǐng)求,然后轉(zhuǎn)入步驟402。上述流程中,證書查詢結(jié)果的返回方式,取決于系統(tǒng)指定的響應(yīng)消息路由方式,證書狀態(tài)查詢響應(yīng)可能由最終響應(yīng)者節(jié)點(diǎn)RP(Responsible Node)直接發(fā)回給請(qǐng)求發(fā)起者節(jié)點(diǎn)QP,也可能采用對(duì)稱迭代方式沿請(qǐng)求路由原路逐一經(jīng)過中間節(jié)點(diǎn)返回。 進(jìn)ー步的,對(duì)于多跳P2P路由算法,可利用中間節(jié)點(diǎn)緩存證書狀態(tài)查詢結(jié)果,用于證書撤銷信息進(jìn)ー步發(fā)布的輔助手段。特別是,在查詢路由路徑上,越接近最終的證書狀態(tài)查詢響應(yīng)者的中間節(jié)點(diǎn)在后續(xù)針對(duì)同一證書的狀態(tài)查詢請(qǐng)求的路徑上重復(fù)出現(xiàn)的概率越大。因此,可優(yōu)先選擇在這些中間節(jié)點(diǎn)上緩存返回的證書狀態(tài)查詢結(jié)果(例如節(jié)點(diǎn)證書撤銷信息)。在具體實(shí)現(xiàn)時(shí),可預(yù)先指定路由跳數(shù),在證書狀態(tài)查詢響應(yīng)所經(jīng)過的多跳路由路徑上,從第一跳開始到相應(yīng)跳的中間節(jié)點(diǎn)在接收到證書狀態(tài)查詢響應(yīng)后緩存證書狀態(tài)查詢結(jié)果,以便在該節(jié)點(diǎn)作為證書狀態(tài)查詢請(qǐng)求的路由路徑上的中間節(jié)點(diǎn)接收到針對(duì)該證書的狀態(tài)查詢請(qǐng)求時(shí),將自己緩存的證書狀態(tài)查詢結(jié)果返回。例如,下面的實(shí)施例子,利用證書狀態(tài)查詢響應(yīng)的對(duì)稱迭代路由方式,可方便地將對(duì)應(yīng)證書的撤銷信息緩存在全部或某些中間節(jié)點(diǎn)上。這樣ー來,路由證書狀態(tài)查詢請(qǐng)求的中間節(jié)點(diǎn)CP會(huì)首先檢查本地緩存中是否已經(jīng)保留了相關(guān)的證書撤銷信息,若命中則直接響應(yīng)請(qǐng)求。具體流程可如圖5所示。參見圖5,為本發(fā)明實(shí)施例提供的結(jié)合中間節(jié)點(diǎn)緩存的查詢流程示意圖,該流程以在中間節(jié)點(diǎn)上緩存證書撤銷信息為例進(jìn)行描述,對(duì)于在中間節(jié)點(diǎn)上緩存其它類型的證書狀態(tài)信息,如有效或無效信息,其處理流程與此類似。步驟501,證書狀態(tài)查詢者節(jié)點(diǎn)QP發(fā)送證書狀態(tài)查詢請(qǐng)求。此步驟的具體實(shí)現(xiàn)同圖4所示流程的步驟401,在此不再贅述。步驟502,接收到證書狀態(tài)查詢請(qǐng)求的節(jié)點(diǎn)CP確認(rèn)證書是否由自己保存,若是,則轉(zhuǎn)入步驟503 ;否則,轉(zhuǎn)入步驟504。步驟503,CP根據(jù)所請(qǐng)求查詢的證書的狀態(tài),返回證書狀態(tài)查詢結(jié)果。在具體實(shí)施時(shí),可首先檢查對(duì)應(yīng)證書是否存在,若不存在,則返回證書被撤銷的錯(cuò)誤響應(yīng),并將來自于CA的證書撤銷信息包含在返回的查詢響應(yīng)消息中,以便在查詢響應(yīng)消息的路由路徑上的其它節(jié)點(diǎn)緩存該證書撤銷信息;如果存在,則進(jìn)ー步檢查證書是否到期,如果到期,則返回證書到期的錯(cuò)誤響應(yīng),井本地刪除對(duì)應(yīng)證書;如果沒有到期,則返回證書有效的響應(yīng)。步驟504,CP進(jìn)ー步檢查對(duì)應(yīng)證書的撤銷信息是否緩存在本地,若是,則轉(zhuǎn)入步驟505 ;否則,轉(zhuǎn)入步驟506。步驟505,CP返回證書被撤銷的錯(cuò)誤響應(yīng)。
步驟506,CP作為中間節(jié)點(diǎn)繼續(xù)按照指定路徑或本地迭代計(jì)算路徑向下一跳節(jié)點(diǎn)轉(zhuǎn)發(fā)該請(qǐng)求,然后轉(zhuǎn)入步驟502。上述流程中,證書狀態(tài)查詢響應(yīng)者節(jié)點(diǎn)CP可采用對(duì)稱迭代方式沿請(qǐng)求路由原路逐一經(jīng)過中間節(jié)點(diǎn)返回發(fā)回給請(qǐng)求發(fā)起者節(jié)點(diǎn)QP。通過以上證書狀態(tài)流程可以看出,一方面,由于證書是分布式存儲(chǔ)于P2P系統(tǒng)的,因此其證書狀態(tài)查詢流程與現(xiàn)有技術(shù)的集中存儲(chǔ)證書相比,一定程度上避免了查詢證書狀態(tài)所帶來的性能瓶頸;另ー方面,通過將證書查詢結(jié)果緩存于中間節(jié)點(diǎn),這樣再有相同證書的狀態(tài)查詢請(qǐng)求發(fā)起時(shí),就可以由該中間節(jié)點(diǎn)進(jìn)行響應(yīng),從而提高了查詢效率,減少了網(wǎng)絡(luò)資源消耗,并更進(jìn)一步減少了因查詢證書狀態(tài)所帯來的RP的性能瓶頸。為了更清楚的說明本發(fā)明實(shí)施例,下面結(jié)合RELOAD上構(gòu)建SIP (Session Initiated Protocol,起始會(huì)話協(xié)議)應(yīng)用系統(tǒng)的場景,來描述本發(fā)明實(shí)施例的ー個(gè)應(yīng)用實(shí)例。利用RELOAD提供的P2P基礎(chǔ)設(shè)施,SIP用戶代理可組織成一個(gè)覆蓋網(wǎng)取代專門的SIP代理和注冊■服務(wù)器來提供VoIP (Voice over Internet Protocol, IP語音業(yè)務(wù))通話業(yè)務(wù)。其中,SIP用戶代理使用RELOAD數(shù)據(jù)存儲(chǔ)基礎(chǔ)設(shè)施來存儲(chǔ)或查詢其SIP AoR(Address ofRecord,訪問地址,如usernameOdomain)到其覆蓋網(wǎng)節(jié)點(diǎn)標(biāo)識(shí)Node-id的映射關(guān)系。一個(gè)簡單的位置注冊與呼叫請(qǐng)求流程包括第一步,Bob使用自己的AoR “sip bobidht. example, com”作為關(guān)鍵字,將自己的Node-id “1234”存儲(chǔ)在SIP用戶代理組成的覆蓋網(wǎng)中。第二步,當(dāng)Alice希望呼叫Bob時(shí),她首先向覆蓋網(wǎng)查詢“sip bobidht. example,com” 注冊的 Node-ID 并得至Ij “ 1234”。第三步,接下來,Alice利用RELOAD提供的應(yīng)用層連接機(jī)制與節(jié)點(diǎn)“ 1234”建立連接。之后,就可以向節(jié)點(diǎn)1234發(fā)起標(biāo)準(zhǔn)的SIP INVITE呼叫請(qǐng)求了。一個(gè)直觀的安全需求是,負(fù)責(zé)存儲(chǔ)Bob位置映射管理的RELOAD peer必須確保只有合法的用戶Bob本人才能發(fā)起針對(duì)自己AoR-Node-id映射關(guān)系的寫操作。為此可在上述場景中,利用本發(fā)明實(shí)施例,在上述第一步過程中,存儲(chǔ)peer節(jié)點(diǎn)可以要求Bob提交一個(gè)有效證書,并查詢Bob提供的證書狀態(tài),如果所提交證書已經(jīng)被撤銷,則拒絕Bob的存儲(chǔ)請(qǐng)求,并刪除對(duì)應(yīng)的映射關(guān)系。如果第一歩成功,則存儲(chǔ)映射關(guān)系的peer節(jié)點(diǎn)可以向CA服務(wù)器(即ES)或負(fù)責(zé)存儲(chǔ)Bob證書的peer節(jié)點(diǎn)RP訂閱Bob的證書撤銷事件,要求后者及時(shí)告知Bob證書的最新狀態(tài)。通過上述本發(fā)明實(shí)施例的描述可以看出,一方面,本發(fā)明實(shí)施例利用P2P系統(tǒng)分布式地存儲(chǔ)節(jié)點(diǎn)證書撤銷信息和處理相關(guān)的信息查詢請(qǐng)求,無需在CA服務(wù)器或第三方發(fā)布節(jié)點(diǎn)集中維護(hù)CRL列表,消除了 CRL信息發(fā)布與查詢訪問的單點(diǎn)性能與安全瓶頸;另一方面,針對(duì)特定證書的狀態(tài)驗(yàn)證響應(yīng)僅包含對(duì)應(yīng)證書的狀態(tài)信息,不再為多個(gè)證書事先進(jìn)行CRL的組織管理與地址發(fā)布,實(shí)現(xiàn)“ー證ー表”,消除了額外的列表維護(hù)與查詢開銷?;谙嗤募夹g(shù)構(gòu)思,本發(fā)明實(shí)施例還提供了ー種P2P網(wǎng)絡(luò)通信設(shè)備。參見圖7,為本發(fā)明實(shí)施例提供的通信設(shè)備的結(jié)構(gòu)示意圖,如圖所示,該設(shè)備可包括證書維護(hù)模塊701,用于在接收到P2P系統(tǒng)中的管理節(jié)點(diǎn)發(fā)布的證書撤銷信息后,根據(jù)接收到的證書撤銷信息,刪除其所存儲(chǔ)的相應(yīng)證書,將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ);查詢響應(yīng)模塊702,用于當(dāng)接收到證書狀態(tài)查詢請(qǐng)求后,根據(jù)其所存儲(chǔ)的證書狀態(tài)信息,返回證書狀態(tài)查詢響應(yīng)。上述設(shè)備中,證書維護(hù)模塊701在維護(hù)證書狀態(tài)時(shí),在確認(rèn)對(duì)應(yīng)證書是由自己維護(hù),且該證書仍在有效期的情況下,刪除所存儲(chǔ)的對(duì)應(yīng)的證書,并將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ)。在所述證書撤銷信息使用CA私鑰進(jìn)行簽名的情況下,證書維護(hù)模塊701可在使用CA公鑰對(duì)該證書撤銷信息進(jìn)行合法性驗(yàn)證通過后,刪除其所存儲(chǔ)的相應(yīng)證書,并將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ)。進(jìn)ー步的,證書維護(hù)模塊701還可在存儲(chǔ)所述證書撤銷信息之后,將所述證書撤銷信息的有效期截止時(shí)間設(shè)置為與該證書中指定的有效期截止時(shí)間相同。上述設(shè)備中,還可包括通知發(fā)送模塊703、通知接收模塊704和連接處理模塊705,其中 通知發(fā)送模塊703,用于在存儲(chǔ)證書撤銷信息之后,向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知。進(jìn)ー步的,通知發(fā)送模塊703或系統(tǒng)管理實(shí)體在發(fā)送所述通知時(shí),可向被撤銷授權(quán)的節(jié)點(diǎn)的所有鄰居節(jié)點(diǎn)發(fā)送所述通知;或者,向被撤銷授權(quán)的節(jié)點(diǎn)的部分鄰居節(jié)點(diǎn)發(fā)送所述通知。上述設(shè)備中,還可包括通知接收模塊704和連接處理模塊705,其中通知接收模塊704用于在本設(shè)備作為普通節(jié)點(diǎn)(非負(fù)責(zé)證書維護(hù)的節(jié)點(diǎn))時(shí),接收P2P系統(tǒng)中的管理節(jié)點(diǎn)(如Admin)或負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)發(fā)送的節(jié)點(diǎn)被撤銷授權(quán)的通知;其中,所述系統(tǒng)管理實(shí)體檢測被撤銷授權(quán)的節(jié)點(diǎn)是否在線,并在檢測為在線的情況下,向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知;連接處理模塊705,用于根據(jù)通知接收模塊704接收到的通知,切斷本設(shè)備與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。進(jìn)ー步的,該設(shè)備還可包括通知轉(zhuǎn)發(fā)模塊706,用于將接收到的所述通知向被撤銷授權(quán)的節(jié)點(diǎn)的其它鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)。在所述通知中包括證書撤銷信息,所述證書撤銷信息使用CA私鑰加密的情況下,連接處理模塊705可在確認(rèn)自己與被撤銷授權(quán)的節(jié)點(diǎn)存在鄰居關(guān)系,且使用CA公鑰對(duì)所述通知中攜帯的證書撤銷信息的合法性驗(yàn)證通過后,切斷與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。上述設(shè)備中,還可包括緩存模塊707,用于在本設(shè)備作為證書狀態(tài)查詢響應(yīng)所經(jīng)過的多跳路由路徑上的中間設(shè)備時(shí),在接收到證書狀態(tài)查詢響應(yīng)后緩存該證書狀態(tài)查詢響應(yīng)中攜帯的證書狀態(tài)查詢結(jié)果。相應(yīng)的,查詢響應(yīng)模塊702在本設(shè)備作為證書狀態(tài)查詢請(qǐng)求所經(jīng)過的多跳路由路徑上的中間設(shè)備時(shí),在接收到證書狀態(tài)查詢請(qǐng)求后,判斷自己是否緩存有相應(yīng)證書的狀態(tài)查詢結(jié)果,并在判斷為是時(shí),返回緩存的所述證書狀態(tài)查詢結(jié)果。進(jìn)ー步的,緩存模塊707可根據(jù)預(yù)先指定的路由跳數(shù),在判斷本設(shè)備是證書狀態(tài)查詢響應(yīng)所經(jīng)過的多跳路由路徑上該指定路由跳數(shù)范圍內(nèi)的設(shè)備時(shí),在接收到證書狀態(tài)查詢響應(yīng)后緩存證書狀態(tài)查詢結(jié)果。上述設(shè)備中所涉及到的證書撤銷信息可包括被撤銷證書的標(biāo)識(shí),還可進(jìn)ー步包括被撤銷證書對(duì)應(yīng)的用戶名或/和節(jié)點(diǎn)標(biāo)識(shí)。上述設(shè)備中所涉及到的證書狀態(tài)查詢請(qǐng)求中可包括以下信息之一或任意組合待驗(yàn)證證書的標(biāo)識(shí)、證書對(duì)應(yīng)的用戶名、節(jié)點(diǎn)標(biāo)識(shí)。參見圖8,為本發(fā)明另ー實(shí)施例提供的P2P網(wǎng)絡(luò)通信設(shè)備。如圖所示,該設(shè)備可包括緩存模塊801,用于在接收到證書狀態(tài)查詢響應(yīng)后緩存該證書狀態(tài)查詢響應(yīng)中攜帶的證書狀態(tài)查詢結(jié)果;其中,所述證書狀態(tài)查詢結(jié)果是負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收到證書狀態(tài)查詢請(qǐng)求后返回的,其中,所述負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)根據(jù)P2P系統(tǒng)中的管理節(jié)點(diǎn)所發(fā)布的證書撤銷信息進(jìn)行證書狀態(tài)維護(hù);查詢響應(yīng)模塊802,用于在接收到證書狀態(tài)查詢請(qǐng)求后,判斷自己是否緩存有相應(yīng)證書的狀態(tài)查詢結(jié)果,并在判斷為是時(shí),返回緩存的所述證書狀態(tài)查詢結(jié)果。 進(jìn)ー步的,緩存模塊801可根據(jù)預(yù)先指定的路由跳數(shù),在判斷本設(shè)備是證書狀態(tài)查詢響應(yīng)所經(jīng)過的多跳路由路徑上該指定路由跳數(shù)范圍內(nèi)的設(shè)備時(shí),在接收到證書狀態(tài)查詢響應(yīng)后緩存證書狀態(tài)查詢結(jié)果。進(jìn)ー步的,上述設(shè)備還可包括通知接收模塊803和連接處理模塊804,其中通知接收模塊803,用于接收所述P2P系統(tǒng)的管理節(jié)點(diǎn)或負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)發(fā)送的節(jié)點(diǎn)被撤銷授權(quán)的通知;其中,所述管理節(jié)點(diǎn)檢測被撤銷授權(quán)的節(jié)點(diǎn)是否在線,并在檢測為在線的情況下,向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知;連接處理模塊804,用于根據(jù)所述通知接收模塊接收到的通知,切斷本設(shè)備與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。在所述通知中包括證書撤銷信息,所述證書撤銷信息使用CA私鑰加密的情況下,連接處理模塊804可在確認(rèn)自己與被撤銷授權(quán)的節(jié)點(diǎn)存在鄰居關(guān)系,且使用CA公鑰對(duì)所述通知中攜帯的證書撤銷信息的合法性驗(yàn)證通過后,切斷與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。進(jìn)ー步的,上述設(shè)備還可包括通知轉(zhuǎn)發(fā)模塊805,用于將接收到的所述通知向被撤銷授權(quán)的節(jié)點(diǎn)的其它鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)。通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在ー個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種基于P2P的證書管理方法,其特征在于,該方法包括 負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收P2P系統(tǒng)中的管理節(jié)點(diǎn)發(fā)布的證書撤銷信息,井根據(jù)接收到的證書撤銷信息,刪除其所存儲(chǔ)的相應(yīng)證書,將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ); 當(dāng)所述負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收到證書狀態(tài)查詢請(qǐng)求后,根據(jù)其所存儲(chǔ)的證書狀態(tài)信息,返回證書狀態(tài)查詢響應(yīng)。
2.如權(quán)利要求I所述的方法,其特征在干,所述P2P系統(tǒng)中的管理節(jié)點(diǎn)為系統(tǒng)管理實(shí)體,所述系統(tǒng)管理實(shí)體向負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)發(fā)送證書撤銷信息之前,還包括系統(tǒng)管理實(shí)體針對(duì)有效期范圍內(nèi)的證書,向認(rèn)證中心CA發(fā)送撤銷該證書的請(qǐng)求,并接收所述CA簽發(fā)并返回的證書撤銷信息;或者 所述P2P系統(tǒng)中的管理節(jié)點(diǎn)為CA,所述CA向負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)發(fā)送證書撤銷信息之前,還包括CA接收系統(tǒng)管理實(shí)體針對(duì)有效期范圍內(nèi)的證書發(fā)送的撤銷該證書的請(qǐng)求,并簽發(fā)證書撤銷信息。
3.如權(quán)利要求I所述的方法,其特征在于,所述證書撤銷信息使用CA私鑰進(jìn)行簽名; 負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收到證書撤銷信息后,在使用CA公鑰對(duì)該證書撤銷信息進(jìn)行合法性驗(yàn)證通過后,刪除其所存儲(chǔ)的相應(yīng)證書,并將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ)。
4.如權(quán)利要求I所述的方法,其特征在于,負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收到的證書撤銷消息后,在判斷對(duì)應(yīng)證書是由自己維護(hù),且該證書仍在有效期的情況下,刪除所存儲(chǔ)的對(duì)應(yīng)的證書,并將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ)。
5.如權(quán)利要求I所述的方法,其特征在于,負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)存儲(chǔ)所述證書撤銷信息之后,還包括將所述證書撤銷信息的有效期截止時(shí)間設(shè)置為與該證書中指定的有效期截止時(shí)間相同。
6.如權(quán)利要求1-5之一所述的方法,其特征在于,所述管理節(jié)點(diǎn)發(fā)布所述證書撤銷信息之后,還包括檢測被撤銷授權(quán)的節(jié)點(diǎn)是否在線,并在檢測為在線的情況下,向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知,接收到所述通知的節(jié)點(diǎn)切斷與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接;或者 所述負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)在存儲(chǔ)所述證書撤銷信息之后,還包括向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知,接收到所述通知的節(jié)點(diǎn)切斷與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。
7.如權(quán)利要求6所述的方法,其特征在干,向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知,包括 向被撤銷授權(quán)的節(jié)點(diǎn)的所有鄰居節(jié)點(diǎn)發(fā)送所述通知;或者, 向被撤銷授權(quán)的節(jié)點(diǎn)的部分鄰居節(jié)點(diǎn)發(fā)送所述通知,接收到所述通知的節(jié)點(diǎn)向被撤銷授權(quán)的節(jié)點(diǎn)的其它鄰居節(jié)點(diǎn)發(fā)送所述通知。
8.如權(quán)利要求6所述的方法,其特征在于,所述通知中包括證書撤銷信息,所述證書撤銷信息使用CA私鑰加密; 接收到所述通知的節(jié)點(diǎn),在確認(rèn)自己與被撤銷授權(quán)的節(jié)點(diǎn)存在鄰居關(guān)系,且使用CA公鑰對(duì)所述通知中攜帯的證書撤銷信息的合法性驗(yàn)證通過后,切斷與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。
9.如權(quán)利要求I所述的方法,其特征在于,若證書狀態(tài)查詢響應(yīng)經(jīng)過多跳路由返回,則還包括在證書狀態(tài)查詢響應(yīng)返回的路徑上,接收到證書狀態(tài)查詢響應(yīng)的中間節(jié)點(diǎn)緩存該證書狀態(tài)查詢響應(yīng)中攜帯的證書狀態(tài)查詢結(jié)果; 當(dāng)所述中間節(jié)點(diǎn)接收到證書狀態(tài)查詢請(qǐng)求后,判斷自己是否緩存有相應(yīng)證書的狀態(tài)查詢結(jié)果,并在判斷為是時(shí),返回緩存的所述證書狀態(tài)查詢結(jié)果。
10.如權(quán)利要求9所述的方法,其特征在于,根據(jù)預(yù)先指定的路由跳數(shù),在所述證書狀態(tài)查詢響應(yīng)所經(jīng)過的多跳路由路徑上,從第一跳開始到相應(yīng)跳的中間節(jié)點(diǎn)在接收到證書狀態(tài)查詢響應(yīng)后緩存證書狀態(tài)查詢結(jié)果。
11.如權(quán)利要求I或9所述的方法,其特征在于,所述證書狀態(tài)查詢響應(yīng)由響應(yīng)所述證書查詢請(qǐng)求的節(jié)點(diǎn)返回給發(fā)出該請(qǐng)求的節(jié)點(diǎn);或者,所述證書狀態(tài)查詢響應(yīng)沿證書狀態(tài)查詢請(qǐng)求路由原路逐一經(jīng)過中間節(jié)點(diǎn)返回。
12.如權(quán)利要求1-5、7-10之一所述的方法,其特征在于,所述證書撤銷信息包括被撤銷證書的標(biāo)識(shí)。
13.如權(quán)利要求12所述的方法,其特征在于,所述證書撤銷信息還包括被撤銷證書對(duì)應(yīng)的用戶名或/和節(jié)點(diǎn)標(biāo)識(shí)。
14.如權(quán)利要求1-5、7-10之一所述的方法,其特征在于,所述證書狀態(tài)查詢請(qǐng)求中包括以下信息之一或任意組合待驗(yàn)證證書的標(biāo)識(shí)、證書對(duì)應(yīng)的用戶名、節(jié)點(diǎn)標(biāo)識(shí)。
15.ー種P2P網(wǎng)絡(luò)通信設(shè)備,其特征在于,包括 證書維護(hù)模塊,用于在接收到P2P系統(tǒng)中的管理節(jié)點(diǎn)發(fā)布的證書撤銷信息后,根據(jù)接收到的證書撤銷信息,刪除其所存儲(chǔ)的相應(yīng)證書,將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ); 查詢響應(yīng)模塊,用于當(dāng)接收到證書狀態(tài)查詢請(qǐng)求后,根據(jù)其所存儲(chǔ)的證書狀態(tài)信息,返回證書狀態(tài)查詢響應(yīng)。
16.如權(quán)利要求15所述的設(shè)備,其特征在于,所述證書撤銷信息使用CA私鑰進(jìn)行簽名; 所述證書維護(hù)模塊具體用于,在使用CA公鑰對(duì)該證書撤銷信息進(jìn)行合法性驗(yàn)證通過后,刪除其所存儲(chǔ)的相應(yīng)證書,并將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ)。
17.如權(quán)利要求15所述的設(shè)備,其特征在于,所述證書維護(hù)模塊具體用于,在確認(rèn)對(duì)應(yīng)證書是由自己維護(hù),且該證書仍在有效期的情況下,刪除所存儲(chǔ)的對(duì)應(yīng)的證書,并將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ)。
18.如權(quán)利要求15所述的設(shè)備,其特征在于,所述證書維護(hù)模塊還用于,在存儲(chǔ)所述證書撤銷信息之后,將所述證書撤銷信息的有效期截止時(shí)間設(shè)置為與該證書中指定的有效期截止時(shí)間相同。
19.如權(quán)利要求15-18之一所述的設(shè)備,其特征在于,還包括 通知發(fā)送模塊,用于在存儲(chǔ)證書撤銷信息之后,向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知。
20.如權(quán)利要求15-18之一所述的設(shè)備,其特征在于,所述證書撤銷信息包括被撤銷證書的標(biāo)識(shí)。
21.如權(quán)利要求20所述的設(shè)備,其特征在于,所述證書撤銷信息還包括被撤銷證書對(duì)應(yīng)的用戶名或/和節(jié)點(diǎn)標(biāo)識(shí)。
22.如權(quán)利要求15-18之一所述的設(shè)備,其特征在于,所述證書狀態(tài)查詢請(qǐng)求中包括以下信息之一或任意組合待驗(yàn)證證書的標(biāo)識(shí)、證書對(duì)應(yīng)的用戶名、節(jié)點(diǎn)標(biāo)識(shí)。
23.—種P2P網(wǎng)絡(luò)通信設(shè)備,其特征在于,包括 緩存模塊,用于在接收到證書狀態(tài)查詢響應(yīng)后緩存該證書狀態(tài)查詢響應(yīng)中攜帯的證書狀態(tài)查詢結(jié)果;其中,所述證書狀態(tài)查詢結(jié)果是負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收到證書狀態(tài)查詢請(qǐng)求后返回的,其中,所述負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)根據(jù)P2P系統(tǒng)中的管理節(jié)點(diǎn)所發(fā)布的證書撤銷信息進(jìn)行證書狀態(tài)維護(hù); 查詢響應(yīng)模塊,用于在接收到證書狀態(tài)查詢請(qǐng)求后,判斷自己是否緩存有相應(yīng)證書的狀態(tài)查詢結(jié)果,并在判斷為是時(shí),返回緩存的所述證書狀態(tài)查詢結(jié)果。
24.如權(quán)利要求23所述的設(shè)備,其特征在于,所述緩存模塊具體用于,根據(jù)預(yù)先指定的路由跳數(shù),在判斷本設(shè)備是證書狀態(tài)查詢響應(yīng)所經(jīng)過的多跳路由路徑上該指定路由跳數(shù)范圍內(nèi)的設(shè)備時(shí),在接收到證書狀態(tài)查詢響應(yīng)后緩存證書狀態(tài)查詢結(jié)果。
25.如權(quán)利要求23所述的設(shè)備,其特征在于,還包括 通知接收模塊,用于接收所述P2P系統(tǒng)的管理節(jié)點(diǎn)或負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)發(fā)送的節(jié)點(diǎn)被撤銷授權(quán)的通知;其中,所述管理節(jié)點(diǎn)檢測被撤銷授權(quán)的節(jié)點(diǎn)是否在線,并在檢測為在線的情況下,向被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)發(fā)送節(jié)點(diǎn)被撤銷授權(quán)的通知; 連接處理模塊,用于根據(jù)所述通知接收模塊接收到的通知,切斷本設(shè)備與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。
26.如權(quán)利要求25所述的設(shè)備,其特征在于,還包括 通知轉(zhuǎn)發(fā)模塊,用于將接收到的所述通知向被撤銷授權(quán)的節(jié)點(diǎn)的其它鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)。
27.如權(quán)利要求25所述的設(shè)備,其特征在于,所述通知中包括證書撤銷信息,所述證書撤銷信息使用CA私鑰加密; 所述連接處理模塊具體用干,在確認(rèn)自己與被撤銷授權(quán)的節(jié)點(diǎn)存在鄰居關(guān)系,且使用CA公鑰對(duì)所述通知中攜帯的證書撤銷信息的合法性驗(yàn)證通過后,切斷與該被撤銷授權(quán)的節(jié)點(diǎn)之間的連接。
全文摘要
本發(fā)明公開了一種基于P2P的證書管理方法及其裝置,該方法包括負(fù)責(zé)維護(hù)證書狀態(tài)信息的節(jié)點(diǎn)接收P2P系統(tǒng)中的管理節(jié)點(diǎn)發(fā)布的證書撤銷信息,并根據(jù)接收到的證書撤銷信息,刪除其所存儲(chǔ)的相應(yīng)證書,將所述證書撤銷信息作為相應(yīng)證書的狀態(tài)信息存儲(chǔ);當(dāng)該節(jié)點(diǎn)接收到證書狀態(tài)查詢請(qǐng)求后,根據(jù)其所存儲(chǔ)的證書狀態(tài)信息,返回證書狀態(tài)查詢響應(yīng)。另外,在發(fā)布證書撤銷信息后,還可通過通知該被撤銷授權(quán)的節(jié)點(diǎn)的鄰居節(jié)點(diǎn)斷開與該被撤銷授權(quán)的節(jié)點(diǎn)的連接,以強(qiáng)制該被撤銷授權(quán)的節(jié)點(diǎn)退出網(wǎng)絡(luò)。另外,還可將證書狀態(tài)查詢響應(yīng)緩存在該證書狀態(tài)查詢響應(yīng)的路由路徑的中間節(jié)點(diǎn)上,以使該中間節(jié)點(diǎn)能夠在接收到相同證書的狀態(tài)查詢請(qǐng)求時(shí)返回查詢結(jié)果。本發(fā)明可提高系統(tǒng)安全性。
文檔編號(hào)H04L29/08GK102868709SQ20111018571
公開日2013年1月9日 申請(qǐng)日期2011年7月4日 優(yōu)先權(quán)日2011年7月4日
發(fā)明者鄧靈莉, 彭晉, 樂利鋒, 張劍寅 申請(qǐng)人:中國移動(dòng)通信集團(tuán)公司