0

RFC 5280 ( https://www.rfc-editor.org/rfc/rfc5280 ) を勉強していて、TBSCertificate 構造定義に奇妙なマーク ([0]、[1]、[2]、[3]) があることに気付きました

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
    }

ASN.1 では、特殊バイト 0xA0、0xA1、0xA2、0xA3 を使用してコーディングします。これらのバイトエンコーディングに関する説明が見つかりません。誰かが私を説明できますか?

4

1 に答える 1

4

タグ付けタイプです。X.680 セクション 31.2 を参照してください。[0]は、値がコンテキスト固有のクラスと数値でエンコードされていることを意味します0。DER (X.690 セクション 8.1.2 および 8.14) では、構築されたコンテキスト固有の番号付きクラス0は としてエンコードされ0xA0ます。

于 2016-09-30T13:18:01.667 に答える