org.bouncycastle.x509

## Interface X509AttributeCertificate

All Superinterfaces:
  java.security.cert.X509Extension

All Known Implementing Classes:
  X509V2AttributeCertificate

    public interface X509AttributeCertificate
    extends java.security.cert.X509Extension

Interface for an X.509 Attribute Certificate.

### Method Summary

Methods
`void` `checkValidity()`
`void` `checkValidity(java.util.Date date)`
`X509Attribute[]` `getAttributes()` Return the attributes contained in the attribute block in the certificate.
`X509Attribute[]` `getAttributes(java.lang.String oid)` Return the attributes with the same type as the passed in oid.
`byte[]` `getEncoded()` Return an ASN.1 encoded byte array representing the attribute certificate.
`AttributeCertificateHolder` `getHolder()` Return the holder of the certificate.
`AttributeCertificateIssuer` `getIssuer()` Return the issuer details for the certificate.
`boolean[]` `getIssuerUniqueID()`
`java.util.Date` `getNotAfter()` Return the date after which the certificate is not valid.
`java.util.Date` `getNotBefore()` Return the date before which the certificate is not valid.
`java.math.BigInteger` `getSerialNumber()` Return the serial number for the certificate.
`byte[]` `getSignature()`
`int` `getVersion()` Return the version number for the certificate.
`void` `verify(java.security.PublicKey key, java.lang.String provider)`

### Methods inherited from interface java.security.cert.X509Extension

`getCriticalExtensionOIDs, getExtensionValue, getNonCriticalExtensionOIDs, hasUnsupportedCriticalExtension`

### Method Detail

#### getVersion

    int getVersion()

Return the version number for the certificate.

Returns:
  the version number.

#### getSerialNumber

    java.math.BigInteger getSerialNumber()

Return the serial number for the certificate.

Returns:
  the serial number.

#### getNotBefore

    java.util.Date getNotBefore()

Return the date before which the certificate is not valid.

Returns:
  the "not valid before" date.

#### getNotAfter

    java.util.Date getNotAfter()

Return the date after which the certificate is not valid.

Returns:
  the "not valid afer" date.

#### getHolder

    AttributeCertificateHolder getHolder()

Return the holder of the certificate.

Returns:
  the holder.

#### getIssuer

    AttributeCertificateIssuer getIssuer()

Return the issuer details for the certificate.

Returns:
  the issuer details.

#### getAttributes

    X509Attribute[] getAttributes()

Return the attributes contained in the attribute block in the certificate.

Returns:
  an array of attributes.

#### getAttributes

    X509Attribute[] getAttributes(java.lang.String oid)

Return the attributes with the same type as the passed in oid.

Parameters:
  `oid` - the object identifier we wish to match.
Returns:
  an array of matched attributes, null if there is no match.

#### getIssuerUniqueID

    boolean[] getIssuerUniqueID()

#### checkValidity

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

Throws:
  `java.security.cert.CertificateExpiredException`
  `java.security.cert.CertificateNotYetValidException`

#### checkValidity

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

Throws:
  `java.security.cert.CertificateExpiredException`
  `java.security.cert.CertificateNotYetValidException`

#### getSignature

    byte[] getSignature()

#### verify

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

Throws:
  `java.security.cert.CertificateException`
  `java.security.NoSuchAlgorithmException`
  `java.security.InvalidKeyException`
  `java.security.NoSuchProviderException`
  `java.security.SignatureException`

#### getEncoded

    byte[] getEncoded()
                      throws java.io.IOException

Return an ASN.1 encoded byte array representing the attribute certificate.

Returns:
  an ASN.1 encoded byte array.
Throws:
  `java.io.IOException` - if the certificate cannot be encoded.