簡體   English   中英

如何在X509TrustManager中啟用OCSP?

[英]How to enable OCSP in X509TrustManager?

System.setProperty("com.sun.net.ssl.checkRevocation", "true");
Security.setProperty("ocsp.enable", "true");

設置這些屬性確實足以啟用OCSP嗎?

如果是這樣,那為什么我們需要彈性城堡OCSP支持而不是僅設置此屬性?

如果證書包含頒發機構信息訪問擴展名(OCSPSigning),則您無事可做,請設置您提到的屬性。

System.setProperty("com.sun.net.ssl.checkRevocation", "true");
Security.setProperty("ocsp.enable", "true");

有關更多信息,請參見RFC3280如何使用OpenSSL升級OCSP

如果您的CA不提供已頒發證書的擴展名,則可以通過設置屬性來配置響應者URL

Security.setProperty("ocsp.responderURL", ...)

默認情況下,OCSP響應程序的位置是根據要驗證的證書隱式確定的。 當證書中沒有頒發機構信息訪問擴展名(在RFC 3280中定義)或需要重寫時,使用此屬性。

如果OCSP響應者的證書與頒發者的證書不匹配,則可以通過設置

Security.setProperty("ocsp.responderCertSubjectName", ...);

默認情況下,OCSP響應者的證書是正在驗證的證書的頒發者的證書。 當默認值不適用時,此屬性標識OCSP響應者的證書。 它的值是一個字符串專有名稱(在RFC 2253中定義),用於在證書路徑驗證期間提供的一組證書中標識一個證書。 如果僅主題名稱不足以唯一地標識證書,則必須同時使用ocsp.responderCertIssuerName和ocsp.responderCertSerialNumber屬性。 設置屬性th后,將忽略這兩個屬性。

有關可用於配置OCSP的所有屬性的說明,請參閱《 JavaTM PKI程序員指南》


為什么我們需要彈性城堡OCSP支持而不僅僅是設置此屬性?

沒有人說您必須使用充氣城堡作為安全提供者。 至少在使用JRE 1.8的情況下,使用默認的sun JCE很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM