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(证书链)并随后使用 a.CertPathValidator

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

以下示例读取一个具有 Base64 编码证书的文件,每个证书都以 -----BEGIN CERTIFICATE 开头绑定-----,最后-----END CERTIFICATE 绑定-----. 我们将 /> 转换为一个(不支持这些方法),以便每次调用只使用一个证书,并且输入流的读取位置将定位到文件中的下一个证书:

{@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类型:<表><thead><tr><th>Algorithm</th th Supported API Levels</<>>th<>/tr<>/thead><tbody<>><td>X.509</td<>td td 1+</td<>>/tr></tbody<>/table> and following CertPath encodings: <table<>thead><tr<>th>Name</th><th>supported (API Levels)</th></tr></thead><tbody><tr><td>PKCS7</td><td>1+</td></tr>><<tr td>PkiPath</td td><1+/td/tr<>/td>1+</td<>/tbody></table>

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

已在 1.2 中添加。

Java文档java.security.cert.CertificateFactory

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

构造函数

名称 说明
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 对象并使用 a List ofs Certificate初始化它。

GenerateCertPath(Stream, String)

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

GenerateCertPath(Stream)

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

GenerateCertPathAsync(IList<Certificate>)

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

GenerateCertPathAsync(Stream, String)

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

GenerateCertPathAsync(Stream)

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

GenerateCRL(Stream)

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

GenerateCRLAsync(Stream)

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

GenerateCRLs(Stream)

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

GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
GetInstance(String, Provider)

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

GetInstance(String, String)

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

GetInstance(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, Int32)

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

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <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)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

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

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于