APNIC文摘 — RPKI的信任架構(下)

本APNIC文摘原標題為Models of trust for the RPKI,由Geoff Huston撰文。

公共金鑰基礎建設(Public Key Infrastructure,PKI)的信任錨點是受PKI使用者信任、自行簽署的憑證。PKI的憑證檢驗流程在憑證發放和接收者之間建立鏈結,並將此鏈結連結受檢驗的憑證。

理論上而言,若PKI具有多個信任錨點,任一信任錨點的可信度應該都等值。然而,目前做法無法排除假造憑證被當成信任錨點的可能,因此嚴謹的PKI僅容許一個信任錨點。

一開始RPKI的信任模型,提議使用僅由IANA負責的單一信任錨點。但就如前文說明,IANA保存的註冊管理紀錄與實際由RIR持有的註冊管理紀錄有落差。為避免IANA基於落差資訊發出錯誤的憑證,必須將RIR間的註冊紀錄變動納入憑證架構。

目前RPKI的框架使用5個來自各RIR的信任錨點,每個RIR憑證都包含所有IP號碼資源的完整清單。若有RIR間資源轉移的情形,僅需由轉出資源的RIR自清單中刪除該資源,接收RIR新增該資源憑證即可。

這做法簡單不需多餘步驟,但實際上是多信任錨點的情境。這表示使用者無法確認應該使用哪個RIR提供的信任錨點來檢驗單一號碼資源,也無法避免遭假造憑證矇騙的可能。

如何改善此狀況?

現在我們面對的問題,是有沒有可能無需大規模改變目前位址及註冊紀錄管理流程,仍確保RIR很難被迫發放虛假憑證,進而改善目前的困境?

換句話說,可不可以不改變RIR各自使用的流程或RPKI工具,只要新增一個凌駕所有RIR憑證的信任錨點,由這個錨點發放5個子憑證(分屬5個RIR),確認任一號碼資源僅有一個相應的RIR憑證?

為達成此目標,首先必須了解哪個RIR持有哪些號碼資源的權威註冊資料紀錄。所有RIR本來就會發布「每日統計資料報告」,號碼資源組織(Numbers Resource Organization,NRO)則會整合這些資料產出統整報告。這份統整報告等同標注所有號碼資源與相應RIR的地圖,將是實驗上述假設,建立單一信任錨點雛形的基石。

單一信任錨點雛形

此雛形實驗中使用的信任錨點,沿用傳統的自行簽署RPKI憑證,憑證發放及接收方的欄位都顯示「CN=example-nro-ta」的值。

此憑證的資源屬性會統整所有RIR的網際網路號碼資源清單。憑證並不包含「所有號碼資源」,僅列出IANA指配予RIR系統的資源。

IANA註冊管理紀錄中未顯示為由RIR管理的資源,如前綴註明由IANA保留、multicast IP位址區段,以及IANA未指派的位址(如127.0.0.0/8和240.0.0.0/4),也不會納入憑證。

此信任錨點會簽署RIR營運憑證(operational certificate)的所有instance。此信任錨點的配對金鑰利用OpenSSL功能,自可用憑證生成X509憑證簽署請求(Certificate Signing Request,CSR),簽署覆蓋RIR的營運憑證已將憑證發放方改成新的「CN=example-nro-ta」,但憑證收受方和相關資訊欄位則保留不更動。使用者由此可確認來自同一RIR的RPKI產品不變並檢驗相關憑證。整體流程如下圖:

圖 1 單一信任錨點的憑證檢驗架構

此流程希望保留RIR既有的RPKI產品,也不需更動任何現有的RPKI客戶端工具及相關運作。只要使用的客戶端工具支援RFC 8360 ,理論上都可透過上述階層式信任錨點驗證資源憑證。

有興趣的讀者,可在APNIC Labs找到更多細節說明。在此強調,這目前仍只是思想實驗的驗證模型,並非產品服務,也還無法實用。但這的確證明可能以單一憑證取代目前的多信任錨點架構。

本文內容純屬筆者個人意見,並不代表TWNIC立場

*台灣網路資訊中心(TWNIC)與亞太網路資訊中心(APNIC)合作,定期精選APNIC Blog文章翻譯摘要,提供中心部落格讀者了解目前亞太地區網路發展之最新趨勢。原文標題為Models of trust for the RPKI

Scroll to Top