我想驗證一個針對java密鑰庫的證書,這是我使用的代碼如下所示。如果它成功完成,那麼我認爲驗證已經正確完成,否則如果拋出異常,則驗證失敗。 我擔心的是:使用Java API驗證X509證書
以下是足夠的代碼驗證證書?在這裏有什麼我在這裏失蹤(像檢查發送給我的證書的計算機簽名的數據?)? 2.是否應驗證證書中包含的簽名?如果是,如何?
在此先感謝您的回覆! 普拉迪普
// To check the validity of the dates
cert.checkValidity();
//Check the chain
CertificateFactory cf = CertificateFactory.getInstance("X.509");
List<X509Certificate> mylist = new ArrayList<X509Certificate>();
mylist.add(cert);
CertPath cp = cf.generateCertPath(mylist);
PKIXParameters params = new PKIXParameters(getTrustStore());
params.setRevocationEnabled(false);
CertPathValidator cpv =
CertPathValidator.getInstance(CertPathValidator.getDefaultType());
PKIXCertPathValidatorResult pkixCertPathValidatorResult =
(PKIXCertPathValidatorResult) cpv.validate(cp, params);
爲什麼? JSSE已經爲你做了這一切。 – EJP 2013-06-04 02:07:22
@EJP,請您詳細說明JSSE如何做到這一點。謝謝。 – user674669 2017-08-01 19:31:22