PEM, DER, PFX et PKCS#7 : les formats de certificat SSL expliqués et comment les convertir

Lorsque vous recevez un certificat SSL, vous obtenez souvent plusieurs fichiers avec des extensions différentes : .pem, .crt, .der, .pfx, .p7b. Le problème : votre serveur n'accepte qu'un format précis, pas tous. Ce guide explique ce qu'est chaque format, où il est utilisé et comment passer de l'un à l'autre avec un convertisseur SSL.

Que sont les formats de certificat SSL ?

Tous les formats contiennent les mêmes données de certificat. La différence réside dans la manière dont ces données sont empaquetées et dans le fait qu'elles incluent ou non la clé privée et les certificats de la chaîne.

  • PEM — Un format texte encodé en Base64 (il commence par -----BEGIN CERTIFICATE-----). C'est le standard pour Apache, Nginx et le monde Linux en général. Un seul fichier peut contenir le certificat, la chaîne et la clé privée.
  • DER — La version binaire de PEM. Non lisible par un humain ; préférée par certaines applications Java et appareils matériels. L'extension est généralement .der ou .cer.
  • PFX / PKCS#12 — Regroupe le certificat, la chaîne et la clé privée dans un seul fichier chiffré (.pfx ou .p12). C'est le format de transport standard pour Windows et IIS.
  • P7B / PKCS#7 — Contient uniquement le certificat et sa chaîne, sans clé privée (.p7b ou .p7c). Courant pour construire des chaînes sous Windows et Tomcat.

Quel serveur a besoin de quel format ?

  • Apache / Nginx (Linux) : PEM — un fichier de certificat séparé (avec la chaîne) et un fichier de clé privée séparé.
  • Microsoft IIS / Windows : PFX (PKCS#12) — certificat, clé et chaîne dans un seul fichier. C'est généralement l'option la plus pratique.
  • Apache Tomcat : Généralement un keystore PKCS#12 (PFX) ; les anciennes configurations utilisent P7B pour la chaîne.
  • Applications Java : DER, ou PKCS#12 pour importer dans un keystore.
  • Équilibreurs de charge / CDN : Généralement PEM (certificat + clé).

Comment convertir avec le convertisseur SSL

Notre outil convertisseur SSL vous permet de passer d'un format à l'autre en quelques secondes. Le point essentiel : tout s'exécute dans votre navigateur ; votre clé privée ne quitte jamais votre appareil. Aucun fichier n'est envoyé vers un serveur, la conversion se fait entièrement en local.

  1. Ouvrez l'outil et sélectionnez le fichier à convertir (PEM, DER, P7B ou PFX).
  2. Choisissez le format cible.
  3. Si vous créez une sortie PFX, ajoutez la clé privée et, en option, définissez un mot de passe.
  4. Si vous utilisez un PFX en entrée, vous devez saisir le mot de passe du fichier.
  5. Cliquez sur convertir et téléchargez le résultat.

Commandes openssl équivalentes

Pour ceux qui préfèrent la ligne de commande, voici les équivalents :

PEM -> DER:   openssl x509 -in cert.pem -outform der -out cert.der
DER -> PEM:   openssl x509 -in cert.der -inform der -out cert.pem
PEM -> PFX:   openssl pkcs12 -export -in cert.pem -inkey key.pem -out cert.pfx
PFX -> PEM:   openssl pkcs12 -in cert.pfx -nodes -out cert.pem
PEM -> P7B:   openssl crl2pkcs7 -nocrl -certfile cert.pem -out cert.p7b
P7B -> PEM:   openssl pkcs7 -in cert.p7b -print_certs -out cert.pem

PFX et confidentialité : pourquoi le faire dans le navigateur ?

Un fichier PFX est extrêmement sensible car il contient votre clé privée. Quiconque obtient cette clé peut déchiffrer votre trafic ou usurper votre site. C'est pourquoi téléverser des conversions contenant une clé privée vers des sites en ligne quelconques est un risque sérieux. Dans notre outil, la conversion s'exécute entièrement côté client, donc votre clé ne quitte jamais votre ordinateur et votre confidentialité reste préservée.

Pas encore de certificat ?

Si vous n'avez pas de certificat à convertir, procurez-vous-en un d'abord. Avec notre assistant SSL gratuit de 90 jours, vous pouvez émettre un certificat Let's Encrypt en quelques minutes, puis le convertir exactement dans le format attendu par votre serveur.

Résumé

PEM pour Linux/Apache/Nginx, DER binaire/Java, PFX pour Windows/IIS (clé incluse) et P7B pour la chaîne (sans clé). Identifiez le bon format, convertissez-le en toute sécurité avec le convertisseur SSL et n'oubliez pas : tout le processus s'exécute dans votre navigateur et votre clé privée ne quitte jamais votre appareil.