本文整理了Java中org.bouncycastle.asn1.x509.AccessDescription.getAccessLocation()
方法的一些代码示例,展示了AccessDescription.getAccessLocation()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AccessDescription.getAccessLocation()
方法的具体详情如下:
包路径:org.bouncycastle.asn1.x509.AccessDescription
类名称:AccessDescription
方法名:getAccessLocation
暂无
代码示例来源:origin: kaikramer/keystore-explorer
@Override
public int compare(AccessDescription description1, AccessDescription description2) {
return GeneralNameUtil.safeToString(description1.getAccessLocation(), false).compareToIgnoreCase(
GeneralNameUtil.safeToString(description2.getAccessLocation(), false));
}
}
代码示例来源:origin: kaikramer/keystore-explorer
cell.setText(accessDescription.getAccessMethod().getId());
} else {
cell.setText(GeneralNameUtil.safeToString(accessDescription.getAccessLocation(), false));
代码示例来源:origin: kaikramer/keystore-explorer
private void populate(AccessDescription accessDescription) {
if (accessDescription != null) {
joiAccessMethod.setObjectId(accessDescription.getAccessMethod());
jgnAccessLocation.setGeneralName(accessDescription.getAccessLocation());
}
}
代码示例来源:origin: org.xipki.shells/ocsp-client-shell
public static List<String> extractOcspUrls(AuthorityInformationAccess aia)
throws CertificateEncodingException {
AccessDescription[] accessDescriptions = aia.getAccessDescriptions();
List<AccessDescription> ocspAccessDescriptions = new LinkedList<>();
for (AccessDescription accessDescription : accessDescriptions) {
if (accessDescription.getAccessMethod().equals(X509ObjectIdentifiers.id_ad_ocsp)) {
ocspAccessDescriptions.add(accessDescription);
}
}
final int n = ocspAccessDescriptions.size();
List<String> ocspUris = new ArrayList<>(n);
for (int i = 0; i < n; i++) {
GeneralName accessLocation = ocspAccessDescriptions.get(i).getAccessLocation();
if (accessLocation.getTagNo() == GeneralName.uniformResourceIdentifier) {
String ocspUri = ((ASN1String) accessLocation.getName()).getString();
ocspUris.add(ocspUri);
}
}
return ocspUris;
}
代码示例来源:origin: org.xipki.shell/ocsp-client-shell
public static List<String> extractOcspUrls(AuthorityInformationAccess aia)
throws CertificateEncodingException {
AccessDescription[] accessDescriptions = aia.getAccessDescriptions();
List<AccessDescription> ocspAccessDescriptions = new LinkedList<>();
for (AccessDescription accessDescription : accessDescriptions) {
if (accessDescription.getAccessMethod().equals(X509ObjectIdentifiers.id_ad_ocsp)) {
ocspAccessDescriptions.add(accessDescription);
}
}
final int n = ocspAccessDescriptions.size();
List<String> ocspUris = new ArrayList<>(n);
for (int i = 0; i < n; i++) {
GeneralName accessLocation = ocspAccessDescriptions.get(i).getAccessLocation();
if (accessLocation.getTagNo() == GeneralName.uniformResourceIdentifier) {
String ocspUri = ((ASN1String) accessLocation.getName()).getString();
ocspUris.add(ocspUri);
}
}
return ocspUris;
}
代码示例来源:origin: kaikramer/keystore-explorer
GeneralName accessLocation = accessDescription.getAccessLocation();
代码示例来源:origin: org.demoiselle.signer/core
/**
* Returns the AuthorityInfoAccess extension value on list format.<br>
* Otherwise, returns <b>list empty</b>.<br>
* @return List Authority info access list
*/
public List<String> getAuthorityInfoAccess() {
List<String> address = new ArrayList<String>();
try {
byte[] authorityInfoAccess = certificate.getExtensionValue(Extension.authorityInfoAccess.getId());
if (authorityInfoAccess != null && authorityInfoAccess.length > 0) {
AuthorityInformationAccess infoAccess = AuthorityInformationAccess.getInstance(X509ExtensionUtil
.fromExtensionValue(authorityInfoAccess));
for (AccessDescription desc : infoAccess.getAccessDescriptions())
if (desc.getAccessLocation().getTagNo() == GeneralName.uniformResourceIdentifier)
address.add(((DERIA5String) desc.getAccessLocation().getName()).getString());
}
return address;
} catch (Exception error) {
logger.info(error.getMessage());
return address;
}
}
代码示例来源:origin: demoiselle/certificate
/**
* Returns the AuthorityInfoAccess extension value on list format.<br>
* Otherwise, returns <b>list empty</b>.<br>
* @return List
*/
public List<String> getAuthorityInfoAccess() {
List<String> address = new ArrayList<String>();
try {
byte[] extensionValue = certificate.getExtensionValue(X509Extensions.AuthorityInfoAccess.getId());
if (extensionValue != null && extensionValue.length > 0) {
AuthorityInformationAccess infoAccess = AuthorityInformationAccess.getInstance(X509ExtensionUtil
.fromExtensionValue(extensionValue));
for (AccessDescription desc : infoAccess.getAccessDescriptions())
if (desc.getAccessLocation().getTagNo() == GeneralName.uniformResourceIdentifier)
address.add(((DERIA5String) desc.getAccessLocation().getName()).getString());
}
return address;
} catch (IOException error) {
LOGGER.info(error.getMessage());
return address;
}
}
代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on
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;
}
代码示例来源:origin: arhs/sd-dss
continue;
final GeneralName gn = accessDescription.getAccessLocation();
if (uniformResourceIdentifier != gn.getTagNo()) {
LOG.warn("Not a uniform resource identifier!");
代码示例来源:origin: esig/dss
private static List<String> getAccessLocations(final CertificateToken certificate, ASN1ObjectIdentifier aiaType) {
List<String> locationsUrls = new ArrayList<String>();
final byte[] authInfoAccessExtensionValue = certificate.getCertificate().getExtensionValue(Extension.authorityInfoAccess.getId());
if (null == authInfoAccessExtensionValue) {
return locationsUrls;
}
try {
ASN1Sequence asn1Sequence = DSSASN1Utils.getAsn1SequenceFromDerOctetString(authInfoAccessExtensionValue);
AuthorityInformationAccess authorityInformationAccess = AuthorityInformationAccess.getInstance(asn1Sequence);
AccessDescription[] accessDescriptions = authorityInformationAccess.getAccessDescriptions();
for (AccessDescription accessDescription : accessDescriptions) {
if (aiaType.equals(accessDescription.getAccessMethod())) {
GeneralName gn = accessDescription.getAccessLocation();
String location = parseGn(gn);
if (location != null) {
locationsUrls.add(location);
}
}
}
} catch (Exception e) {
LOG.error("Unable to parse authorityInfoAccess", e);
}
return locationsUrls;
}
代码示例来源:origin: edu.vt.middleware/vt-crypt
/**
* Creates a {@link AccessDescriptionList} object from DER data.
*
* @param enc DER encoded distribution point list.
*
* @return List of access descriptions.
*/
public static AccessDescriptionList createAccessDescriptionList(
final DEREncodable enc)
{
final org.bouncycastle.asn1.x509.AuthorityInformationAccess info =
org.bouncycastle.asn1.x509.AuthorityInformationAccess.getInstance(enc);
final List<AccessDescription> accessDescList =
new ArrayList<AccessDescription>();
for (
org.bouncycastle.asn1.x509.AccessDescription desc :
info.getAccessDescriptions()) {
accessDescList.add(
new AccessDescription(
AccessMethod.getByOid(desc.getAccessMethod().toString()),
createGeneralName(desc.getAccessLocation())));
}
return new AccessDescriptionList(accessDescList);
}
}
代码示例来源:origin: org.keycloak/keycloak-common
if (ad.getAccessMethod().equals(AccessDescription.id_ad_ocsp)) {
if (ad.getAccessLocation().getTagNo() == GeneralName.uniformResourceIdentifier) {
DERIA5String value = DERIA5String.getInstance(ad.getAccessLocation().getName());
responderURIs.add(value.getString());
代码示例来源:origin: zero11it/acme-client
public static String getCACertificateURL(X509Certificate certificate) throws IOException {
byte[] bOctets = ((ASN1OctetString) ASN1Primitive.fromByteArray(certificate.getExtensionValue(Extension.authorityInfoAccess.getId()))).getOctets();
AuthorityInformationAccess access = AuthorityInformationAccess.getInstance(ASN1Sequence.fromByteArray(bOctets));
for (AccessDescription ad:access.getAccessDescriptions()){
if (ad.getAccessMethod().equals(X509ObjectIdentifiers.id_ad_caIssuers)){
return ad.getAccessLocation().getName().toString();
}
}
return null;
}
}
代码示例来源:origin: poreid/poreid
private URL getOcspUrlFromCertificate(X509Certificate certificate) {
byte[] octetBytes = certificate.getExtensionValue(org.bouncycastle.asn1.x509.Extension.authorityInfoAccess.getId());
if (null != octetBytes) {
try {
byte[] encoded = X509ExtensionUtil.fromExtensionValue(octetBytes).getEncoded();
ASN1Sequence seq = ASN1Sequence.getInstance(ASN1Primitive.fromByteArray(encoded));
AuthorityInformationAccess access = AuthorityInformationAccess.getInstance(seq);
for (AccessDescription accessDescription : access.getAccessDescriptions()){
if (accessDescription.getAccessMethod().equals(AccessDescription.id_ad_ocsp)){
url = new URL(accessDescription.getAccessLocation().getName().toString());
break;
}
}
} catch (IOException ignore) {
}
}
return url;
}
代码示例来源:origin: be.fedict.jtrust/jtrust-lib
continue;
GeneralName gn = accessDescription.getAccessLocation();
if (gn.getTagNo() != GeneralName.uniformResourceIdentifier) {
LOG.debug("not a uniform resource identifier");
代码示例来源:origin: DirectProject/nhin-d
retVal.add(accessDescription.getAccessLocation().getName().toString());
代码示例来源:origin: DirectProject/nhin-d
accessDescription.getAccessLocation().getName().toString());
代码示例来源:origin: GluuFederation/oxAuth
@SuppressWarnings({ "deprecation", "resource" })
private String getOCSPUrl(X509Certificate certificate) throws IOException {
ASN1Primitive obj;
try {
obj = getExtensionValue(certificate, Extension.authorityInfoAccess.getId());
} catch (IOException ex) {
log.error("Failed to get OCSP URL", ex);
return null;
}
if (obj == null) {
return null;
}
AuthorityInformationAccess authorityInformationAccess = AuthorityInformationAccess.getInstance(obj);
AccessDescription[] accessDescriptions = authorityInformationAccess.getAccessDescriptions();
for (AccessDescription accessDescription : accessDescriptions) {
boolean correctAccessMethod = accessDescription.getAccessMethod().equals(X509ObjectIdentifiers.ocspAccessMethod);
if (!correctAccessMethod) {
continue;
}
GeneralName name = accessDescription.getAccessLocation();
if (name.getTagNo() != GeneralName.uniformResourceIdentifier) {
continue;
}
DERIA5String derStr = DERIA5String.getInstance((ASN1TaggedObject) name.toASN1Primitive(), false);
return derStr.getString();
}
return null;
}
代码示例来源:origin: org.xipki/ca-server
private static ASN1Sequence createSubjectInfoAccess(Extensions requestedExtensions,
Map<ASN1ObjectIdentifier, Set<GeneralNameMode>> modes) throws BadCertTemplateException {
if (modes == null) {
return null;
}
ASN1Encodable extValue = requestedExtensions.getExtensionParsedValue(
Extension.subjectInfoAccess);
if (extValue == null) {
return null;
}
ASN1Sequence reqSeq = ASN1Sequence.getInstance(extValue);
int size = reqSeq.size();
ASN1EncodableVector vec = new ASN1EncodableVector();
for (int i = 0; i < size; i++) {
AccessDescription ad = AccessDescription.getInstance(reqSeq.getObjectAt(i));
ASN1ObjectIdentifier accessMethod = ad.getAccessMethod();
Set<GeneralNameMode> generalNameModes = modes.get(accessMethod);
if (generalNameModes == null) {
throw new BadCertTemplateException("subjectInfoAccess.accessMethod "
+ accessMethod.getId() + " is not allowed");
}
GeneralName accessLocation = BaseCertprofile.createGeneralName(
ad.getAccessLocation(), generalNameModes);
vec.add(new AccessDescription(accessMethod, accessLocation));
} // end for
return vec.size() > 0 ? new DERSequence(vec) : null;
} // method createSubjectInfoAccess
内容来源于网络,如有侵权,请联系作者删除!