java.security.cert
public abstract class PKIXCertPathChecker extends Object implements Cloneable
Concrete subclasses can be passed to the {@link PKIXParameters#setCertPathCheckers(java.util.List)} and {@link PKIXParameters#addCertPathChecker(java.security.cert.PKIXCertPathChecker)} methods, which are then used to set up PKIX certificate chain builders or validators. These classes then call the {@link #check(java.security.cert.Certificate,java.util.Collection)} method of this class, performing whatever checks on the certificate, throwing an exception if any check fails.
Subclasses of this must be able to perform their checks in the backward direction -- from the most-trusted certificate to the target -- and may optionally support forward checking -- from the target to the most-trusted certificate.
Since: 1.4
See Also: PKIXParameters
Constructor Summary | |
---|---|
protected | PKIXCertPathChecker() Default constructor. |
Method Summary | |
---|---|
abstract void | check(Certificate cert, Collection<String> unresolvedCritExts)
Checks a certificate, removing any critical extensions that are
resolved in this check.
|
Object | clone() |
abstract Set<String> | getSupportedExtensions()
Returns an immutable set of X.509 extension object identifiers (OIDs)
supported by this PKIXCertPathChecker.
|
abstract void | init(boolean forward)
Initialize this PKIXCertPathChecker. |
abstract boolean | isForwardCheckingSupported()
Returns whether or not this class supports forward checking.
|
Parameters: cert The certificate to check. unresolvedCritExts The (mutable) collection of as-of-yet unresolved critical extensions, as OID strings.
Throws: CertPathValidatorException If this certificate fails this check.
Returns: An immutable set of Strings of the supported X.509 OIDs, or null if no extensions are supported.
Parameters: forward The direction of this PKIXCertPathChecker.
Throws: CertPathValidatorException If forward is true and this class does not support forward checking.
Returns: Whether or not this class supports forward checking.