基于openssl和国密算法生成CA、服务器和客户端证书

参考链接

前提说明

  • OpenSSL 1.1.1q  5 Jul 2022  已经实现了国密算法
  • 查看是否支持SM2算法
  • openssl ecparam -list_curves | grep -i sm2

层次结构

 

  •  为了兼容代码中的名字,名字可能会和下面操作生成文件的名字之间出现出路

CA操作流程

  • 生成私钥
  • openssl ecparam -genkey -name SM2 -param_enc explicit -outform pem -out ec_prikey_ca.key
  • openssl req -new -key ec_prikey_ca.key -out ec_ca.csr
  • 生成证书
  • openssl x509 -req -days 365 -in ec_ca.csr -signkey ec_prikey_ca.key -out ec_ca.crt 

server操作流程

  • 生成私钥
  • openssl ecparam -genkey -name SM2 -param_enc explicit -outform pem -out server.key
  • openssl req -new -key server.key -out server.csr
  • 生成证书
  • openssl x509 -req -days 365 -in server.csr -signkey /home/chy-cpabe/ssl_server_client/ca/ec_prikey_ca.key -out server.crt

client操作流程

  • 生成私钥
  • openssl ecparam -genkey -name SM2 -param_enc explicit -outform pem -out client.key
  • openssl req -new -key client.key -out client.csr
  • 生成证书
  • openssl x509 -req -days 365 -in client.csr -signkey /home/chy-cpabe/ssl_server_client/ca/ec_prikey_ca.key -out client.crt

查看证书

  • 查看证书的命令
  • openssl x509 -text -in CaCert.crt

  • 使用命令验证公钥以及参数和证书是否对应
  • sudo openssl ec -in ec_prikey_ca.key -pubout -noout -text 

 


版权声明:本文为CHYabc123456hh原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。