SSL證書之神秘預證書
SSL預證書是用於證書透明度(CT)另一種特殊類型的SSL證書。SSL預證書與日常的SSL證書有所不同,SSL預證書並不是用於通過驗證服務器身份後生成HTTPS鏈接,而是允許將證書透明度數據直接嵌入到最終SSL證書中。
SSL預認證證書與傳統SSL證書不同,SSL預證書很少直接顯示給最終用戶,所以用戶並不能正確判斷自己的證書是否存在SSL預證書。
下面一起來認識預認證在證書透明度RFC中定義,什麽是預認證證書,它的工作原理是什麽。
為什麽要使用預認證?
L預證書是提交證書透明度日誌(SCT)證明與證書的多種方式之一。預驗證的優點是可以將 CT數據嵌入SSL證書本身,而不需要另存為單獨的文件發送(日常的方式是在握手期間將SCT作為單獨的文件發送,與OCSP Stapling類似)。
CT日誌的數據在SSL預證書中自動生成一個有效的簽名(SCT)。目前CA頒發最終的SSL證書時需要在日誌中生成SCT。而SSL預證書可解決此類問題,允許日誌生成正確的簽名,而不需要最終的證書。
SSL預證書工作原理
1、證書頒發機構(CA)向客戶簽署並頒發SSL證書時。該SSL證書必須要符合瀏覽器的CT策略,所以CA需將證書提交CT日誌。
2、CA機構提供CT日誌有多種方式,其中如果他們想將證書的CT日誌直接嵌入最終的SSL證書,那麽就需要使用SSL預證書。
3、CA在簽署最終證書之前,首先要創建一個預認證,其中該證書包含CT日誌的數據,格式為指定格式,否則將被視為無效證書。
4、CA將預認證提交到CT日誌並接收SCT(簽名證書時間戳)。這是一個日誌簽署的文件,可用於證明客戶端證書已被記錄。
5、CA的SCT,可以將其放入最終的證書,並將其作為簽名數據的一部分。CA發布最終證書,SCT可嵌入其中。
6、最後,客服端可以部署證書,並證明他們的證書中包含了CT合規性。這是包含SCT的最佳方法。
如果用戶搜索證書透明度日誌,就可能會遇到預證書,但不能檢查其關聯系的(有效的)證書。因為CA不需要將後續證書提交到日誌。即使預認證不被客戶視為有效,但是仍然保留相同的發行標準。最新的CT RFC規定,“預認證的錯誤等同於最終證書的錯誤。”
預證書的擴展
預證書的證書與常規證書不同,它的的擴展名為X.509 v3格式。該格式具有靈活性,允許采用新功能,而不需要新版本的格式。
預證書的證書包含一個專門為擴展而創建的“毒藥擴展”(“poison extension”)。之所以以此為名是因為它是一個被標記為關鍵的擴展(意味著如果不能正確解析這個證書,就會被視為無效的),並且被設計成不接受客戶端軟件的支持。
這意味著當客戶端(例如web瀏覽器或操作系統)訪問一個預先證書時,能處理未知的擴展,並查看到擴展的內容,則該預驗證將被視為無效,因為這是一個關鍵的擴展,是無法解讀的(假設客戶端能夠讀取,則該證書將標記為無效)。
這種“毒藥擴展”的存在是常規證書和預認證證書之間的唯一區別(這是對於CT標準的版本1的情況)。
“毒藥擴展”的擴展名是用唯一的OID指示:1.3.6.1.4.1.11129.2.4.3。OID 或對象標識符是分配給某些用於提供計算機可解析格式的標準化字符串。例如,可以查看該OID號碼,並看到它已被分配了以下目的:“證書透明度預認證毒藥擴展”。其他OID(如1.3.6.1.5.5.7.48.1)用於SSL證書中以指示該證書的OCSP URL。
如果用戶在Windows中下載並打開一個預認證,它看起來與常規SSL證書非常相似。但在Windows“證書查看器”的“ 常規”窗格中,將註意到它將顯示為“證書包含未標識為”關鍵“的擴展名。”在“ 詳細信息”中,您會看到底部附近列出的毒藥擴展名(查找OID)。
如果您在Windows中下載並打開一個預認證,那麽它看起來與普通的SSL證書非常相似。但是,在Windows“證書查看器”的General窗格上,您會註意到它將顯示為“證書包含未標識為‘關鍵’的擴展名”。在“ 詳細信息”中,會看到底部附近列出的毒藥擴展名(查找OID)。
因為這個擴展是存在的,Windows將預認證視視為無效。這將防止在使用SSL證書(例如在HTTPS連接中)時使用它。在macOS上,證書查看器會顯示“這個證書不能使用(未被識別的臨界擴展)。”
在證書透明度協議2.0版本中(仍在開發中的RFC6962),預認證的格式將從X.509更改為CMS(加密消息語法)。這意味著預證書的技術格式和編碼將會發生改變,並且將不再是與常規SSL證書相同的格式。
這意味著,在部署了CT 2.0之後,將不再需要使用這個惡意擴展,因為沒有必要將預認證證書與有效的X.509 SSL證書區分開來。
稿源:The ssl store
文章轉載:https://www.trustauth.cn/news/security-news/18033.html
SSL證書之神秘預證書