CertPath 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
证书 (证书路径) 的不可变序列。
[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
的通用方法。 子类可以处理不同类型的证书 (X.509、PGP 等 ) 。
所有 CertPath
对象都有一个类型、一个 Certificate
列表以及一个或多个受支持的编码。 CertPath
由于 类是不可变的,CertPath
因此 在构造后,无法以任何外部可见的方式更改 。 此规定适用于此类的所有公共字段和方法,以及子类添加或重写的任何方法。
类型是一个 String
,用于标识认证路径中的 的类型 Certificate
。 对于证书路径 certPath
中的每个证书cert
,cert.getType().equals(certPath.getType())
必须为 true
。
列表 Certificate
的排序 List
为零个或多个 Certificate
s。 它 List
及其中包含的所有 Certificate
必须是不可变的。
每个 CertPath
对象必须支持一个或多个编码,以便可以将对象转换为字节数组,以便存储或传输到其他方。 最好是,这些编码应是 (如 PKCS#7) 等记录良好的标准。 支持的编码之一 CertPath
被视为默认编码。 如果方法 (#getEncoded() getEncoded()
未显式请求编码(例如) ),则使用此编码。
所有 CertPath
对象也是 Serializable
。 CertPath
对象在序列化期间解析为备用 CertPathRep CertPathRep
对象。 这允许 CertPath
对象序列化为等效表示形式,而不考虑其基础实现。
CertPath
对象可以使用 创建, CertificateFactory
也可以由其他类(如 CertPathBuilder
)返回。
按照约定,X.509 CertPath
s (由) 组成 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.CertPath
Java 文档。
此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。
构造函数
CertPath(IntPtr, JniHandleOwnership) |
创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。 |
CertPath(String) |
|
属性
Certificates |
返回 中包含的 |
Class |
返回此 |
Encodings |
返回 |
Handle |
基础 Android 实例的句柄。 (继承自 Object) |
JniIdentityHashCode |
证书 (证书路径) 的不可变序列。 (继承自 Object) |
JniPeerMembers |
证书 (证书路径) 的不可变序列。 |
PeerReference |
证书 (证书路径) 的不可变序列。 (继承自 Object) |
ThresholdClass |
此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。 |
ThresholdType |
此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。 |
Type |
返回此认证路径中的 的类型 |
方法
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() |
将 |
显式接口实现
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) |
证书 (证书路径) 的不可变序列。 |