我正在使用以下命令生成带有 openssl 版本 1.0.1e 的 CA 证书:
openssl ecparam -out ec_key.pem -name secp384r1 -genkey openssl req -new -key ec_key.pem -x509 -nodes -days 1460 -out ec_ca_cert.pem
在此过程结束时,我输入以下 DN 字段:
Country Name (2 letter code) [AU]:US State or Province Name (Full Name) [Some-State]:Florida Locality Name (eg, city)[]:Miami Organization Name (eg, company) [Internet Widgits Pty Ltd]:Coca Cola Organization Unit Name (eg, section) []:Drinks Common Name (e.g. server FQDN or YOUR name) []:Miki Email Address []:
我将 ec_ca_cert.pem 证书转换为 DER 格式:
openssl x509 -in ec_ca_cert.pem -inform PEM -out ec_ca_cert.der -outform DER
当我使用 HEX 编辑器编辑 ec_ca_cert.der 文件时,我可以清楚地看到 Country 字段被编码为 PRINTABLESTRING (Type=0x13),而所有其他字段 (Locality Name、Organization Name、Organization Unit Name、Common Name) 是编码为 UTF8STRING(类型=0x0c)。
这是有原因的,还是我的流程有问题,或者是openssl问题?