用openssl生成含有中文信息的证书

来源:互联网 发布:如何评价王毅 知乎 编辑:程序博客网 时间:2024/06/06 19:27


openssl 支持 ASCII 和 UTF-8 两种编码,应该可以制作中文证书。

在生成证书签发申请时,当输入中文则 openssl 报错,这是因为当前输入的字符是 ANSI 本地编码格式,超出了 ASCII 编码范围且非 UTF-8 编码,所以 openssl 报错理所当然

,从中看出 openssl 不支持编码转换,所以,要想输入中文,必须得先转换中文字符到 UTF-8

1.将中文转为 UTF-8

这里用到一款常用的工具 notepad++
 
打开文件,把当前文件的内容设置为 UTF-8 编码,输入中文内容后,再把内容的编码改为 ANSI 编码格式,这时文件内容变成了不认识的方块,这种方块就是我们所需要的。把

转好的中文复制到 openssl 窗口,如果没有报错就成功了。

2.指令中加入 -utf8

这种指令可能必须 openssl req -utf8 -sha512 -days 10957 -newkey rsa:4096 -keyout rsa.key -out rsacsr.pem

3.openssl.cnf 应该是 UTF-8 编码格式

openssl.cnf/openssl.cfg 文件默认为 UTF-8 编码,如果在制作中文证书过程中有报错,检查该文件是否为 UTF-8 编码格式

原创粉丝点击