和其他人一样,我在请求中与UTF8作斗争。 当然,我浏览了所有决定性的问题和答案。 好吧,这是我的锻炼。 配置:
[ req ]
default_bits = 2048
default_md = sha256
string_mask = utf8only
utf8 = yes
distinguished_name = DistName
attributes = Attr
[ DistName ]
commonName = Name (your official name)
commonName_default = hans nägli dödüé
stateOrProvinceName = State or Province Name (full name)
countryName = Country Code (2 letter code)
countryName_default = CH
[ Attr ]
subjectAltName = Name (international / latin)
subjectAltName_default = hans nägeli dädü
postalCode = zip code
localityName = Locality Name (eg, city)
emailAddress = Email Address
我验证了这个配置文件是 UTF8,然后使用默认值启动:
openssl req -verbose -config CsrPerson.cfg -new -key HansMuster-ecpem.key -passin pass:gugus -out HansMuster-pem.csr
然后,我使用
openssl req -utf8 -noout -text -in HansMuster-pem.csr
展示
Certificate Request:
Data:
Version: 1 (0x0)
Subject: CN = hans nC3A4gli dC3B6dC3BCC3A9, ST = zC3BCrich, C = CH
Subject Public Key Info:
...snip...
NIST CURVE: P-384
Attributes:
postalCode :2222
localityName :Dörrhausen
X509v3 Subject Alternative Name:hans nägeli dädü
emailAddress :hans.naegeli@gmx.net
...snip...
使用相同的源,相同的配置,相同的过程:主题/可分辨名称未被视为UTF8,但即使使用键盘输入的位置名称,也可以很好地处理属性。
ASN1 主题的定义将可能的内容显示为 utf8 字符串。 openssl 版本 OpenSSL 1.1.0g 2017 年 11 月 2 日。
我哪里弄错了? 玩得愉快
您可以尝试以下操作:
openssl req -nameopt utf8 -noout -text -in HansMuster-pem.csr
这应该只解决显示问题,您必须检查是否仍然满足其他要求。
您可以在"名称选项">部分找到有关"-nameopt"选项的更多详细信息:https://www.openssl.org/docs/man1.0.2/man1/x509.html
其他相关链接:
- 如何在openssl中使用utf8主题创建CSR?