憑證透明度如何發揮作用?
憑證透明度(CT)在現有的憑證授權中心(CA)基礎結構內發揮作用,是一種為實體對頒發SSL憑證的授權提供頒發後驗證的方法。
憑證頒發流程如下所示,其中因CT所引入的新步驟以藍色強調顯示。
- 伺服器操作員從CA購買憑證
- CA驗證伺服器操作員
- CA創建預先憑證
- CA使用記錄伺服器記錄預先憑證,記錄伺服器返回已簽署的憑證時間戳記(SCT)
- CA頒發SSL憑證
- SSL憑證可能包含已簽署的憑證時間戳記(SCT)
- 瀏覽器在TLS握手期間驗證SSL憑證
- 瀏覽器透過OCSP裝訂、TLS擴充或憑證中內嵌的訊息驗證在TLS握手期間提供的SCT
- 瀏覽器與伺服器建立連線
- SSL憑證在其從瀏覽器被傳送到伺服器時對所有資料進行加密
有三種可能的方法可以在TLS握手期間提供SCT,如 這裡所述。以下是其中一種SCT提供方法的流程圖。
憑證透明度組成部分
CT系統有四個組成部分:CA、憑證記錄、憑證監測人員和憑證稽核人員。以下是示意圖表以及這些組成部分可能的組態。下文將更詳細地解譯其中的每一個組成部分。
憑證授權中心
CT在現有的公開信任CA系統中發揮作用。透過使用CT,CA可以在公用記錄中納入憑證頒發的證據,而瀏覽器可以在握手期間檢查這些SCT。對憑證進行記錄是證明CA正確作業的證據,並能讓人們深入瞭解CA作業。
憑證記錄
理想情況下,憑證記錄將儲存所有已頒發的SSL憑證的記錄;儘管其最開始推出時僅限於EV憑證。由於以下幾個原因,需要多個獨立記錄:1) 多個記錄能在某個記錄失效的情況下提供備份,2)獨立記錄意味著即使一個記錄或記錄操作員遭受攻擊,憑證仍然可以被驗證;3) 獨立記錄意味著單一的政府動作無法從所有記錄中移除頒發的證據;且4)多個獨立記錄意味著CA和記錄操作員無法串通起來以掩蓋令人尷尬的憑證頒發不當的情況。
所有記錄都有以下特點:
- 僅能添加——憑證只能被添加到記錄中;它們不能被移除、修改或追溯插入。
- 加密保障——記錄使用一種被稱為Merkle Tree雜湊的加密機制來防止竄改。
- 可公開稽核——任何人都可以查詢記錄並尋找頒發不當的憑證或惡意憑證。所有的憑證記錄都必須公開其URL和公開金鑰。
憑證監測人員
憑證監測人員是指任何監看憑證記錄以發現可疑活動的人,如大型品牌的擁有者或CA。
監測人員可以使用HTTP GET命令從記錄中獲取訊息。每個客戶都可以自行開展記錄監測,也可以將其委託給另一方開展。DigiCert計畫為其客戶提供記錄監測服務。
憑證稽核人員
憑證稽核人員檢查記錄以驗證記錄是否與其他記錄一致,是否添加了新項目,以及記錄是否未被追溯插入、移除或修改憑證的人所損壞。
稽核很可能是內建於瀏覽器的自動化流程。然而,稽核可以是一種獨立的服務,也可以是監測人員的次要職能。