
有時在證書有效期前就得讓證書不再有效,這即為證書的撤銷。證書撤銷的理由有許多,如用戶身份的改變、密鑰的泄露等。因此,得有一種有效與可信的方法在證書自然超期之前把它撤銷。
但證書撤銷的問題並未得到很好解決,現有的方法可分為:
·用周期性的發佈機制諸如證書撤銷列表(CRL),CRL還可分為幾種不同的形式;
·在線查詢機制,如在線證書狀態協議(OCSP)。
下面介紹具體的證書撤銷的方法。
1.完全CRL
CRL是一種含撤銷的證書列表的簽名數據結構。CRL的完整性與可靠性是顺利获得它自己的數字簽名進行確保的。CRL的簽名者既可是頒發證書的簽名者,也可不是。
完全CRL是把某個CA域內的全部撤銷信息都含在一個CRL中。完全CBL適合於終端實體數目相對較少的域中。
2.Authority撤銷列表(ARL)
ARL實際上是僅含CA的撤銷信息的CRL。ARL的頒發者一般是上級CA,承擔撤銷子CA的證書或交叉證書的職責。當驗證有關證書時,一個有效的ARL對任意簽名的CA均一定得可見。
3.CRL分佈點
CRL分佈點可讓一個CA的撤銷信息由多個CRL發佈出去,CRL分佈點與完全CRL比較的優勢如下。
(1)撤銷信息可被分成許多可控的片段來防止超大CRL的增長。
(2)證書可體現CRL分佈點的位置,如此用戶則無需事先分析關於特定證書的撤銷信息的存放位置。
4.重定向CRL
重定向CRL可用於展示在什麼位置能找到每個CRL分段。重定對CRL給出相對標準CRL分佈點更靈活的分段方位信息。這是用定義一種新的CRL擴展達到的。這種新擴展可在不影響已有證書的情況下,改變撤銷信息的分段和/或分佈位置。
5.增量CRL
增量CRL每次僅產生相對一個已頒發的基本CRL增加的撤銷信息。這樣增量CRL的文件大小比完全CRL小許多,改善了性能。可在同一個基本CRL的基礎上,建立多個增量CRL每個後面的增量CRL除含有上一個增量CBL中的撤銷信息外,還增加了新的已撤銷證書。因此,只用檢索最新的增量CRL,無需存儲之前頒發的不同增量CRL。
6.間接CRL
間接CRL使在一個CRL中發佈來自多個CA的撤銷信息。間接CRL的使用可減少用戶在證書驗證過程中需檢索的總的CRL數目。此方法在域間也是非常有效的,降低了流量負載和成本。撤銷信息出自不同的地方,就必須確定在證書撤銷列表中各個項目的相應CA,所以在每項里均有一個證書頒發者字段。
7.證書撤銷樹(CRT)
CRT技術是基於Merkle雜湊樹的周期發佈機制,就是說該樹表示了某個PKI團體的全部撤銷信息。要得到一個雜湊樹,每個CA則需產生一系列的序列。每個序列表示一個範圍,此範圍的最低點代表本CA的某個撤銷證書的序列號,而範圍內的證書都沒有被撤銷。一個CA對應的各個序列排序,全體CA的序列集就能產生雜湊樹。CRT的主要長處是它用一種很簡潔的方式來代表大量的證書撤銷信息。在數量級上,1個CRT的大小為log2N,N為已撤銷證書的數量。
8.在線查詢機制
在線查詢機制一般要求用戶是在線狀態。现在最廣泛的在線查詢機制是在線證書狀態協議(OCSP)。OCSP(RFC2560)是一種比較簡單的請求/響應協議。它給出了從可信第三方(OCSP響應者)得到在線撤銷信息的方式。
