Share via


BMPString

Der ASN.1-BMPString-Datentyp, der in der Zertifikatregistrierungs-API als UNICODE_STRING bezeichnet wird, wird in ein TLV-Triplet codiert, das mit einem Tagbyte 0x1E beginnt. Das folgende Beispiel, das aus dem Thema CMC-codiertes ASN.1 angepasst wurde, zeigt die Codierung für eine TemplateName-Erweiterung . Der Name kann mithilfe der IX509ExtensionTemplateName-Schnittstelle angegeben werden. Der Objektbezeichner für die Erweiterung ist 1.3.6.1.4.1.311.13.2.1.

06 0a                              ; OBJECT_ID (a Bytes)
|  2b 06 01 04 01 82 37 0d  02 01  ;   1.3.6.1.4.1.311.13.2.1 
31 34                              ; SET (34 Bytes)
   30 32                           ; SEQUENCE (32 Bytes)
      1e 26                        ; UNICODE_STRING (26 Bytes)
      |  00 43 00 65 00 72 00 74   ;   .C.e.r.t
      |  00 69 00 66 00 69 00 63   ;   .i.f.i.c
      |  00 61 00 74 00 65 00 54   ;   .a.t.e.T
      |  00 65 00 6d 00 70 00 6c   ;   .e.m.p.l
      |  00 61 00 74 00 65         ;   .a.t.e
      1e 08                        ; UNICODE_STRING (8 Bytes)
         00 55 00 73 00 65 00 72   ;   .U.s.e.r

Wenn die Zeichenfolge weniger als 128 Bytes enthält, benötigt das Feld Länge des TLV-Triplets nur ein Byte, um die Inhaltslänge anzugeben. Wenn die Zeichenfolge mehr als 127 Bytes ist, wird Bit 7 des Felds Länge auf 1 festgelegt, und die Bits 6 bis 0 geben die Anzahl zusätzlicher Bytes an, die zum Identifizieren der Inhaltslänge verwendet werden. Weitere Informationen finden Sie unter Codierte Länge und Wertbytes.

ASN.1-Typsystem

DER-Codierung von ASN.1-Typen