所有类


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 对象,就可以指定其他参数(例如通过调用 setInitialPoliciessetDate),然后沿着要被 CertPathValidator.validate 所验证的 CertPath 传递 PKIXParameters

所有未设置(或被设置为 null)的参数将被设置为该参数的默认值。date 参数的默认值是 null,指示验证该路径时的当前时间。其余参数的默认值是约束最少的。

并发访问

除非另行指定,否则此类中所定义的方法不是线程安全的。需要并发访问单个对象的多个线程应该在它们之间实现同步并提供所需的锁定。对于每个线程都操作一个不同对象的多个线程而言,无需实现同步。

从以下版本开始:
1.4
另请参见:
CertPathValidator

构造方法摘要
PKIXParameters(KeyStore keystore)
          创建一个 PKIXParameters 实例,它根据指定 KeyStore 中所包含的受信证书项生成最受信任的 CA 集。
PKIXParameters(Set<TrustAnchor> trustAnchors)
          创建具有指定最受信任 CA SetPKIXParameters 的实例。
 
方法摘要
 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 SetPKIXParameters 的实例。该 set 中的每个元素都是一个 TrustAnchor

注意,要复制该 Set 以防对其进行后续修改。

参数:
trustAnchors - TrustAnchorSet
抛出:
InvalidAlgorithmParameterException - 如果指定的 Set 为空 (trustAnchors.isEmpty() == true)
NullPointerException - 如果指定的 Setnull
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 - TrustAnchorSet
抛出:
InvalidAlgorithmParameterException - 如果指定的 Set 为空 (trustAnchors.isEmpty() == true)
NullPointerException - 如果指定的 Setnull
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 - CertStoreList(或者为 null
抛出:
ClassCastException - 如果该 list 中的任一元素不是 java.security.cert.CertStore 类型的
另请参见:
getCertStores()

addCertStore

public void addCertStore(CertStore store)
CertStore 添加到查找证书和 CRL 所使用的 CertStore 列表末尾。

参数:
store - 要添加的 CertStore。如果为 null,则忽略该 CertStore(不添加到列表中)。

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部