Share via


X509Certificate 類別

定義

X 的抽象類別。

[Android.Runtime.Register("java/security/cert/X509Certificate", DoNotGenerateAcw=true)]
public abstract class X509Certificate : Java.Security.Cert.Certificate, IDisposable, Java.Interop.IJavaPeerable, Java.Security.Cert.IX509Extension
[<Android.Runtime.Register("java/security/cert/X509Certificate", DoNotGenerateAcw=true)>]
type X509Certificate = class
    inherit Certificate
    interface IX509Extension
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
繼承
X509Certificate
屬性
實作

備註

X.509 憑證的抽象類別。 這提供標準方式來存取 X.509 憑證的所有屬性。

在 1996 年 6 月,ISO/IEC 和 ANSI X9 已完成基本 X.509 v3 格式,如下所述 ASN.1:

Certificate  ::=  SEQUENCE  {
                tbsCertificate       TBSCertificate,
                signatureAlgorithm   AlgorithmIdentifier,
                signature            BIT STRING  }

這些憑證廣泛使用來支援網際網路安全性系統中的驗證和其他功能。 常見的應用程式包括 Privacy Enhanced Mail (PEM) 、傳輸層安全性 (SSL) 、信任軟體散發的程式碼簽署,以及 SET (SET) 。

這些憑證是由 < em > 憑證授權單位單位 < /em > (CA) 管理及支援。 CA 是建立憑證的服務,方法是將資料置於 X.509 標準格式,然後以數位方式簽署該資料。 CA 會做為信任的協力廠商,在彼此沒有直接知識的主體之間進行簡介。 CA 憑證會自行簽署,或由一些其他 CA 簽署,例如「根」CA。

如需詳細資訊,請參閱 RFC 3280:網際網路 X.509 公開金鑰基礎結構憑證和 CRL 設定檔

tbsCertificate ASN.1 定義為:

TBSCertificate  ::=  SEQUENCE  {
                version         [0]  EXPLICIT Version DEFAULT v1,
                serialNumber         CertificateSerialNumber,
                signature            AlgorithmIdentifier,
                issuer               Name,
                validity             Validity,
                subject              Name,
                subjectPublicKeyInfo SubjectPublicKeyInfo,
                issuerUniqueID  [1]  IMPLICIT UniqueIdentifier OPTIONAL,
                                     -- If present, version must be v2 or v3
                subjectUniqueID [2]  IMPLICIT UniqueIdentifier OPTIONAL,
                                     -- If present, version must be v2 or v3
                extensions      [3]  EXPLICIT Extensions OPTIONAL
                                     -- If present, version must be v3
                }

憑證會使用憑證處理站具現化。 以下是如何具現化 X.509 憑證的範例:

try (InputStream inStream = new FileInputStream("fileName-of-cert")) {
                CertificateFactory cf = CertificateFactory.getInstance("X.509");
                X509Certificate cert = (X509Certificate)cf.generateCertificate(inStream);
            }

java.security.cert.X509Certificate JAVA 檔。

此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。

建構函式

X509Certificate()

X 的建構函式。

