Example usage for org.bouncycastle.asn1.x509 X509Extension subjectInfoAccess

List of usage examples for org.bouncycastle.asn1.x509 X509Extension subjectInfoAccess

Introduction

In this page you can find the example usage for org.bouncycastle.asn1.x509 X509Extension subjectInfoAccess.

Prototype

ASN1ObjectIdentifier subjectInfoAccess

To view the source code for org.bouncycastle.asn1.x509 X509Extension subjectInfoAccess.

Click Source Link

Document

Subject Info Access

Usage

From source file:net.ripe.rpki.commons.crypto.x509cert.X509CertificateBuilderHelper.java

License:BSD License

private void addSIA(X509v3CertificateBuilder generator) throws CertIOException {
    generator.addExtension(X509Extension.subjectInfoAccess, false,
            AuthorityInformationAccess.getInstance(new DERSequence(subjectInformationAccess)));
}

From source file:net.ripe.rpki.commons.provisioning.x509.pkcs10.RpkiCaCertificateRequestParser.java

License:BSD License

private void extractSiaUris() throws RpkiCaCertificateRequestParserException {
    try {/*from  w ww  .  j av a 2s . c  o m*/
        Extensions extensions = getPkcs9Extensions();
        Extension extension = extensions.getExtension(X509Extension.subjectInfoAccess);

        ASN1Sequence accessDescriptorSequence = (ASN1Sequence) ASN1Sequence
                .fromByteArray(extension.getExtnValue().getOctets());

        @SuppressWarnings("unchecked")
        Enumeration<DERSequence> objects = accessDescriptorSequence.getObjects();
        while (objects.hasMoreElements()) {
            AccessDescription accessDescription = AccessDescription.getInstance(objects.nextElement());
            X509CertificateInformationAccessDescriptor accessDescriptor = new X509CertificateInformationAccessDescriptor(
                    accessDescription);
            ASN1ObjectIdentifier oid = accessDescriptor.getMethod();
            if (oid.equals(X509CertificateInformationAccessDescriptor.ID_AD_CA_REPOSITORY)) {
                caRepositoryUri = accessDescriptor.getLocation();
            } else if (oid.equals(X509CertificateInformationAccessDescriptor.ID_AD_RPKI_MANIFEST)) {
                manifestUri = accessDescriptor.getLocation();
            } else {
                throw new RpkiCaCertificateRequestParserException(
                        "Don't understand access descriptor using method: " + oid);
            }
        }
    } catch (IOException e) {
        throw new RpkiCaCertificateRequestParserException(e);
    }

}