生成自簽證書
# 設置CA證書subject
CA_SUBJ="/C=CN/ST=ShanDong/L=JiNan/O=sec/OU=sec/CN=www.hxy.com/emailAddress=hxy@example.com"
# 1. 生成rsa自簽CA
openssl req -x509 -newkey rsa:2048 -keyout pri.key -out ca.crt -days 3650 -nodes \
-subj $CA_SUBJ
# 2. 生成sm2自簽CA (以下也可以使用openssl 1.1.x以上版本)
gmssl ecparam -genkey -name SM2 -text -out pri.key
gmssl req -new -key pri.key -out ca.csr -subj $CA_SUBJ
gmssl x509 -req -days 3650 -sm3 -in ca.csr -signkey pri.key -out ca.crt
# 3. 生成ecc自簽CA
openssl ecparam -out pri.key -name prime256v1 -genkey
openssl req -key pri.key -new -out ca.csr -subj $CA_SUBJ
openssl x509 -req -in ca.csr -signkey pri.key -out ca.crt -days 3650
# 4. 生成pkcs8格式的私鑰
openssl pkcs8 -topk8 -in pri.key -out pkcs8_pri.key -nocrypt
查看私鑰和證書
# 1. 查看私鑰
openssl ec -in pri.key -text #解析ec類私鑰(包括sm2)
openssl rsa -in pri.key -text #解析rsa私鑰
# 2. 查看證書x509
openssl x509 -in ca.crt -text -noout
命令詳情(以ec為例)
-
生成自簽名證書
-
私鑰保護
-
查看私鑰
-
查看證書