[英]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.