Share via


CertPath 类

定义

证书 (证书路径) 的不可变序列。

[Android.Runtime.Register("java/security/cert/CertPath", DoNotGenerateAcw=true)]
public abstract class CertPath : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/security/cert/CertPath", DoNotGenerateAcw=true)>]
type CertPath = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
继承
CertPath
属性
实现

注解

证书 (证书路径) 的不可变序列。

这是一个抽象类,用于定义所有 CertPath的通用方法。 子类可以处理不同类型的证书 (X.509、PGP 等 ) 。

所有 CertPath 对象都有一个类型、一个 Certificate列表以及一个或多个受支持的编码。 CertPath由于 类是不可变的,CertPath因此 在构造后,无法以任何外部可见的方式更改 。 此规定适用于此类的所有公共字段和方法,以及子类添加或重写的任何方法。

类型是一个 String ,用于标识认证路径中的 的类型 Certificate。 对于证书路径 certPath中的每个证书certcert.getType().equals(certPath.getType())必须为 true

列表 Certificate的排序 List 为零个或多个 Certificates。 它 List 及其中包含的所有 Certificate必须是不可变的。

每个 CertPath 对象必须支持一个或多个编码,以便可以将对象转换为字节数组,以便存储或传输到其他方。 最好是,这些编码应是 (如 PKCS#7) 等记录良好的标准。 支持的编码之一 CertPath 被视为默认编码。 如果方法 (#getEncoded() getEncoded() 未显式请求编码(例如) ),则使用此编码。

所有 CertPath 对象也是 SerializableCertPath 对象在序列化期间解析为备用 CertPathRep CertPathRep 对象。 这允许 CertPath 对象序列化为等效表示形式,而不考虑其基础实现。

CertPath 对象可以使用 创建, CertificateFactory 也可以由其他类(如 CertPathBuilder)返回。

按照约定,X.509 CertPaths (由) 组成 X509Certificate,从目标证书开始排序,以信任定位点颁发的证书结束。 也就是说,一个证书的颁发者是以下证书的主题。 证书路径中不应包含表示 TrustAnchor TrustAnchor 的证书。 未经验证的 X.509 CertPath可能不遵循这些约定。 PKIX CertPathValidator将检测任何与这些约定的背离,这些约定会导致认证路径无效并引发 CertPathValidatorException

Java 平台的每个实现都需要支持以下标准CertPath编码:<ul<>li>PKCS7</li<>/li<<PkiPath>>/ul> 这些编码在 Java 安全标准算法名称规范的 CertPath 编码部分中介绍。 请参阅实现的发布文档,了解是否支持任何其他编码。

<b>并发访问</b>

所有 CertPath 对象都必须是线程安全的。 也就是说,多个线程可以同时对单个 CertPath 对象调用此类中定义的方法, (或多个) ,且不会造成不良影响。 对于 返回的 CertPath.getCertificates也是如此List

CertPath要求对象不可变且线程安全,这样就可以将它们传递到各种代码段,而无需担心协调访问。 提供此线程安全性通常并不困难,因为 CertPath 有问题的 和 List 对象是不可变的。

在 1.4 中添加。

java.security.cert.CertPathJava 文档。

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

构造函数

CertPath(IntPtr, JniHandleOwnership)

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

CertPath(String)

CertPath创建指定类型的 。

属性

Certificates

返回 中包含的 CertPathCertificate不可变列表。

Class

返回此 Object的运行时类。

(继承自 Object)
Encodings

返回 Iterator 证书路径表示形式的支持编码的 。

Handle

基础 Android 实例的句柄。

(继承自 Object)
JniIdentityHashCode

证书 (证书路径) 的不可变序列。

(继承自 Object)
JniPeerMembers

证书 (证书路径) 的不可变序列。

PeerReference

证书 (证书路径) 的不可变序列。

(继承自 Object)
ThresholdClass

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

ThresholdType

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

Type

返回此认证路径中的 的类型 Certificate

方法

Clone()

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

(继承自 Object)
Dispose()

证书 (证书路径) 的不可变序列。

(继承自 Object)
Dispose(Boolean)

证书 (证书路径) 的不可变序列。

(继承自 Object)
Equals(Object)

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

(继承自 Object)
GetEncoded()

使用默认编码返回此证书路径的编码形式。

GetEncoded(String)

使用指定的编码返回此证书路径的编码形式。

GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
JavaFinalize()

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

(继承自 Object)
Notify()

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

(继承自 Object)
NotifyAll()

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

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

设置 Handle 属性。

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

证书 (证书路径) 的不可变序列。

(继承自 Object)
ToString()

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

(继承自 Object)
UnregisterFromRuntime()

证书 (证书路径) 的不可变序列。

(继承自 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)
WriteReplace()

CertPath 要序列化的 替换为 CertPathRep 对象。

显式接口实现

IJavaPeerable.Disposed()

证书 (证书路径) 的不可变序列。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

证书 (证书路径) 的不可变序列。

(继承自 Object)
IJavaPeerable.Finalized()

证书 (证书路径) 的不可变序列。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

证书 (证书路径) 的不可变序列。

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

证书 (证书路径) 的不可变序列。

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

证书 (证书路径) 的不可变序列。

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

证书 (证书路径) 的不可变序列。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

证书 (证书路径) 的不可变序列。

GetJniTypeName(IJavaPeerable)

证书 (证书路径) 的不可变序列。

适用于