recientemente Mozilla宣布推出新的證書檢測機制 撤銷 在每晚版本的Firefox中都可以找到“ CRLite”。 這個新機制 允許組織驗證 有效的證書吊銷 針對用戶系統上託管的數據庫。
到目前為止使用的證書驗證 與基於外部服務的使用 在OCSP協議中 (在線證書狀態協議) 需要保證訪問網絡, 這會導致處理請求的明顯延遲(平均350毫秒),並且存在機密性問題(響應請求的服務器OCSP獲取有關特定證書的信息,這些信息可用於判斷用戶打開了哪些站點)。
還 有可能針對CRL進行本地驗證 (證書吊銷列表), 但是這種方法的缺點是下載的數據量大:當前證書吊銷數據庫約佔300 MB,並且還在繼續增長。
Firefox一直在使用集中式OneCRL黑名單 自2015年以來,該功能可阻止證書頒發機構阻止受到破壞和吊銷的證書,以及對Google安全瀏覽服務的訪問權限,以確定可能的惡意活動。
像Chrome中的CRLSets一樣, 充當匯總證書頒發機構CRL列表的中間鏈接 並提供單個集中式OCSP服務來驗證已撤銷的證書,從而可以不直接向證書頒發機構發送請求。
默認, 如果無法通過OCSP進行驗證,則瀏覽器認為該證書有效。 從而 如果由於網絡問題而無法使用該服務 和內部網絡限制 或它可能在MITM攻擊中被攻擊者阻止。 為避免此類攻擊, 必須實施釘書針技術 允許將OCSP訪問錯誤或OCSP不可訪問性解釋為證書的問題,但是此功能是可選的,並且需要對證書進行特殊註冊。
關於CRLite
CRLite允許您攜帶有關所有吊銷證書的完整信息 以易於更新的結構 僅1 MB,因此可以存儲整個CRL數據庫 在客戶端。 瀏覽器將能夠每天同步其吊銷證書中的數據副本,並且該數據庫將在任何情況下都可用。
CRLite結合了來自證書透明度的信息, 所有已頒發和已撤銷證書的公共記錄以及Internet證書掃描的結果(收集了證書中心的各種CRL列表,並添加了有關所有已知證書的信息)。
使用Bloom過濾器打包數據,一種概率結構,允許錯誤確定丟失的項目,但排除了遺漏的現有項目(也就是說,有效證書有可能會出現誤報,但可以確保檢測到已撤銷的證書)。
為了消除錯誤警報,CRLite引入了其他糾正性過濾級別。 構建結構後,將列出所有源記錄,並檢測到錯誤警報。
基於此驗證的結果,創建了一個附加結構,該結構在第一個結構上層疊並更正出現的任何錯誤警報。 重複該操作,直到在驗證期間完全排除誤報為止。
通常Al,要完全覆蓋所有數據,創建7到10層就足夠了。 由於由於週期性同步而導致的數據庫狀態略微落後於CRL的當前狀態,因此使用協議OCSP(包括使用OCSP裝訂技術)對CRLite數據庫的最新更新之後發布的新證書進行驗證。 。
Mozilla的CRLite實施是根據免費的MPL 2.0許可證發布的。 生成數據庫和服務器組件的代碼是用Python和Go編寫的。 使用Rust語言準備了添加到Firefox以便從數據庫讀取數據的客戶端部件。