public abstract class PKIXCertPathChecker extends Object implements CertPathChecker, Cloneable
X509Certificate执行一个或多个检查。
PKIXCertPathChecker类的具体实现可以创建扩展PKIX证书路径验证算法。例如,一个实现可以检查和处理证书路径中的每个证书的一个关键的私有扩展。
实例PKIXCertPathChecker是作为参数传递使用setCertPathCheckers或addCertPathChecker方法的PKIXParameters和PKIXBuilderParameters类。每个的PKIXCertPathCheckers check方法会被调用,反过来,每个证书的处理由PKIX CertPathValidator或CertPathBuilder实施。
一个PKIXCertPathChecker可以多次调用在一个连续的证书认证路径。具体的子类,预计将保持任何内部状态,可能是必要的,以检查连续的证书。的init方法用于初始化检查程序的内部状态,一个新的证书路径的证书可以检查。有状态的实现必须重写clone方法必要时为了让PKIX CertPathBuilder有效回溯并尝试其他路径。在这些情况下,该CertPathBuilder能够恢复克隆PKIXCertPathCheckers恢复以前的路径验证状态。
为了在该证书提交给PKIXCertPathChecker可以在向前的方向(从目标到最受信任的CA)或在相反的方向(从最受信任的CA的目标)。一个PKIXCertPathChecker实施必须支持反查(执行检查的能力时,出现在相反的方向的证书)和可以支持正向检查(执行检查的能力当它是在前进方向的证书)。的isForwardCheckingSupported方法指示检查支持。
执行检查所需的附加输入参数可以通过该类的具体实现的构造函数来指定。
并发访问
除非另有说明,在这个类中定义的方法不是线程安全的。需要访问一个单一对象的多个线程同时应同步,并提供必要的锁。多线程每个操作单独的对象不需要同步。
PKIXParameters,
PKIXBuilderParameters
| Modifier | Constructor and Description |
|---|---|
protected |
PKIXCertPathChecker()
默认构造函数。
|
| Modifier and Type | Method and Description |
|---|---|
void |
check(Certificate cert)
使用其内部状态在指定的证书上执行检查(s)。
|
abstract void |
check(Certificate cert, Collection<String> unresolvedCritExts)
执行检查(S)在指定的证书使用其内部状态和删除任何重要的扩展,它处理从指定集合的OID字符串表示的悬而未决的关键扩展。
|
Object |
clone()
返回此对象的克隆。
|
abstract Set<String> |
getSupportedExtensions()
返回一个不可变的X.509证书的扩展,这
PKIXCertPathChecker支持
Set(即
|
abstract void |
init(boolean forward)
这
PKIXCertPathChecker内部状态初始化。
|
abstract boolean |
isForwardCheckingSupported()
表示支持向前检查。
|
public abstract void init(boolean forward)
throws CertPathValidatorException
PKIXCertPathChecker初始化内部状态。
的forward标志指定的证书将被传递到check顺序的方法(正向或反向)。一个PKIXCertPathChecker 必须支持反查可以支持正向检查。
init 接口
CertPathChecker
forward -证书提交给
check顺序的方法。如果
true,证明是从目标到最受信任的CA(向前);如果
false,从最信任的CA的目标(反向)。
CertPathValidatorException -如果这
PKIXCertPathChecker无法检查指定的证书;它不应该是如果远期标志为假,由于逆向检查必须支持扔
public abstract boolean isForwardCheckingSupported()
PKIXCertPathChecker能力履行检查时证书是在向前的方向呈现给
check方法(从目标到最受信任的CA)。
isForwardCheckingSupported 接口
CertPathChecker
true如果检查支持,
false否则
public abstract Set<String> getSupportedExtensions()
PKIXCertPathChecker支持
Set(即承认,能够处理),或
null如果没有扩展支持。
集合中的每个元素是一个String表示对象标识符(OID)的扩展,支持X.509。OID是由一组非负整数代表分离的时期。
所有的X.509证书的扩展,一个PKIXCertPathChecker可能能够过程中应包含的设置。
Set(在
String格式)的
PKIXCertPathChecker支持,或
null如果没有扩展支持
public abstract void check(Certificate cert, Collection<String> unresolvedCritExts) throws CertPathValidatorException
init方法中指定的顺序。
cert -
Certificate进行检查
unresolvedCritExts -
Collection OID的字符串表示尚未解决的关键扩展当前设置
CertPathValidatorException -如果指定的证书没有通过检查
public void check(Certificate cert) throws CertPathValidatorException
init方法中指定的顺序。
这要求执行check(cert, java.util.Collections.<String>emptySet())。
check 接口
CertPathChecker
cert -
Certificate进行检查
CertPathValidatorException -如果指定的证书没有通过检查
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.