UTF8String

ASN.1 UTF8String データ型は、 0x0Cの Tag バイトで始まる TLV トリプレットにエンコードされます。 次の例は、 CMC でエンコードされた ASN.1 トピックから、 ClientId 属性を整数と 3 つの UTF8String 型としてエンコードする方法を示しています。 属性のオブジェクト識別子は 1.3.6.1.4.1.311.21.20 です。 IX509AttributeClientId インターフェイスを使用して指定できる情報には、クライアント ID 番号、ドメイン ネーム システム (DNS) コンピューター名、セキュリティ アカウント マネージャー (SAM) ユーザー名、証明書要求を作成したアプリケーションの名前が含まれます。

06 09                                ; OBJECT_ID (9 Bytes)
|  2b 06 01 04 01 82 37 15  14       ;   1.3.6.1.4.1.311.21.20 
31 4a                                ; SET (4a Bytes)
   30 48                             ; SEQUENCE (48 Bytes)
      02 01                          ; INTEGER (1 Bytes)
      |  09
      0c 23                          ; UTF8_STRING (23 Bytes)
      |  76 69 63 68 33 64 2e 6a     ;   vich3d.j
      |  64 6f 6d 63 73 63 2e 6e     ;   domcsc.n
      |  74 74 65 73 74 2e 6d 69     ;   ttest.mi
      |  63 72 6f 73 6f 66 74 2e     ;   crosoft.
      |  63 6f 6d                    ;   com
      0c 15                          ; UTF8_STRING (15 Bytes)
      |  4a 44 4f 4d 43 53 43 5c     ;   JDOMCSC\
      |  61 64 6d 69 6e 69 73 74     ;   administ
      |  72 61 74 6f 72              ;   rator
      0c 07                          ; UTF8_STRING (7 Bytes)
         63 65 72 74 72 65 71        ;   certreq

文字列に含まれるバイト数が 128 バイト未満の場合、TLV トリプレットの Length フィールドは、コンテンツの長さを指定するために 1 バイトしか必要としません。 文字列が 127 バイトを超える場合、 Length フィールドのビット 7 は 1 に設定され、ビット 6 から 0 は、コンテンツ長を識別するために使用される追加バイト数を指定します。 詳細については、「 エンコードされた長さ」と「値のバイト」を参照してください。

ASN.1 Type System

ASN.1 型の DER エンコード