openssl コマンドを使用して証明書を作成している間、次のようなカスタム構成ファイルを使用しています。
prompt = no
distinguished_name = dn
req_extensions = ext
string_mask = pkix
[dn]
CN = распространенное имя
emailAddress = envek@envek.com
O = Организация
OU = SSL Test
L = Москва
C = RU
[ext]
subjectAltName = DNS:BMPString.com,DNS:*.BMPString.com
このコマンドを使用して asn1parse を実行すると、次のようになります。
openssl asn1parse -in bmp.crt -i -strparse 200
0:d=0 hl=3 l= 243 cons: SEQUENCE
3:d=1 hl=2 l= 87 cons: SET
5:d=2 hl=2 l= 85 cons: SEQUENCE
7:d=3 hl=2 l= 3 prim: OBJECT :commonName
12:d=3 hl=2 l= 78 prim: BMPSTRING
92:d=1 hl=2 l= 30 cons: SET
94:d=2 hl=2 l= 28 cons: SEQUENCE
96:d=3 hl=2 l= 9 prim: OBJECT :emailAddress
107:d=3 hl=2 l= 15 prim: IA5STRING :envek@envek.com
124:d=1 hl=2 l= 53 cons: SET
126:d=2 hl=2 l= 51 cons: SEQUENCE
128:d=3 hl=2 l= 3 prim: OBJECT :organizationName
133:d=3 hl=2 l= 44 prim: BMPSTRING
179:d=1 hl=2 l= 17 cons: SET
181:d=2 hl=2 l= 15 cons: SEQUENCE
183:d=3 hl=2 l= 3 prim: OBJECT :organizationalUnitName
188:d=3 hl=2 l= 8 prim: PRINTABLESTRING :SSL Test
198:d=1 hl=2 l= 33 cons: SET
200:d=2 hl=2 l= 31 cons: SEQUENCE
202:d=3 hl=2 l= 3 prim: OBJECT :localityName
207:d=3 hl=2 l= 24 prim: BMPSTRING
233:d=1 hl=2 l= 11 cons: SET
235:d=2 hl=2 l= 9 cons: SEQUENCE
237:d=3 hl=2 l= 3 prim: OBJECT :countryName
242:d=3 hl=2 l= 2 prim: PRINTABLESTRING :RU
CN、OrganizationName、LocalityName はすべて BMPString にありますが、OrganizationalUnitName にはありません。
すべての文字が OrganizationalUnitName の PrintableString の傘下にあるため、同じようにエンコードされているため、ロジックを理解しています。
しかし、BMPString で "PrintableString" 文字を自動的にエンコードしたいのですが、それは可能ですか?
編集 1:「除く」を「しかしない」に変更しました。
編集 2:「CN、E メール、OrganizationName、LocalityName はすべて BMPString にありますが、OrganizationalUnitName にはありません」から E メールを削除しました。