org.bouncycastle.jce.provider
Class JDKX509CertificateFactory

java.lang.Object
  extended by java.security.cert.CertificateFactorySpi
      extended by org.bouncycastle.jce.provider.JDKX509CertificateFactory

public class JDKX509CertificateFactory
extends java.security.cert.CertificateFactorySpi

class for dealing with X509 certificates.

At the moment this will deal with "-----BEGIN CERTIFICATE-----" to "-----END CERTIFICATE-----" base 64 encoded certs, as well as the BER binaries of certificates and some classes of PKCS#7 objects.


Field Summary
private  java.io.InputStream currentCrlStream
           
private  java.io.InputStream currentStream
           
private static PEMUtil PEM_CERT_PARSER
           
private static PEMUtil PEM_CRL_PARSER
           
private  ASN1Set sCrlData
           
private  int sCrlDataObjectCount
           
private  ASN1Set sData
           
private  int sDataObjectCount
           
 
Constructor Summary
JDKX509CertificateFactory()
           
 
Method Summary
 java.security.cert.Certificate engineGenerateCertificate(java.io.InputStream in)
          Generates a certificate object and initializes it with the data read from the input stream inStream.
 java.util.Collection engineGenerateCertificates(java.io.InputStream inStream)
          Returns a (possibly empty) collection view of the certificates read from the given input stream inStream.
 java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream inStream)
           
 java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream inStream, java.lang.String encoding)
           
 java.security.cert.CertPath engineGenerateCertPath(java.util.List certificates)
           
 java.security.cert.CRL engineGenerateCRL(java.io.InputStream inStream)
          Generates a certificate revocation list (CRL) object and initializes it with the data read from the input stream inStream.
 java.util.Collection engineGenerateCRLs(java.io.InputStream inStream)
          Returns a (possibly empty) collection view of the CRLs read from the given input stream inStream.
 java.util.Iterator engineGetCertPathEncodings()
           
private  java.security.cert.Certificate getCertificate()
           
private  java.security.cert.CRL getCRL()
           
private  java.security.cert.Certificate readDERCertificate(ASN1InputStream dIn)
           
private  java.security.cert.CRL readDERCRL(ASN1InputStream aIn)
           
private  java.security.cert.Certificate readPEMCertificate(java.io.InputStream in)
           
private  java.security.cert.CRL readPEMCRL(java.io.InputStream in)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PEM_CERT_PARSER

private static final PEMUtil PEM_CERT_PARSER

PEM_CRL_PARSER

private static final PEMUtil PEM_CRL_PARSER

sData

private ASN1Set sData

sDataObjectCount

private int sDataObjectCount

currentStream

private java.io.InputStream currentStream

sCrlData

private ASN1Set sCrlData

sCrlDataObjectCount

private int sCrlDataObjectCount

currentCrlStream

private java.io.InputStream currentCrlStream
Constructor Detail

JDKX509CertificateFactory

public JDKX509CertificateFactory()
Method Detail

readDERCertificate

private java.security.cert.Certificate readDERCertificate(ASN1InputStream dIn)
                                                   throws java.io.IOException,
                                                          java.security.cert.CertificateParsingException
Throws:
java.io.IOException
java.security.cert.CertificateParsingException

getCertificate

private java.security.cert.Certificate getCertificate()
                                               throws java.security.cert.CertificateParsingException
Throws:
java.security.cert.CertificateParsingException

readPEMCertificate

private java.security.cert.Certificate readPEMCertificate(java.io.InputStream in)
                                                   throws java.io.IOException,
                                                          java.security.cert.CertificateParsingException
Throws:
java.io.IOException
java.security.cert.CertificateParsingException

readPEMCRL

private java.security.cert.CRL readPEMCRL(java.io.InputStream in)
                                   throws java.io.IOException,
                                          java.security.cert.CRLException
Throws:
java.io.IOException
java.security.cert.CRLException

readDERCRL

private java.security.cert.CRL readDERCRL(ASN1InputStream aIn)
                                   throws java.io.IOException,
                                          java.security.cert.CRLException
Throws:
java.io.IOException
java.security.cert.CRLException

getCRL

private java.security.cert.CRL getCRL()
                               throws java.security.cert.CRLException
Throws:
java.security.cert.CRLException

engineGenerateCertificate

public java.security.cert.Certificate engineGenerateCertificate(java.io.InputStream in)
                                                         throws java.security.cert.CertificateException
Generates a certificate object and initializes it with the data read from the input stream inStream.

Specified by:
engineGenerateCertificate in class java.security.cert.CertificateFactorySpi
Throws:
java.security.cert.CertificateException

engineGenerateCertificates

public java.util.Collection engineGenerateCertificates(java.io.InputStream inStream)
                                                throws java.security.cert.CertificateException
Returns a (possibly empty) collection view of the certificates read from the given input stream inStream.

Specified by:
engineGenerateCertificates in class java.security.cert.CertificateFactorySpi
Throws:
java.security.cert.CertificateException

engineGenerateCRL

public java.security.cert.CRL engineGenerateCRL(java.io.InputStream inStream)
                                         throws java.security.cert.CRLException
Generates a certificate revocation list (CRL) object and initializes it with the data read from the input stream inStream.

Specified by:
engineGenerateCRL in class java.security.cert.CertificateFactorySpi
Throws:
java.security.cert.CRLException

engineGenerateCRLs

public java.util.Collection engineGenerateCRLs(java.io.InputStream inStream)
                                        throws java.security.cert.CRLException
Returns a (possibly empty) collection view of the CRLs read from the given input stream inStream. The inStream may contain a sequence of DER-encoded CRLs, or a PKCS#7 CRL set. This is a PKCS#7 SignedData object, with the only signficant field being crls. In particular the signature and the contents are ignored.

Specified by:
engineGenerateCRLs in class java.security.cert.CertificateFactorySpi
Throws:
java.security.cert.CRLException

engineGetCertPathEncodings

public java.util.Iterator engineGetCertPathEncodings()
Overrides:
engineGetCertPathEncodings in class java.security.cert.CertificateFactorySpi

engineGenerateCertPath

public java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream inStream)
                                                   throws java.security.cert.CertificateException
Overrides:
engineGenerateCertPath in class java.security.cert.CertificateFactorySpi
Throws:
java.security.cert.CertificateException

engineGenerateCertPath

public java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream inStream,
                                                          java.lang.String encoding)
                                                   throws java.security.cert.CertificateException
Overrides:
engineGenerateCertPath in class java.security.cert.CertificateFactorySpi
Throws:
java.security.cert.CertificateException

engineGenerateCertPath

public java.security.cert.CertPath engineGenerateCertPath(java.util.List certificates)
                                                   throws java.security.cert.CertificateException
Overrides:
engineGenerateCertPath in class java.security.cert.CertificateFactorySpi
Throws:
java.security.cert.CertificateException