Share via


CertificateFactory 类

定义

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

[Android.Runtime.Register("java/security/cert/CertificateFactory", DoNotGenerateAcw=true)]
public class CertificateFactory : Java.Lang.Object
[<Android.Runtime.Register("java/security/cert/CertificateFactory", DoNotGenerateAcw=true)>]
type CertificateFactory = class
    inherit Object
继承
CertificateFactory
属性

注解

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

对于包含多个证书的编码,如果要分析可能不相关的证书的集合,请使用 generateCertificates 。 否则, generateCertPath 如果要生成 CertPath (证书链) ,然后使用 对其进行 CertPathValidator验证。

X.509 的证书工厂必须返回作为 实例的 java.security.cert.X509Certificate证书,以及作为 实例的 java.security.cert.X509CRLCRL。

以下示例读取一个包含 Base64 编码证书的文件,每个证书在开头通过 -----BEGIN CERTIFICATE 进行绑定-----,并在末尾通过-----END CERTIFICATE 进行绑定-----. 我们将不支持和) 的 (转换为 FileInputStream) 支持这些方法的 (,以便每次调用generateCertificate仅使用一个证书,并且输入流的读取位置定位到文件中的下一个证书:BufferedInputStreamresetmark

{@code
            FileInputStream fis = new FileInputStream(filename);
            BufferedInputStream bis = new BufferedInputStream(fis);

            CertificateFactory cf = CertificateFactory.getInstance("X.509");

            while (bis.available() > 0) {
               Certificate cert = cf.generateCertificate(bis);
               System.out.println(cert.toString());
            }
            }

以下示例分析存储在文件中的 PKCS#7 格式的证书回复,并从中提取所有证书:

FileInputStream fis = new FileInputStream(filename);
            CertificateFactory cf = CertificateFactory.getInstance("X.509");
            Collection c = cf.generateCertificates(fis);
            Iterator i = c.iterator();
            while (i.hasNext()) {
               Certificate cert = (Certificate)i.next();
               System.out.println(cert);
            }

Android 提供以下CertificateFactory类型:<table<>thead><tr><th>Algorithm</th<>>th Supported API Levels</th<>/tr></thead<>tbody><tr><td>X.509</td<>td>1+</td<>/tr></tbody<>/table> 和以下CertPath编码:<table<>thead><tr<>th>Name</th><th>支持的 (API 级别) </th<>/tr></thead<>tbody><tr<>td>PKCS7</td<>td>1+</td></tr<>td>><PkiPath</td<>td>1+</td<>/tr<>/tbody></table>

Java 加密体系结构标准算法名称文档的 CertificateFactory 部分 CertPath 编码部分 介绍了类型和编码。

在 1.2 中添加。

java.security.cert.CertificateFactoryJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

构造函数

CertificateFactory(CertificateFactorySpi, Provider, String)

创建给定类型的 CertificateFactory 对象,并在其中封装给定提供程序实现 (SPI 对象) 。

CertificateFactory(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

属性

CertPathEncodings

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

Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
JniIdentityHashCode

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
JniPeerMembers

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

PeerReference

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
Provider

返回此证书工厂的提供程序。

ThresholdClass

此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。

Type

返回与此证书工厂关联的证书类型的名称。

方法

Clone()

创建并返回此对象的副本。

(继承自 Object)
Dispose()

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
Dispose(Boolean)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
Equals(Object)

指示某个其他对象是否“等于”此对象。

(继承自 Object)
GenerateCertificate(Stream)

生成证书对象,并使用从输入流 inStream读取的数据对其进行初始化。

GenerateCertificateAsync(Stream)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

GenerateCertificates(Stream)

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

GenerateCertificatesAsync(Stream)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

GenerateCertPath(IList<Certificate>)

生成 一个 CertPath 对象,并使用 ListCertificate初始化它。

GenerateCertPath(Stream)

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

GenerateCertPath(Stream, String)

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

GenerateCertPathAsync(IList<Certificate>)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

GenerateCertPathAsync(Stream)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

GenerateCertPathAsync(Stream, String)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

GenerateCRL(Stream)

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

GenerateCRLAsync(Stream)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

GenerateCRLs(Stream)

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

GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
GetInstance(String)

返回实现指定证书类型的证书工厂对象。

GetInstance(String, Provider)

返回指定证书类型的证书工厂对象。

GetInstance(String, String)

返回指定证书类型的证书工厂对象。

JavaFinalize()

当垃圾回收确定不再引用对象时,由垃圾回收器对对象调用。

(继承自 Object)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
ToArray<T>()

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
Wait()

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)

显式接口实现

IJavaPeerable.Disposed()

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
IJavaPeerable.Finalized()

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

GetJniTypeName(IJavaPeerable)

此类定义证书工厂的功能,该工厂用于从其编码生成证书、证书路径 (CertPath) 和证书吊销列表 (CRL) 对象。

适用于