CertificateFactory 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑(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
- 繼承
- 屬性
備註
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑(CertPath)及憑證撤銷清單(CRL)物件。
對於包含多個憑證的編碼,當你想解析一組可能無關的憑證時,請使用 generateCertificates 。 否則,當你想產生一個generateCertPath(憑證鏈)並用 . 來驗證時CertPath,就使用CertPathValidator
X.509 的憑證工廠必須回傳 的 java.security.cert.X509Certificate實例憑證,以及 的實例 java.security.cert.X509CRL的 CRL 憑證。
以下範例讀取一個包含 Base64 編碼憑證的檔案,每個憑證開頭被 -----BEGIN CERTIFICATE-----,界定,結尾則由 -----END 憑證界定-----. 我們將(不支援 和 )轉換FileInputStream成 a mark (支援這些方法),使每次呼叫reset只消耗一個憑證,輸入串流的讀取位置會被定位到檔案中的下一個BufferedInputStream憑證:generateCertificate
{@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>演算法</th><支援>的 API 等級</th></tr/thead><>< tbody><tr><td>X.509</td><td>1+</td></tr></tbody></table>,以及以下CertPath編碼:<table><thead><tr th><>名稱</th。th 支援(API 等級)>/th<>/tr<>/thead<>tbody<>tr<>td<PKCS7>/td td<><1+>/td<>/tr<>tr td<><PkiPath>/td td<><1+>/td<>/tr<>/tbody<>/table<><>
類型與編碼詳述於 Java 密碼學架構標準演算法名稱文件中的 CertificateFactory 章節及 CertPath 編碼章節。
在 1.2 版本中加入。
的 java.security.cert.CertificateFactoryJava 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
建構函式
| 名稱 | Description |
|---|---|
| CertificateFactory(CertificateFactorySpi, Provider, String) |
建立該型態的 CertificateFactory 物件,並將該提供者實作(SPI 物件)封裝其中。 |
| CertificateFactory(IntPtr, JniHandleOwnership) |
用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。 |
屬性
| 名稱 | Description |
|---|---|
| CertPathEncodings |
回傳此憑證工廠所支援的編碼迭代 |
| Class |
回傳此 |
| Handle |
底層 Android 實例的帳號。 (繼承來源 Object) |
| JniIdentityHashCode |
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| JniPeerMembers |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| PeerReference |
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| Provider |
回傳這個證書工廠的提供者。 |
| ThresholdClass |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
| ThresholdType |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
| Type |
回傳與此證書工廠相關的證書類型名稱。 |
方法
| 名稱 | Description |
|---|---|
| Clone() |
建立並回傳此物件的副本。 (繼承來源 Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| Dispose() |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| Dispose(Boolean) |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| DisposeUnlessReferenced() |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| Equals(Object) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| Equals(Object) |
表示是否有其他物體「等同」於此物。 (繼承來源 Object) |
| GenerateCertificate(Stream) |
產生憑證物件並以從輸入串流 |
| GenerateCertificateAsync(Stream) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| GenerateCertificates(Stream) |
回傳一個(可能為空的)從給定輸入串流 |
| GenerateCertificatesAsync(Stream) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| GenerateCertPath(IList<Certificate>) |
產生一個 |
| GenerateCertPath(Stream, String) |
產生一個 |
| GenerateCertPath(Stream) |
產生一個 |
| GenerateCertPathAsync(IList<Certificate>) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| GenerateCertPathAsync(Stream, String) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| GenerateCertPathAsync(Stream) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| GenerateCRL(Stream) |
產生憑證撤銷清單(CRL)物件,並以從輸入串流 |
| GenerateCRLAsync(Stream) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| GenerateCRLs(Stream) |
回傳一個(可能是空的)CRL集合視圖,從給定輸入串流 |
| GetHashCode() |
回傳物件的雜湊碼值。 (繼承來源 Object) |
| GetInstance(String, Provider) |
回傳指定憑證類型的工廠物件。 |
| GetInstance(String, String) |
回傳指定憑證類型的工廠物件。 |
| GetInstance(String) |
回傳一個實作指定憑證類型的憑證工廠物件。 |
| JavaFinalize() |
已淘汰.
當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。 (繼承來源 Object) |
| Notify() |
喚醒一個正在該物件監視器上等待的執行緒。 (繼承來源 Object) |
| NotifyAll() |
喚醒所有等待該物件監視器的執行緒。 (繼承來源 Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| ToArray<T>() |
從這個 Java 陣列包裝器建立一個受管理陣列。 (繼承來源 Object) |
| ToString() |
回傳物件的字串表示。 (繼承來源 Object) |
| UnregisterFromRuntime() |
將此 Java 節點從互通執行時中取消註冊。 (繼承來源 Object) |
| Wait() |
導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。 (繼承來源 Object) |
| Wait(Int64, Int32) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
| Wait(Int64) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| IJavaPeerable.Finalized() |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| IJavaPeerable.JniObjectReferenceControlBlock |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
此類別定義了憑證工廠的功能,用於從其編碼中產生憑證、憑證路徑( |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |