Example usage for org.bouncycastle.asn1.x500.style BCStyle OU

List of usage examples for org.bouncycastle.asn1.x500.style BCStyle OU

Introduction

In this page you can find the example usage for org.bouncycastle.asn1.x500.style BCStyle OU.

Prototype

ASN1ObjectIdentifier OU

To view the source code for org.bouncycastle.asn1.x500.style BCStyle OU.

Click Source Link

Document

organizational unit name - StringType(SIZE(1..64))

Usage

From source file:ca.trustpoint.m2m.M2mTrustAnchor.java

License:Apache License

/**
 * Creates a new instance./* w  ww  .  j  a  v  a  2 s  .  co m*/
 *
 * @param x509Certificate X.509 certificate to use as trust anchor.
 * @throws IllegalArgumentException if x509Certificate is null.
 */
public M2mTrustAnchor(X509Certificate x509Certificate) throws IllegalArgumentException {
    if (x509Certificate == null) {
        throw new IllegalArgumentException("x509Certificate cannot be null.");
    }

    X500Name x500Name = JcaX500NameUtil.getSubject(x509Certificate);
    EntityName caName = new EntityName();
    int attributeCount = 0;

    for (RDN rdn : x500Name.getRDNs()) {
        AttributeTypeAndValue attr = rdn.getFirst();
        EntityNameAttributeId attributeId;

        if (BCStyle.C.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.Country;
        } else if (BCStyle.O.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.Organization;
        } else if (BCStyle.OU.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.OrganizationalUnit;
        } else if (BCStyle.DN_QUALIFIER.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.DistinguishedNameQualifier;
        } else if (BCStyle.ST.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.StateOrProvince;
        } else if (BCStyle.L.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.Locality;
        } else if (BCStyle.CN.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.CommonName;
        } else if (BCStyle.SN.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.SerialNumber;
        } else if (BCStyle.DC.equals(attr.getType())) {
            attributeId = EntityNameAttributeId.DomainComponent;
        } else {
            // Unsupported attribute.
            continue;
        }

        caName.addAttribute(new EntityNameAttribute(attributeId, IETFUtils.valueToString(attr.getValue())));
        attributeCount++;

        if (attributeCount == EntityName.MAXIMUM_ATTRIBUTES) {
            // We have reached the maximum number of attributes for an EntityName, so stop here.
            break;
        }
    }

    this.caName = caName;
    this.publicKey = x509Certificate.getPublicKey();
    certificate = null;
}

From source file:ch.ge.ve.offlineadmin.services.KeyGenerator.java

License:Open Source License

private X509v3CertificateBuilder createCertificateBuilder(KeyPair keyPair)
        throws PropertyConfigurationException, CertIOException {
    X500NameBuilder nameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    nameBuilder.addRDN(BCStyle.CN, propertyConfigurationService.getConfigValue(CERT_COMMON_NAME_PROPERTY));
    nameBuilder.addRDN(BCStyle.O, propertyConfigurationService.getConfigValue(CERT_ORGANISATION_PROPERTY));
    nameBuilder.addRDN(BCStyle.OU,
            propertyConfigurationService.getConfigValue(CERT_ORGANISATIONAL_UNIT_PROPERTY));
    nameBuilder.addRDN(BCStyle.C, propertyConfigurationService.getConfigValue(CERT_COUNTRY_PROPERTY));
    X500Name x500Name = nameBuilder.build();

    BigInteger serial = new BigInteger(CERT_SERIAL_NUMBER_BIT_SIZE, SecureRandomFactory.createPRNG());

    SubjectPublicKeyInfo publicKeyInfo = SubjectPublicKeyInfo.getInstance(keyPair.getPublic().getEncoded());

    Date startDate = new Date();
    Date endDate = Date.from(startDate.toInstant().plus(
            propertyConfigurationService.getConfigValueAsInt(CERT_VALIDITY_DAYS_PROPERTY), ChronoUnit.DAYS));

    X509v3CertificateBuilder certificateBuilder = new X509v3CertificateBuilder(x500Name, serial, startDate,
            endDate, x500Name, publicKeyInfo);

    String certFriendlyName = propertyConfigurationService.getConfigValue(CERT_PRIVATE_FRIENDLY_NAME_PROPERTY);
    certificateBuilder.addExtension(PKCSObjectIdentifiers.pkcs_9_at_friendlyName, false,
            new DERBMPString(certFriendlyName));
    return certificateBuilder;
}

From source file:com.aqnote.shared.cryptology.cert.util.X500NameUtil.java

License:Open Source License

/** ? */
public static X500Name createRootCaPrincipal() {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.E, DN_ROOT_E);
    x500NameBuilder.addRDN(BCStyle.CN, DN_ROOT_CN);
    x500NameBuilder.addRDN(BCStyle.OU, DN_ROOT_OU);
    x500NameBuilder.addRDN(BCStyle.O, DN_ROOT_O);
    return x500NameBuilder.build();
}

From source file:com.aqnote.shared.cryptology.cert.util.X500NameUtil.java

License:Open Source License

public static X500Name createClass1CaPrincipal() {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.CN, DN_CLASS1_ROOT_CN);
    x500NameBuilder.addRDN(BCStyle.OU, DN_OU);
    x500NameBuilder.addRDN(BCStyle.O, DN_O);
    return x500NameBuilder.build();
}

From source file:com.aqnote.shared.cryptology.cert.util.X500NameUtil.java

License:Open Source License

public static X500Name createClass1EndPrincipal(String cn, String email) {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.E, email);
    x500NameBuilder.addRDN(BCStyle.CN, cn);
    x500NameBuilder.addRDN(BCStyle.OU, DN_OU);
    x500NameBuilder.addRDN(BCStyle.O, DN_O);
    x500NameBuilder.addRDN(BCStyle.L, DN_L);
    x500NameBuilder.addRDN(BCStyle.ST, DN_ST);
    x500NameBuilder.addRDN(BCStyle.C, DN_C);
    return x500NameBuilder.build();
}

From source file:com.aqnote.shared.cryptology.cert.util.X500NameUtil.java

License:Open Source License

public static X500Name createClass3CaPrincipal() {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.CN, DN_CLASS3_ROOT_CN);
    x500NameBuilder.addRDN(BCStyle.OU, DN_ROOT_OU);
    x500NameBuilder.addRDN(BCStyle.O, DN_ROOT_O);
    return x500NameBuilder.build();
}

From source file:com.aqnote.shared.cryptology.cert.util.X500NameUtil.java

License:Open Source License

public static X500Name createClass3EndPrincipal(String cn, String email, String title) {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.E, email);
    x500NameBuilder.addRDN(BCStyle.CN, cn);
    x500NameBuilder.addRDN(BCStyle.T, title);
    x500NameBuilder.addRDN(BCStyle.OU, DN_CLASS3_END_OU);
    //        x500NameBuilder.addRDN(BCStyle.O, DN_O);
    //        x500NameBuilder.addRDN(BCStyle.L, DN_L);
    //        x500NameBuilder.addRDN(BCStyle.ST, DN_ST);
    //        x500NameBuilder.addRDN(BCStyle.C, DN_C);
    return x500NameBuilder.build();
}

From source file:com.aqnote.shared.cryptology.cert.util.X500NameUtil.java

License:Open Source License

public static X500Name createClass3EndPrincipal(String cn, String email) {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.E, email);
    x500NameBuilder.addRDN(BCStyle.CN, cn);
    x500NameBuilder.addRDN(BCStyle.OU, DN_OU);
    x500NameBuilder.addRDN(BCStyle.O, DN_O);
    x500NameBuilder.addRDN(BCStyle.L, DN_L);
    x500NameBuilder.addRDN(BCStyle.ST, DN_ST);
    x500NameBuilder.addRDN(BCStyle.C, DN_C);
    return x500NameBuilder.build();
}

From source file:com.aqnote.shared.cryptology.cert.util.X500NameUtil.java

License:Open Source License

public static X500Name createClass3EndPrincipal(List<String> cnList, String email) {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.E, email);
    for (String cn : cnList) {
        x500NameBuilder.addRDN(BCStyle.CN, cn);
    }/*from  w  w  w.  java  2 s. c o m*/
    x500NameBuilder.addRDN(BCStyle.OU, DN_OU);
    x500NameBuilder.addRDN(BCStyle.O, DN_O);
    x500NameBuilder.addRDN(BCStyle.L, DN_L);
    x500NameBuilder.addRDN(BCStyle.ST, DN_ST);
    x500NameBuilder.addRDN(BCStyle.C, DN_C);
    return x500NameBuilder.build();
}

From source file:com.aqnote.shared.encrypt.cert.bc.util.X500NameUtil.java

License:Open Source License

/** madding? */
public static X500Name createRootPrincipal() {
    X500NameBuilder x500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE);
    x500NameBuilder.addRDN(BCStyle.E, DN_ROOT_E);
    x500NameBuilder.addRDN(BCStyle.CN, DN_ROOT_CN);
    x500NameBuilder.addRDN(BCStyle.OU, DN_ROOT_OU);
    x500NameBuilder.addRDN(BCStyle.O, DN_ROOT_O);
    return x500NameBuilder.build();
}