- java.lang.Object
-
- java.security.cert.PKIXCertPathChecker
-
- java.security.cert.PKIXRevocationChecker
-
- All Implemented Interfaces:
-
Cloneable,CertPathChecker
public abstract class PKIXRevocationChecker extends PKIXCertPathChecker
APKIXCertPathChecker用于使用PKIX算法检查证书的撤销状态。A
PKIXRevocationChecker使用在线证书状态协议(OCSP)或证书吊销列表(CRL)检查证书的撤销状态。 OCSP在RFC 2560中描述,并且是用于确定证书状态的网络协议。 CRL是标识撤销证书的时间戳列表,RFC 5280描述了一种使用CRL确定证书撤销状态的算法。每个
PKIXRevocationChecker必须能够使用OCSP和CRL来检查证书的撤销状态。 默认情况下,OCSP是检查撤销状态的首选机制,CRL作为备用机制。 但是,可以使用PREFER_CRLS选项将此首选项切换到CRL。 此外,可以使用NO_FALLBACK选项禁用回退机制。A
PKIXRevocationChecker是通过调用PKIXCertPathValidator的getRevocationChecker方法获得的。 可以设置特定于吊销的其他参数和选项(例如通过调用setOcspResponder方法)。 所述PKIXRevocationChecker加入到PKIXParameters使用对象addCertPathChecker或setCertPathCheckers方法,然后将PKIXParameters与一起传递CertPath进行验证到validate一个PKIX的方法CertPathValidator。 当以这种方式提供撤销检查器时,将用于检查撤销,而不管RevocationEnabled标志的设置。 类似地,可以将PKIXRevocationChecker添加到用于PKIXCertPathBuilder的PKIXBuilderParameters对象中。注意,当一个
PKIXRevocationChecker被添加到PKIXParameters,它克隆了PKIXRevocationChecker; 因此任何对PKIXRevocationChecker后续修改都没有效果。任何未设置的参数(或设置为
null)将被设置为该参数的默认值。并发访问
除非另有说明,否则此类中定义的方法不是线程安全的。 需要同时访问单个对象的多个线程应在其间同步并提供必要的锁定。 每个操作单独对象的多个线程不需要同步。
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 static classPKIXRevocationChecker.Option可以为吊销检查机制指定的各种撤销选项。
-
构造方法摘要
构造方法 Modifier Constructor 描述 protectedPKIXRevocationChecker()默认构造函数。
-
方法摘要
所有方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 PKIXRevocationCheckerclone()返回此对象的克隆。List<Extension>getOcspExtensions()获取可选的OCSP请求扩展。URIgetOcspResponder()获取标识OCSP响应器位置的URI。X509CertificategetOcspResponderCert()获取OCSP响应者的证书。Map<X509Certificate,byte[]>getOcspResponses()获得OCSP响应。Set<PKIXRevocationChecker.Option>getOptions()获取吊销选项。abstract List<CertPathValidatorException>getSoftFailExceptions()返回一个列表,其中包含当设置了SOFT_FAIL选项时撤销检查器忽略的异常。voidsetOcspExtensions(List<Extension> extensions)设置可选的OCSP请求扩展。voidsetOcspResponder(URI uri)设置标识OCSP响应器位置的URI。voidsetOcspResponderCert(X509Certificate cert)设置OCSP响应者的证书。voidsetOcspResponses(Map<X509Certificate,byte[]> responses)设置OCSP响应。voidsetOptions(Set<PKIXRevocationChecker.Option> options)设置撤销选项。-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from class java.security.cert.PKIXCertPathChecker
check, check, getSupportedExtensions, init, isForwardCheckingSupported
-
-
-
-
方法详细信息
-
setOcspResponder
public void setOcspResponder(URI uri)
设置标识OCSP响应器位置的URI。 这将覆盖ocsp.responderURL安全属性以及在证书授权信息访问扩展中指定的任何响应者,如RFC 5280中所定义。- 参数
-
uri- 响应者URI
-
getOcspResponder
public URI getOcspResponder()
获取标识OCSP响应器位置的URI。 这覆盖了ocsp.responderURL安全属性。 如果此参数或ocsp.responderURL属性未设置,则该位置由RFC 5280中定义的证书的权限信息访问扩展确定。- 结果
-
响应者URI,如果没有设置,
null
-
setOcspResponderCert
public void setOcspResponderCert(X509Certificate cert)
设置OCSP响应者的证书。 这将覆盖ocsp.responderCertSubjectName,ocsp.responderCertIssuerName,并ocsp.responderCertSerialNumber安全属性。- 参数
-
cert- 答复者的证书
-
getOcspResponderCert
public X509Certificate getOcspResponderCert()
获取OCSP响应者的证书。 这将覆盖ocsp.responderCertSubjectName,ocsp.responderCertIssuerName,并ocsp.responderCertSerialNumber安全属性。 如果此参数或上述属性未设置,则响应者的证书按照RFC 2560中的规定确定。- 结果
-
应答者的证书,或
null如果没有设置
-
setOcspExtensions
public void setOcspExtensions(List<Extension> extensions)
设置可选的OCSP请求扩展。- 参数
-
extensions- 扩展名单。 该列表被复制以防止后续修改。
-
getOcspExtensions
public List<Extension> getOcspExtensions()
获取可选的OCSP请求扩展。- 结果
- 一个不可修改的扩展名单。 如果没有指定扩展名,列表为空。
-
setOcspResponses
public void setOcspResponses(Map<X509Certificate,byte[]> responses)
设置OCSP响应。 当使用OCSP时,这些响应用于确定指定证书的吊销状态。- 参数
-
responses- OCSP响应图。 每个密钥是一个X509Certificate,映射到该证书的相应的DER编码的OCSP响应。 执行地图的深层副本以防止后续修改。
-
getOcspResponses
public Map<X509Certificate,byte[]> getOcspResponses()
获得OCSP响应。 当使用OCSP时,这些响应用于确定指定证书的吊销状态。- 结果
-
OCSP响应图。
每个密钥是一个
X509Certificate,映射到该证书的相应的DER编码的OCSP响应。 返回地图的深层副本以防止后续修改。 如果未指定任何响应,则返回空的地图。
-
setOptions
public void setOptions(Set<PKIXRevocationChecker.Option> options)
设置撤销选项。- 参数
-
options- 一组撤销选项。 该集合被复制以防止后续修改。
-
getOptions
public Set<PKIXRevocationChecker.Option> getOptions()
获取吊销选项。- 结果
- 一套不可修改的撤销选择。 如果未指定任何选项,则该集合为空。
-
getSoftFailExceptions
public abstract List<CertPathValidatorException> getSoftFailExceptions()
返回一个列表,其中包含当设置了SOFT_FAIL选项时撤销检查器忽略的异常。 每次调用init清单。 列表按照每个条目的getIndex方法返回的证书索引按升序排列。PKIXRevocationChecker的实现负责将忽略的例外添加到列表中。- 结果
- 一个包含被忽略的异常的不可修改的列表。 如果没有忽略异常,列表为空。
-
clone
public PKIXRevocationChecker clone()
描述从类别复制:PKIXCertPathChecker返回此对象的克隆。 调用Object.clone()方法。 维护状态的所有子类必须支持并覆盖此方法。- 重写:
-
clone在PKIXCertPathChecker - 结果
-
这个
PKIXCertPathChecker的副本 - 另请参见:
-
Cloneable
-
-