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

org.bouncycastle.jce.provider

## Class X509CertificateObject

- java.lang.Object
- - java.security.cert.Certificate
  - - java.security.cert.X509Certificate
    - - org.bouncycastle.jce.provider.X509CertificateObject

- All Implemented Interfaces:
    java.io.Serializable, java.security.cert.X509Extension, PKCS12BagAttributeCarrier

      public class X509CertificateObject
      extends java.security.cert.X509Certificate
      implements PKCS12BagAttributeCarrier

  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class java.security.cert.Certificate

      `java.security.cert.Certificate.CertificateRep`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `X509CertificateObject(Certificate c)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `checkValidity()`
    `void` | `checkValidity(java.util.Date date)`
    `boolean` | `equals(java.lang.Object o)`
    `ASN1Encodable` | `getBagAttribute(ASN1ObjectIdentifier oid)`
    `java.util.Enumeration` | `getBagAttributeKeys()`
    `int` | `getBasicConstraints()`
    `java.util.Set` | `getCriticalExtensionOIDs()`
    `byte[]` | `getEncoded()`
    `java.util.List` | `getExtendedKeyUsage()`
    `byte[]` | `getExtensionValue(java.lang.String oid)`
    `java.util.Collection` | `getIssuerAlternativeNames()`
    `java.security.Principal` | `getIssuerDN()`
    `boolean[]` | `getIssuerUniqueID()`
    `javax.security.auth.x500.X500Principal` | `getIssuerX500Principal()`
    `boolean[]` | `getKeyUsage()`
    `java.util.Set` | `getNonCriticalExtensionOIDs()`
    `java.util.Date` | `getNotAfter()`
    `java.util.Date` | `getNotBefore()`
    `java.security.PublicKey` | `getPublicKey()`
    `java.math.BigInteger` | `getSerialNumber()`
    `java.lang.String` | `getSigAlgName()` return a more "meaningful" representation for the signature algorithm used in the certficate.
    `java.lang.String` | `getSigAlgOID()` return the object identifier for the signature.
    `byte[]` | `getSigAlgParams()` return the signature parameters, or null if there aren't any.
    `byte[]` | `getSignature()`
    `java.util.Collection` | `getSubjectAlternativeNames()`
    `java.security.Principal` | `getSubjectDN()`
    `boolean[]` | `getSubjectUniqueID()`
    `javax.security.auth.x500.X500Principal` | `getSubjectX500Principal()`
    `byte[]` | `getTBSCertificate()`
    `int` | `getVersion()`
    `int` | `hashCode()`
    `boolean` | `hasUnsupportedCriticalExtension()`
    `void` | `setBagAttribute(ASN1ObjectIdentifier oid, ASN1Encodable attribute)`
    `java.lang.String` | `toString()`
    `void` | `verify(java.security.PublicKey key)`
    `void` | `verify(java.security.PublicKey key, java.lang.String sigProvider)`

    - ### Methods inherited from class java.security.cert.Certificate

      `getType, writeReplace`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### X509CertificateObject

          public X509CertificateObject(Certificate c)
                                throws java.security.cert.CertificateParsingException

      Throws:
        `java.security.cert.CertificateParsingException`

  - ### Method Detail

    - #### checkValidity

          public void checkValidity()
                             throws java.security.cert.CertificateExpiredException,
                                    java.security.cert.CertificateNotYetValidException

      Specified by:
        `checkValidity` in class `java.security.cert.X509Certificate`
      Throws:
        `java.security.cert.CertificateExpiredException`
        `java.security.cert.CertificateNotYetValidException`

    - #### checkValidity

          public void checkValidity(java.util.Date date)
                             throws java.security.cert.CertificateExpiredException,
                                    java.security.cert.CertificateNotYetValidException

      Specified by:
        `checkValidity` in class `java.security.cert.X509Certificate`
      Throws:
        `java.security.cert.CertificateExpiredException`
        `java.security.cert.CertificateNotYetValidException`

    - #### getVersion

          public int getVersion()

      Specified by:
        `getVersion` in class `java.security.cert.X509Certificate`

    - #### getSerialNumber

          public java.math.BigInteger getSerialNumber()

      Specified by:
        `getSerialNumber` in class `java.security.cert.X509Certificate`

    - #### getIssuerDN

          public java.security.Principal getIssuerDN()

      Specified by:
        `getIssuerDN` in class `java.security.cert.X509Certificate`

    - #### getIssuerX500Principal

          public javax.security.auth.x500.X500Principal getIssuerX500Principal()

      Overrides:
        `getIssuerX500Principal` in class `java.security.cert.X509Certificate`

    - #### getSubjectDN

          public java.security.Principal getSubjectDN()

      Specified by:
        `getSubjectDN` in class `java.security.cert.X509Certificate`

    - #### getSubjectX500Principal

          public javax.security.auth.x500.X500Principal getSubjectX500Principal()

      Overrides:
        `getSubjectX500Principal` in class `java.security.cert.X509Certificate`

    - #### getNotBefore

          public java.util.Date getNotBefore()

      Specified by:
        `getNotBefore` in class `java.security.cert.X509Certificate`

    - #### getNotAfter

          public java.util.Date getNotAfter()

      Specified by:
        `getNotAfter` in class `java.security.cert.X509Certificate`

    - #### getTBSCertificate

          public byte[] getTBSCertificate()
                                   throws java.security.cert.CertificateEncodingException

      Specified by:
        `getTBSCertificate` in class `java.security.cert.X509Certificate`
      Throws:
        `java.security.cert.CertificateEncodingException`

    - #### getSignature

          public byte[] getSignature()

      Specified by:
        `getSignature` in class `java.security.cert.X509Certificate`

    - #### getSigAlgName

          public java.lang.String getSigAlgName()

      return a more "meaningful" representation for the signature algorithm used in the certficate.
      Specified by:
        `getSigAlgName` in class `java.security.cert.X509Certificate`

    - #### getSigAlgOID

          public java.lang.String getSigAlgOID()

      return the object identifier for the signature.
      Specified by:
        `getSigAlgOID` in class `java.security.cert.X509Certificate`

    - #### getSigAlgParams

          public byte[] getSigAlgParams()

      return the signature parameters, or null if there aren't any.
      Specified by:
        `getSigAlgParams` in class `java.security.cert.X509Certificate`

    - #### getIssuerUniqueID

          public boolean[] getIssuerUniqueID()

      Specified by:
        `getIssuerUniqueID` in class `java.security.cert.X509Certificate`

    - #### getSubjectUniqueID

          public boolean[] getSubjectUniqueID()

      Specified by:
        `getSubjectUniqueID` in class `java.security.cert.X509Certificate`

    - #### getKeyUsage

          public boolean[] getKeyUsage()

      Specified by:
        `getKeyUsage` in class `java.security.cert.X509Certificate`

    - #### getExtendedKeyUsage

          public java.util.List getExtendedKeyUsage()
                                             throws java.security.cert.CertificateParsingException

      Overrides:
        `getExtendedKeyUsage` in class `java.security.cert.X509Certificate`
      Throws:
        `java.security.cert.CertificateParsingException`

    - #### getBasicConstraints

          public int getBasicConstraints()

      Specified by:
        `getBasicConstraints` in class `java.security.cert.X509Certificate`

    - #### getSubjectAlternativeNames

          public java.util.Collection getSubjectAlternativeNames()
                                                          throws java.security.cert.CertificateParsingException

      Overrides:
        `getSubjectAlternativeNames` in class `java.security.cert.X509Certificate`
      Throws:
        `java.security.cert.CertificateParsingException`

    - #### getIssuerAlternativeNames

          public java.util.Collection getIssuerAlternativeNames()
                                                         throws java.security.cert.CertificateParsingException

      Overrides:
        `getIssuerAlternativeNames` in class `java.security.cert.X509Certificate`
      Throws:
        `java.security.cert.CertificateParsingException`

    - #### getCriticalExtensionOIDs

          public java.util.Set getCriticalExtensionOIDs()

      Specified by:
        `getCriticalExtensionOIDs` in interface `java.security.cert.X509Extension`

    - #### getExtensionValue

          public byte[] getExtensionValue(java.lang.String oid)

      Specified by:
        `getExtensionValue` in interface `java.security.cert.X509Extension`

    - #### getNonCriticalExtensionOIDs

          public java.util.Set getNonCriticalExtensionOIDs()

      Specified by:
        `getNonCriticalExtensionOIDs` in interface `java.security.cert.X509Extension`

    - #### hasUnsupportedCriticalExtension

          public boolean hasUnsupportedCriticalExtension()

      Specified by:
        `hasUnsupportedCriticalExtension` in interface `java.security.cert.X509Extension`

    - #### getPublicKey

          public java.security.PublicKey getPublicKey()

      Specified by:
        `getPublicKey` in class `java.security.cert.Certificate`

    - #### getEncoded

          public byte[] getEncoded()
                            throws java.security.cert.CertificateEncodingException

      Specified by:
        `getEncoded` in class `java.security.cert.Certificate`
      Throws:
        `java.security.cert.CertificateEncodingException`

    - #### equals

          public boolean equals(java.lang.Object o)

      Overrides:
        `equals` in class `java.security.cert.Certificate`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.security.cert.Certificate`

    - #### setBagAttribute

          public void setBagAttribute(ASN1ObjectIdentifier oid,
                             ASN1Encodable attribute)

      Specified by:
        `setBagAttribute` in interface `PKCS12BagAttributeCarrier`

    - #### getBagAttribute

          public ASN1Encodable getBagAttribute(ASN1ObjectIdentifier oid)

      Specified by:
        `getBagAttribute` in interface `PKCS12BagAttributeCarrier`

    - #### getBagAttributeKeys

          public java.util.Enumeration getBagAttributeKeys()

      Specified by:
        `getBagAttributeKeys` in interface `PKCS12BagAttributeCarrier`

    - #### toString

          public java.lang.String toString()

      Specified by:
        `toString` in class `java.security.cert.Certificate`

    - #### verify

          public final void verify(java.security.PublicKey key)
                            throws java.security.cert.CertificateException,
                                   java.security.NoSuchAlgorithmException,
                                   java.security.InvalidKeyException,
                                   java.security.NoSuchProviderException,
                                   java.security.SignatureException

      Specified by:
        `verify` in class `java.security.cert.Certificate`
      Throws:
        `java.security.cert.CertificateException`
        `java.security.NoSuchAlgorithmException`
        `java.security.InvalidKeyException`
        `java.security.NoSuchProviderException`
        `java.security.SignatureException`

    - #### verify

          public final void verify(java.security.PublicKey key,
                    java.lang.String sigProvider)
                            throws java.security.cert.CertificateException,
                                   java.security.NoSuchAlgorithmException,
                                   java.security.InvalidKeyException,
                                   java.security.NoSuchProviderException,
                                   java.security.SignatureException

      Specified by:
        `verify` in class `java.security.cert.Certificate`
      Throws:
        `java.security.cert.CertificateException`
        `java.security.NoSuchAlgorithmException`
        `java.security.InvalidKeyException`
        `java.security.NoSuchProviderException`
        `java.security.SignatureException`