語言

X509CertSelector.SetAuthorityKeyIdentifier(Byte[]) 方法

定義

設定 authorityKeyIdentifier 準則。

[Android.Runtime.Register("setAuthorityKeyIdentifier", "([B)V", "GetSetAuthorityKeyIdentifier_arrayBHandler")]
public virtual void SetAuthorityKeyIdentifier(byte[]? authorityKeyID);
[<Android.Runtime.Register("setAuthorityKeyIdentifier", "([B)V", "GetSetAuthorityKeyIdentifier_arrayBHandler")>]
abstract member SetAuthorityKeyIdentifier : byte[] -> unit
override this.SetAuthorityKeyIdentifier : byte[] -> unit

參數

authorityKeyID
Byte[]

權威金鑰識別碼(或 null

屬性

備註

設定 authorityKeyIdentifier 準則。 必須 X509Certificate 包含一個 AuthorityKeyIdentifier 擴充功能,且該擴充值的內容與指定的準則值相符。 若標準值為 null,則不會進行 authorityKeyIdentifier 檢查。

authorityKeyID 不是 null,則應包含一個 DER 編碼的值,對應於 AuthorityKeyIdentifier 擴充功能擴充值的內容(不含物件識別碼、關鍵性設定及封裝的八位元組字串)。 以下為此結構的 ASN.1 符號。

{@code
            AuthorityKeyIdentifier ::= SEQUENCE {
               keyIdentifier             [0] KeyIdentifier           OPTIONAL,
               authorityCertIssuer       [1] GeneralNames            OPTIONAL,
               authorityCertSerialNumber [2] CertificateSerialNumber OPTIONAL  }

            KeyIdentifier ::= OCTET STRING
            }

權威金鑰識別碼不會被 X509CertSelector解析。 取而代之的是,這些數值會以位元組逐位元組比較來比較。

keyIdentifier 欄位 AuthorityKeyIdentifier 填入時,該值通常取自 SubjectKeyIdentifier 發行人證書的延伸。 但請注意,發行者憑證上的結果 X509Certificate.getExtensionValue(<SubjectKeyIdentifier Object Identifier>) 不得直接作為輸入 setAuthorityKeyIdentifier。 這是因為 SubjectKeyIdentifier 僅包含 KeyIdentifier 的 OCTET 字串,而非 KeyIdentifier、GeneralNames 與 CertificateSerialNumber 的序列。 若要使用發行憑證 SubjectKeyIdentifier 擴充的擴充值,必須擷取嵌入 KeyIdentifier 的八位元組字串值,然後將此八位元組字串編碼於序列中。 欲了解更多 SubjectKeyIdentifier 的詳細資訊,請參見 #setSubjectKeyIdentifier(byte[] subjectKeyID)

另外請注意,這裡提供的位元組陣列是克隆的,以防止後續修改。

java.security.cert.X509CertSelector.setAuthorityKeyIdentifier(byte[])Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於