Generieren Sie einen ECDSA-Schlüssel und eine CSR mit OpenSSL

9031
Sreehari Sreedev

Ich weiß, wie man einen privaten RSA-Schlüssel und eine CSR generiert:

openssl genrsa -out my.key.pem 2048 openssl req -new -sha256 -key my.key.pem -out my.csr 

Aber wie gehe ich mit einem ECDSA (Elliptic Curve Digital Signature Algorithm) vor?

3

1 Antwort auf die Frage

3
garethTheRed

Um eine Liste der möglichen Kurvennamen zu erhalten, führen Sie Folgendes aus:

openssl ecparam -list_curves 

Wählen Sie dann eine Kurve aus der Liste aus und ersetzen Sie Ihre erste Zeile durch:

openssl ecparam -name secp521r1 -genkey -noout -out my.key.pem 

(Ersetzen Sie secp521r1mit der Kurve, die Sie aus der Liste auswählen.)

Generieren Sie schließlich die CSR wie Sie es getan haben:

openssl req -new -sha256 -key my.key.pem -out my.csr 
Wenn er / sie sie in einem TLS-Server verwenden möchte, müssen sie auch eine benannte Kurve und * nicht * -Domänenparameter verwenden. Das bedeutet, dass "ecparam" und "-param_enc named_curve" verwendet werden müssen. Siehe auch [Elliptic Curve Cryptography | Benannte Kurven] (http://wiki.openssl.org/index.php/Elliptic_Curve_Cryptography#Named_Curves) im OpenSSL-Wiki. jww vor 8 Jahren 0
@jww `-param_enc named_curve` scheint zumindest bei der neueren Version von OpenSSL der Standard zu sein. Auslassen sollte also OK sein. Erwan Legrand vor 7 Jahren 0