Как создать сертификат ECDSA с помощью командной строки OpenSSL
Я создаю серверное приложение в C++, которое должно принимать сертификат, содержащий открытый ключ ECDSA. Он должен проверить сертификат и, после проверки, использовать открытый ключ, содержащийся в сертификате, для проверки подлинности сообщения, отправленного вместе с сертификатом.
У меня все это работает с использованием пар ключей ECDSA, сгенерированных на лету - т.е. мой код работает хорошо - но теперь мне нужно сделать часть сертификата.
И я решил, что могу использовать командную строку OpenSSL для создания сертификата, который устанавливается на клиенте (вместе с закрытым ключом ECDSA в отдельном файле).
Кто-нибудь может помочь?
Ответы
Ответ 1
Если вы не выбрали кривую, вы можете перечислить их с помощью этой команды:
openssl ecparam -list_curves
Я выбрал secp256r1
для этого примера. Используйте это, чтобы сгенерировать закрытый ключ 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
Смотрите также: req, ecparam