web-dev-qa-db-fra.com

quelle est la difference entre .cer et fichier pfx

Les gens disaient -

cer - certificat stocké au format standard X.509. Ce certificat contient des informations sur le propriétaire du certificat ... ainsi que des clés publiques et privées.

pfx - représente le format d'échange personnel. Il est utilisé pour échanger des objets publics et privés dans un seul fichier. Un fichier pfx peut être créé à partir du fichier .cer. Peut également être utilisé pour créer un certificat d'éditeur de logiciel.

** obtenu de ce lien Quelle est la différence entre un fichier cer, pvk et pfx? **

mais personne ne dit quand nous devrions utiliser le fichier CERT et quand nous devrions utiliser le fichier PFX. Si possible, veuillez discuter de la situation dans laquelle nous devrions utiliser le fichier CERT et à quel moment utiliser le fichier PFX Merci.

58
Thomas

Un fichier .pfx inclut les clés publique et privée du certificat associé (ne le partagez JAMAIS en dehors de votre organisation); il peut être utilisé pour TLS/SSL sur un site Web, pour la signature numérique de messages ou de jetons d'autorisation, ou pour l'authentification sur un système partenaire. Un fichier .cer contient uniquement la clé publique (c’est ce que vous échangez généralement avec des partenaires d’intégration); il peut être utilisé pour vérifier des jetons ou des demandes d'authentification de client. Il s'agit de ce qui est reçu par un client HTTP à partir d'un serveur inclus dans la négociation SSL. 

72
PeterB

2 x scénarios qui fonctionnent légèrement différemment:

SCÉNARIO 1:
Navigateur Web (client) accédant à une page Web (serveur) via HTTPS à l'aide de SSL.

Le serveur contient le fichier .PFX contenant les deux clés. Le client se connecte à un site Web sur le serveur et le serveur envoie une copie de sa clé publique (fichier .CER) au client dans le cadre de l'établissement de la liaison SSL. Le client génère ensuite une "SESSION-Key" et le chiffre en utilisant la clé publique reçue du serveur. La clé de session est ensuite renvoyée au serveur et déchiffrée pour confirmer son authenticité. En cas de succès, le client et le serveur partagent désormais la "clé de session" pour communiquer en utilisant le chiffrement symmetric (c.-à-d. Le client et le serveur, chiffrent et déchiffrent tous les messages ET déchiffrent tous les messages entre eux à l'aide de la même clé de session. Tous Cela se fait en coulisse à l'arrière-plan du navigateur Web, entre le moment où vous entrez l'URL dans la barre d'adresse et l'affichage de la page Web.

SCÉNARIO 2:
Application (client) se connecte à un site FTP (serveur)
ou
Bureau à distance (client à serveur) utilisant SSH
(les deux exemples s'appliqueraient)

Dans ce scénario, les deux le Client et le serveur auront leurs propres paires de clés privée et publique
(contrairement aux autres exemples mentionnés dans ce fil, expliquant uniquement lorsqu'un serveur possède les deux clés et que le client ne dispose que de la clé publique)}

Maintenant, à des fins d’explication, nommons les paires de clés comme suit:
A1 et A2 = en tant que clés privée et publique du serveur, respectivement
B1 et B2 = en tant que clés privées et publiques du client, respectivement

En utilisant ce modèle, les publications précédentes de ce fil de discussion parlaient du moment où le serveur dispose de A1 et A2 (fichier .PFX) et ne partage qu'une copie de A2. (.CER) avec les clients

Tandis que les connexions FTP ou SSH (il existe d’autres exemples) consistent en les clés A1, A2, B1 et B2 dans l’ensemble de la communication client-serveur. Par exemple,
- Le client se connecte au serveur FTP.
- Le serveur envoie une copie de sa clé publique (A2) au client.
- Le client envoie sa propre clé publique (B2) au serveur, complétant ainsi la prise de contact.
- Ceci utilisera maintenant asymétrique Encryption

Le serveur a maintenant A1, (son propre privé), A2 (son propre public) et une copie de B2 (Client du public)
Le client a maintenant B1, (son propre privé), B2 (son propre public) et une copie de A1 (Public du serveur)

Communications client à serveur:
Le client utilise A2 (clé publique du serveur) pour chiffrer les messages destinés au serveur. Le serveur les décrit à l'aide de A1 (clé privée du serveur).

Comms Serveur à client:
Le serveur utilise B2 (clé publique du client) pour chiffrer le message destiné au client. Le client le déchiffre à l'aide de B1 (clé privée du client).

En ce qui concerne les types de fichiers .CER et .PFX, le serveur aura son propre fichier .PFX qui ne devrait pas être distribué en dehors de votre organisation. Vous devez plutôt distribuer le fichier .CER aux clients.

plus d'informations peuvent être trouvées ici:
https://www.digicert.com/ssl-cryptography.htm

et ici:
https://serverfault.com/questions/107433/why-does-a-ssh-public-key-sit-on-the-server-and-not-with-the-client

1
TurnerOC

Selon mon expérience (elle n’est pas aussi vaste que je le souhaite), j’utilise un fichier pfx lors de la configuration de la liaison https sur un serveur IIS (car elle contient à la fois la clé publique et la clé privée, vous pouvez vous contenter de ce fichier), un fichier cer est simplement la partie publique de la paire de clés (la plupart du temps) et vous devez l’utiliser en conjonction avec un fichier .key lors de la configuration du trafic SSL sur un serveur nginx ou Apache,

Autant que je sache, il n’ya plus de raison difficile d’utiliser l’un ou l’autre,

0
Juan Sebastian

Comme il a été mentionné, la question concerne un peu les pommes et les oranges, car le fichier cer n'est que la clé publique, mais le fichier pfx contient des clés publiques et privées.

Donc, une question plus juste serait quand voudriez-vous utiliser un fichier pfx par opposition à un fichier pem. Étant donné que les fichiers pfx ont été critiqués pour leur complexité excessive, une réponse juste à votre deuxième question pourrait être: vous ne voudriez jamais utiliser un fichier pfx que si vous exécutez IIS et que sa configuration ne laisse absolument pas vous utilisez autre chose.

Source: https://en.wikipedia.org/wiki/PKCS_12 (La note de bas de page référencée est un article de Peter Gutmann.)

0
chaosmind