Convertisseur DER ↔ PEM
Convertir entre les formats de certificat DER et PEM
PEM Input
DER Output
Enter data to convert between PEM and DER formats
Le convertisseur DER/PEM transforme les certificats, clés et CSR entre les formats d'encodage DER (binaire) et PEM (ASCII base64) -- éliminant le besoin de mémoriser la syntaxe openssl x509 -inform/-outform lorsque vous passez d'un environnement Windows, Linux ou Java à un autre. Uploadez un fichier DER ou collez du texte PEM et obtenez le résultat converti instantanément.
Comprendre les formats DER et PEM
Si vous avez travaillé avec des certificats sur différentes plateformes, vous avez inévitablement rencontré le problème de format. Windows exporte les certificats en format binaire DER. Apache et nginx attendent des fichiers texte PEM. Le keytool de Java parle DER mais la plupart des guides de configuration montrent du PEM. Un collègue vous a envoyé un fichier .cer et vous ne savez pas s'il est en DER ou PEM car l'extension est ambiguë. Ce sont toutes des variations des mêmes données de certificat sous-jacentes, simplement encodées différemment.
DER (Distinguished Encoding Rules) est la représentation binaire brute de la structure de données ASN.1 du certificat. C'est compact, non ambigu et c'est l'encodage canonique -- mais c'est totalement illisible dans un éditeur de texte et ne peut pas être copié en toute sécurité dans des e-mails, des messages de chat ou des fichiers de configuration. PEM (Privacy-Enhanced Mail) résout ce problème en enveloppant les octets DER dans un encodage base64 et en ajoutant des lignes d'en-tête/pied de page comme -----BEGIN CERTIFICATE-----. Le résultat est environ 33 % plus volumineux mais fonctionne partout : vous pouvez le coller dans un terminal, l'envoyer par e-mail, l'inclure dans un fichier YAML ou concaténer plusieurs certificats dans un seul fichier de chaîne.
Ce convertisseur gère les deux directions. Donnez-lui un fichier binaire DER et il produit du texte PEM que vous pouvez copier. Donnez-lui du texte PEM et il produit un fichier DER que vous pouvez télécharger. Il détecte automatiquement le type de contenu (certificat, clé privée, CSR ou clé publique) et applique l'en-tête/pied de page PEM correct. Plus besoin de se rappeler s'il faut utiliser openssl x509, openssl rsa ou openssl req avec les bons flags -inform et -outform.
Comment convertir entre DER et PEM
- Pour DER vers PEM : uploadez ou glissez-déposez votre fichier binaire
.der,.cerou.crt - Pour PEM vers DER : collez le texte PEM incluant les lignes
-----BEGIN/END----- - Le convertisseur détecte automatiquement le format d'entrée et le type de contenu (certificat, clé ou CSR)
- Copiez la sortie PEM ou téléchargez le fichier binaire DER
Comparaison des formats DER et PEM
| Caractéristique | DER | PEM |
|---|---|---|
| Encodage | Binaire | ASCII Base64 |
| Taille de fichier | Plus petit (octets bruts) | ~33 % plus grand (surcharge base64) |
| Lisible par l'humain | Non | Oui (affichable dans un éditeur de texte) |
| Compatible copier/coller | Non | Oui |
| Compatible e-mail | Non | Oui |
| Plusieurs éléments par fichier | Non (un seul objet) | Oui (concaténation) |
| Extensions courantes | .der, .cer | .pem, .crt, .cer |
Exemple de conversion
PEM vers DER
Entrée (PEM) :
-----BEGIN CERTIFICATE-----
MIIFjTCCBHWgAwIBAgISA0M4rfJGaXD0dC/jC+/SUoZfMA0GCSqGSIb3
DQEBCwUAMDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNy
...données base64...
-----END CERTIFICATE-----
Sortie : téléchargement du fichier binaire .der (généralement 1 à 2 Ko pour un certificat feuille)
DER vers PEM
Entrée : uploadez le fichier binaire .der
Sortie (PEM) :
-----BEGIN CERTIFICATE-----
MIIFjTCCBHWgAwIBAgISA0M4rfJGaXD0dC/jC+/SUoZfMA0GCSqGSIb3
...contenu encodé en base64...
-----END CERTIFICATE-----
Quand utiliser cet outil
- Migration de Windows vers Linux -- le Windows Certificate Store exporte en format DER ; Apache et nginx nécessitent du PEM
- Opérations de keystore Java -- le
keytoolde Java importe et exporte en DER ; de nombreuses étapes de configuration nécessitent du PEM - Inspection de certificats -- convertissez du DER en PEM afin de pouvoir le coller dans des visualiseurs de certificats, des générateurs d'empreintes ou d'autres outils d'analyse
- Partage compatible e-mail -- convertissez les fichiers binaires DER en texte PEM qui peut être collé en toute sécurité dans des e-mails ou des messages de chat
- Préparation pour l'automatisation par scripts -- le format PEM fonctionne avec
openssl,curl --cacertet la plupart des outils en ligne de commande qui attendent des certificats au format texte - Déploiement de certificats multi-plateformes -- préparez les certificats dans le bon format pour chaque système cible de votre infrastructure
Comment fonctionnent les encodages DER et PEM
DER (Distinguished Encoding Rules)
DER est l'encodage binaire des structures de données ASN.1 définies par X.690. Il produit une séquence d'octets unique et déterministe pour toute structure ASN.1 donnée. Un certificat encodé en DER est constitué des octets bruts -- non lisible dans un éditeur de texte mais compact et non ambigu.
PEM (Privacy-Enhanced Mail)
PEM encapsule le DER dans un format compatible texte en trois étapes :
- Partir des données binaires DER
- Les encoder en base64 (conversion du binaire en caractères ASCII)
- Ajouter des lignes d'en-tête et de pied de page identifiant le type de contenu
Les lignes d'en-tête/pied de page indiquent ce que le bloc PEM contient :
| Type de contenu | En-tête |
|---|---|
| Certificat | -----BEGIN CERTIFICATE----- |
| Clé privée (PKCS#8) | -----BEGIN PRIVATE KEY----- |
| Clé privée RSA | -----BEGIN RSA PRIVATE KEY----- |
| CSR | -----BEGIN CERTIFICATE REQUEST----- |
| Clé publique | -----BEGIN PUBLIC KEY----- |
Préférences de format par plateforme
| Plateforme | Format préféré | Notes |
|---|---|---|
| Apache/nginx | PEM | La configuration référence des fichiers .pem ou .crt |
| Windows/IIS | DER ou PKCS#12 | Le Certificate Manager utilise .cer (DER) ou .pfx |
| Java (keytool) | DER ou PKCS#12 | Importe le DER dans les keystores JKS/PKCS12 |
| OpenSSL CLI | PEM (par défaut) | Supporte les deux avec les flags -inform DER/PEM |
| macOS Keychain | DER | Double-cliquez sur les fichiers .cer pour importer |
| Android | DER | Le magasin de CA système utilise des certificats encodés en DER |
Conversion de format en pratique
Le scénario de conversion le plus courant est le déplacement de certificats de Windows vers Linux. Lorsque vous exportez un certificat depuis le Windows Certificate Manager, il utilise par défaut le format DER avec une extension .cer. Si vous essayez d'utiliser ce fichier avec nginx ou Apache, vous obtiendrez une erreur cryptique indiquant que le format du certificat est invalide. La solution est simple : convertir en PEM. Mais si vous n'avez pas OpenSSL installé sur votre machine Windows (et beaucoup d'administrateurs Windows ne l'ont pas), ce convertisseur web vous évite d'installer des outils supplémentaires.
La conversion inverse -- PEM vers DER -- est plus courante lorsque vous travaillez avec des applications Java. L'utilitaire keytool de Java importe les certificats en format DER par défaut, et bien qu'il supporte le PEM dans les versions récentes, de nombreux scripts de déploiement plus anciens attendent du DER. De même, importer un certificat dans le Windows Certificate Store ou le Keychain macOS est souvent plus facile avec un fichier DER que vous pouvez double-cliquer pour lancer l'assistant d'importation.
Un point à surveiller est l'extension de fichier ambiguë .cer. Contrairement à .pem (toujours PEM) ou .der (toujours DER), un fichier .cer peut être l'un ou l'autre format. Si quelqu'un vous envoie un fichier .cer et que vous n'êtes pas sûr du format, ouvrez-le dans un éditeur de texte. Si vous voyez -----BEGIN CERTIFICATE----- et des caractères base64 lisibles, c'est du PEM. Si vous voyez des caractères binaires, c'est du DER. Sous Linux, la commande file vous le dira aussi : file cert.cer indique soit « PEM certificate » soit « data » pour du DER.
Questions fréquentes
Comment savoir si un fichier .cer est en DER ou en PEM ?
Ouvrez le fichier dans un éditeur de texte. Si vous voyez -----BEGIN CERTIFICATE----- et du texte base64 lisible, c'est du PEM. Si vous voyez des caractères binaires illisibles, c'est du DER. L'extension .cer est ambiguë et peut être l'un ou l'autre format. En ligne de commande, file cert.cer indiquera « PEM certificate » ou « data » (pour DER).
Puis-je convertir des fichiers PKCS#12 (.pfx/.p12) avec cet outil ?
Cet outil gère les conversions DER et PEM. PKCS#12 est un format de conteneur différent qui regroupe les certificats avec les clés privées et est protégé par mot de passe. Pour travailler avec des fichiers PKCS#12, utilisez OpenSSL : openssl pkcs12 -in file.pfx -out combined.pem -nodes extrait tout le contenu en PEM.
Pourquoi mon fichier DER est-il plus grand que prévu ? Le format DER devrait être plus petit que le PEM (pas de surcharge base64). Si votre fichier DER semble volumineux, il peut contenir plusieurs certificats ou une clé privée. Les certificats feuille seuls en format DER font généralement 1 à 2 Ko. Les chaînes de certificats devraient être stockées en format PEM car le DER ne supporte pas la concaténation.
La conversion entre DER et PEM modifie-t-elle l'empreinte du certificat ? Non. L'empreinte est toujours calculée sur les données encodées en DER, que le certificat soit stocké en DER ou en PEM. La conversion entre les formats préserve les octets DER sous-jacents, donc l'empreinte reste identique.
Puis-je concaténer plusieurs certificats DER en une chaîne ? Non. Le format DER ne supporte qu'un seul certificat par fichier. Pour créer une chaîne (bundle), vous devez d'abord convertir chaque certificat DER au format PEM, puis concaténer les blocs PEM dans un seul fichier. Utilisez le PEM Bundle Merger pour les assembler dans le bon ordre.
Outils associés
- X.509 Certificate Viewer - Visualiser les détails du certificat après conversion en PEM
- PEM Bundle Splitter - Séparer les certificats PEM concaténés après conversion depuis le DER
- PEM Bundle Merger - Fusionner des certificats PEM convertis individuellement en une chaîne
- Certificate Fingerprint Generator - Générer les empreintes des certificats PEM
- CSR Viewer - Visualiser les détails de la CSR après conversion du DER vers le PEM