protected Vector getOCSPUrls(AuthorityInformationAccess authInfoAccess) { Vector urls = new Vector(); if (authInfoAccess != null) { AccessDescription[] ads = authInfoAccess.getAccessDescriptions(); for (int i = 0; i < ads.length; i++) { if (ads[i].getAccessMethod().equals(AccessDescription.id_ad_ocsp)) { GeneralName name = ads[i].getAccessLocation(); if (name.getTagNo() == GeneralName.uniformResourceIdentifier) { String url = ((DERIA5String) name.getName()).getString(); urls.add(url); } } } } return urls; }
protected Vector getOCSPUrls(AuthorityInformationAccess authInfoAccess) { Vector urls = new Vector(); if (authInfoAccess != null) { AccessDescription[] ads = authInfoAccess.getAccessDescriptions(); for (int i = 0; i < ads.length; i++) { if (ads[i].getAccessMethod().equals(AccessDescription.id_ad_ocsp)) { GeneralName name = ads[i].getAccessLocation(); if (name.getTagNo() == GeneralName.uniformResourceIdentifier) { String url = ((DERIA5String) name.getName()).getString(); urls.add(url); } } } } return urls; }
@Nullable public static String getIssuerUrl(Certificate certificate) { assertX509Certificate(certificate); byte[] encodedExtensionValue = ((X509Certificate) certificate).getExtensionValue(Extension.authorityInfoAccess.getId()); if (encodedExtensionValue == null) { return null; } ASN1OctetString octetString = ASN1OctetString.getInstance(encodedExtensionValue); AuthorityInformationAccess informationAccess = AuthorityInformationAccess.getInstance(octetString.getOctets()); for (AccessDescription description : informationAccess.getAccessDescriptions()) { if (description.getAccessMethod().equals(AccessDescription.id_ad_caIssuers)) { return description.getAccessLocation().getName().toString(); } } return null; }