CertPath 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
一連串不變的憑證(認證路徑)。
[Android.Runtime.Register("java/security/cert/CertPath", DoNotGenerateAcw=true)]
public abstract class CertPath : Java.Lang.Object, IDisposable, 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
- 繼承
- 屬性
- 實作
備註
一連串不變的憑證(認證路徑)。
這是一個抽象類別,定義了所有 CertPaths 共有的方法。 子類別可以處理不同類型的憑證(X.509、PGP 等)。
所有 CertPath 物件都有一個型別、一個 s 清單 Certificate,以及一個或多個支援的編碼方式。 由於類別 CertPath 是不變的,a CertPath 在構造後無法以任何外部可見的方式改變。 此規定適用於本類別的所有公用欄位與方法,以及任何被子類別新增或覆蓋的欄位。
該類型是 String 用來識別認證路徑中 s 的類型 Certificate。 對於認證路徑cert中的每張證書certPath,cert.getType().equals(certPath.getType())必須為 true。
s 的 Certificate列表是有序 List 的 0 個或多個 Certificates。 這個 List 以及它中包含的所有 Certificates 必須是不可改變的。
每個 CertPath 物件必須支援一個或多個編碼,以便將物件轉換成位元組陣列,以便儲存或傳送給其他單位。 這些編碼最好是有充分文件證明的標準(例如 PKCS#7)。 由 a CertPath 支援的其中一種編碼被視為預設編碼。 當沒有明確請求編碼時(例如方法), #getEncoded() getEncoded() 會使用此編碼方式。
所有 CertPath 物件也 Serializable都是 。
CertPath 物件在序列化過程中會被解析成另一個替代 CertPathRep CertPathRep 物件。 這使得物件無論 CertPath 其底層實作為何,都能被序列化成等效的表示。
CertPath 物件可以用 A CertificateFactory 建立,或由其他類別回傳,例如 CertPathBuilder。
依慣例,X.509 CertPath(包含 X509Certificates)依序從目標憑證開始,結束於信任錨點發出的憑證。 也就是說,一個證書的發行人是下一個證書的主體。 代表該 TrustAnchor TrustAnchor 證書的證書不應包含在認證路徑中。 未驗證的 X.509 CertPath則可能不遵循這些慣例。 PKIX CertPathValidators 會偵測任何偏離這些慣例導致認證路徑無效的情況,並拋出 CertPathValidatorException。
每個 Java 平台實作都必須支援以下標準CertPath編碼:<ul><li>PKCS7</li><li>PkiPath</li></ul> 這些編碼在 Java 安全標準演算法名稱規範的 CertPath 編碼章節中描述。 請參考你實作的釋出文件,看看是否支援其他編碼。
<b>並行存取/<b>
所有 CertPath 物件必須是執行緒安全。 也就是說,多個執行緒可以同時在單一 CertPath 物件(或多個物件)上呼叫此類別中定義的方法,且不會產生不良影響。 這對於返回的 ListCertPath.getCertificates也同樣成立。
要求 CertPath 物件不可變且執行緒安全,讓它們能在不同程式碼中傳遞,而無需擔心協調存取。 提供執行緒安全通常不困難,因為CertPathList與 物件是不可變的。
在 1.4 版本加入。
的 java.security.cert.CertPathJava 檔。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
建構函式
| 名稱 | Description |
|---|---|
| CertPath(IntPtr, JniHandleOwnership) |
用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。 |
| CertPath(String) |
產生指定類型的 a |
屬性
| 名稱 | Description |
|---|---|
| Certificates |
回傳包含於 |
| Class |
傳回這個 |
| Encodings |
回傳 A |
| Handle |
基礎Android實例的句柄。 (繼承來源 Object) |
| JniIdentityHashCode |
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| JniPeerMembers |
一連串不變的憑證(認證路徑)。 |
| PeerReference |
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| ThresholdClass |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
| ThresholdType |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
| Type |
回傳此認證路徑中的 s 類型 |
方法
| 名稱 | Description |
|---|---|
| Clone() |
建立並傳回這個 對象的複本。 (繼承來源 Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| Dispose() |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| Dispose(Boolean) |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| DisposeUnlessReferenced() |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| Equals(Object) |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
| GetEncoded() |
回傳此認證路徑的編碼形式,使用預設編碼方式。 |
| GetEncoded(String) |
回傳此認證路徑的編碼形式,使用指定的編碼方式。 |
| GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
| JavaFinalize() |
已淘汰.
當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。 (繼承來源 Object) |
| Notify() |
喚醒一個正在該物件監視器上等待的執行緒。 (繼承來源 Object) |
| NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| ToArray<T>() |
從這個 Java 陣列包裝器建立一個受管理陣列。 (繼承來源 Object) |
| ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
| UnregisterFromRuntime() |
將此 Java 節點從互通執行時中取消註冊。 (繼承來源 Object) |
| Wait() |
導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。 (繼承來源 Object) |
| Wait(Int64, Int32) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
| Wait(Int64) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
| WriteReplace() |
用物件替換 To be 序列化 |
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| IJavaPeerable.Finalized() |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
一連串不變的憑證(認證路徑)。 (繼承來源 JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
一連串不變的憑證(認證路徑)。 |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
一連串不變的憑證(認證路徑)。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |