|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.security.cert
类 PKIXParameters
java.lang.Object java.security.cert.PKIXParameters
- 所有已实现的接口:
- Cloneable, CertPathParameters
- 直接已知子类:
- PKIXBuilderParameters
-
public class PKIXParameters
- extends Object
- implements CertPathParameters
用作 PKIX CertPathValidator
算法的输入的参数。
PKIX CertPathValidator
使用这些参数、根据 PKIX 证书路径验证算法来验证 CertPath
。
要实例化 PKIXParameters
对象,应用程序必须指定一个或多个由 PKIX 证书路径验证算法所定义的最受信任的 CA。可以使用两个构造方法中的一个来指定最受信任的 CA。应用程序可以调用 PKIXParameters(Set)
来指定一个 TrustAnchor
对象 Set
,其中每个对象都标识一个最受信任的 CA。另外,应用程序也可调用 PKIXParameters(KeyStore)
来指定一个 KeyStore
实例,其中包含多个受信任的证书项,每个项都认为是一个最受信任的 CA。
一旦创建了 PKIXParameters
对象,就可以指定其他参数(例如通过调用 setInitialPolicies
或 setDate
),然后沿着要被 CertPathValidator.validate
所验证的 CertPath
传递 PKIXParameters
。
所有未设置(或被设置为 null
)的参数将被设置为该参数的默认值。date
参数的默认值是 null
,指示验证该路径时的当前时间。其余参数的默认值是约束最少的。
并发访问
除非另行指定,否则此类中所定义的方法不是线程安全的。需要并发访问单个对象的多个线程应该在它们之间实现同步并提供所需的锁定。对于每个线程都操作一个不同对象的多个线程而言,无需实现同步。
- 从以下版本开始:
- 1.4
- 另请参见:
-
CertPathValidator
构造方法摘要 | |
---|---|
PKIXParameters(KeyStore keystore) 创建一个 PKIXParameters 实例,它根据指定 KeyStore 中所包含的受信证书项生成最受信任的 CA 集。 |
|
PKIXParameters(Set<TrustAnchor> trustAnchors) 创建具有指定最受信任 CA Set 的 PKIXParameters 的实例。 |
方法摘要 | |
---|---|
void |
addCertPathChecker(PKIXCertPathChecker checker) 向证书路径检查器列表中添加一个 PKIXCertPathChecker 。 |
void |
addCertStore(CertStore store) 将 CertStore 添加到查找证书和 CRL 所使用的 CertStore 列表末尾。 |
Object |
clone() 对此 PKIXParameters 对象进行复制。 |
List<PKIXCertPathChecker> |
getCertPathCheckers() 返回证书路径检查器的 List 。 |
List<CertStore> |
getCertStores() 返回用于查找证书和 CRL 的不可变 CertStore List 。 |
Date |
getDate() 返回应该确定证书路径有效性的时间。 |
Set<String> |
getInitialPolicies() 返回初始策略标识符(OID 字符串)的不可变 Set ,指示出于证书路径处理的目的,所有这些策略都可被证书用户接受。 |
boolean |
getPolicyQualifiersRejected() 获得 PolicyQualifiersRejected 标志。 |
String |
getSigProvider() 返回签名提供程序的名称,如果未设置,则返回 null 。 |
CertSelector |
getTargetCertConstraints() 返回目标证书所需的限制。 |
Set<TrustAnchor> |
getTrustAnchors() 返回不可变的、最受信任的 CA Set 。 |
boolean |
isAnyPolicyInhibited() 检查当证书中包括了任何策略 OID 时是否应该处理它。 |
boolean |
isExplicitPolicyRequired() 检查是否需要显式策略。 |
boolean |
isPolicyMappingInhibited() 检查是否禁止策略映射。 |
boolean |
isRevocationEnabled() 检查 RevocationEnabled 标志。 |
void |
setAnyPolicyInhibited(boolean val) 设置状态,以确定当证书中包括了策略 OID 时是否应该处理它。 |
void |
setCertPathCheckers(List<PKIXCertPathChecker> checkers) 设置其他证书路径检查器的 List 。 |
void |
setCertStores(List<CertStore> stores) 设置在查找证书和 CRL 时所使用的 CertStore 列表。 |
void |
setDate(Date date) 设置应该确定证书路径有效性的时间。 |
void |
setExplicitPolicyRequired(boolean val) 设置 ExplicitPolicyRequired 标志。 |
void |
setInitialPolicies(Set<String> initialPolicies) 设置初始策略标识符(OID 字符串)的 Set ,指示出于证书路径处理的目的,所有这些策略都可被证书用户接受。 |
void |
setPolicyMappingInhibited(boolean val) 设置 PolicyMappingInhibited 标志。 |
void |
setPolicyQualifiersRejected(boolean qualifiersRejected) 设置 PolicyQualifiersRejected 标志。 |
void |
setRevocationEnabled(boolean val) 设置 RevocationEnabled 标志。 |
void |
setSigProvider(String sigProvider) 设置签名提供程序的名称。 |
void |
setTargetCertConstraints(CertSelector selector) 设置目标证书所需的限制。 |
void |
setTrustAnchors(Set<TrustAnchor> trustAnchors) 设置最受信任的 CA Set 。 |
String |
toString() 返回描述该参数的格式化字符串。 |
从类 java.lang.Object 继承的方法 |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
PKIXParameters
public PKIXParameters(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
-
创建具有指定最受信任 CA
Set
的PKIXParameters
的实例。该 set 中的每个元素都是一个TrustAnchor
。注意,要复制该
Set
以防对其进行后续修改。- 参数:
-
trustAnchors
-TrustAnchor
的Set
- 抛出:
-
InvalidAlgorithmParameterException
- 如果指定的Set
为空(trustAnchors.isEmpty() == true)
-
NullPointerException
- 如果指定的Set
为null
-
ClassCastException
- 如果该Set
中任一元素不是java.security.cert.TrustAnchor
类型的
PKIXParameters
public PKIXParameters(KeyStore keystore) throws KeyStoreException, InvalidAlgorithmParameterException
-
创建一个
PKIXParameters
实例,它根据指定KeyStore
中所包含的受信证书项生成最受信任的 CA 集。只考虑那些包含受信X509Certificates
的 keystore 项;忽略所有其他证书类型。- 参数:
-
keystore
- 一个KeyStore
,将根据它来生成最受信任的 CA 集 - 抛出:
-
KeyStoreException
- 如果尚未初始化 keystore -
InvalidAlgorithmParameterException
- 如果 keystore 不包含一个受信证书项 -
NullPointerException
- 如果 keystore 为null
方法详细信息 |
---|
getTrustAnchors
public Set<TrustAnchor> getTrustAnchors()
-
返回不可变的、最受信任的 CA
Set
。 -
-
- 返回:
-
不可变的
TrustAnchor
Set
(从不为null
) - 另请参见:
-
setTrustAnchors(java.util.Set
)
setTrustAnchors
public void setTrustAnchors(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
-
设置最受信任的 CA
Set
。注意,要复制该
Set
以防对其进行后续修改。 -
-
- 参数:
-
trustAnchors
-TrustAnchor
的Set
- 抛出:
-
InvalidAlgorithmParameterException
- 如果指定的Set
为空(trustAnchors.isEmpty() == true)
-
NullPointerException
- 如果指定的Set
为null
-
ClassCastException
- 如果该 Set 中的任一元素不是java.security.cert.TrustAnchor
类型的 - 另请参见:
-
getTrustAnchors()
getInitialPolicies
public Set<String> getInitialPolicies()
-
返回初始策略标识符(OID 字符串)的不可变
Set
,指示出于证书路径处理的目的,所有这些策略都可被证书用户接受。默认返回值是一个空Set
,它可以解释为任意策略均是可接受的。 -
-
- 返回:
-
初始策略 OID(以
String
的形式)的不可变Set
,或者是空Set
(暗示所有策略均是可接受的)。从不返回null
。 - 另请参见:
-
setInitialPolicies(java.util.Set
)
setInitialPolicies
public void setInitialPolicies(Set<String> initialPolicies)
-
设置初始策略标识符(OID 字符串)的
Set
,指示出于证书路径处理的目的,所有这些策略都可被证书用户接受。默认情况下,任意策略(也就是所有策略)都是可接受的,所以想要任意策略都为可接受的用户不必调用此方法,或者可以用空的Set
(或者null
)调用此方法。注意,要复制该
Set
以防对其进行后续修改。 -
-
- 参数:
-
initialPolicies
- 初始策略 OID(以String
格式)的Set
(或者为null
) - 抛出:
-
ClassCastException
- 如果该 set 中的任一元素不是String
类型的 - 另请参见:
-
getInitialPolicies()
setCertStores
public void setCertStores(List<CertStore> stores)
-
设置在查找证书和 CRL 时所使用的
CertStore
列表。可以为null
,在这种情况下将不使用CertStore
。列表中前面出现的CertStore
可能优先于后面出现的 CertStore 使用。注意,要复制该
List
以防对其进行后续修改。 -
-
- 参数:
-
stores
-CertStore
的List
(或者为null
) - 抛出:
-
ClassCastException
- 如果该 list 中的任一元素不是java.security.cert.CertStore
类型的 - 另请参见:
-
getCertStores()
addCertStore
public void addCertStore(CertStore store)
-
将
CertStore
添加到查找证书和 CRL 所使用的CertStore
列表末尾。 -
-
- 参数:
-
store
- 要添加的CertStore
。如果为null
,则忽略该 CertStore(不添加到列表中)。