Team LiB
Previous Section Next Section

CertPathBuilderjava.security.cert

Java 1.4

CertPathBuilder attempts to build a certification path from a specified certificate to a trust anchor. Unlike the CertificateFactory.generateCertPath( ) method, which might be used by a server to parse a certificate chain presented to it by a client, this class is used to create a new certificate chain, and might be used by a client that needs to send a certificate chain to a server. The CertPathBuilder API is provider-based, and is algorithm independent, although the use of any algorithms other than the "PKIX" standards (which work with X.509 certificate chains) require appropriate external implementations of CertPathParameters and CertPathBuilderResult.

Obtain a CertPathBuilder object by calling one of the static getInstance( ) methods, specifying the desired algorithm and, optionally, the desired provider. The "PKIX" algorithm is the only one supported by the default "SUN" provider, and is the only one that has the required algorithm-specific classes defined by this package. Once you have a CertPathBuilder, you create a CertPath object by passing a CertPathParameters object to the build( ) method. CertPathParameters is a marker interfaces that defines no method of its own, so you must use an algorithm-specific implementation such as PKIXBuilderParameters to supply the information required to build a CertPath. The build( ) method returns a CertPathBuilderResult object. Use the getCertPath( ) method of this returned object to obtain the CertPath that was built. The algorithm-specific implementation PKIXCertPathBuilderResult has additional methods that return further algorithm-specific results.

public class CertPathBuilder {
// Protected Constructors
     protected CertPathBuilder(CertPathBuilderSpi builderSpi, 
        java.security.Provider provider, String algorithm);  
// Public Class Methods
     public static final String getDefaultType( );  
     public static CertPathBuilder getInstance(String algorithm) 
        throws java.security.NoSuchAlgorithmException;  
     public static CertPathBuilder getInstance(String algorithm, String provider) 
        throws java.security.NoSuchAlgorithmException, 
        java.security.NoSuchProviderException;  
     public static CertPathBuilder getInstance(String algorithm, 
        java.security.Provider provider) 
        throws java.security.NoSuchAlgorithmException;  
// Public Instance Methods
     public final CertPathBuilderResult build(CertPathParameters params) 
        throws CertPathBuilderException, 
        java.security.InvalidAlgorithmParameterException;  
     public final String getAlgorithm( );  
     public final java.security.Provider getProvider( );  
}

    Team LiB
    Previous Section Next Section