web-dev-qa-db-fra.com

Comment générer une clé à partir d'un fichier CRT?

J'essaie de générer une clé à partir d'un fichier CRT.

J'ai installé OpenSSL sur Windows et essayé d'obtenir une clé aléatoire en utilisant

enter image description here

J'ai le fichier CRT mais je ne sais pas comment en obtenir les clés. Dans le fichier CRT, il affiche -----BEGIN CERTIFICATE-----.

5
Sam

Dans l'image, notez le OpenSSL> Invite. Cela signifie que vous êtes dans la commande openssl et que vous n'avez plus besoin de taper "openssl" (c'est pourquoi vous avez le message "openssl is an invalid command"). Dans ce cas, vous devez simplement taper genrsa etc...

Mais je ne sais pas si j'obtiens ce que vous essayez de faire (générer une clé à partir de un fichier crt), principalement parce que: genrsa est une commande pour générer une nouvelle paire de clés en utilisant algorithme RSA . Bref, il génère 2 clés: une privée et une publique. La clé publique sera signée par Autorité de certification , et le résultat est un certificat numérique (qui peut être dans un fichier CRT)

Mon point est: si vous avez un fichier CRT (aka certificat), cela signifie qu'une paire de clés a déjà été générée et signée par une autorité de certification. Il n'y a aucun moyen de générer une nouvelle clé à partir de (car elle a déjà une clé).

Si vous souhaitez obtenir la clé publique qui se trouve dans le certificat, vous devez la lire en utilisant openssl x509 commande. Quelque chose comme openssl x509 -text -in crtfile (ou omettez "openssl" si vous êtes à l'intérieur OpenSSL> Invite). PS: cette commande imprime l'intégralité du certificat. Si vous voulez juste la clé publique, vous pouvez exécuter x509 -pubkey -noout -in crtfile

Si vous souhaitez générer une nouvelle paire de clés, utilisez alors genrsa.

6
user7605325