共用方式為


ASN.1 類型系統

資料類型的概念是抽象語法標記法 1 (ASN.1) 標準的基礎。 憑證要求結構的每個欄位都會與類型相關聯。 例如,假設 PKCS #10 ASN.1 憑證語法如下列範例所示。

--------------------------------------------------------------------
-- PKCS #10 Certificate request.
--------------------------------------------------------------------
CertificationRequestInfo ::= SEQUENCE 
{
   version                 CertificationRequestInfoVersion,
   subject                 Name,
   subjectPublicKeyInfo    SubjectPublicKeyInfo,
   attributes              [0] IMPLICIT Attributes
}

--------------------------------------------------------------------
-- Version number.
--------------------------------------------------------------------
CertificationRequestInfoVersion ::= INTEGER

--------------------------------------------------------------------
-- Subject distinguished name (DN).
--------------------------------------------------------------------
Name ::= SEQUENCE OF RelativeDistinguishedName

RelativeDistinguishedName ::= SET OF AttributeTypeValue

AttributeTypeValue ::= SEQUENCE 
{
   type               OBJECT IDENTIFIER,
   value              ANY 
}

--------------------------------------------------------------------
-- Public key information.
--------------------------------------------------------------------
SubjectPublicKeyInfo ::= SEQUENCE 
{
   algorithm           AlgorithmIdentifier,
   subjectPublicKey    BITSTRING
}

AlgorithmIdentifier ::= SEQUENCE 
{
  algorithm           OBJECT IDENTIFIER,
  parameters          ANY OPTIONAL    
} 

--------------------------------------------------------------------
-- Attributes.
--------------------------------------------------------------------
Attributes ::= SET OF Attribute

Attribute ::= SEQUENCE 
{
   type               OBJECT IDENTIFIER,
   values             AttributeSetValue
}

AttributeSetValue ::= SET OF ANY

高階要求結構 CertificationRequestInfo是由其他類型的序列所組成。 當類型為 或 只包含基本類型、字串類型或 ANY時,就無法進一步細分。 例如, 版本 欄位是 CertificationRequestInfoVersion 類型,也就是 INTEGER 類型,這是不是由其他類型組成的基本 ASN.1 類型。

類型系統可讓開發人員以容易理解的方式以視覺化方式呈現要求的語法,並讓要求以一致的方式編碼,以便透過網路傳輸。 如需編碼的詳細資訊,請參閱可辨別編碼規則。 如需 ASN.1 類型的詳細資訊,請參閱下列主題。

基本類型

討論下列資料類型:

  • BIT STRING
  • 布林
  • INTEGER
  • NULL
  • 物件識別碼
  • OCTET STRING

字串類型

討論下列字串類型:

  • BMPString
  • IA5String
  • PrintableString
  • TeletexString
  • UTF8String

建構的類型

討論可包含基本類型、字串類型或其他建構類型的 ASN.1 資料類型。

 

憑證要求編碼

ASN.1 類型的 DER 編碼

可辨別編碼規則

ASN.1 語法和編碼簡介