|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.security.cert
类 PKIXBuilderParameters
java.lang.Object java.security.cert.PKIXParameters java.security.cert.PKIXBuilderParameters
- 所有已实现的接口:
- Cloneable, CertPathParameters
-
public class PKIXBuilderParameters
- extends PKIXParameters
用作 PKIX CertPathBuilder
算法的输入的参数。
PKIX CertPathBuilder
使用这些参数构建
一个已根据 PKIX 证书路径验证算法验证的 CertPath
。
要实例化 PKIXBuilderParameters
对象,应用程序必须指定一个或多个由 PKIX 证书路径验证算法所定义的最受信任的 CA。可以使用两个构造方法中的一个来指定最受信任的 CA。应用程序可以调用 PKIXBuilderParameters(Set, CertSelector)
来指定一个 TrustAnchor
对象 Set
,其中每个对象都标识一个最受信任的 CA。另外,应用程序也可调用 PKIXBuilderParameters(KeyStore, CertSelector)
来指定一个 KeyStore
实例,其中包含多个受信任的证书项,每个项都认为是一个最受信任的 CA。
另外,应用程序必须指定有关目标证书的限制,CertPathBuilder
将试图为该目标证书构建路径。以 CertSelector
对象的形式指定这些限制。这些限制应该为 CertPathBuilder
提供足够的搜索标准以找到该目标证书。X509Certificate
的最小标准通常包括了主体名称和/或一个或多个主体替换名称。如果未指定足够的标准,则 CertPathBuilder
可能抛出 CertPathBuilderException
。
并发访问
除非另行指定,否则此类中所定义的方法不是线程安全的。需要并发访问单个对象的多个线程应该在它们之间实现同步并提供所需的锁定。对于每个线程都操作一个不同对象的多个线程而言,无需实现同步。
- 从以下版本开始:
- 1.4
- 另请参见:
-
CertPathBuilder
构造方法摘要 | |
---|---|
PKIXBuilderParameters(KeyStore keystore, CertSelector targetConstraints) 创建一个 PKIXBuilderParameters 实例,它根据指定 KeyStore 中所包含的受信任证书项生成最受信任的 CA 集。 |
|
PKIXBuilderParameters(Set<TrustAnchor> trustAnchors, CertSelector targetConstraints) 创建具有指定最受信任 CA Set 的 PKIXBuilderParameters 的实例。 |
方法摘要 | |
---|---|
int |
getMaxPathLength() 返回证书路径中可能存在的中间非自发布证书的最大数目值。 |
void |
setMaxPathLength(int maxPathLength) 设置证书路径中可能存在的非自发中间证书的最大数目值。 |
String |
toString() 返回描述该参数的格式化字符串。 |
从类 java.lang.Object 继承的方法 |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
PKIXBuilderParameters
public PKIXBuilderParameters(Set<TrustAnchor> trustAnchors, CertSelector targetConstraints) throws InvalidAlgorithmParameterException
-
创建具有指定最受信任 CA
Set
的PKIXBuilderParameters
的实例。该 set 中的每个元素都是一个TrustAnchor
。注意,为了保护该
Set
以防后续修改,会复制该 Set。- 参数:
-
trustAnchors
- 一个TrustAnchor
Set
-
targetConstraints
- 指定有关目标证书限制的CertSelector
- 抛出:
-
InvalidAlgorithmParameterException
- 如果trustAnchors
为空(trustAnchors.isEmpty() == true)
-
NullPointerException
- 如果trustAnchors
为null
-
ClassCastException
- 如果trustAnchors
的任一元素不是java.security.cert.TrustAnchor
类型的
PKIXBuilderParameters
public PKIXBuilderParameters(KeyStore keystore, CertSelector targetConstraints) throws KeyStoreException, InvalidAlgorithmParameterException
-
创建一个
PKIXBuilderParameters
实例,它根据指定KeyStore
中所包含的受信任证书项生成最受信任的 CA 集。只考虑那些包含受信任X509Certificate
的 keystore 项;忽略所有其他证书类型。- 参数:
-
keystore
- 一个KeyStore
,将根据它来生成最受信任的 CA 集 -
targetConstraints
- 指定有关目标证书限制的CertSelector
- 抛出:
-
KeyStoreException
- 如果尚未初始化keystore
-
InvalidAlgorithmParameterException
- 如果keystore
不包含受信的证书项 -
NullPointerException
- 如果keystore
为null
方法详细信息 |
---|
setMaxPathLength
public void setMaxPathLength(int maxPathLength)
-
设置证书路径中可能存在的非自发中间证书的最大数目值。如果主体和发布方字段中出现的 DN 相同并且不为空,则该证书是自发布的。注意,证书路径中最后一个证书不是中间证书,并且不受此限制的约束。通常最后一个证书是一个结束实体证书,但它可能是一个 CA 证书。PKIX
CertPathBuilder
实例所构建的路径不能超过所指定的长度。值为 0 意味着该路径只包含单个证书。值为 -1 则意味着该路径长度是不受约束的(即没有最大值)。如果未指定,则默认的最大路径长度是 5。设置小于 -1 的值将导致抛出异常。
如果任意 CA 证书包含
BasicConstraintsExtension
,那么只要结果是一个更短长度的证书路径,则扩展的pathLenConstraint
字段覆盖最大路径长度参数。 -
- 参数:
-
maxPathLength
- 证书路径中可能存在的中间非自发布证书的最大数 - 抛出:
-
InvalidParameterException
- 如果将maxPathLength
设置为小于 -1 的值 - 另请参见:
-
getMaxPathLength()
getMaxPathLength
public int getMaxPathLength()
-
返回证书路径中可能存在的中间非自发布证书的最大数目值。有关详细信息,请参阅
setMaxPathLength(int)
方法。 -
- 返回:
- 证书路径中可能存在的中间非自发布证书的最大数,如果没有限制,则返回 -1
- 另请参见:
-
setMaxPathLength(int)
toString
public String toString()
- 返回描述该参数的格式化字符串。
-
- 覆盖:
-
类
PKIXParameters
中的toString
-
- 返回:
- 描述该参数的格式化字符串
所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |