Most visited

Recently visited

Added in API level 1

CertificateFactorySpi

public abstract class CertificateFactorySpi
extends Object

java.lang.Object
   ↳ java.security.cert.CertificateFactorySpi


该类定义了CertificateFactory类的 ( SPI )。 该类中的所有抽象方法都必须由每个希望为特定证书类型(例如X.509)提供证书工厂实现的加密服务提供者实现。

证书工厂用于从其编码生成证书,证书路径( CertPath )和证书撤销列表(CRL)对象。

X.509的证书工厂必须返回 java.security.cert.X509Certificate实例的 java.security.cert.X509Certificatejava.security.cert.X509CRL实例的 java.security.cert.X509CRL

也可以看看:

Summary

Public constructors

CertificateFactorySpi()

Public methods

abstract CRL engineGenerateCRL(InputStream inStream)

生成证书撤销列表(CRL)对象,并使用从输入流 inStream读取的数据对其进行初始化。

abstract Collection<? extends CRL> engineGenerateCRLs(InputStream inStream)

返回从给定输入流 inStream读取的CRL的(可能为空)集合视图。

CertPath engineGenerateCertPath(InputStream inStream, String encoding)

生成一个 CertPath对象,并使用从 InputStream inStream中读取的数据对它进行初始化。

CertPath engineGenerateCertPath(List<? extends Certificate> certificates)

生成一个 CertPath对象并用 ListCertificate s对其进行初始化。

CertPath engineGenerateCertPath(InputStream inStream)

生成一个 CertPath对象,并使用从 InputStream inStream中读取的数据对它进行初始化。

abstract Certificate engineGenerateCertificate(InputStream inStream)

生成一个证书对象并使用从输入流 inStream读取的数据初始化它。

abstract Collection<? extends Certificate> engineGenerateCertificates(InputStream inStream)

返回从给定输入流 inStream读取的证书的集合视图(可能为空)。

Iterator<String> engineGetCertPathEncodings()

返回此证书工厂支持的 CertPath编码的迭代,首先使用默认编码。

Inherited methods

From class java.lang.Object

Public constructors

CertificateFactorySpi

Added in API level 1
CertificateFactorySpi ()

Public methods

engineGenerateCRL

Added in API level 1
CRL engineGenerateCRL (InputStream inStream)

生成证书撤销列表(CRL)对象,并使用从输入流 inStream读取的数据对其进行初始化。

为了利用此证书工厂支持的专用CRL格式,可将返回的CRL对象类型化为相应的CRL类。 例如,如果此证书工厂实现了X.509 CRL,则返回的CRL对象可以类型X509CRL类。

请注意,如果给定的输入流不支持markreset ,则此方法将消耗整个输入流。 否则,对此方法的每次调用都会消耗一个CRL,并且输入流的读取位置将定位到固有的CRL结束标记之后的下一个可用字节。 如果输入流中的数据不包含固有的CRL结束标记(EOF除外),并且在解析CRL之后存在尾随数据, CRLException引发CRLException

Parameters
inStream InputStream: an input stream with the CRL data.
Returns
CRL a CRL object initialized with the data from the input stream.
Throws
CRLException on parsing errors.

engineGenerateCRLs

Added in API level 1
Collection<? extends CRL> engineGenerateCRLs (InputStream inStream)

返回从给定输入流 inStream读取的CRL的(可能为空)集合视图。

为了利用此证书工厂支持的专用CRL格式,可以将返回的集合视图中的每个元素类型化为相应的CRL类。 例如,如果此证书工厂实现了X.509 CRL,则返回集合中的元素可以类型X509CRL类。

对于X.509 CRL的证书工厂, inStream可能包含一个DER编码的CRL。 另外, inStream可能包含一个PKCS#7 CRL集。 这是一个PKCS#7 签名数据对象,唯一重要的字段是crls 特别是,签名和内容被忽略。 这种格式允许一次下载多个CRL。 如果不存在CRL,则返回空集合。

请注意,如果给定的输入流不支持 markreset ,则此方法将消耗整个输入流。

Parameters
inStream InputStream: the input stream with the CRLs.
Returns
Collection<? extends CRL> a (possibly empty) collection view of java.security.cert.CRL objects initialized with the data from the input stream.
Throws
CRLException on parsing errors.

engineGenerateCertPath

Added in API level 1
CertPath engineGenerateCertPath (InputStream inStream, 
                String encoding)

生成一个CertPath对象,并使用从InputStream inStream中读取的数据对它进行初始化。 假定数据是在指定的编码中。

此方法已添加到Java 2 Platform Standard Edition的1.4版本中。 为了保持与现有服务提供商的向后兼容性,此方法不能为abstract并且默认情况下会引发UnsupportedOperationException

Parameters
inStream InputStream: an InputStream containing the data
encoding String: the encoding used for the data
Returns
CertPath a CertPath initialized with the data from the InputStream
Throws
CertificateException if an exception occurs while decoding or the encoding requested is not supported
UnsupportedOperationException if the method is not supported

engineGenerateCertPath

Added in API level 1
CertPath engineGenerateCertPath (List<? extends Certificate> certificates)

生成一个 CertPath对象并用 ListCertificate s对其进行初始化。

提供的证书必须是CertificateFactory支持的类型。 它们将从提供的List对象中复制出来。

此方法已添加到Java 2 Platform Standard Edition的1.4版本中。 为了保持与现有服务提供商的向后兼容性,此方法不能为abstract并且默认情况下会引发UnsupportedOperationException

Parameters
certificates List: a List of Certificates
Returns
CertPath a CertPath initialized with the supplied list of certificates
Throws
CertificateException if an exception occurs
UnsupportedOperationException if the method is not supported

engineGenerateCertPath

Added in API level 1
CertPath engineGenerateCertPath (InputStream inStream)

生成一个CertPath对象,并使用从InputStream inStream中读取的数据对它进行初始化。 数据被假定为默认编码。

此方法已添加到Java 2 Platform Standard Edition的1.4版本中。 为了保持与现有服务提供商的向后兼容性,此方法不能为abstract并且默认情况下会引发UnsupportedOperationException

Parameters
inStream InputStream: an InputStream containing the data
Returns
CertPath a CertPath initialized with the data from the InputStream
Throws
CertificateException if an exception occurs while decoding
UnsupportedOperationException if the method is not supported

engineGenerateCertificate

Added in API level 1
Certificate engineGenerateCertificate (InputStream inStream)

生成一个证书对象并使用从输入流 inStream读取的数据初始化它。

为了利用此证书工厂支持的专用证书格式,可以将返回的证书对象转换为相应的证书类别。 例如,如果此证书工厂实现了X.509证书,则返回的证书对象可以类型X509Certificate类。

对于X.509证书的证书工厂, inStream提供的证书必须是DER编码的,并且可以采用二进制或可打印(Base64)编码。 如果证书是以Base64编码提供的,则它必须以----- BEGIN CERTIFICATE -----开始,并且必须以----- END CERTIFICATE -----结尾。 。

请注意,如果给定的输入流不支持markreset ,则此方法将消耗整个输入流。 否则,每次调用此方法都会消耗一个证书,并且输入流的读取位置将位于固有的证书结束标记之后的下一个可用字节。 如果输入流中的数据不包含固有的证书结束标记(EOF除外),并且在解析证书后存在尾随数据, CertificateException引发CertificateException

Parameters
inStream InputStream: an input stream with the certificate data.
Returns
Certificate a certificate object initialized with the data from the input stream.
Throws
CertificateException on parsing errors.

engineGenerateCertificates

Added in API level 1
Collection<? extends Certificate> engineGenerateCertificates (InputStream inStream)

返回从给定输入流 inStream读取的证书的集合视图(可能为空)。

为了利用此证书工厂支持的专用证书格式,可以将返回的集合视图中的每个元素转换为相应的证书类别。 例如,如果此证书工厂实现了X.509证书,则返回集合中的元素可以类型X509Certificate类。

对于X.509证书的证书工厂, inStream可能包含单个DER编码的证书,其格式为generateCertificate 另外, inStream可能包含PKCS#7证书链。 这是一个PKCS#7 签名数据对象,唯一重要的字段是证书 特别是,签名和内容被忽略。 这种格式允许一次下载多个证书。 如果没有证书,则返回空集合。

请注意,如果给定的输入流不支持 markreset ,则此方法将消耗整个输入流。

Parameters
inStream InputStream: the input stream with the certificates.
Returns
Collection<? extends Certificate> a (possibly empty) collection view of java.security.cert.Certificate objects initialized with the data from the input stream.
Throws
CertificateException on parsing errors.

engineGetCertPathEncodings

Added in API level 1
Iterator<String> engineGetCertPathEncodings ()

返回此证书工厂支持的CertPath编码的迭代,首先使用默认编码。 有关标准编码名称的信息,请参阅Java Cryptography Architecture Standard Algorithm Name Documentation中的CertPath编码部分。

试图通过其 remove方法修改返回的 Iterator导致 UnsupportedOperationException

此方法已添加到Java 2 Platform Standard Edition的1.4版本中。 为了保持与现有服务提供商的向后兼容性,此方法不能为abstract并且默认情况下会引发UnsupportedOperationException

Returns
Iterator<String> an Iterator over the names of the supported CertPath encodings (as Strings)
Throws
UnsupportedOperationException if the method is not supported

Hooray!