org.gudy.bouncycastle.x509
Class X509V2AttributeCertificate

java.lang.Object
  extended by org.gudy.bouncycastle.x509.X509V2AttributeCertificate
All Implemented Interfaces:
java.security.cert.X509Extension, X509AttributeCertificate

public class X509V2AttributeCertificate
extends java.lang.Object
implements X509AttributeCertificate

An implementation of a version 2 X.509 Attribute Certificate.


Constructor Summary
X509V2AttributeCertificate(byte[] encoded)
           
X509V2AttributeCertificate(java.io.InputStream encIn)
           
 
Method Summary
 void checkValidity()
           
 void checkValidity(java.util.Date date)
           
 boolean equals(java.lang.Object o)
           
 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.
 java.util.Set getCriticalExtensionOIDs()
           
 byte[] getEncoded()
          Return an ASN.1 encoded byte array representing the attribute certificate.
 byte[] getExtensionValue(java.lang.String oid)
           
 AttributeCertificateHolder getHolder()
          Return the holder of the certificate.
 AttributeCertificateIssuer getIssuer()
          Return the issuer details for the certificate.
 boolean[] getIssuerUniqueID()
           
 java.util.Set getNonCriticalExtensionOIDs()
           
 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.
 int hashCode()
           
 boolean hasUnsupportedCriticalExtension()
           
 void verify(java.security.PublicKey key, java.lang.String provider)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

X509V2AttributeCertificate

public X509V2AttributeCertificate(java.io.InputStream encIn)
                           throws java.io.IOException
Throws:
java.io.IOException

X509V2AttributeCertificate

public X509V2AttributeCertificate(byte[] encoded)
                           throws java.io.IOException
Throws:
java.io.IOException
Method Detail

getVersion

public int getVersion()
Description copied from interface: X509AttributeCertificate
Return the version number for the certificate.

Specified by:
getVersion in interface X509AttributeCertificate
Returns:
the version number.

getSerialNumber

public java.math.BigInteger getSerialNumber()
Description copied from interface: X509AttributeCertificate
Return the serial number for the certificate.

Specified by:
getSerialNumber in interface X509AttributeCertificate
Returns:
the serial number.

getHolder

public AttributeCertificateHolder getHolder()
Description copied from interface: X509AttributeCertificate
Return the holder of the certificate.

Specified by:
getHolder in interface X509AttributeCertificate
Returns:
the holder.

getIssuer

public AttributeCertificateIssuer getIssuer()
Description copied from interface: X509AttributeCertificate
Return the issuer details for the certificate.

Specified by:
getIssuer in interface X509AttributeCertificate
Returns:
the issuer details.

getNotBefore

public java.util.Date getNotBefore()
Description copied from interface: X509AttributeCertificate
Return the date before which the certificate is not valid.

Specified by:
getNotBefore in interface X509AttributeCertificate
Returns:
the "not valid before" date.

getNotAfter

public java.util.Date getNotAfter()
Description copied from interface: X509AttributeCertificate
Return the date after which the certificate is not valid.

Specified by:
getNotAfter in interface X509AttributeCertificate
Returns:
the "not valid afer" date.

getIssuerUniqueID

public boolean[] getIssuerUniqueID()
Specified by:
getIssuerUniqueID in interface X509AttributeCertificate

checkValidity

public void checkValidity()
                   throws java.security.cert.CertificateExpiredException,
                          java.security.cert.CertificateNotYetValidException
Specified by:
checkValidity in interface X509AttributeCertificate
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 interface X509AttributeCertificate
Throws:
java.security.cert.CertificateExpiredException
java.security.cert.CertificateNotYetValidException

getSignature

public byte[] getSignature()
Specified by:
getSignature in interface X509AttributeCertificate

verify

public final 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
Specified by:
verify in interface X509AttributeCertificate
Throws:
java.security.cert.CertificateException
java.security.NoSuchAlgorithmException
java.security.InvalidKeyException
java.security.NoSuchProviderException
java.security.SignatureException

getEncoded

public byte[] getEncoded()
                  throws java.io.IOException
Description copied from interface: X509AttributeCertificate
Return an ASN.1 encoded byte array representing the attribute certificate.

Specified by:
getEncoded in interface X509AttributeCertificate
Returns:
an ASN.1 encoded byte array.
Throws:
java.io.IOException - if the certificate cannot be encoded.

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

getCriticalExtensionOIDs

public java.util.Set getCriticalExtensionOIDs()
Specified by:
getCriticalExtensionOIDs in interface java.security.cert.X509Extension

hasUnsupportedCriticalExtension

public boolean hasUnsupportedCriticalExtension()
Specified by:
hasUnsupportedCriticalExtension in interface java.security.cert.X509Extension

getAttributes

public X509Attribute[] getAttributes()
Description copied from interface: X509AttributeCertificate
Return the attributes contained in the attribute block in the certificate.

Specified by:
getAttributes in interface X509AttributeCertificate
Returns:
an array of attributes.

getAttributes

public X509Attribute[] getAttributes(java.lang.String oid)
Description copied from interface: X509AttributeCertificate
Return the attributes with the same type as the passed in oid.

Specified by:
getAttributes in interface X509AttributeCertificate
Parameters:
oid - the object identifier we wish to match.
Returns:
an array of matched attributes, null if there is no match.

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object