web-dev-qa-db-fra.com

X.509: Clé privée / publique

Nous essayons de mettre en œuvre certaines fonctionnalités d'un service Web de l'un de nos partenaires. Maintenant, le contenu qui est transmis doit être crypté avec une clé publique que nous devons fournir.

La spécification de sécurité indique que le certificat public doit être la norme X.509. X.509 ne repose-t-il pas sur la méthode de la clé privée/publique? Parce que je n'ai qu'un seul fichier .pem, contenant une clé privée et un certificat, mais pas de clé publique, en utilisant la commande suivante:

openssl req -new -x509 -days 365 -nodes -out ./cert.pem -keyout ./cert.pem

Dois-je modifier la commande pour créer une clé privée et publique?

26
Ahatius

Les étapes de ligne de commande de base pour générer une clé privée et publique à l'aide d'OpenSSL sont les suivantes

openssl genrsa -out private.key 1024
openssl req -new -x509 -key private.key -out publickey.cer -days 365
openssl pkcs12 -export -out public_privatekey.pfx -inkey private.key -in publickey.cer

Étape 1 - génère une clé privée

Étape 2 - crée un certificat X509 (fichier .cer) contenant votre clé publique que vous téléchargez lors de l'enregistrement de votre application privée (ou de la mise à niveau vers une application partenaire).

Étape 3 - Exportez votre certificat x509 et votre clé privée vers un fichier pfx. Si la bibliothèque d'encapsulation que vous avez choisie utilise le fichier .pem pour signer les demandes, cette étape n'est pas requise.

J'espère que ça t'as aidé! Cette réponse explique les différentes extensions de fichiers.

78
LorDFaKeR

La clé publique est stockée à l'intérieur du certificat x.509. Le certificat lie les informations d'identité (nom commun, adresse, etc.) à cette clé publique.

12

Créez une paire de clés privée-publique.

openssl req -x509 -newkey rsa:2048 -keyout private.key -out public.cert -days 365

Facultativement, combinez la paire en un seul fichier.

openssl pkcs12 -export -inkey private.key -in public.cert -out certificate.pfx

Il en résulte les fichiers suivants.

private.key
certificate.pfx
public.cert

Voir également

3
Shaun Luttin