X509Certificate(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 標記法時所使用的建構函式;由執行時間呼叫。

屬性

BasicConstraints

BasicContraints 延伸模組傳回憑證條件約束的路徑長度。

Class

傳回這個 Object 的執行時間類別。

(繼承來源 Object)
CriticalExtensionOIDs

X 的抽象類別。

ExtendedKeyUsage

取得字串的不可修改清單,代表擴充金鑰使用延伸模組欄位的 OBJECT IDENTIFIER ExtKeyUsageSyntax , (OID = 2。

Handle

基礎 Android 實例的控制碼。

(繼承來源 Object)
HasUnsupportedCriticalExtension

X 的抽象類別。

IssuerAlternativeNames

IssuerAltName 延伸模組取得簽發者替代名稱的不可變集合, (OID = 2。

IssuerDN

issuer傳回 (簽發者辨別名稱) 為實作特定 Principal 物件。

IssuerX500Principal

傳回簽發者 (簽發者辨別名稱,) 憑證的值做為 X500Principal

JniIdentityHashCode

X 的抽象類別。

(繼承來源 Object)
JniPeerMembers

X 的抽象類別。

NonCriticalExtensionOIDs

X 的抽象類別。

NotAfter

notAfter 回憑證有效期間日期。

NotBefore

notBefore從憑證的有效期間傳回日期。

PeerReference

X 的抽象類別。

(繼承來源 Object)
PublicKey

傳回對應至此憑證的公開金鑰。

(繼承來源 Certificate)
SerialNumber

serialNumber 回憑證的 。

SigAlgName

傳回憑證簽章的演算法名稱。

SigAlgOID

從憑證傳回簽章演算法的 OID。

SubjectAlternativeNames

SubjectAltName 延伸模組取得主體別名的不可變集合, (OID = 2。

SubjectDN

subject傳回 (主體辨別名稱) 為實作特定 Principal 物件。

SubjectX500Principal

傳回主體 (主體辨別名稱) 值作為 X500Principal 憑證。

ThresholdClass

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。

ThresholdType

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。

Type

傳回此憑證的類型。

(繼承來源 Certificate)
Version

傳回版本號碼) (憑證 version

方法

CheckValidity()

檢查憑證目前是否有效。

CheckValidity(Date)

檢查指定的日期是否在憑證的有效期間內。

Clone()

建立並傳回這個 物件的複本。

(繼承來源 Object)
Dispose()

X 的抽象類別。

(繼承來源 Object)
Dispose(Boolean)

X 的抽象類別。

(繼承來源 Object)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
GetEncoded()

傳回此憑證的編碼形式。

(繼承來源 Certificate)
GetExtensionValue(String)

取得延伸值的 DER 編碼 OCTET 字串, < (em extnValue < /em >>) 由傳入 oid 字串識別。

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
GetIssuerUniqueID()

issuerUniqueID從憑證取得值。

GetKeyUsage()

取得布林值陣列,代表延伸模組的 KeyUsage 位, (OID = 2。

GetSigAlgParams()

從這個憑證的簽章演算法取得 DER 編碼的簽章演算法參數。

GetSignature()

取得從 signature 憑證) 原始簽章位 (值。

GetSubjectUniqueID()

subjectUniqueID從憑證取得值。

GetTBSCertificate()

從這個憑證取得 DER 編碼的憑證資訊 tbsCertificate

JavaFinalize()

當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。

(繼承來源 Object)
Notify()

喚醒正在等候此物件的監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
ToArray<T>()

X 的抽象類別。

(繼承來源 Object)
ToString()

傳回這個憑證的字串表示。

(繼承來源 Certificate)
UnregisterFromRuntime()

X 的抽象類別。

(繼承來源 Object)
Verify(IPublicKey)

使用對應至指定公開金鑰的私密金鑰來驗證此憑證是否已簽署。

(繼承來源 Certificate)
Verify(IPublicKey, Provider)

使用對應至指定公開金鑰的私密金鑰來驗證此憑證是否已簽署。

Verify(IPublicKey, String)

使用對應至指定公開金鑰的私密金鑰來驗證此憑證是否已簽署。

(繼承來源 Certificate)
Wait()

讓目前的執行緒等到喚醒為止,通常是藉由 < em > notified < /em > 或 < em > interrupted < /em > 來喚醒。

(繼承來源 Object)
Wait(Int64)

讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。

(繼承來源 Object)
WriteReplace()

取代要序列化的憑證。

(繼承來源 Certificate)

明確介面實作

IJavaPeerable.Disposed()

X 的抽象類別。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

X 的抽象類別。

(繼承來源 Object)
IJavaPeerable.Finalized()

X 的抽象類別。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

X 的抽象類別。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

X 的抽象類別。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

X 的抽象類別。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

X 的抽象類別。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

X 的抽象類別。

GetJniTypeName(IJavaPeerable)

X 的抽象類別。

適用於