BcX509v3CertificateBuilder (Bouncy Castle Library 1.52 API Specification)
Date: 2015-03-01

org.bouncycastle.cert.bc

## Class BcX509v3CertificateBuilder

- java.lang.Object
- - org.bouncycastle.cert.X509v3CertificateBuilder
  - - org.bouncycastle.cert.bc.BcX509v3CertificateBuilder

-     public class BcX509v3CertificateBuilder
      extends X509v3CertificateBuilder

  JCA helper class to allow BC lightweight objects to be used in the construction of a Version 3 certificate.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BcX509v3CertificateBuilder(org.bouncycastle.asn1.x500.X500Name issuer, java.math.BigInteger serial, java.util.Date notBefore, java.util.Date notAfter, org.bouncycastle.asn1.x500.X500Name subject, org.bouncycastle.crypto.params.AsymmetricKeyParameter publicKey)` Initialise the builder using a PublicKey.
    `BcX509v3CertificateBuilder(X509CertificateHolder issuerCert, java.math.BigInteger serial, java.util.Date notBefore, java.util.Date notAfter, org.bouncycastle.asn1.x500.X500Name subject, org.bouncycastle.crypto.params.AsymmetricKeyParameter publicKey)` Initialise the builder using the subject from the passed in issuerCert as the issuer, as well as passing through and converting the other objects provided.

  - ### Method Summary

    - ### Methods inherited from class org.bouncycastle.cert.X509v3CertificateBuilder

      `addExtension, addExtension, build, copyAndAddExtension, setIssuerUniqueID, setSubjectUniqueID`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BcX509v3CertificateBuilder

          public BcX509v3CertificateBuilder(org.bouncycastle.asn1.x500.X500Name issuer,
                                    java.math.BigInteger serial,
                                    java.util.Date notBefore,
                                    java.util.Date notAfter,
                                    org.bouncycastle.asn1.x500.X500Name subject,
                                    org.bouncycastle.crypto.params.AsymmetricKeyParameter publicKey)
                                     throws java.io.IOException

      Initialise the builder using a PublicKey.
      Parameters:
        `issuer` - X500Name representing the issuer of this certificate.
        `serial` - the serial number for the certificate.
        `notBefore` - date before which the certificate is not valid.
        `notAfter` - date after which the certificate is not valid.
        `subject` - X500Name representing the subject of this certificate.
        `publicKey` - the public key to be associated with the certificate.
      Throws:
        `java.io.IOException`

    - #### BcX509v3CertificateBuilder

          public BcX509v3CertificateBuilder(X509CertificateHolder issuerCert,
                                    java.math.BigInteger serial,
                                    java.util.Date notBefore,
                                    java.util.Date notAfter,
                                    org.bouncycastle.asn1.x500.X500Name subject,
                                    org.bouncycastle.crypto.params.AsymmetricKeyParameter publicKey)
                                     throws java.io.IOException

      Initialise the builder using the subject from the passed in issuerCert as the issuer, as well as passing through and converting the other objects provided.
      Parameters:
        `issuerCert` - holder for certificate who's subject is the issuer of the certificate we are building.
        `serial` - the serial number for the certificate.
        `notBefore` - date before which the certificate is not valid.
        `notAfter` - date after which the certificate is not valid.
        `subject` - principal representing the subject of this certificate.
        `publicKey` - the public key to be associated with the certificate.
      Throws:
        `java.io.IOException`