Class X509CertificateHolder

  • All Implemented Interfaces:
    java.io.Serializable, org.bouncycastle.util.Encodable
    Direct Known Subclasses:
    JcaX509CertificateHolder

    public class X509CertificateHolder
    extends java.lang.Object
    implements org.bouncycastle.util.Encodable, java.io.Serializable
    Holding class for an X.509 Certificate structure.
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      X509CertificateHolder​(byte[] certEncoding)
      Create a X509CertificateHolder from the passed in bytes.
      X509CertificateHolder​(org.bouncycastle.asn1.x509.Certificate x509Certificate)
      Create a X509CertificateHolder from the passed in ASN.1 structure.
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object o)  
      java.util.Set getCriticalExtensionOIDs()
      Returns a set of ASN1ObjectIdentifier objects representing the OIDs of the critical extensions contained in this holder's certificate.
      byte[] getEncoded()
      Return the ASN.1 encoding of this holder's certificate.
      org.bouncycastle.asn1.x509.Extension getExtension​(org.bouncycastle.asn1.ASN1ObjectIdentifier oid)
      Look up the extension associated with the passed in OID.
      java.util.List getExtensionOIDs()
      Returns a list of ASN1ObjectIdentifier objects representing the OIDs of the extensions contained in this holder's certificate.
      org.bouncycastle.asn1.x509.Extensions getExtensions()
      Return the extensions block associated with this certificate if there is one.
      org.bouncycastle.asn1.x500.X500Name getIssuer()
      Return the issuer of this certificate.
      java.util.Set getNonCriticalExtensionOIDs()
      Returns a set of ASN1ObjectIdentifier objects representing the OIDs of the non-critical extensions contained in this holder's certificate.
      java.util.Date getNotAfter()
      Return the date after which this certificate is not valid.
      java.util.Date getNotBefore()
      Return the date before which this certificate is not valid.
      java.math.BigInteger getSerialNumber()
      Return the serial number of this attribute certificate.
      byte[] getSignature()
      Return the bytes making up the signature associated with this attribute certificate.
      org.bouncycastle.asn1.x509.AlgorithmIdentifier getSignatureAlgorithm()
      Return the details of the signature algorithm used to create this attribute certificate.
      org.bouncycastle.asn1.x500.X500Name getSubject()
      Return the subject this certificate is for.
      org.bouncycastle.asn1.x509.SubjectPublicKeyInfo getSubjectPublicKeyInfo()
      Return the SubjectPublicKeyInfo describing the public key this certificate is carrying.
      int getVersion()
      Deprecated.
      use getVersionNumber
      int getVersionNumber()  
      boolean hasExtensions()
      Return whether or not the holder's certificate contains extensions.
      int hashCode()  
      boolean isSignatureValid​(ContentVerifierProvider verifierProvider)
      Validate the signature on the certificate in this holder.
      boolean isValidOn​(java.util.Date date)
      Return whether or not this certificate is valid on a particular date.
      org.bouncycastle.asn1.x509.Certificate toASN1Structure()
      Return the underlying ASN.1 structure for the certificate in this holder.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • X509CertificateHolder

        public X509CertificateHolder​(byte[] certEncoding)
                              throws java.io.IOException
        Create a X509CertificateHolder from the passed in bytes.
        Parameters:
        certEncoding - BER/DER encoding of the certificate.
        Throws:
        java.io.IOException - in the event of corrupted data, or an incorrect structure.
      • X509CertificateHolder

        public X509CertificateHolder​(org.bouncycastle.asn1.x509.Certificate x509Certificate)
        Create a X509CertificateHolder from the passed in ASN.1 structure.
        Parameters:
        x509Certificate - an ASN.1 Certificate structure.
    • Method Detail

      • getVersionNumber

        public int getVersionNumber()
      • getVersion

        public int getVersion()
        Deprecated.
        use getVersionNumber
      • hasExtensions

        public boolean hasExtensions()
        Return whether or not the holder's certificate contains extensions.
        Returns:
        true if extension are present, false otherwise.
      • getExtension

        public org.bouncycastle.asn1.x509.Extension getExtension​(org.bouncycastle.asn1.ASN1ObjectIdentifier oid)
        Look up the extension associated with the passed in OID.
        Parameters:
        oid - the OID of the extension of interest.
        Returns:
        the extension if present, null otherwise.
      • getExtensions

        public org.bouncycastle.asn1.x509.Extensions getExtensions()
        Return the extensions block associated with this certificate if there is one.
        Returns:
        the extensions block, null otherwise.
      • getExtensionOIDs

        public java.util.List getExtensionOIDs()
        Returns a list of ASN1ObjectIdentifier objects representing the OIDs of the extensions contained in this holder's certificate.
        Returns:
        a list of extension OIDs.
      • getCriticalExtensionOIDs

        public java.util.Set getCriticalExtensionOIDs()
        Returns a set of ASN1ObjectIdentifier objects representing the OIDs of the critical extensions contained in this holder's certificate.
        Returns:
        a set of critical extension OIDs.
      • getNonCriticalExtensionOIDs

        public java.util.Set getNonCriticalExtensionOIDs()
        Returns a set of ASN1ObjectIdentifier objects representing the OIDs of the non-critical extensions contained in this holder's certificate.
        Returns:
        a set of non-critical extension OIDs.
      • getSerialNumber

        public java.math.BigInteger getSerialNumber()
        Return the serial number of this attribute certificate.
        Returns:
        the serial number.
      • getIssuer

        public org.bouncycastle.asn1.x500.X500Name getIssuer()
        Return the issuer of this certificate.
        Returns:
        the certificate issuer.
      • getSubject

        public org.bouncycastle.asn1.x500.X500Name getSubject()
        Return the subject this certificate is for.
        Returns:
        the subject for the certificate.
      • getNotBefore

        public java.util.Date getNotBefore()
        Return the date before which this certificate is not valid.
        Returns:
        the start time for the certificate's validity period.
      • getNotAfter

        public java.util.Date getNotAfter()
        Return the date after which this certificate is not valid.
        Returns:
        the final time for the certificate's validity period.
      • getSubjectPublicKeyInfo

        public org.bouncycastle.asn1.x509.SubjectPublicKeyInfo getSubjectPublicKeyInfo()
        Return the SubjectPublicKeyInfo describing the public key this certificate is carrying.
        Returns:
        the public key ASN.1 structure contained in the certificate.
      • toASN1Structure

        public org.bouncycastle.asn1.x509.Certificate toASN1Structure()
        Return the underlying ASN.1 structure for the certificate in this holder.
        Returns:
        a Certificate object.
      • getSignatureAlgorithm

        public org.bouncycastle.asn1.x509.AlgorithmIdentifier getSignatureAlgorithm()
        Return the details of the signature algorithm used to create this attribute certificate.
        Returns:
        the AlgorithmIdentifier describing the signature algorithm used to create this attribute certificate.
      • getSignature

        public byte[] getSignature()
        Return the bytes making up the signature associated with this attribute certificate.
        Returns:
        the attribute certificate signature bytes.
      • isValidOn

        public boolean isValidOn​(java.util.Date date)
        Return whether or not this certificate is valid on a particular date.
        Parameters:
        date - the date of interest.
        Returns:
        true if the certificate is valid, false otherwise.
      • isSignatureValid

        public boolean isSignatureValid​(ContentVerifierProvider verifierProvider)
                                 throws CertException
        Validate the signature on the certificate in this holder.
        Parameters:
        verifierProvider - a ContentVerifierProvider that can generate a verifier for the signature.
        Returns:
        true if the signature is valid, false otherwise.
        Throws:
        CertException - if the signature cannot be processed or is inappropriate.
      • 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
      • getEncoded

        public byte[] getEncoded()
                          throws java.io.IOException
        Return the ASN.1 encoding of this holder's certificate.
        Specified by:
        getEncoded in interface org.bouncycastle.util.Encodable
        Returns:
        a DER encoded byte array.
        Throws:
        java.io.IOException - if an encoding cannot be generated.