Je crée une application serveur en C++ qui doit accepter un certificat contenant une clé publique ECDSA. Il doit valider le certificat et, après vérification, utiliser la clé publique contenue dans le certificat pour authentifier un message envoyé avec le certificat.
J'ai tout cela en utilisant des paires de clés ECDSA générées à la volée - c'est-à-dire que mon code fonctionne bien - mais maintenant je dois faire la pièce de certificat.
Et j'ai pensé que je pouvais utiliser la ligne de commande d'OpenSSL pour créer le certificat qui est installé sur le client (avec la clé privée ECDSA dans un fichier séparé).
Quelqu'un peut-il aider?
Si vous n'avez pas choisi de courbe, vous pouvez les lister avec cette commande:
openssl ecparam -list_curves
J'ai choisi secp256r1
pour cet exemple. Utilisez-le pour générer une clé privée EC si vous n'en avez pas déjà:
openssl ecparam -out ec_key.pem -name secp256r1 -genkey
Et puis générez le certificat. Votre certificat sera dans cert.pem
.
openssl req -new -key ec_key.pem -x509 -nodes -days 365 -out cert.pem