OpenSSL 生成国密SM2密钥对
要点:openssl 的版本必须为1.1.1+
查看openssl 是否支持SM2
# openssl ecparam -list_curves | grep SM2
如果有输出就说明支持。
生成 CA 密钥对
生成CA私钥
# openssl ecparam -genkey -name SM2 -out CA-Key.pem 256
自签CA证书
# openssl req -new -x509 -days 36500 -extensions v3_ca -key CA-Key.pem -out CA.pem -subj "/C=CN/ST=GuangDong/L=GuangZhou/O=Vqiu Corporation/OU=Vqiu Trust Network/CN=Vqiu Secure Server CA Root"
生成crl文件,供吊销证书使用(可选)
openssl ca -gencrl -crldays 36500 -out CA-crl.pem
验证CA证书
openssl x509 -noout -text -in CA.pem
校验
openssl verify -verbose -CAfile CA.pem server.pem
生成证书证书
# openssl ecparam -genkey -name SM2 -out server.pem
生成CSR
openssl req -new -sha512 -key server.pem -out server.csr -subj '/C=CN/ST=GuangDong/L=GuangZhou/O=vqiu/OU=IT/CN=t1.vqiu.cn'
证书签发
openssl ca -keyfile CA-Key.pem -cert CA.pem -in server.csr -out server.pem
验证
openssl verify -verbose -CAfile CA.pem server.pem