28

我正在用 C++ 构建一个需要接受包含 ECDSA 公钥的证书的服务器应用程序。它必须验证证书,并在验证后使用证书中包含的公钥来验证与证书一起发送的消息。

我使用动态生成的 ECDSA 密钥对完成了所有这些工作 - 即我的代码运行良好 - 但现在我需要做证书。

而且我想我可以使用 OpenSSL 的命令行来创建安装在客户端上的证书(以及单独文件中的 ECDSA 私钥)。

任何人都可以帮忙吗?

4

1 回答 1

56

如果您尚未选择曲线,则可以使用以下命令列出它们:

openssl ecparam -list_curves

我选择secp256r1了这个例子。如果您还没有 EC 私钥,请使用它来生成 EC 私钥:

openssl ecparam -out ec_key.pem -name secp256r1 -genkey 

然后生成证书。您的证书将在cert.pem.

openssl req -new -key ec_key.pem -x509 -nodes -days 365 -out cert.pem

另请参阅: reqecparam

于 2012-08-17T04:09:13.167 回答