使用openssl制作国密曲线证书,要求制作的证书public key algorithm属性值为id-ecPublicKey
时间: 2023-08-30 12:06:11 浏览: 61
要制作一个public key algorithm属性值为id-ecPublicKey的国密曲线证书,可以按照以下步骤进行:
1. 确认要使用的国密曲线,比如SM2曲线,可以在openssl命令行中执行以下命令来查看可用的国密曲线列表:
```
openssl ecparam -list_curves | grep sm2
```
2. 生成国密曲线的私钥,可以使用以下命令:
```
openssl ecparam -genkey -name sm2p256v1 -out sm2.key
```
3. 根据私钥生成公钥,可以使用以下命令:
```
openssl ec -in sm2.key -pubout -out sm2.pub
```
4. 使用生成的私钥和公钥来创建证书请求文件,可以使用以下命令:
```
openssl req -new -key sm2.key -nodes -out sm2.csr
```
5. 签发证书,可以使用类似以下的命令:
```
openssl ca -in sm2.csr -out sm2.crt -cert ca.crt -keyfile ca.key -config openssl.cnf
```
其中,ca.crt和ca.key是CA证书和私钥文件,openssl.cnf是证书配置文件,具体内容需要根据实际情况进行修改。
6. 查看生成的证书文件的public key algorithm属性值,可以使用以下命令:
```
openssl x509 -in sm2.crt -noout -text | grep "Public Key Algorithm"
```
如果输出为“Public Key Algorithm: id-ecPublicKey”,则证书的public key algorithm属性值为id-ecPublicKey。