Java in a Nutshell, 5th Edition [Electronic resources]

نسخه متنی -صفحه : 1191/ 574
نمايش فراداده

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 ( ); }