Comment convertir du DER en PEM
- Déposez le fichier
.der,.cerou.crtsur la zone. Une entrée binaire est lue comme des octets. À la place d’un fichier, vous pouvez coller du DER en Base64 sur une ligne, ou de l’hex comme30 82 01 b7 …. - Laissez Convertir en sur PEM (64 colonnes).
- Laissez Libellé PEM sur Détection automatique. Le convertisseur lit l’ASN.1 et écrit
CERTIFICATE,CERTIFICATE REQUEST,PUBLIC KEY,PRIVATE KEY, etc. Ne choisissez un libellé vous-même que si un outil en exige un en particulier. - Cochez Fins de ligne Windows (CRLF) si nécessaire, puis Copier la sortie ou Télécharger le .pem.
Passez à Inspecter pour vérifier ce que vous avez converti : sujet, expiration et empreintes figurent sur la fiche.
D’où viennent les fichiers DER et le Base64 sans en-têtes
| Source | Ce que vous obtenez |
|---|---|
| Export de certificat Windows, « X.509 binaire encodé en DER (.CER) » | DER binaire |
keytool -exportcert de Java sans -rfc | DER binaire |
| URL des émetteurs de l’AC dans un certificat (l’extension AIA) | Généralement un .cer en DER |
x5c dans un JWK ou un JWKS | Du DER en Base64 sur une ligne par certificat |
<ds:X509Certificate> dans des métadonnées SAML | Du DER en Base64, parfois avec des sauts de ligne |
| Captures réseau, outils HSM et cartes à puce | Dumps hex |
Tous donnent le même PEM. Un certificat DER de 443 octets devient un PEM de 656 octets : 592 caractères Base64 sur dix lignes, plus les lignes BEGIN et END.
Le format PEM en bref
La RFC 7468 décrit ce qu’attendent les parseurs, et la sortie la respecte :
-----BEGIN CERTIFICATE-----
MIIBtzCCAV2gAwIBAgIUfX6gOa1S96OttEsj3WbuIdu0cE0wCgYIKoZIzj0EAwIw
...64 characters per line, the last line shorter...
-----END CERTIFICATE-----
- Le libellé de BEGIN et de END doit correspondre exactement.
- Les lignes du corps font 64 caractères de Base64 standard avec remplissage
=. Une entrée dans l’alphabet URL-safe (-et_) ou sans remplissage est acceptée et réécrite sous la forme standard. - Plusieurs certificats dans un même fichier sont des blocs mis bout à bout. C’est ainsi que sont construits
fullchain.pemet les bundles d’AC. Pour en créer un, convertissez chaque certificat DER et collez les blocs les uns après les autres, la feuille en premier.
DER en PEM avec OpenSSL, Python et le shell
openssl x509 -inform der -in cert.cer -out cert.pem
openssl pkey -inform der -in key.der -out key.pem
openssl req -inform der -in app.der -out app.csr
Les anciennes versions d’OpenSSL échouent avec unable to load certificate si vous oubliez -inform der ; les récentes détectent le DER d’elles-mêmes. Pour une chaîne Base64 sur une ligne comme une entrée x5c :
{ echo '-----BEGIN CERTIFICATE-----'; echo "$B64" | fold -w 64; echo '-----END CERTIFICATE-----'; } > cert.pem
Python l’intègre : ssl.DER_cert_to_PEM_cert(open("cert.der", "rb").read()). D’autres recettes se trouvent sur les pages OpenSSL et Python.
Problèmes courants
- « Ni du PEM, ni du DER valide en Base64 » ou « DER/ASN.1 non valide à l’octet … » : le Base64 est endommagé, tronqué ou n’est pas du DER. Un fichier
.p12ou.pfxest aussi du DER, mais son contenu est chiffré : convertissez-le plutôt avecopenssl pkcs12. - Le libellé affiche
DATA: la structure n’a pas été reconnue comme un certificat, une clé ou une demande. Les octets sont quand même convertis ; choisissez le libellé vous-même si vous savez de quoi il s’agit. - Le fichier était du PEM depuis le début : certains fichiers
.cersont en PEM malgré leur extension. La sortie est alors le même certificat, remis en forme, et rien d’autre n’avait besoin d’être converti. Le décodeur de certificats montre ce qu’il contient. - Vous avez besoin de l’inverse : PEM en DER fournit un
.derà télécharger, du Base64 sur une ligne ou de l’hex.
FAQ
Comment savoir si mon fichier .cer est en DER ou en PEM ?
Ouvrez-le dans un éditeur de texte. Un texte lisible -----BEGIN CERTIFICATE----- signifie PEM ; du binaire illisible signifie DER, dont le premier octet est 0x30. Sous Linux et macOS, la commande file affiche PEM certificate ou Certificate, Version=3 selon le cas.
Comment transformer la valeur X509Certificate des métadonnées SAML en fichier PEM ?
Collez le texte Base64 de <ds:X509Certificate> dans la zone. C’est du DER sans en-têtes : le convertisseur ajoute -----BEGIN CERTIFICATE-----, coupe les lignes à 64 caractères et ferme le bloc.
Puis-je convertir ici une clé privée DER en PEM ?
Oui. Les clés PKCS#8, RSA PKCS#1 et EC SEC1 sont détectées et reçoivent le libellé correspondant, comme PRIVATE KEY ou EC PRIVATE KEY. La conversion est locale, et les valeurs de la clé ne sont pas affichées sur la page.
Quand cocher Fins de ligne Windows (CRLF) ?
Seulement quand un outil Windows ou un parseur strict rejette le fichier. La plupart des logiciels acceptent les deux, et la RFC 7468 autorise l’une ou l’autre fin de ligne en PEM.