專利名稱:用于確定數(shù)字證書是否已被撤消的服務的制作方法
技術領域:
本發(fā)明涉及諸如可由聯(lián)網(wǎng)服務器等提供的服務,其中該服務可以被客戶機 查詢以確定由該客戶機使用的一特定數(shù)字證書是否己被撤消。更具體而言,本 發(fā)明涉及這樣一種服務,其中客戶機可在實時或接近實時的基礎上査詢該服 務,使得該客戶機無需維護任何本地撤消列表等。
背景技術:
如已知的,數(shù)字證書在聯(lián)網(wǎng)環(huán)境中特別地用于擔當該證書的所有者實際上 是該證書中所命名的實體的證據(jù)提供者,并且還用于擔當與該證書相關的某一 相應要素是真實的和/或可信的等的證據(jù)提供者。例如,要在一計算設備上操作 的數(shù)字應用程序可附帶有證明該應用程序可被信任來以特定方式操作的應用 程序證書。同樣,操作這一計算設備的用戶可在其上和/或在別處由證明該用戶 是特定的人、具有特定的用戶權限、屬于特定的用戶組等的用戶證書來表示。 如可以理解的,其中可采用數(shù)字證書的其它情況包括關于諸如數(shù)字文件、數(shù)字 內容、用于采用數(shù)字內容的數(shù)字許可證等的數(shù)字構造。類似地,數(shù)字證書可對 計算設備本身發(fā)放,并且計算設備內的各種硬件元件(硬件驅動器、處理器、
視頻卡等)和軟件元件(BIOS、操作系統(tǒng)、圖形子系統(tǒng)等)各自可具有數(shù)字證 書。
通常,數(shù)字證書是由如在該證書中向該證書中所闡明的命名所有者標識的 特定證書授權機構來發(fā)放的,并且其中包括了諸如來自公鑰-私鑰對的公鑰的 一個或多個密碼密鑰。尤其是在其中這一密鑰實際上是公鑰的情況下,相應的 私鑰與這一證書相關聯(lián),并且假定被該證書的命名所有者作為密碼來嚴密地持 有。
由此,特別地,命名所有者可采用私鑰來數(shù)字地簽署某一類電子文檔,并 且可將該證書附加到該電子文檔。具有該證書的電子文檔的接收者可在某一時刻隨后如己知的那樣用來自該證書的公鑰確認該數(shù)字簽名,以確認該電子文檔 未被修改等等。當然,數(shù)字證書也可在許多其它情況下使用。
如已知的,由證書授權機構所發(fā)放的數(shù)字證書可包括引導回到來自可信根 授權機構的根數(shù)字證書的數(shù)字證書鏈,其中該鏈中的每一證書包括可用于確認 該鏈中向下的下一證書的簽名的公鑰,假定具有該證書鏈的客戶機知道根證書 的公鑰。由此,為使客戶機使用所附的證書鏈來確認特定證書,客戶機首先確 認該鏈中從根證書開始向下到該特定證書的每一證書。另外,如果任何其它證 書是基于該特定證書發(fā)放的,即,是由對應于這一特定證書的私鑰來簽署的, 這這一其它證書可通過沿著該鏈向下繼續(xù)該過程到這一其它證書來確認。
重要的是,發(fā)放特定證書的證書授權機構具有撤消該證書的權力。撤消證 書的原因有許多,且是變化的,并且例如可包括證書和/或由證書所表示的根本 實體的時效,以及改變的狀態(tài)。然而,原則上,證書在該證書中的信息不再能 被依賴是準確的時候被撤消。值得注意的是,如果發(fā)放證書的授權機構確定對 應于一證書的私鑰已被公布或以其它方式公開,其結果是具有這一私鑰的任何 人能夠用其來數(shù)字地簽署,而非僅僅是該證書的所有者,則該授權機構可撤消 這一證書。同樣值得注意的是,如果發(fā)放證書的授權機構發(fā)現(xiàn)命名所有者正在 不正確地使用證書,諸如通過誤稱一元件基于該證書可以被信任,或通過將該 證書用于與發(fā)放該證書不同的目的,則該證書授權機構可撤消這一證書。
為撤消證書,發(fā)放證書的授權機構等例如可以在一可訪問位置公開列出與 該證書相關聯(lián)的公鑰。此前,這些可訪問位置是例如作為另一數(shù)字構造的附件 被周期性地提供給每一客戶機的數(shù)字撤消列表。由此,客戶機在驗證任何特定 證書以認證相應元素時可從其發(fā)放者獲得相應的撤消列表,并審閱該列表來確 定該證書是否被撤消,且如果是,則可拒絕遵從該證書并相應地拒絕遵從/認證 /信任等該證書所對應的數(shù)字元素。
然而,重要的是,獲得并審閱撤消列表對客戶機而言即使不是沉悶的也會 迅速變得繁瑣,尤其是在客戶機需要來自多個證書授權機構的撤消列表的時 候,以及尤其是在撤消列表的結構變得非常大和/或復雜的時候。此外,至少可 以理解,由于撤消列表并不一定是被立即提供給客戶機和/或不一定立即被客戶 機獲得的,因此已被撤消的證書仍有可能在相當一段時間內被客戶機遵從,直到客戶機實際上擁有了相應的撤消列表。
因此,需要一種能夠訪問最近撤消信息,使得客戶機能以迅速且最新的方 式確定一特定數(shù)字證書是否已被撤消的集中式服務。具體地,需要這樣一種集 中式服務,它能夠訪問多個撤消信息存儲庫,使得客戶機能聯(lián)系該服務來獲得 涉及由多個證書授權機構中的任一個所發(fā)放的證書的撤消信息。此外,需要這 樣一種集中式服務,它允許容易地添加附加的撤消信息存儲器,并被容易地配 置成定位對于多個特定證書中的任一個的適當?shù)某废畔⒋鎯臁?br>
發(fā)明概述
上述需求至少部分地由本發(fā)明來滿足,在本發(fā)明中, 一種撤消確定服務為 客戶機確定由一特定證書授權機構(CA)發(fā)放的一特定數(shù)字證書是否已被這 一CA撤消。在該服務中, 一引擎從客戶機接收查詢,其中該査詢標識了該特
定證書以及發(fā)放該特征證書的CA。至少一個提供者駐留在該服務處,其中每
一提供者對應于一撤消信息存儲庫,并表示該服務處的相應存儲庫,并且連接
到該相應存儲庫。每一存儲庫具有來自至少一個CA的撤消信息。每一提供者
響應于來自客戶機的查詢被轉發(fā)到該提供者來確定該特定證書是否在相應存 儲庫中被標識為已撤消。
該服務還具有包括對應于駐留在該服務處的每一提供者的配置信息記錄 的配置存儲。每一配置信息記錄包括提供者以及對應于該提供者的存儲庫對其
具有撤消信息的每一 CA的標識。該引擎然后基于所接收的查詢參考該配置存 儲來標識駐留在該服務處并對應于所接收的査詢的所標識的CA的特定提供者 以處理該查詢,并且實際上將所接收的査詢轉發(fā)給所標識的提供者以確定所接 收的查詢的所標識的證書是否在相應的存儲庫中被標識為已撤消。該服務可通 過能訪問一個或多個相應存儲庫來處理來自客戶機的關于由多個CA中的任一 個所發(fā)放的數(shù)字證書的查詢,其中每一存儲庫都借助一相應的提供者。
附圖簡述
當結合附圖閱讀時,將更好地理解本發(fā)明的以上概述以及以下實施例的詳 細描述。出于圖示本發(fā)明的目的,附圖中示出了目前較佳的實施例。然而,應當理解,本發(fā)明不限于所示的精確排列和手段。附圖中-
圖1是表示其中可結合本發(fā)明的各方面和/或其部分的通用計算系統(tǒng)的框
圖2是在本發(fā)明的一個實施例中可采用證書撤消確定服務的客戶機的框
圖3是在本發(fā)明的一個實施例中由圖2的客戶機采用的證書撤消確定服務 的框圖;以及
圖4是示出根據(jù)本發(fā)明的一個實施例的,由圖3的撤消確定服務在服務來 自圖2的客戶機的查詢以確定一特定證書是否已被撤消時所執(zhí)行的關鍵步驟的 流程圖。
發(fā)明詳述
計算機環(huán)境
圖1及以下討論提供了對適于在其中實現(xiàn)本發(fā)明的計算環(huán)境的簡要概括 描述。盡管并非所需,但本發(fā)明將在諸如程序模塊等由諸如客戶機工作站或服 務器等計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文環(huán)境中描述。 一般而言, 程序模塊包括執(zhí)行特定的任務或實現(xiàn)特定的抽象數(shù)據(jù)類型的例程、程序、對象、 組件、數(shù)據(jù)結構等等。此外,應當理解,本發(fā)明和/或其部分可以用其它計算機 系統(tǒng)配置來實施,包括手持式設備、多處理器系統(tǒng)、基于微處理器或可編程消 費者電子設備、網(wǎng)絡PC、小型機、大型計算機等等。本發(fā)明也可以在其中任 務由通過通信網(wǎng)絡鏈接的遠程處理設備來執(zhí)行的分布式計算環(huán)境中實踐。在分 布式計算環(huán)境中,程序模塊可以位于本地和遠程存儲器存儲設備中。
如圖1所示, 一示例性通用計算系統(tǒng)包括常規(guī)個人計算機120等,包括處 理單元121、系統(tǒng)存儲器122以及將包括系統(tǒng)存儲器的各類系統(tǒng)組件耦合至處 理單元121的系統(tǒng)總線123。系統(tǒng)總線123可以是若干種總線結構類型中的任 一種,包括存儲器總線或存儲器控制器、外圍總線以及使用各類總線體系結構 中的任一種的局部總線。系統(tǒng)存儲器包括只讀存儲器(ROM) 124和隨機存取 存儲器(RAM) 125?;据斎?輸出系統(tǒng)(BIOS) 126包含如在啟動時協(xié)助在 計算機120內的元件之間傳輸信息的基本例程,可儲存在ROM 124中。個人計算機120還可包括用于對硬盤(未示出)進行讀寫的硬盤驅動器
127,用于對可移動磁盤129進行讀寫的磁盤驅動器128,以及用于對可移動光 盤131,如CD-ROM或其它光介質進行讀寫的光盤驅動器130。硬盤驅動器127、 磁盤驅動器128以及光盤驅動器130分別通過硬盤驅動器接口 132、磁盤驅動 器接口 133和光盤驅動器接口 134連接至系統(tǒng)總線123。驅動器及其相關聯(lián)的 計算機可讀介質為個人計算機20提供了計算機可執(zhí)行指令、數(shù)據(jù)結構、程序 模塊和其它數(shù)據(jù)的非易失性存儲。
盡管這里描述的示例性環(huán)境采用了硬盤、可移動磁盤129以及可移動光盤 131,但是應當理解,在該示例性操作環(huán)境中也可以使用可由計算機訪問的、 用于儲存數(shù)據(jù)的其它類型的計算機可讀介質。這些其它類型的介質包括盒式磁 帶、閃存卡、數(shù)字視頻盤、Bernoum盒式磁盤、隨機存取存儲器(RAM)、 只讀存儲器(ROM)等等。
多個程序模塊可被儲存在硬盤、磁盤129、光盤131、ROM 124或RAM 125 中,包括操作系統(tǒng)135、 一個或多個應用程序136、其它程序模塊137以及程 序數(shù)據(jù)138。用戶可以通過諸如鍵盤140和定點設備142等輸入設備向個人計 算機120輸入命令和信息。其它輸入設備(未示出)可包括話筒、操縱桿、游 戲手柄、圓盤式衛(wèi)星天線、掃描儀等等。這些和其它輸入設備通常通過耦合至 系統(tǒng)總線的串行端口接口 146連接到處理單元121,但也可以通過其它接口, 如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視器147或其它類型 的顯示設備也通過接口,如視頻適配器148連接到系統(tǒng)總線123。除監(jiān)視器147 之外,個人計算機通常包括其它外圍輸出設備(未示出),如揚聲器和打印機。 圖1的示例性系統(tǒng)還包括主機適配器155、小型計算機系統(tǒng)接口 (SCSI)總線 156、以及連接到SCSI總線156的外部存儲設備162。
個人計算機120可以使用到一個或多個遠程計算機,如遠程計算機149 的邏輯連接在網(wǎng)絡化環(huán)境中操作。遠程計算機149可以是另一個人計算機、服 務器、路由器、網(wǎng)絡PC、對等設備或其它常見的網(wǎng)絡節(jié)點,并通常包括許多 或所有相對于個人計算機120所描述的元件,盡管在圖1中僅示出了存儲器存 儲設備150。圖1描述的邏輯連接包括局域網(wǎng)(LAN) 151和廣域網(wǎng)(WAN) 152。這類網(wǎng)絡環(huán)境常見于辦公室、企業(yè)范圍計算機網(wǎng)絡、內聯(lián)網(wǎng)以及因特網(wǎng)。個人計算機120還可用作對諸如另一個人計算機120、如便攜式播放器或便攜 式數(shù)據(jù)助理等更專門化的設備等客機的主機,由此特別地,主機將數(shù)據(jù)下載到 客機和/或從客機上傳數(shù)據(jù)。
當在LAN網(wǎng)絡環(huán)境中使用時,個人計算機120通過網(wǎng)絡接口或適配器153 連接至LAN151。當在WAN網(wǎng)絡環(huán)境中使用時,個人計算機120通常包括調 制解調器154或用于通過廣域網(wǎng)152,如因特網(wǎng)建立通信的其它裝置。調制解 調器154可以是內置或外置的,它通過串行端口接口 146連接至系統(tǒng)總線123。 在網(wǎng)絡化環(huán)境中,相對于計算機120所描述的程序模塊或其部分可儲存在遠程 存儲器存儲設備中??梢岳斫猓境龅木W(wǎng)絡連接是示例性的,也可以使用在計 算機之間建立通信鏈路的其它手段。
用于確定數(shù)字證書是否己被撤消的服務
如上所述,且現(xiàn)在轉向圖2,在諸如計算設備等客戶機10中,某一形式 的認證過程12執(zhí)行包括確認證書14及其各自與一實體18相關聯(lián)的證書鏈16 以認證這一實體18的功能。重要的是,作為確認每一證書14的一部分,認證 過程12確保證書14沒有被發(fā)放這一證書14的證書授權機構(CA)等撤消。 在確定證書24尚未被撤消之后,認證過程12可采用客戶機10上的非撤消證 書24來執(zhí)行各種操作,當然要假定證書以其它方式生效。
注意,客戶機10和其上的認證過程12可以是任何客戶機和認證過程,而 不背離本發(fā)明的精神和范圍。例如,客戶機10可以是計算設備,諸如個人計 算機、便攜式播放器、服務器、智能電器、聯(lián)網(wǎng)的便攜式設備、或采用數(shù)字證 書14的任何其它數(shù)字處理設備。同樣,認證過程12可以是客戶機10上的權 限管理系統(tǒng)的一部分,用于確保數(shù)字內容等同僅根據(jù)相應的數(shù)字許可證等中所 述的權限來呈現(xiàn)。
在本發(fā)明的一個實施例中,證書14被發(fā)放該證書等的證書授權機構(CA) 通過將其在撤消信息存儲庫20 (圖3)等中標識為實際上已被撤消來撤消。重 要的是,這一存儲庫20可包括具有與已被撤消的每一證書14相關的信息的列 表、數(shù)據(jù)庫、文件等,并且可包括用于響應于相應請求來提供撤消判定的服務 器等(未示出)。由此,客戶機10的認證過程12不必通過撤消列表等來被提供關于撤消的信息。同樣,客戶機10上的這一認證過程12可通過通過適當?shù)?請求,經(jīng)由相應存儲庫20來確定關于一特定證書14的最新撤消狀態(tài),而沒有 撤消列表中現(xiàn)有的等待時間。
在本發(fā)明的一個實施例中,且現(xiàn)在轉向圖3,客戶機10通過對撤消服務 22的查詢來獲得關于一特定證書14的撤消信息??梢岳斫猓@一服務22可以 對客戶機10是本地或遠程的,并且在遠程的情況下,通過適當?shù)木W(wǎng)絡連接來 連接到客戶機IO。此外,在本發(fā)明的一個實施例中,服務22可通過能夠訪問 一個或多個撤消存儲庫20來服務來自客戶機10的關于來自多個CA中的任一 個的證書14的請求,其中每一撤消存儲庫作為一適當?shù)奶峁┱?4。
可以理解,每一存儲庫20可以具有來自一個或多個CA的撤消信息,并 且出現(xiàn)在存儲庫20中的撤消信息可采用任何適當?shù)男问蕉槐畴x本發(fā)明的精 神和范圍。例如,撤消信息可僅僅列出已被撤消的每一證書14,或可適當?shù)亓?出多個一系列已撤消證書14。同樣,對于每一已撤消證書14的撤消信息可僅 通過對撤消的簡單斷言來表示,或者可包括諸如撤消日期和/或撤消原因等進一 步的細節(jié)。實際上,情況甚至可以是對撤消的判定需要使用邏輯或計算機代碼, 在這一情況下,這一邏輯或計算機代碼可被包括在該撤消信息中。每一存儲庫 20可對于服務22是本地或遠程的,且在遠程的情況下通過適當?shù)木W(wǎng)絡連接來 連接到服務22。
可以理解,每一提供者24駐留在服務22處,并且向服務22表示一相應 的存儲庫20。在本發(fā)明的一個實施例中,每一提供者24是可被隨意添加到服 務22或從其中移除的插件模塊等的形式。由此,添加或移除對服務22處的存 儲庫的訪問一般是向服務22添加相應提供者24和/或從服務22移除相應提供 者24的問題。響應于在服務22的引擎26處接收到的來自客戶機10的査詢, 提供者24然后包括與引擎26交互所需的功能,以便從其接收某種形式的査詢、 連接到存儲庫20、向存儲庫20發(fā)送査詢、作為返回從存儲庫20接收響應、以 及進而將某種形式的響應返回給引擎26。這些功能對相關公眾是已知或應是顯 而易見的,因此無需詳細陳述。因此,可采用任何適當類型或版本的這種功能, 而不背離本發(fā)明的精神和范圍,當然要假定這些功能實際上允許服務22從對 應于提供者24的存儲庫20獲得適當?shù)某废畔?。注意,每一提供?4可包括用于將服務22配置成采用這種提供者24的 所有必需的配置信息,或在期望這些配置信息的其余部分能在關于服務22的 別處獲得和/或手動輸入到服務22的情況下可包括少于全部的這些配置信息。 原則上,對每一提供者24,與其相對應的配置信息應包括對應于該提供者24 的存儲庫20對其具有撤消信息的每一 CA的標識。另外,這些配置信息一般 應包括一種特定形式,其中如果服務22實際上允許這一形式,則應出現(xiàn)來自 引擎26的查詢;以及應包括一種特性形式,其中同樣如果實際上服務22允許 這種形式的變化,則應出現(xiàn)返回給引擎26的響應。當然,配置信息可包括其 它信息,而不背離本發(fā)明的精神和范圍。例如,特別地,情況可以是配置信息 包括關于響應提供者24如何連接到相應存儲庫20的連接信息。
在本發(fā)明的一個實施例中,對服務22處的每一提供者的這一配置信息的 記錄連同提供者24的標識一起被儲存在服務22處的配置存儲28內。這一配 置存儲28田而且右羊千當前肚留龍服容"々卜成"話入"苴由的毎一提哄者24
的配置信息的記錄,并且可以理解,該記錄因此用作標識處理針對關于由一特 定CA發(fā)放的證書14的撤消信息的査詢的提供者24的映射。由此,基于在引 擎26處接收到的每一査詢,其中該査詢包括特定證書14的標識以及發(fā)放該特 定證書14的CA的標識,引擎26標識或映射到提供者24以便根據(jù)發(fā)放證書 14的CA來處理來自配置存儲28中的配置信息的查詢。
注意,如可以在從客戶機10到服務22的査詢中找到的特定證書14的標 識和發(fā)放該特定證書14的CA的標識可以是任何特定格式而不背離本發(fā)明的 精神和范圍。然而,通常,這一標識是由客戶機IO從特定證書中獲得的,其 中特定證書14的標識是如由CA發(fā)放且如在證書14中所陳述的序列號的形式, 并且CA的標識是如在證書14中所陳述的CA的公鑰的形式,可能是散列的形 式(圖2)。
無論如何,現(xiàn)在轉向圖4,引擎26在接收到來自客戶機10的對于特定證 書14的撤消信息的査詢(步驟401)之后定位該查詢內所標識的CA和所標識 的證書14 (步驟403),定位配置存儲28中對應于所標識的CA的配置信息 的記錄(步驟405),并從所定位的記錄中標識相應的插件提供者24以處理該 查詢(步驟407)。另外,如有必要,引擎26可在所定位的記錄內定位所標識的提供者24期望從引擎26接收査詢的特定形式、所標識的提供者將向引擎26 返回響應的特定形式、和/或其它信息(如需要)。
基于所定位的配置信息的記錄,如有必要,引擎26然后可適當?shù)馗袷交?對所標識的提供者24的査詢,將該查詢轉發(fā)給這一提供者24 (步驟409), 并等待返回的響應。注意,此處,被轉發(fā)給提供者24的査詢應至少包含證書 24的標識。當然,如有必要,被轉發(fā)給提供者24的查詢還應包含CA的標識, 尤其是在相應的存儲庫20處理來自一個以上CA的撤消信息的情況下。
無論如何,可以理解,提供者24基于所轉發(fā)的査詢還將該査詢的某一版 本轉發(fā)給相應存儲庫20 (步驟411),從其接收具有對應于所標識的證書14 的適當撤消信息的返回的響應(步驟413),并將返回的響應的某一版本轉發(fā) 回引擎26 (步驟415)。有了這一返回的響應,引擎26然后確定所標識的證 書14是否已被撤消(步驟417),并向作出査詢的客戶機IO返回關于該判定 的響應(步驟419)。
注意,從引擎26返回給作出查詢的客戶機10的響應可以是任何形式而不 背離本發(fā)明的精神和范圍。例如,所返回的響應可以僅僅是關于所標識的證書 14是否已被撤消的狀態(tài),或者可提供包括提供者24提供的任何附加信息的部 分或全部的附加信息。這一附加信息的實例包括但不限于,撤消的日期和/或情 況(如可用且適用)??梢岳斫?,這一附加信息可以對作出査詢的客戶機10 是有價值的,尤其是在客戶機IO采用該信息來產生最終撤消判定的時候。
注意,特別是在其中期望服務從客戶機10接收許多關于撤消信息的査詢 且許多査詢是關于同一證書14的高吞吐量環(huán)境中,包括如圖3所示的前端高 速緩存服務30可能是有利的。可以理解,在本發(fā)明的一個實施例中,這一高 速緩存服務30將用作最初從客戶機10接收查詢并對每一查詢確定這一高速緩 存服務30是否具有可用于響應該查詢的相對最新的高速緩存的撤消信息的第 一線。如果是這樣,則高速緩存服務30將用這一相對最新的高速緩存的撤消 信息來響應這一査詢,而無需將查詢轉發(fā)給服務22。然而,如果不是這樣,則 高速緩存服務30將改為將查詢轉發(fā)給服務22以供按如上所述的方式進一步處 理。另外,現(xiàn)在應當理解,在服務22如在圖4的步驟419處那樣向客戶機10 返回響應之后,該響應應通過高速緩存服務30以高速緩存該響應以便在適當時對將來的査詢作出響應。
注意,可采用任何適當形式的高速緩存服務30而不背離本發(fā)明的精神和 范圍。由于高速緩存一般對相關公眾是已知或應當明白的,因此此處無需詳細
描述這一高速緩存服務30的細節(jié)。還要注意,定義高速緩存的撤消信息是否
是相對最新的可用任何方式來執(zhí)行,而不背離本發(fā)明的精神和范圍。例如,情
況可以是,比一設定的時間段,諸如12或24小時老的高速緩存的信息被認為 不是最新的。類似地,情況可以是,基于一根據(jù)以什么頻率訪問高速緩存的信 息來變化的變化的尺度來認為高速緩存的信息不是最新的。
結論
盡管本發(fā)明對于諸如個人計算機、服務器等客戶機IO尤其有用,但是本 發(fā)明也可對任何適當?shù)目蛻魴C10實施,所有這些都不背離本發(fā)明的精神和范 圍。因此,客戶機10被解釋為包含了采用證書14并且需要確定特定證書14 是否已被撤消的任何適當設備。
實現(xiàn)關于本發(fā)明所執(zhí)行的過程所需的程序設計是相對直接的,且應對相關 程序設計公眾是顯而易見的。因此,這一程序設計并未附加于此。由此,任何 特定的編程設計都可用于實現(xiàn)本發(fā)明而不背離其精神和范圍。
在以上描述中,可以看到,本發(fā)明包括一種新的且有用的集中式服務22, 它能夠訪問最新的撤消信息,使得客戶機10能以即時且最新的方式來確定一 特定數(shù)字證書14是否已被撤消。集中式服務22可訪問多個撤消信息存儲庫20, 使得客戶機10能聯(lián)系該服務來獲得關于如由多個證書授權機構(CA)中的任 一個所發(fā)放的證書14的撤消信息。每一附加撤消信息存儲庫20可通過向服務 22添加適當?shù)南鄳峁┱?4而被容易地添加,并且服務22可通過每一提供者 24來容易地被配置成定位關于多個特定證書14中的任一個的適當?shù)某废畔?存儲庫20。因此,應當理解,本發(fā)明不限于所公開的具體實施例,而是旨在覆 蓋落入所附權利要求書所定義的本發(fā)明的精神和范圍之內的修改。
權利要求
1. 一種用于為客戶機確定由一特定證書授權機構(CA)發(fā)放的特定數(shù)字證書是否已被該CA撤消的撤消判定服務,所述服務包括用于從所述客戶機接收查詢的引擎,所述查詢標識所述特定證書和發(fā)放所述特定證書的CA;駐留在所述服務處的至少一個提供者,每一提供者對應于一撤消信息存儲庫并表示所述服務處的相應存儲庫,并且用于連接到所述相應存儲庫,每一存儲庫具有來自至少一個CA的撤消信息,每一提供者響應于來自所述客戶機的被轉發(fā)到該提供者的查詢來確定所述特定證書是否在所述相應存儲庫中被標識為已撤消;以及配置存儲,它包括對應于駐留在所述服務處的每一提供者的配置信息記錄,每一配置信息記錄包括所述提供者的標識和對應于該提供者的存儲庫具有關于其的撤消信息的每一CA的標識,所述引擎基于所接收到的查詢參考所述配置存儲來標識駐留在所述服務處并對應于所接收的查詢的所標識的CA的特定提供者來處理該查詢,并且實際上將所接收的查詢轉發(fā)該所標識的提供者,使得所標識的提供者確定所接收的查詢的所標識的證書是否在所述相應存儲庫中被標識為已撤消,由此,所述服務可通過能夠訪問一個或多個相應存儲庫來處理來自所述客戶機的關于由多個CA中的任一個發(fā)放的數(shù)字證書的查詢,每一所述存儲庫借助一相應提供者。
2. 如權利要求1所述的服務,其特征在于,每一提供者是可被隨意添加 到所述服務或從所述服務移除以添加或移除對所述相應存儲庫的訪問的插件 模塊的形式。
3. 如權利要求2所述的服務,其特征在于,每一提供者包括用于將所述 服務配置成采用該提供者和相應存儲庫的至少某些配置信息,所包括的配置信 息在所述提供者被添加到所述服務時被儲存在所述配置存儲中的相應配置信 息記錄中。
4. 如權利要求1所述的服務,其特征在于,響應于在所述引擎處接收到的來自所述客戶機的查詢,每一提供者與所述引擎交互以從其接收所述査詢, 連接到所述相應存儲庫,將所述查詢發(fā)送給所述相應存儲庫,作為返回從所述 相應存儲庫接收響應,并進而將所述響應返回給所述引擎。
5. 如權利要求1所述的服務,其特征在于,所述配置存儲中對應于每一 提供者的所述配置信息記錄還包括從所述引擎轉發(fā)的査詢要表現(xiàn)的特定形式, 以及返回給所述引擎的響應要表現(xiàn)的特定形式。
6. 如權利要求1所述的服務,其特征在于,所述配置存儲中對應于每一提供者的所述配置信息記錄還包括關于所述提供者如何連接到所述相應存儲 庫的連接信息。
7. 如權利要求l所述的服務,其特征在于,還包括一前端高速緩存服務, 用于最初接收來自所述客戶機的査詢,并且確定該高速緩存服務是否具有可用 于響應該查詢的相對最新的高速緩存的撤消信息。
8. —種其上實例化了一撤消判定服務的計算設備,所述撤消判定服務用 于為客戶機確定由一特定證書授權機構(CA)發(fā)放的特定數(shù)字證書是否已被 該CA撤消,所述服務包括.-用于從所述客戶機接收査詢的引擎,所述査詢標識所述特定證書和發(fā)放所 述特定證書的CA;駐留在所述服務處的至少一個提供者,每一提供者對應于一撤消信息存儲 庫并表示所述服務處的相應存儲庫,并且用于連接到所述相應存儲庫,每一存 儲庫具有來自至少一個CA的撤消信息,每一提供者響應于來自所述客戶機的 被轉發(fā)到該提供者的査詢來確定所述特定證書是否在所述相應存儲庫中被標 識為已撤消;以及配置存儲,它包括對應于駐留在所述服務處的每一提供者的配置信息記 錄,每一配置信息記錄包括所述提供者的標識和對應于該提供者的存儲庫具有 關于其的撤消信息的每一CA的標識,所述引擎基于所接收到的査詢參考所述 配置存儲來標識駐留在所述服務處并對應于所接收的查詢的所標識的CA的特 定提供者來處理該查詢,并且實際上將所接收的查詢轉發(fā)該所標識的提供者, 使得所標識的提供者確定所接收的查詢的所標識的證書是否在所述相應存儲 庫中被標識為已撤消,由此,所述服務可通過能夠訪問一個或多個相應存儲庫來處理來自所述客 戶機的關于由多個CA中的任一個發(fā)放的數(shù)字證書的査詢,每一所述存儲庫借 助一相應提供者。
9. 如權利要求8所述的計算設備,其特征在于,每一提供者是可被隨意 添加到所述服務或從所述服務移除以添加或移除對所述相應存儲庫的訪問的 插件模塊的形式。
10. 如權利要求9所述的計算設備,其特征在于,每一提供者包括用于將 所述服務配置成采用該提供者和相應存儲庫的至少某些配置信息,所包括的配 置信息在所述提供者被添加到所述服務時被儲存在所述配置存儲中的相應配 置信息記錄中。
11. 如權利要求8所述的計算設備,其特征在于,響應于在所述引擎處接 收到的來自所述客戶機的査詢,每一提供者與所述引擎交互以從其接收所述査 詢,連接到所述相應存儲庫,將所述查詢發(fā)送給所述相應存儲庫,作為返回從 所述相應存儲庫接收響應,并進而將所述響應返回給所述引擎。
12. 如權利要求8所述的計算設備,其特征在于,所述配置存儲中對應于 每一提供者的所述配置信息記錄還包括從所述引擎轉發(fā)的查詢要表現(xiàn)的特定 形式,以及返回給所述引擎的響應要表現(xiàn)的特定形式。
13. 如權利要求8所述的計算設備,其特征在于,所述配置存儲中對應于 每一提供者的所述配置信息記錄還包括關于所述提供者如何連接到所述相應 存儲庫的連接信息。
14. 如權利要求1所述的計算設備,其特征在于,所述服務還包括一前端 高速緩存服務,用于最初接收來自所述客戶機的査詢,并且確定該高速緩存服 務是否具有可用于響應該査詢的相對最新的高速緩存的撤消信息。
15. —種供撤消判定服務用于為客戶機確定由一特定證書授權機構(CA) 發(fā)放的特定數(shù)字證書是否已被該CA撤消的方法,所述方法包括從所述客戶機接收查詢,所述査詢標識所述特定證書和發(fā)放所述特定證書 的CA;參考一配置存儲,所述配置存儲包括對應于駐留在所述服務處的至少一個 提供者中的每一個的配置信息記錄,每一配置信息記錄包括所述提供者的標識和對應于該提供者的存儲庫具有關于其的撤消信息的每一CA的標識,這一參考包括標識駐留在所述服務處并對應于所接收的查詢的所標識的CA的特定提 供者來處理該査詢;以及將所接收的査詢轉發(fā)該所標識的提供者,以確定所接收的査詢的所標識的 證書是否在所述相應存儲庫中被標識為己撤消,因而所標識的提供者表示所述 服務處的相應存儲庫,并且.-連接到所述相應存儲庫;以及從所述相應存儲庫中確定所述特定證書是否在所述相應存儲庫中被 標識為已撤消,由此,所述服務可通過能夠訪問一個或多個相應存儲庫來處理來自所述客 戶機的關于由多個CA中的任一個發(fā)放的數(shù)字證書的查詢,每一所述存儲庫借 助一相應提供者。
16. 如權利要求13所述的方法,其特征在于,包括 從所述客戶機接收關于一特定證書的撤消信息的査詢; 在所述査詢內定位所標識的CA和所標識的證書; 在所述配置存儲內定位對應于所標識的CA的配置信息記錄;從所定位的記錄中標識駐留在所述服務處的相應提供者以處理所述査詢;將所述査詢轉發(fā)給所標識的提供者,所標識的提供者將所轉發(fā)的查詢轉發(fā) 給相應存儲庫并接收從所述相應存儲庫返回的帶有對應于所標識的證書的撤 消信息的響應。
17. 如權利要求15所述的方法,其特征在于,每一提供者是可被隨意添加到所述服務或從所述服務移除以添加或移除對所述相應存儲庫的訪問的插 件模塊的形式,并且其中,每一提供者包括用于將所述服務配置成采用該提供 者和相應存儲庫的至少某些配置信息,所述方法還包括在所述提供者被添加到 所述服務時將所包括的配置信息存儲在所述配置存儲中的相應配置信息記錄 中。
18. 如權利要求15所述的方法,其特征在于,響應于在所述服務的引擎 處接收到的來自所述客戶機的查詢,所標識的提供者從所述引擎接收所述査 詢,連接到所述相應存儲庫,將所述査詢發(fā)送給所述相應存儲庫,作為返回從所述相應存儲庫接收響應,并進而將所述響應返回給所述引擎。
全文摘要
一種撤消判定服務為客戶機確定由一特定證書授權機構(CA)發(fā)放的特定數(shù)字證書是否已被該CA撤消。在該服務中,一引擎從客戶機接收查詢,其中該查詢標識該特定證書和發(fā)放該特定證書的CA。至少一個提供者駐留在該服務處,其中每一提供者對應于一撤消信息存儲庫,并表示該服務處的相應存儲庫,并連接到該相應存儲庫。每一存儲庫具有來自至少一個CA的撤消信息。一配置存儲包括對應于駐留在該服務處的每一提供者的配置信息記錄。每一配置信息記錄包括提供者的標識以及對應于該提供者的存儲庫對其具有撤消信息的每一CA的標識。
文檔編號G06F15/00GK101305359SQ200680042194
公開日2008年11月12日 申請日期2006年11月14日 優(yōu)先權日2005年11月14日
發(fā)明者A·本-梅內漢姆, M·I·艾恩-皮耶特-羅莎努, V·阿加沃 申請人:微軟公司