You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Golang生成X509证书时OID值为PRINTABLESTRING而非UTF8STRING的问题

关于Go生成X509证书时强制将CommonName设为UTF8STRING的问题
  • 环境:go version go1.18.4, darwin/arm64

我在创建X509证书时,使用asn1parse -in命令解析生成的PEM证书,发现通用名称(commonName)被编码为PRINTABLESTRING而非UTF8STRING,解析输出如下:

31:d=4 hl=2 l= 13 cons: SEQUENCE
33:d=5 hl=2 l= 3 prim: OBJECT :commonName
38:d=5 hl=2 l= 6 prim: PRINTABLESTRING :golang

我清楚Go中的字符串默认采用UTF-8编码,但生成的证书仍使用PRINTABLESTRING存储commonName。另外观察到,当commonName包含é这类非ASCII字符时,该值会自动以UTF8STRING格式存储。

请问是否有方法可以强制将OID对应的commonName值固定设置为UTF8STRING?

内容的提问来源于stack exchange,提问作者Atul Mundlik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 05:35:18